mcpField
C
characteristic-voice

characteristic-voice

github.com/noizai创意与媒体5312.8k 次安装4 周前更新
代码仓库

关于 characteristic-voice

characteristic-voice 为 AI Agent 提供更有情感表现力的语音,包含情绪控制、口语填充词和预设。支持 Noiz 与本地 Kokoro 后端。

主要功能

  1. 01预设情绪与语速
  2. 02自定义情绪和语速
  3. 03口语填充词指南
  4. 04Noiz 与本地 Kokoro 后端
  5. 05基于参考音频克隆声音

适用场景

  1. 01制作温柔的晚安语音
  2. 02调整安慰或庆祝语音表达
  3. 03根据获准使用的参考音频生成语音

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/noizai/skills --skill characteristic-voice

安装后在 Claude Code 中输入/characteristic-voice确认已加载。

附带文件scripts/speak.sh

详细介绍

characteristic-voice

让你的 AI Agent 听起来像一位真实的伙伴——会叹气、会笑、会犹豫,也会流露真情实感。

凭据

变量必需说明
NOIZ_API_KEY使用 Noiz 后端时必需来自 developers.noiz.ai 的 API 密钥。使用本地 Kokoro 后端时无需此密钥。

为方便使用,脚本会将规范化后的密钥副本保存到 ~/.noiz_api_key(权限模式为 600)。设置方法:

bash skills/characteristic-voice/scripts/speak.sh config --set-api-key YOUR_KEY

先决条件

随附的 speak.sh 脚本在运行时需要 curl 和 python3。根据你使用的后端和功能,你可能还需要:

工具适用场景安装提示
curl、python3始终需要(核心脚本)通常已预装
kokoro-ttsKokoro(本地/离线)后端uv tool install kokoro-tts
yt-dlp下载用于声音克隆的参考音频github.com/yt-dlp/yt-dlp
ffmpeg剪辑参考音频片段ffmpeg.org
rg(ripgrep)搜索字幕文件github.com/BurntSushi/ripgrep

此技能本身不会安装这些工具——请在你的环境中手动配置。

隐私与数据传输

  • Noiz 后端:使用 Noiz 后端时,你要朗读的文本以及提供的任何参考音频都会发送到 https://noiz.ai/v1。如果提供 --ref-audio,该音频文件会被上传用于声音克隆。
  • Kokoro 后端:完全在本地运行——不会有数据离开你的设备。
  • 如果需要完全离线处理,请选择 Kokoro 后端(--backend kokoro)。

触发词

  • 像……一样说话
  • 像……一样交谈
  • 用……的方式说话
  • 伙伴般的声音
  • 安慰我
  • 让我开心起来
  • 听起来更像真人

两个诀窍

  1. 非词汇填充音——在自然停顿处加入一些人类常有的声音(嗯、哈哈、啊),让语音听起来更生动
  2. 情绪调节——根据当下情境调整温暖、喜悦、悲伤和柔情的程度

填充音示例

声音感受用途
hmm...思考、温和回应安慰、沉思
ah...恍然大悟、轻微惊讶发现新事物、过渡
uh...犹豫、共情需要谨慎的时刻
heh / hehe顽皮、淘气打趣、轻松时刻
haha笑声喜悦、幽默
aww温柔、同情深度安慰
oh? / oh!惊讶、关注对消息作出回应
pfft憋笑顽皮地表示怀疑
whew如释重负紧张过后
~(波浪号)拉长、富有旋律感的结尾温暖、俏皮

规则:每条简短消息最多使用 2–4 个填充音。将它们放在自然停顿处——句首、思路转换处。填充音后加 ...,留出片刻静默;词尾加 ~,增添温暖感。

预设

晚安

温柔、温暖,略带困意。语速放慢。

早安

温暖、愉快,但不过分热情。

安慰

柔和、善解人意、不慌不忙。留出空间。不要急着“解决”问题。

庆祝

兴奋、自豪、由衷地开心。

闲聊

放松、俏皮、自然。

使用角色的声音

当用户说类似 “用赫敏的声音说话” 或 “听起来像托尼·斯塔克” 的话时,先检查 skills/characteristic-voice/ 中是否已有参考音频文件。如果有,就直接使用 --ref-audio。

如果没有参考音频,你可以创建一个——但请先阅读下方的警告。

准备参考音频(一次性设置)

你需要一段 10–30 s 的目标声音 WAV 音频片段。可从以下来源获取:

  1. 用户提供的音频 — 最稳妥的选择。请用户提供自己的录音。
  2. 公有领域/采用 CC 许可的片段 — 搜索可自由使用的素材。
  3. 从在线视频提取 — 可使用 yt-dlp 和 ffmpeg 等工具下载并剪辑音频。示例工作流:
yt-dlp "URL" --write-auto-sub --sub-lang en --skip-download -o tmp/clip
rg -n "target line" tmp/clip.en.vtt
yt-dlp "URL" -x --audio-format wav --download-sections "*00:00:00-00:00:25" -o tmp/clip
ffmpeg -i tmp/clip.wav -ss 00:00:02 -to 00:00:20 skills/characteristic-voice/character.wav

版权与隐私警告:从受版权保护的媒体(电影、电视节目、YouTube)下载并重复使用他人的声音,可能会根据你所在司法管辖区的法律侵犯版权或人格权。请勿上传私人录音,或未经许可使用的素材。 使用 Noiz 后端时,参考音频会发送到 https://noiz.ai/v1 进行声音克隆。如果你对此有所顾虑,可以改用本地 Kokoro 后端。

使用参考音频
bash skills/characteristic-voice/scripts/speak.sh \
  --preset goodnight -t "Hmm... rest well~ Sweet dreams." \
  --ref-audio skills/characteristic-voice/character.wav -o night.wav

--ref-audio 标志会将文件上传到 Noiz 后端进行声音克隆(需要 NOIZ_API_KEY)。


用法

此技能提供 speak.sh,这是一个封装了 tts 技能并附带适合伙伴交流预设的脚本。

# 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 mp3

运行 bash skills/characteristic-voice/scripts/speak.sh --help 可查看所有选项。

Agent 写作指南

  1. 轻柔开场 — 先用语气词(“嗯……”“哦~”),而不是直接说正题
  2. 呼应情绪 — 对方情绪低落时温柔回应,对方兴致高时跟上节奏
  3. 简短表达 — 说 1–3 句话,像朋友发来的语音消息
  4. 温暖收尾 — 以拉近关系的话语结束(“我在这儿”“明天见~”)
  5. 不要说教 — 倾听并保持关注;不要擅自给建议

评论

支持 Markdown