Tool-neutral prompt recipes: build a safe TTS skill
Labs reference: Tool-neutral prompt recipes: build a safe TTS skill.
These work with Codex, Claude Code, or another coding agent. Replace bracketed project details, but keep the credential and review boundaries. Do not paste a real API key into any prompt.
1. Planning review โ no file changes
I want to create a small local text-to-speech skill for [stated purpose].
Before editing files or attempting synthesis, help me write a plan. The command must require:
- an explicit approved voice slug;
- exactly one of --text or --text-file;
- an explicit .mp3 output path;
- --force before overwriting; and
- --dry-run for a no-synthesis test.
Use Speechify only behind a provider adapter. The API key stays in an ignored local .env file and must never appear in source, prompts, logs, receipts, browser code, or published output. I will set a low spending alert and make only one short live test after negative tests pass.
Identify assumptions, failure cases, acceptance tests, and any decisions I must make. Do not edit files yet.
2. Implementation request โ after plan approval
Implement the approved plan in this local learner project. Keep the command interface and refusal rules exactly as reviewed. Add a value-free .env.example and verify that .env is ignored. Never ask me to paste or print a credential. Add deterministic dry-run and failure-path tests before any live provider request.
After implementation, show me the changed files, the exact local test commands, and any remaining assumptions. Do not perform live synthesis unless I explicitly ask after reviewing the tests.
3. Test review โ no live synthesis
Review this TTS skill as a cautious test partner. Run or describe only dry-run and negative tests for missing output, missing/conflicting text, unknown voice, missing credential, and existing output without --force. Check that no secret-like values appear in tracked files or normal command output. Report findings without opening or printing .env.
4. One intentional live acceptance test
The dry-run and negative tests have passed. I have set a provider spending alert. Use the already approved local voice slug and this short authorized test text: [text]. Write one MP3 to [explicit path]. Do not print or inspect my API key. Report only the output path, duration, and billable-character count if returned. Stop after this one request.
5. Human audition-site brief
Help me write a static website brief for humans to compare pre-generated voice clips. Include shared scripts, audio controls, visible metadata, ratings, notes, approval decisions, and Markdown/JSON decision export. Exclude provider API clients, browser-side synthesis, credentials, account data, and automatic voice selection. Do not build the site yet.
Source: labs/build-a-safe-text-to-speech-skill/materials/tool-neutral-prompt-recipes.md