Directing AI narration: voice performance plans (intent, pacing profile, energy curve, pause policy), per-provider notes, delivery cues.
Pro scans all 2 files and shows the line behind each finding
Scanned 9/29/2026
npx -y skills add aicodedecode/awesome-muse-skills --skill voice-performance-direction --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Voice Performance Direction?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/aicodedecode-voice-performance-direction)More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.
---
name: voice-performance-direction
description: Directing AI narration: voice performance plans (intent, pacing profile, energy curve, pause policy), per-provider notes, delivery cues.
---
# Voice Performance Director
Use this meta skill whenever a pipeline will generate narration with TTS.
The goal is to make generated narration sound directed, not merely read. Do not
leave expressiveness as "read naturally" in a prompt. Carry a concrete voice
performance plan from script to asset generation, then verify it with a sample.
## Required Contract
Every narration-led script should include a top-level `voice_performance`
object and section-level `delivery_cues` where the schema allows it.
Top-level voice performance:
```json
{
"performance_intent": "Warm, decisive product narrator with human pauses.",
"pacing_profile": "conversational",
"energy_curve": "measured hook, warmer middle, more deliberate close",
"pause_policy": "Use short pauses after setup lines and longer pauses before reversals or important claims.",
"provider_notes": {
"openai": "Use instructions for emotional arc and emphasis.",
"google_tts": "Use SSML input with break tags when the selected voice supports it.",
"elevenlabs": "Use lower stability and moderate style for expressive narration."
}
}
```
Section-level delivery cues:
```json
{
"pace": "measured",
"energy": "curious",
"emphasis_words": ["not", "process"],
"pause_before_seconds": 0.2,
"pause_after_seconds": 0.7,
"delivery_note": "Set up the contrast, then slow down on the final phrase.",
"provider_text": "This is not just another tool. <break time=\"0.6s\"/> It is a process."
}
```
## Writing Rules
- Write spoken language, not essay language. Prefer short sentences, light
contractions, and clear punctuation.
- Use silence as structure. Add a pause before reversals, after surprising
claims, and before the final takeaway.
- Keep pause tags purposeful. Too many breaks sound theatrical and slow.
- Avoid generic directions such as "natural", "engaging", or "expressive"
unless they are paired with exact pace, emphasis, pause, or energy cues.
- Prefer one delivery idea per section. If a section needs three emotional
turns, split it.
## Provider Mapping
- OpenAI TTS: use `model: "gpt-4o-mini-tts"` when sending `instructions`.
Put the emotional arc, pacing, emphasis, and role in `instructions`; keep the
input text clean but punctuated. Do not send `instructions` to `tts-1` or
`tts-1-hd`.
- Google TTS: use `input_type: "ssml"` only when adding break tags or other
SSML. The tool maps this to Google `input.ssml` and wraps the utterance in
`<speak>...</speak>` when needed. Keep `speaking_rate` in Google's supported
`0.25..2.0` range and pitch in `-20..20`.
- ElevenLabs: use lower `stability` for more variation, moderate `style` for
expressiveness, `speed` in the provider's `0.7..1.2` range, and keep
`similarity_boost` high enough to preserve the voice.
- Offline/basic voices: rely on punctuation, shorter sentences, and explicit
segment splitting because provider-level emotion controls may be unavailable.
## Sample Gate
Before batch narration generation:
1. Generate a sample from the most performance-sensitive section, not
automatically the first section.
2. Verify voice, pace, pauses, emphasis, and emotional arc.
3. If the sample is flat, adjust the `voice_performance` plan or provider
settings before generating the rest.
4. Record the approved sample path and provider settings in the asset manifest.
## Failure Conditions
Treat these as quality failures:
- A narration-led script has no `voice_performance` plan.
- Section directions only say "read naturally" or "expressive" with no concrete
pause, emphasis, pace, or energy cue.
- TTS provider, voice, speed, or model changes after sample approval without a
new sample.
- Final narration is generated from raw script text while structured
`provider_text` or `delivery_cues` were present.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!