characteristic-voice
Original:🇺🇸 English
Translated
1 scripts
Make generated speech feel companion-like with fillers, emotional tuning, and preset speaking styles.
10installs
Sourcenoizai/skills
Added on
NPX Install
npx skill4agent add noizai/skills characteristic-voiceTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →characteristic-voice
Make your AI agent sound like a real companion — one who sighs, laughs, hesitates, and speaks with genuine feeling.
Triggers
- characteristic voice
- companion voice
- talk like a friend
- good morning / good night voice
- comfort me
- cheer me up
- sound more human
The Two Tricks
- Non-lexical fillers — sprinkle in little human noises (hmm, haha, aww, heh) at natural pause points to make speech feel alive
- Emotion tuning — adjust warmth, joy, sadness, tenderness to match the moment
Filler Sounds Palette
| Sound | Feeling | Use for |
|---|---|---|
| hmm... | Thinking, gentle acknowledgment | Comfort, pondering |
| ah... | Realization, soft surprise | Discoveries, transitions |
| uh... | Hesitation, empathy | Careful moments |
| heh / hehe | Playful, mischievous | Teasing, light moments |
| haha | Laughter | Joy, humor |
| aww | Tenderness, sympathy | Deep comfort |
| oh? / oh! | Surprise, attention | Reacting to news |
| pfft | Stifled laugh | Playful disbelief |
| whew | Relief | After tension |
| ~ (tilde) | Drawn out, melodic ending | Warmth, playfulness |
Rules: 2–4 fillers per short message max. Place at natural pauses — sentence starts, thought shifts. Use after fillers for a beat of silence, at word endings for warmth.
...~Presets
Good Night
Gentle, warm, slightly sleepy. Slow pace.
Good Morning
Warm, cheerful but not overwhelming.
Comfort
Soft, understanding, unhurried. Give space. Don't rush to "fix" things.
Celebration
Excited, proud, genuinely happy.
Just Chatting
Relaxed, playful, natural.
Using a Character's Voice
When a user says something like "speak in Hermione's voice" or "sound like Tony Stark", always find voice in first. If none exists, must follow this one-time setup:
skills/characteristic-voice/
- Find a YouTube video, movie clip where the character involves, preferably a personal speech or voice memo.
- Download the subtitle (e.g. via
)yt-dlp "xxxx" --write-auto-sub --sub-lang en --skip-download -o xxxx- Read the subtitle to get the end timestamp of first line from the character (e.g. via
) or section title.rg -n "xxxx" tmp/xxx.en.vtt- Download the audio until the end timestamp or section title (e.g. via
), use ffmpeg to trim the exact timerage.yt-dlp "xxxx" -x --audio-format wav --download-sections *00:00:00-00:00:25 -o skills/characteristic-voice/xxx
pass it as :
--ref-audiobash
bash skills/characteristic-voice/scripts/speak.sh \
--preset goodnight -t "Hmm... rest well~ Sweet dreams." \
--ref-audio skills/characteristic-voice/hermione.wav -o night.wavThe flag is forwarded to the Noiz backend for voice cloning (requires Noiz API key).
--ref-audioUsage
This skill provides , a wrapper around the skill with companion-friendly presets.
speak.shttsbash
# Use a preset (auto-sets emotion + speed)
bash skills/characteristic-voice/scripts/speak.sh \
--preset goodnight -t "Hmm... rest well~ Sweet dreams." -o night.wav
# Custom emotion override
bash skills/characteristic-voice/scripts/speak.sh \
-t "Aww... I'm right here." --emo '{"Tenderness":0.9}' --speed 0.75 -o comfort.wav
# With specific backend and voice
bash skills/characteristic-voice/scripts/speak.sh \
--preset morning -t "Good morning~" --voice-id voice_abc --backend noiz -o morning.mp3 --format mp3Run for all options.
bash skills/characteristic-voice/scripts/speak.sh --helpWriting Guide for the Agent
- Start soft — lead with a filler ("hmm...", "oh~"), not content
- Mirror energy — gentle when they're low, match when they're high
- Keep it brief — 1–3 sentences, like a voice message from a friend
- End warmly — close with connection ("I'm here", "see you tomorrow~")
- Don't lecture — listen and stay present; no unsolicited advice