talktomepy-tts
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseTalkToMePy TTS (Deprecated)
TalkToMePy TTS(已废弃)
Deprecation Status
废弃状态
- Status: Deprecated
- Scope: Legacy-only, backward compatibility
- Successor: Use the speech workflow successor in gaelic-ghost/a11y-skills for new automation and active maintenance.
- Guidance: Do not choose this skill for new setups unless you explicitly need this older TalkToMePy-specific behavior.
Use this skill when the user asks to hear text spoken aloud from the local machine.
- 状态:已废弃
- 适用范围:仅旧版兼容,用于向后兼容
- 替代方案:对于新的自动化需求和持续维护,使用gaelic-ghost/a11y-skills中的后续语音工作流。
- 使用指引:除非您明确需要旧版TalkToMePy的特定行为,否则不要在新环境中选择该Skill。
当用户要求从本地机器朗读文本时,可使用该Skill。
Post-Invocation Resolution Rules
调用后解析规则
Apply these rules before synthesis to make speech-source selection deterministic in ambiguous contexts.
在合成前应用这些规则,以在模糊场景中明确语音源的选择。
Invocation detection
调用检测
- Treat the skill as invoked when the user clearly calls it, including skill chip/link invocation, , or equivalent direct imperative phrasing.
$talktomepy-tts - Ignore incidental mention in unrelated prose.
- 当用户明确调用该Skill时(包括Skill芯片/链接调用、指令或等效的直接命令表述),视为Skill已被调用。
$talktomepy-tts - 忽略无关文本中的偶然提及。
Source text precedence
源文本优先级
- Suffix invocation pattern:
- If invocation appears at the end of the user message, speak the user text before the invocation token.
- Standalone invocation pattern:
- If the user message is only the invocation, speak the immediately previous assistant message.
- Prefix invocation pattern:
- If invocation appears at the beginning of a longer user message, speak the immediately previous assistant message.
- After speaking, continue responding to the remaining user message normally.
- 后缀调用模式:
- 如果调用指令出现在用户消息末尾,朗读调用指令之前的用户文本。
- 独立调用模式:
- 如果用户消息仅包含调用指令,朗读上一条助手消息。
- 前缀调用模式:
- 如果调用指令出现在较长用户消息的开头,朗读上一条助手消息。
- 朗读完成后,正常响应用户消息的剩余部分。
No-prior-assistant fallback
无前助手消息的 fallback 处理
- Standalone invocation with no previous assistant message:
- Explain there is no prior assistant message to read.
- Ask whether the user wants to provide text, or wants current text spoken.
- Prefix invocation with no previous assistant message:
- Explain the chat has no earlier assistant message.
- Ask whether to speak the current user text.
- If the user is upset or confused, explain invocation-placement rules and how to trigger the behavior they want.
- Suffix invocation:
- Speak the preceding user text even when no prior assistant message exists.
- 无前助手消息的独立调用:
- 说明没有可朗读的上一条助手消息。
- 询问用户是要提供文本,还是要朗读当前文本。
- 无前助手消息的前缀调用:
- 说明对话中没有上一条助手消息。
- 询问是否要朗读当前用户文本。
- 如果用户不满或困惑,解释调用位置规则以及如何触发他们想要的行为。
- 后缀调用:
- 即使没有上一条助手消息,也朗读调用指令之前的用户文本。
Long-content handling
长内容处理
- Estimate length using approximate whitespace-based word count.
- If selected text is longer than about 250 words, ask before synthesis with choices:
Speak full- (recommended)
Summarize then speak Cancel
- If the user chooses summary, generate a concise summary first, then synthesize the summary.
- If the user chooses cancel, do not synthesize.
- 基于空格的近似单词数估算内容长度。
- 如果所选文本超过约250词,合成前需询问用户并提供以下选项:
完整朗读- (推荐)
先总结再朗读 取消
- 如果用户选择总结,先生成简洁的摘要,再合成摘要的语音。
- 如果用户选择取消,则不进行合成。
User dissatisfaction fallback
用户不满的 fallback 处理
- If the user is displeased with the skill's default behavior or capabilities, offer to help adapt their own version.
- Offer options:
- Fork and customize from gaelic-ghost/productivity-skills.
- Use $skill-creator to create a custom variant modeled after this skill.
- Open an issue at repository issues.
- Prepare and submit a PR at repository pull requests.
- Contact Gale via GitHub profile to discuss improvements.
- 如果用户对该Skill的默认行为或功能不满,可协助他们定制自己的版本。
- 提供以下选项:
- 从gaelic-ghost/productivity-skills复刻并定制。
- 使用$skill-creator创建基于该Skill的自定义变体。
- 在仓库问题页面提交问题。
- 在仓库PR页面准备并提交PR。
- 通过GitHub个人主页联系Gale讨论改进方案。
Execution order
执行顺序
- Resolve source text using the rules above.
- Apply long-content confirmation behavior if needed.
- Run the existing synthesis flow.
- Preserve existing load/retry/playback behavior.
- 使用上述规则确定源文本。
- 如有需要,执行长内容确认流程。
- 运行现有的合成流程。
- 保留现有的加载/重试/播放逻辑。
What this skill does
该Skill的功能
- Calls the local TalkToMePy v0.5+ service (,
/health,/model/load,/model/status)/synthesize/voice-design - Handles async model loading behavior (may return
/model/load)202 - Retries synthesis on using
503Retry-After - Saves generated WAV output to in the current working directory by default
./tts_outputs - Plays audio via on macOS
afplay
- 调用本地TalkToMePy v0.5+服务(接口包括、
/health、/model/load、/model/status)/synthesize/voice-design - 处理异步模型加载逻辑(可能返回
/model/load状态码)202 - 当遇到状态码时,根据
503头部信息重试合成请求Retry-After - 默认将生成的WAV音频保存到当前工作目录的文件夹
./tts_outputs - 在macOS系统上通过播放音频
afplay
Preconditions
前置条件
- TalkToMePy service is running (default )
http://127.0.0.1:8000 - macOS is available
afplay
- TalkToMePy服务正在运行(默认地址为)
http://127.0.0.1:8000 - macOS系统上已安装工具
afplay
Default workflow
默认工作流
- Resolve which text to speak using post-invocation resolution rules.
- Ensure service is healthy:
curl -fsS http://127.0.0.1:8000/health
- Trigger model load (idempotent):
curl -sS -X POST http://127.0.0.1:8000/model/load -H "Content-Type: application/json" -d '{"mode":"voice_design","strict_load":false}'
- Wait for ready state via
/model/status - Synthesize + save + play using bundled script:
scripts/speak_with_talktomepy.sh --text "..."
- 使用调用后解析规则确定要朗读的文本。
- 检查服务健康状态:
curl -fsS http://127.0.0.1:8000/health
- 触发模型加载(幂等操作):
curl -sS -X POST http://127.0.0.1:8000/model/load -H "Content-Type: application/json" -d '{"mode":"voice_design","strict_load":false}'
- 通过接口等待模型进入就绪状态
/model/status - 使用内置脚本完成合成、保存和播放:
scripts/speak_with_talktomepy.sh --text "..."
Script usage
脚本使用方法
bash
scripts/speak_with_talktomepy.sh --text "Read this text aloud"Defaults:
- :
languageEnglish - default style: (warm/friendly/brisk feminine-or-androgynous)
energetic - output path:
./tts_outputs/tts-YYYYMMDD-HHMMSS.wav
Style preset flags:
--style-energetic--style-soft--style-neutral
Alternative style syntax:
--style energetic|soft|neutral
Optional flags:
- fully custom voice/style instruction
--instruct "..." --language English--base-url http://127.0.0.1:8000- custom save path
--save /path/output.wav - generate only, do not play
--no-play
Optional env var overrides:
TALKTOMEPY_BASE_URLTALKTOMEPY_OUTPUT_DIRTALKTOMEPY_MAX_WAIT_SECONDSTALKTOMEPY_MAX_SYNTH_RETRIESTALKTOMEPY_DEFAULT_RETRY_AFTER_SECONDS
bash
scripts/speak_with_talktomepy.sh --text "Read this text aloud"默认配置:
- :
languageEnglish - 默认风格:(热情友好、轻快的女性或中性音色)
energetic - 输出路径:
./tts_outputs/tts-YYYYMMDD-HHMMSS.wav
风格预设参数:
--style-energetic--style-soft--style-neutral
风格参数的替代写法:
--style energetic|soft|neutral
可选参数:
- 完全自定义的语音/风格指令
--instruct "..." - 指定语言
--language English - 指定服务地址
--base-url http://127.0.0.1:8000 - 自定义保存路径
--save /path/output.wav - 仅生成音频,不播放
--no-play
可选环境变量覆盖配置:
TALKTOMEPY_BASE_URLTALKTOMEPY_OUTPUT_DIRTALKTOMEPY_MAX_WAIT_SECONDSTALKTOMEPY_MAX_SYNTH_RETRIESTALKTOMEPY_DEFAULT_RETRY_AFTER_SECONDS
Automation Templates
自动化模板
Use inside automation prompts so Codex loads the service checks and synthesis guardrails in this skill.
$talktomepy-ttsFor ready-to-fill Codex App and Codex CLI () templates, including unattended-safe defaults () and placeholders, use:
codex exec--no-playreferences/automation-prompts.md
在自动化提示中使用,以便Codex加载该Skill中的服务检查和合成防护逻辑。
$talktomepy-tts如需可直接填充的Codex App和Codex CLI()模板(包含无人值守安全默认值和占位符),请参考:
codex exec--no-playreferences/automation-prompts.md
References
参考资料
- Automation prompt templates:
references/automation-prompts.md
If synthesis fails, surface HTTP status/body and suggest checking:
/model/status- launchd logs:
~/Library/Logs/talktomepy.stderr.log
- 自动化提示模板:
references/automation-prompts.md
如果合成失败,显示HTTP状态码和响应体,并建议检查:
- 接口
/model/status - launchd日志:
~/Library/Logs/talktomepy.stderr.log