Openclaw-master-skills sag

ElevenLabs text-to-speech with mac-style say UX.

install
source · Clone the upstream repo
git clone https://github.com/LeoYeAI/openclaw-master-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/LeoYeAI/openclaw-master-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/sag" ~/.claude/skills/leoyeai-openclaw-master-skills-sag && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/LeoYeAI/openclaw-master-skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/sag" ~/.openclaw/skills/leoyeai-openclaw-master-skills-sag && rm -rf "$T"
manifest: skills/sag/SKILL.md
source content

sag

Use

sag
for ElevenLabs TTS with local playback.

API key (required)

  • ELEVENLABS_API_KEY
    (preferred)
  • SAG_API_KEY
    also supported by the CLI

Quick start

  • sag "Hello there"
  • sag speak -v "Roger" "Hello"
  • sag voices
  • sag prompting
    (model-specific tips)

Model notes

  • Default:
    eleven_v3
    (expressive)
  • Stable:
    eleven_multilingual_v2
  • Fast:
    eleven_flash_v2_5

Pronunciation + delivery rules

  • First fix: respell (e.g. "key-note"), add hyphens, adjust casing.
  • Numbers/units/URLs:
    --normalize auto
    (or
    off
    if it harms names).
  • Language bias:
    --lang en|de|fr|...
    to guide normalization.
  • v3: SSML
    <break>
    not supported; use
    [pause]
    ,
    [short pause]
    ,
    [long pause]
    .
  • v2/v2.5: SSML
    <break time="1.5s" />
    supported;
    <phoneme>
    not exposed in
    sag
    .

v3 audio tags (put at the entrance of a line)

  • [whispers]
    ,
    [shouts]
    ,
    [sings]
  • [laughs]
    ,
    [starts laughing]
    ,
    [sighs]
    ,
    [exhales]
  • [sarcastic]
    ,
    [curious]
    ,
    [excited]
    ,
    [crying]
    ,
    [mischievously]
  • Example:
    sag "[whispers] keep this quiet. [short pause] ok?"

Voice defaults

  • ELEVENLABS_VOICE_ID
    or
    SAG_VOICE_ID

Confirm voice + speaker before long output.

Chat voice responses

When Peter asks for a "voice" reply (e.g., "crazy scientist voice", "explain in voice"), generate audio and send it:

# Generate audio file
sag -v Clawd -o /tmp/voice-reply.mp3 "Your message here"

# Then include in reply:
# MEDIA:/tmp/voice-reply.mp3

Voice character tips:

  • Crazy scientist: Use
    [excited]
    tags, dramatic pauses
    [short pause]
    , vary intensity
  • Calm: Use
    [whispers]
    or slower pacing
  • Dramatic: Use
    [sings]
    or
    [shouts]
    sparingly

Default voice for Clawd:

lj2rcrvANS3gaWWnczSX
(or just
-v Clawd
)