← Creative ClawCONTENT HISTORY

Update to Creative Claw

Snapshot Oct 24, 2026 · 12:48 UTC · version 5.4.2

Collection source: downloaded plugin package.

WHAT CHANGED

Instructions updated for creativeclaw-generate-voiceover

Skill instructions — Now says: For each Creative Claw tool call that exposes it, pass the optional `skills_used` array with `creativeclaw-generate-voiceover`, any other Creative Claw...

Observed in instructions or declared skills. Runtime behavior has not been tested.

Save Creative Claw and check future changes in Following.

Up to 10 plugins free · no card required.

All fields and original values.

Skill instructions

Before

Oct 3, 2026 · 06:03 UTC

- "Clone my voice", "use my recording", or an unsaved personal voice: load creativeclaw-clone-voice when available. If this skill is installed alone, read [the complete cloning workflow](references/voices/cloning.md). Obtain explicit con...

After

Oct 24, 2026 · 12:48 UTC

For each Creative Claw tool call that exposes it, pass the optional `skills_used` array with `creativeclaw-generate-voiceover`, any other Creative Claw skills actually followed, and guide entries in the form `<skill-name>/<relative-guide...

Supporting files

Before

Oct 3, 2026 · 06:03 UTC

[{"relative_path":"agents/openai.yaml","size_in_bytes":525},{"relative_path":"references/job-recovery.md","size_in_bytes":3786},{"relative_path":"references/media-assembly.md","size_in_bytes":8654},{"relative_path":"references/platform-u...

After

Oct 24, 2026 · 12:48 UTC

[{"relative_path":"agents/openai.yaml","size_in_bytes":525},{"relative_path":"references/job-recovery.md","size_in_bytes":3786},{"relative_path":"references/media-assembly.md","size_in_bytes":8654},{"relative_path":"references/platform-u...

Compare saved observations

Download comparison JSON

SKILL.md text changes

− removed · + added

--- before
+++ after
@@ -5,15 +5,23 @@
 
 # Generate voiceover
 
+For each Creative Claw tool call that exposes it, pass the optional `skills_used` array with `creativeclaw-generate-voiceover`, any other Creative Claw skills actually followed, and guide entries in the form `<skill-name>/<relative-guide-path>` (for example, `creativeclaw-generate-voiceover/references/workflow-basics.md`). Include only skills and guides followed for that call. Omit attribution if the user declines tracking or the field is unavailable. Never send other plugin names, private data, or local paths.
+
+**Not connected yet?** If no Creative Claw tools (such as `list_models` or `generate_image`) are available, the plugin is installed but the server is not connected. Stop and tell the user to open the plugin's Connectors tab in their app (or the MCP server list in a terminal client), connect Creative Claw, sign in, and ask again. Do not substitute other tools or describe a result that was not generated.
+
 Read [shared execution guidance](references/workflow-basics.md) before tools. The speech tool is `generate_speech`.
 
+## Localize the spoken text
+
+For Hebrew, always send full niqqud on every spoken Hebrew word to every speech model. Apply this to narration, each dialogue turn, clone auditions and voice-design preview text, including user-supplied scripts. Preserve the words and intended meaning while adding vowel points. This rule applies across providers, not only Fish. Before submitting Hebrew or other pronunciation-sensitive text, read [speech localization](references/voices/speech-localization.md).
+
 ## Which voice
 
-- "Clone my voice", "use my recording", or an unsaved personal voice: load creativeclaw-clone-voice when available. If this skill is installed alone, read [the complete cloning workflow](references/voices/cloning.md). Obtain explicit consent, import privately, clone, test and save a reusable Character. Do not send source audio directly to ElevenLabs or Cartesia speech generation as a substitute for cloning.
+- "Clone my voice", "use my recording", or an unsaved personal voice: load creativeclaw-clone-voice when available. If this skill is installed alone, read [the complete cloning workflow](references/voices/cloning.md). Obtain explicit consent once, up front, import privately, clone right after the upload, test and save a reusable Character. Do not send source audio directly to ElevenLabs or Cartesia speech generation as a substitute for cloning.
 - Existing Character voice (cloned, designed or stock): find the Character with `list_characters` and pass `character_id`. Do not clone or design again.
 - Stock voice: fetch the selected model's current `get_model_params` voice catalog and use its exact `voice_id`. For more Cartesia or ElevenLabs choices, call `get_model_params` again with `include_voice_catalog: true`, or read the public Markdown catalog linked in `voiceCatalog.extendedCatalogMarkdownUrl`. Never pass both selectors.
 - Change who is speaking in an existing speech recording while keeping the performance: call `generate_speech` with `model: "speech/cartesia-voice-changer"`, `audio_url` = the workspace speech audio, and a Cartesia `voice_id` or a Character's `character_id`. Pass no `text`.
-- New voice from a description (no recording): call `design_voice({ prompt })` with age, accent, timbre, pace and attitude, never a real person's identity. It returns three auditions; after the user picks, `design_voice({ action: "save", preview_id, character_id | character_name })`. Speak with `generate_speech({ character_id })` using `speech/elevenlabs-v4`, or `speech/gemini-3.8-flash-tts` for `provider: "google"`. If the save hits the limit, offer `replace_voice_option_id`; never quote plan prices. For a stock voice use `manage_character({ id, voice_model, voice_id })`. Details: [voice design](references/voices/voice-design.md).
+- New voice from a description (no recording): call `design_voice({ prompt })` with age, accent, timbre, pace and attitude, never a real person's identity. It returns three auditions; after the user picks, save it with `manage_character({ id | title, voice_preview_id })`, passing the audition's `preview_id` as `voice_preview_id`. Speak with `generate_speech({ character_id })` using `speech/elevenlabs-v4`, or `speech/gemini-3.8-flash-tts` for `provider: "google"`, or `speech/fish-drama-3` for `provider: "fish"`. Fish auditions accept up to 150 characters and Hebrew requires full niqqud on every word. If the save hits the limit, offer `replace_voice_option_id`; never quote plan prices. For a stock voice use `manage_character({ id, voice_model, voice_id })`. Details: [voice design](references/voices/voice-design.md).
 
 ## Choose and load one model guide
 
@@ -25,19 +33,21 @@
 | An ElevenLabs clone, steady read | [ElevenLabs v2](references/voices/elevenlabs-v2.md) |
 | An ElevenLabs clone, expressive delivery or dialogue | [ElevenLabs v4](references/voices/elevenlabs-v4.md) |
 | An explicitly requested v3 workflow | [ElevenLabs v3](references/voices/elevenlabs-v3.md) |
+| Directed Fish performances, private Fish clones, or multi-speaker scenes | [Fish Drama 3](references/voices/fish.md) |
+| HeyGen public voices or an existing HeyGen instant clone | [HeyGen Voice](references/voices/heygen.md) |
 | A named alternative or a specific dialect/voice match | [MiniMax and xAI](references/voices/alternatives.md) |
 
 Default to ElevenLabs v4 for stock and designed ElevenLabs voices. Speak a clone with its provider's model: Cartesia Sonic for a Cartesia clone; v2 for a steady read or v4 for expressive delivery or dialogue from an ElevenLabs clone. Pass the model explicitly rather than relying on the omitted-model v4 default, and keep it for the whole project. V3 is legacy; use it only when the user asks for it. V2 can use public stock IDs, but v4 is the stock choice. If a user explicitly requests v2 stock speech, use a compatible public `voice_id` instead of silently switching. Do not automatically route stock corporate or long-form narration to v2.
 
 ## Multiple speakers in one run
 
-ElevenLabs v4 supports up to 10 voices in one `generate_speech` request through `extras.dialogue`. Pass ordered turns with `speaker`, `text`, and either `voice_id` or a saved Character voice (cloned or designed) `character_id` for each turn. Google Flash and Flash-Lite TTS also support two-speaker dialogue. Read the selected model's current schema and [v4 dialogue examples](references/voices/elevenlabs-v4-guide.md) before submission. Omit top-level voice selectors and `text` for dialogue. If a cached OpenAI tool schema still requires `text`, pass `text: ""`.
+ElevenLabs v4 supports up to 10 voices in one `generate_speech` request through `extras.dialogue`. Pass ordered turns with `speaker`, `text`, and either `voice_id` or a saved Character voice (cloned or designed) `character_id` for each turn. Google Flash and Flash-Lite TTS also support two-speaker dialogue. Fish Drama 3 support ordered turns through the same `extras.dialogue` contract, with a Creative Claw limit of 16 speakers and 100 turns. Read the selected model's current schema and [v4 dialogue examples](references/voices/elevenlabs-v4-guide.md) before submission. Omit top-level voice selectors and `text` for dialogue. If a cached OpenAI tool schema still requires `text`, pass `text: ""`.
 
 For non-English, mixed-language or less common languages, read [language routing](references/voices/languages.md) before selecting a voice. A model supporting a language does not guarantee every stock voice has a native accent.
 
 ## Execute and deliver
 
-1. Establish text, target language/accent and delivery. Preserve supplied words unless rewriting is requested.
+1. Establish text, target language/accent and delivery. Preserve supplied words unless rewriting is requested. Prepare the actual speech payload using the localization guidance; Hebrew must be fully vowelized before submission, including every `extras.dialogue[].text`.
 2. Read the selected model's reference and current `get_model_params`. Reuse a current schema already loaded in this task. Use `list_models({ category: "speech" })` only when discovering alternatives.
 3. Select a language-appropriate stock voice or saved Character and only settings accepted by that model. Never copy prompting tags across models.
 4. Generate the requested take. For a new clone or uncertain pronunciation, offer a short audition before a long production, not an unrequested paid model sweep.
Full technical diff · 2 changed fields

changed /included_files

BEFORE
[
  {
    "relative_path": "agents/openai.yaml",
    "size_in_bytes": 525
  },
  {
    "relative_path": "references/job-recovery.md",
    "size_in_bytes": 3786
  },
  {
    "relative_path": "references/media-assembly.md",
    "size_in_bytes": 8654
  },
  {
    "relative_path": "references/platform-upload.md",
    "size_in_bytes": 1416
  },
  {
    "relative_path": "references/video/voice-in-video.md",
    "size_in_bytes": 3328
  },
  {
    "relative_path": "references/voices/alternatives.md",
    "size_in_bytes": 1807
  },
  {
    "relative_path": "references/voices/cartesia-sonic-guide.md",
    "size_in_bytes": 5007
  },
  {
    "relative_path": "references/voices/cartesia.md",
    "size_in_bytes": 2239
  },
  {
    "relative_path": "references/voices/chatterbox-guide.md",
    "size_in_bytes": 3493
  },
  {
    "relative_path": "references/voices/cloning.md",
    "size_in_bytes": 4372
  },
  {
    "relative_path": "references/voices/elevenlabs-v2-guide.md",
    "size_in_bytes": 8088
  },
  {
    "relative_path": "references/voices/elevenlabs-v2.md",
    "size_in_bytes": 1792
  },
  {
    "relative_path": "references/voices/elevenlabs-v3-guide.md",
    "size_in_bytes": 9402
  },
  {
    "relative_path": "references/voices/elevenlabs-v3.md",
    "size_in_bytes": 1938
  },
  {
    "relative_path": "references/voices/elevenlabs-v4-guide.md",
    "size_in_bytes": 8693
  },
  {
    "relative_path": "references/voices/elevenlabs-v4.md",
    "size_in_bytes": 2069
  },
  {
    "relative_path": "references/voices/languages.md",
    "size_in_bytes": 2853
  },
  {
    "relative_path": "references/voices/minimax-speech-guide.md",
    "size_in_bytes": 3449
  },
  {
    "relative_path": "references/voices/voice-design.md",
    "size_in_bytes": 2243
  },
  {
    "relative_path": "references/voices/xai-tts-guide.md",
    "size_in_bytes": 11625
  },
  {
    "relative_path": "references/workflow-basics.md",
    "size_in_bytes": 7260
  }
]
AFTER
[
  {
    "relative_path": "agents/openai.yaml",
    "size_in_bytes": 525
  },
  {
    "relative_path": "references/job-recovery.md",
    "size_in_bytes": 3786
  },
  {
    "relative_path": "references/media-assembly.md",
    "size_in_bytes": 8654
  },
  {
    "relative_path": "references/platform-upload.md",
    "size_in_bytes": 1416
  },
  {
    "relative_path": "references/video/heygen-lipsync.md",
    "size_in_bytes": 11997
  },
  {
    "relative_path": "references/video/spoken-languages.md",
    "size_in_bytes": 7949
  },
  {
    "relative_path": "references/video/voice-in-video.md",
    "size_in_bytes": 4887
  },
  {
    "relative_path": "references/voices/alternatives.md",
    "size_in_bytes": 1943
  },
  {
    "relative_path": "references/voices/cartesia-sonic-guide.md",
    "size_in_bytes": 5002
  },
  {
    "relative_path": "references/voices/cartesia.md",
    "size_in_bytes": 2238
  },
  {
    "relative_path": "references/voices/chatterbox-guide.md",
    "size_in_bytes": 3509
  },
  {
    "relative_path": "references/voices/cloning.md",
    "size_in_bytes": 6290
  },
  {
    "relative_path": "references/voices/elevenlabs-v2-guide.md",
    "size_in_bytes": 8079
  },
  {
    "relative_path": "references/voices/elevenlabs-v2.md",
    "size_in_bytes": 1786
  },
  {
    "relative_path": "references/voices/elevenlabs-v3-guide.md",
    "size_in_bytes": 9376
  },
  {
    "relative_path": "references/voices/elevenlabs-v3.md",
    "size_in_bytes": 1935
  },
  {
    "relative_path": "references/voices/elevenlabs-v4-guide.md",
    "size_in_bytes": 8693
  },
  {
    "relative_path": "references/voices/elevenlabs-v4.md",
    "size_in_bytes": 2069
  },
  {
    "relative_path": "references/voices/fish.md",
    "size_in_bytes": 17534
  },
  {
    "relative_path": "references/voices/heygen.md",
    "size_in_bytes": 3560
  },
  {
    "relative_path": "references/voices/languages.md",
    "size_in_bytes": 4133
  },
  {
    "relative_path": "references/voices/minimax-speech-guide.md",
    "size_in_bytes": 3490
  },
  {
    "relative_path": "references/voices/speech-localization.md",
    "size_in_bytes": 3869
  },
  {
    "relative_path": "references/voices/voice-design.md",
    "size_in_bytes": 3897
  },
  {
    "relative_path": "references/voices/xai-tts-guide.md",
    "size_in_bytes": 11591
  },
  {
    "relative_path": "references/workflow-basics.md",
    "size_in_bytes": 10396
  }
]

changed /skill_md_contents

BEFORE
"---\nname: creativeclaw-generate-voiceover\ndescription: \"Generate narration, dialogue, or expressive speech with Creative Claw, or design a new custom synthetic voice from a description. Use for spoken audio, voice selection, a saved Character voice, or 'make me a new voice'. To copy a real person's voice from a recording, use creativeclaw-clone-voice.\"\n---\n\n# Generate voiceover\n\nRead [shared execution guidance](references/workflow-basics.md) before tools. The speech tool is `generate_speech`.\n\n## Which voice\n\n- \"Clone my voice\", \"use my recording\", or an unsaved personal voice: load creativeclaw-clone-voice when available. If this skill is installed alone, read [the complete cloning workflow](references/voices/cloning.md). Obtain explicit consent, import privately, clone, test and save a reusable Character. Do not send source audio directly to ElevenLabs or Cartesia speech generation as a substitute for cloning.\n- Existing Character voice (cloned, designed or stock): find the Character with `list_characters` and pass `character_id`. Do not clone or design again.\n- Stock voice: fetch the selected model's current `get_model_params` voice catalog and use its exact `voice_id`. For more Cartesia or ElevenLabs choices, call `get_model_params` again with `include_voice_catalog: true`, or read the public Markdown catalog linked in `voiceCatalog.extendedCatalogMarkdownUrl`. Never pass both selectors.\n- Change who is speaking in an existing speech recording while keeping the performance: call `generate_speech` with `model: \"speech/cartesia-voice-changer\"`, `audio_url` = the workspace speech audio, and a Cartesia `voice_id` or a Character's `character_id`. Pass no `text`.\n- New voice from a description (no recording): call `design_voice({ prompt })` with age, accent, timbre, pace and attitude, never a real person's identity. It returns three auditions; after the user picks, `design_voice({ action: \"save\", preview_id, character_id | character_name })`. Speak with `generate_speech({ character_id })` using `speech/elevenlabs-v4`, or `speech/gemini-3.8-flash-tts` for `provider: \"google\"`. If the save hits the limit, offer `replace_voice_option_id`; never quote plan prices. For a stock voice use `manage_character({ id, voice_model, voice_id })`. Details: [voice design](references/voices/voice-design.md).\n\n## Choose and load one model guide\n\n| Need | Recommended starting point |\n| --- | --- |\n| Stock narration, designed ElevenLabs voices, expressive speech, broad language coverage, and dialogue | [ElevenLabs v4](references/voices/elevenlabs-v4.md) |\n| Google-designed voice | `speech/gemini-3.8-flash-tts` (read its `get_model_params`) |\n| A Cartesia clone | [Cartesia Sonic](references/voices/cartesia.md) |\n| An ElevenLabs clone, steady read | [ElevenLabs v2](references/voices/elevenlabs-v2.md) |\n| An ElevenLabs clone, expressive delivery or dialogue | [ElevenLabs v4](references/voices/elevenlabs-v4.md) |\n| An explicitly requested v3 workflow | [ElevenLabs v3](references/voices/elevenlabs-v3.md) |\n| A named alternative or a specific dialect/voice match | [MiniMax and xAI](references/voices/alternatives.md) |\n\nDefault to ElevenLabs v4 for stock and designed ElevenLabs voices. Speak a clone with its provider's model: Cartesia Sonic for a Cartesia clone; v2 for a steady read or v4 for expressive delivery or dialogue from an ElevenLabs clone. Pass the model explicitly rather than relying on the omitted-model v4 default, and keep it for the whole project. V3 is legacy; use it only when the user asks for it. V2 can use public stock IDs, but v4 is the stock choice. If a user explicitly requests v2 stock speech, use a compatible public `voice_id` instead of silently switching. Do not automatically route stock corporate or long-form narration to v2.\n\n## Multiple speakers in one run\n\nElevenLabs v4 supports up to 10 voices in one `generate_speech` request through `extras.dialogue`. Pass ordered turns with `speaker`, `text`, and either `voice_id` or a saved Character voice (cloned or designed) `character_id` for each turn. Google Flash and Flash-Lite TTS also support two-speaker dialogue. Read the selected model's current schema and [v4 dialogue examples](references/voices/elevenlabs-v4-guide.md) before submission. Omit top-level voice selectors and `text` for dialogue. If a cached OpenAI tool schema still requires `text`, pass `text: \"\"`.\n\nFor non-English, mixed-language or less common languages, read [language routing](references/voices/languages.md) before selecting a voice. A model supporting a language does not guarantee every stock voice has a native accent.\n\n## Execute and deliver\n\n1. Establish text, target language/accent and delivery. Preserve supplied words unless rewriting is requested.\n2. Read the selected model's reference and current `get_model_params`. Reuse a current schema already loaded in this task. Use `list_models({ category: \"speech\" })` only when discovering alternatives.\n3. Select a language-appropriate stock voice or saved Character and only settings accepted by that model. Never copy prompting tags across models.\n4. Generate the requested take. For a new clone or uncertain pronunciation, offer a short audition before a long production, not an unrequested paid model sweep.\n5. Follow queued results with `check_job` as directed by [job recovery](references/job-recovery.md). Show the completed audio through the available native preview.\n6. Keep the Character ID and voice/model choice available for the requested continuation. Speech added to a video is an audio overlay, not lip-sync, and a video's Character reference does not bring its voice into native video audio. For speech in video, read [voice in video](references/video/voice-in-video.md).\n"
AFTER
"---\nname: creativeclaw-generate-voiceover\ndescription: \"Generate narration, dialogue, or expressive speech with Creative Claw, or design a new custom synthetic voice from a description. Use for spoken audio, voice selection, a saved Character voice, or 'make me a new voice'. To copy a real person's voice from a recording, use creativeclaw-clone-voice.\"\n---\n\n# Generate voiceover\n\nFor each Creative Claw tool call that exposes it, pass the optional `skills_used` array with `creativeclaw-generate-voiceover`, any other Creative Claw skills actually followed, and guide entries in the form `<skill-name>/<relative-guide-path>` (for example, `creativeclaw-generate-voiceover/references/workflow-basics.md`). Include only skills and guides followed for that call. Omit attribution if the user declines tracking or the field is unavailable. Never send other plugin names, private data, or local paths.\n\n**Not connected yet?** If no Creative Claw tools (such as `list_models` or `generate_image`) are available, the plugin is installed but the server is not connected. Stop and tell the user to open the plugin's Connectors tab in their app (or the MCP server list in a terminal client), connect Creative Claw, sign in, and ask again. Do not substitute other tools or describe a result that was not generated.\n\nRead [shared execution guidance](references/workflow-basics.md) before tools. The speech tool is `generate_speech`.\n\n## Localize the spoken text\n\nFor Hebrew, always send full niqqud on every spoken Hebrew word to every speech model. Apply this to narration, each dialogue turn, clone auditions and voice-design preview text, including user-supplied scripts. Preserve the words and intended meaning while adding vowel points. This rule applies across providers, not only Fish. Before submitting Hebrew or other pronunciation-sensitive text, read [speech localization](references/voices/speech-localization.md).\n\n## Which voice\n\n- \"Clone my voice\", \"use my recording\", or an unsaved personal voice: load creativeclaw-clone-voice when available. If this skill is installed alone, read [the complete cloning workflow](references/voices/cloning.md). Obtain explicit consent once, up front, import privately, clone right after the upload, test and save a reusable Character. Do not send source audio directly to ElevenLabs or Cartesia speech generation as a substitute for cloning.\n- Existing Character voice (cloned, designed or stock): find the Character with `list_characters` and pass `character_id`. Do not clone or design again.\n- Stock voice: fetch the selected model's current `get_model_params` voice catalog and use its exact `voice_id`. For more Cartesia or ElevenLabs choices, call `get_model_params` again with `include_voice_catalog: true`, or read the public Markdown catalog linked in `voiceCatalog.extendedCatalogMarkdownUrl`. Never pass both selectors.\n- Change who is speaking in an existing speech recording while keeping the performance: call `generate_speech` with `model: \"speech/cartesia-voice-changer\"`, `audio_url` = the workspace speech audio, and a Cartesia `voice_id` or a Character's `character_id`. Pass no `text`.\n- New voice from a description (no recording): call `design_voice({ prompt })` with age, accent, timbre, pace and attitude, never a real person's identity. It returns three auditions; after the user picks, save it with `manage_character({ id | title, voice_preview_id })`, passing the audition's `preview_id` as `voice_preview_id`. Speak with `generate_speech({ character_id })` using `speech/elevenlabs-v4`, or `speech/gemini-3.8-flash-tts` for `provider: \"google\"`, or `speech/fish-drama-3` for `provider: \"fish\"`. Fish auditions accept up to 150 characters and Hebrew requires full niqqud on every word. If the save hits the limit, offer `replace_voice_option_id`; never quote plan prices. For a stock voice use `manage_character({ id, voice_model, voice_id })`. Details: [voice design](references/voices/voice-design.md).\n\n## Choose and load one model guide\n\n| Need | Recommended starting point |\n| --- | --- |\n| Stock narration, designed ElevenLabs voices, expressive speech, broad language coverage, and dialogue | [ElevenLabs v4](references/voices/elevenlabs-v4.md) |\n| Google-designed voice | `speech/gemini-3.8-flash-tts` (read its `get_model_params`) |\n| A Cartesia clone | [Cartesia Sonic](references/voices/cartesia.md) |\n| An ElevenLabs clone, steady read | [ElevenLabs v2](references/voices/elevenlabs-v2.md) |\n| An ElevenLabs clone, expressive delivery or dialogue | [ElevenLabs v4](references/voices/elevenlabs-v4.md) |\n| An explicitly requested v3 workflow | [ElevenLabs v3](references/voices/elevenlabs-v3.md) |\n| Directed Fish performances, private Fish clones, or multi-speaker scenes | [Fish Drama 3](references/voices/fish.md) |\n| HeyGen public voices or an existing HeyGen instant clone | [HeyGen Voice](references/voices/heygen.md) |\n| A named alternative or a specific dialect/voice match | [MiniMax and xAI](references/voices/alternatives.md) |\n\nDefault to ElevenLabs v4 for stock and designed ElevenLabs voices. Speak a clone with its provider's model: Cartesia Sonic for a Cartesia clone; v2 for a steady read or v4 for expressive delivery or dialogue from an ElevenLabs clone. Pass the model explicitly rather than relying on the omitted-model v4 default, and keep it for the whole project. V3 is legacy; use it only when the user asks for it. V2 can use public stock IDs, but v4 is the stock choice. If a user explicitly requests v2 stock speech, use a compatible public `voice_id` instead of silently switching. Do not automatically route stock corporate or long-form narration to v2.\n\n## Multiple speakers in one run\n\nElevenLabs v4 supports up to 10 voices in one `generate_speech` request through `extras.dialogue`. Pass ordered turns with `speaker`, `text`, and either `voice_id` or a saved Character voice (cloned or designed) `character_id` for each turn. Google Flash and Flash-Lite TTS also support two-speaker dialogue. Fish Drama 3 support ordered turns through the same `extras.dialogue` contract, with a Creative Claw limit of 16 speakers and 100 turns. Read the selected model's current schema and [v4 dialogue examples](references/voices/elevenlabs-v4-guide.md) before submission. Omit top-level voice selectors and `text` for dialogue. If a cached OpenAI tool schema still requires `text`, pass `text: \"\"`.\n\nFor non-English, mixed-language or less common languages, read [language routing](references/voices/languages.md) before selecting a voice. A model supporting a language does not guarantee every stock voice has a native accent.\n\n## Execute and deliver\n\n1. Establish text, target language/accent and delivery. Preserve supplied words unless rewriting is requested. Prepare the actual speech payload using the localization guidance; Hebrew must be fully vowelized before submission, including every `extras.dialogue[].text`.\n2. Read the selected model's reference and current `get_model_params`. Reuse a current schema already loaded in this task. Use `list_models({ category: \"speech\" })` only when discovering alternatives.\n3. Select a language-appropriate stock voice or saved Character and only settings accepted by that model. Never copy prompting tags across models.\n4. Generate the requested take. For a new clone or uncertain pronunciation, offer a short audition before a long production, not an unrequested paid model sweep.\n5. Follow queued results with `check_job` as directed by [job recovery](references/job-recovery.md). Show the completed audio through the available native preview.\n6. Keep the Character ID and voice/model choice available for the requested continuation. Speech added to a video is an audio overlay, not lip-sync, and a video's Character reference does not bring its voice into native video audio. For speech in video, read [voice in video](references/video/voice-in-video.md).\n"
Full snapshot data
{
  "description": "Generate narration, dialogue, or expressive speech with Creative Claw, or design a new custom synthetic voice from a description. Use for spoken audio, voice selection, a saved Character voice, or 'make me a new voice'. To copy a real person's voice from a recording, use creativeclaw-clone-voice.",
  "included_files": [
    {
      "relative_path": "agents/openai.yaml",
      "size_in_bytes": 525
    },
    {
      "relative_path": "references/job-recovery.md",
      "size_in_bytes": 3786
    },
    {
      "relative_path": "references/media-assembly.md",
      "size_in_bytes": 8654
    },
    {
      "relative_path": "references/platform-upload.md",
      "size_in_bytes": 1416
    },
    {
      "relative_path": "references/video/heygen-lipsync.md",
      "size_in_bytes": 11997
    },
    {
      "relative_path": "references/video/spoken-languages.md",
      "size_in_bytes": 7949
    },
    {
      "relative_path": "references/video/voice-in-video.md",
      "size_in_bytes": 4887
    },
    {
      "relative_path": "references/voices/alternatives.md",
      "size_in_bytes": 1943
    },
    {
      "relative_path": "references/voices/cartesia-sonic-guide.md",
      "size_in_bytes": 5002
    },
    {
      "relative_path": "references/voices/cartesia.md",
      "size_in_bytes": 2238
    },
    {
      "relative_path": "references/voices/chatterbox-guide.md",
      "size_in_bytes": 3509
    },
    {
      "relative_path": "references/voices/cloning.md",
      "size_in_bytes": 6290
    },
    {
      "relative_path": "references/voices/elevenlabs-v2-guide.md",
      "size_in_bytes": 8079
    },
    {
      "relative_path": "references/voices/elevenlabs-v2.md",
      "size_in_bytes": 1786
    },
    {
      "relative_path": "references/voices/elevenlabs-v3-guide.md",
      "size_in_bytes": 9376
    },
    {
      "relative_path": "references/voices/elevenlabs-v3.md",
      "size_in_bytes": 1935
    },
    {
      "relative_path": "references/voices/elevenlabs-v4-guide.md",
      "size_in_bytes": 8693
    },
    {
      "relative_path": "references/voices/elevenlabs-v4.md",
      "size_in_bytes": 2069
    },
    {
      "relative_path": "references/voices/fish.md",
      "size_in_bytes": 17534
    },
    {
      "relative_path": "references/voices/heygen.md",
      "size_in_bytes": 3560
    },
    {
      "relative_path": "references/voices/languages.md",
      "size_in_bytes": 4133
    },
    {
      "relative_path": "references/voices/minimax-speech-guide.md",
      "size_in_bytes": 3490
    },
    {
      "relative_path": "references/voices/speech-localization.md",
      "size_in_bytes": 3869
    },
    {
      "relative_path": "references/voices/voice-design.md",
      "size_in_bytes": 3897
    },
    {
      "relative_path": "references/voices/xai-tts-guide.md",
      "size_in_bytes": 11591
    },
    {
      "relative_path": "references/workflow-basics.md",
      "size_in_bytes": 10396
    }
  ],
  "name": "creativeclaw-generate-voiceover",
  "skill_md_contents": "---\nname: creativeclaw-generate-voiceover\ndescription: \"Generate narration, dialogue, or expressive speech with Creative Claw, or design a new custom synthetic voice from a description. Use for spoken audio, voice selection, a saved Character voice, or 'make me a new voice'. To copy a real person's voice from a recording, use creativeclaw-clone-voice.\"\n---\n\n# Generate voiceover\n\nFor each Creative Claw tool call that exposes it, pass the optional `skills_used` array with `creativeclaw-generate-voiceover`, any other Creative Claw skills actually followed, and guide entries in the form `<skill-name>/<relative-guide-path>` (for example, `creativeclaw-generate-voiceover/references/workflow-basics.md`). Include only skills and guides followed for that call. Omit attribution if the user declines tracking or the field is unavailable. Never send other plugin names, private data, or local paths.\n\n**Not connected yet?** If no Creative Claw tools (such as `list_models` or `generate_image`) are available, the plugin is installed but the server is not connected. Stop and tell the user to open the plugin's Connectors tab in their app (or the MCP server list in a terminal client), connect Creative Claw, sign in, and ask again. Do not substitute other tools or describe a result that was not generated.\n\nRead [shared execution guidance](references/workflow-basics.md) before tools. The speech tool is `generate_speech`.\n\n## Localize the spoken text\n\nFor Hebrew, always send full niqqud on every spoken Hebrew word to every speech model. Apply this to narration, each dialogue turn, clone auditions and voice-design preview text, including user-supplied scripts. Preserve the words and intended meaning while adding vowel points. This rule applies across providers, not only Fish. Before submitting Hebrew or other pronunciation-sensitive text, read [speech localization](references/voices/speech-localization.md).\n\n## Which voice\n\n- \"Clone my voice\", \"use my recording\", or an unsaved personal voice: load creativeclaw-clone-voice when available. If this skill is installed alone, read [the complete cloning workflow](references/voices/cloning.md). Obtain explicit consent once, up front, import privately, clone right after the upload, test and save a reusable Character. Do not send source audio directly to ElevenLabs or Cartesia speech generation as a substitute for cloning.\n- Existing Character voice (cloned, designed or stock): find the Character with `list_characters` and pass `character_id`. Do not clone or design again.\n- Stock voice: fetch the selected model's current `get_model_params` voice catalog and use its exact `voice_id`. For more Cartesia or ElevenLabs choices, call `get_model_params` again with `include_voice_catalog: true`, or read the public Markdown catalog linked in `voiceCatalog.extendedCatalogMarkdownUrl`. Never pass both selectors.\n- Change who is speaking in an existing speech recording while keeping the performance: call `generate_speech` with `model: \"speech/cartesia-voice-changer\"`, `audio_url` = the workspace speech audio, and a Cartesia `voice_id` or a Character's `character_id`. Pass no `text`.\n- New voice from a description (no recording): call `design_voice({ prompt })` with age, accent, timbre, pace and attitude, never a real person's identity. It returns three auditions; after the user picks, save it with `manage_character({ id | title, voice_preview_id })`, passing the audition's `preview_id` as `voice_preview_id`. Speak with `generate_speech({ character_id })` using `speech/elevenlabs-v4`, or `speech/gemini-3.8-flash-tts` for `provider: \"google\"`, or `speech/fish-drama-3` for `provider: \"fish\"`. Fish auditions accept up to 150 characters and Hebrew requires full niqqud on every word. If the save hits the limit, offer `replace_voice_option_id`; never quote plan prices. For a stock voice use `manage_character({ id, voice_model, voice_id })`. Details: [voice design](references/voices/voice-design.md).\n\n## Choose and load one model guide\n\n| Need | Recommended starting point |\n| --- | --- |\n| Stock narration, designed ElevenLabs voices, expressive speech, broad language coverage, and dialogue | [ElevenLabs v4](references/voices/elevenlabs-v4.md) |\n| Google-designed voice | `speech/gemini-3.8-flash-tts` (read its `get_model_params`) |\n| A Cartesia clone | [Cartesia Sonic](references/voices/cartesia.md) |\n| An ElevenLabs clone, steady read | [ElevenLabs v2](references/voices/elevenlabs-v2.md) |\n| An ElevenLabs clone, expressive delivery or dialogue | [ElevenLabs v4](references/voices/elevenlabs-v4.md) |\n| An explicitly requested v3 workflow | [ElevenLabs v3](references/voices/elevenlabs-v3.md) |\n| Directed Fish performances, private Fish clones, or multi-speaker scenes | [Fish Drama 3](references/voices/fish.md) |\n| HeyGen public voices or an existing HeyGen instant clone | [HeyGen Voice](references/voices/heygen.md) |\n| A named alternative or a specific dialect/voice match | [MiniMax and xAI](references/voices/alternatives.md) |\n\nDefault to ElevenLabs v4 for stock and designed ElevenLabs voices. Speak a clone with its provider's model: Cartesia Sonic for a Cartesia clone; v2 for a steady read or v4 for expressive delivery or dialogue from an ElevenLabs clone. Pass the model explicitly rather than relying on the omitted-model v4 default, and keep it for the whole project. V3 is legacy; use it only when the user asks for it. V2 can use public stock IDs, but v4 is the stock choice. If a user explicitly requests v2 stock speech, use a compatible public `voice_id` instead of silently switching. Do not automatically route stock corporate or long-form narration to v2.\n\n## Multiple speakers in one run\n\nElevenLabs v4 supports up to 10 voices in one `generate_speech` request through `extras.dialogue`. Pass ordered turns with `speaker`, `text`, and either `voice_id` or a saved Character voice (cloned or designed) `character_id` for each turn. Google Flash and Flash-Lite TTS also support two-speaker dialogue. Fish Drama 3 support ordered turns through the same `extras.dialogue` contract, with a Creative Claw limit of 16 speakers and 100 turns. Read the selected model's current schema and [v4 dialogue examples](references/voices/elevenlabs-v4-guide.md) before submission. Omit top-level voice selectors and `text` for dialogue. If a cached OpenAI tool schema still requires `text`, pass `text: \"\"`.\n\nFor non-English, mixed-language or less common languages, read [language routing](references/voices/languages.md) before selecting a voice. A model supporting a language does not guarantee every stock voice has a native accent.\n\n## Execute and deliver\n\n1. Establish text, target language/accent and delivery. Preserve supplied words unless rewriting is requested. Prepare the actual speech payload using the localization guidance; Hebrew must be fully vowelized before submission, including every `extras.dialogue[].text`.\n2. Read the selected model's reference and current `get_model_params`. Reuse a current schema already loaded in this task. Use `list_models({ category: \"speech\" })` only when discovering alternatives.\n3. Select a language-appropriate stock voice or saved Character and only settings accepted by that model. Never copy prompting tags across models.\n4. Generate the requested take. For a new clone or uncertain pronunciation, offer a short audition before a long production, not an unrequested paid model sweep.\n5. Follow queued results with `check_job` as directed by [job recovery](references/job-recovery.md). Show the completed audio through the available native preview.\n6. Keep the Character ID and voice/model choice available for the requested continuation. Speech added to a video is an audio overlay, not lip-sync, and a video's Character reference does not bring its voice into native video audio. For speech in video, read [voice in video](references/video/voice-in-video.md).\n"
}

SHA-256 of public snapshot: 6a55c2de59898dccec6b66e83c04a4aead8254bc597f9ceacdeeb84572674688