Speaklna 配合 Codex
Codex 每轮干完,念一句话告诉你结果;你也可以让它把某段内容念出来。
需要先从 Mac App Store 安装 Speaklna 并打开过一次,还需要 Node.js 18 或更新。
设置
npm install -g speaklna
speaklna setup codex
也可以不安装:npx -y speaklna setup codex。更推荐全局安装,这样钩子指向的是固定路径。
setup 会先列出所有改动,问你 y/N。原件会备份一次,叫 <文件>.speaklna-bak。
它会改什么
~/.codex/config.toml加一段带标记的 [mcp_servers.speaklna]~/.codex/hooks.json加一个 Stop 钩子(hooks.Stop)~/.codex/AGENTS.md加一段带标记的🔊(喇叭 emoji)规矩。如果你有 AGENTS.override.md,就写进那一份,因为 Codex 优先读它
如果你设了 CODEX_HOME,上面的文件就在那个目录里。
多一步
Codex 不会运行没点过信任的新钩子。打开 Codex,输入 /hooks,把 speaklna 那条钩子点成信任。只需要做一次。
试一下
新开一个 Codex 会话,让它完整做完一轮,随便问个简单的问题就行。你应该会听到类似“Codex,myproject:……”的一句话。逗号后面是你运行它的文件夹名。
只想确认 App 和这个包连通了,可以在终端里运行:
speaklna say "你好"
如果模型的回复最后没有 🔊 那一行,就不会念。新开一个会话,让它读到规矩。
让它念点东西
setup 同时也给 Codex 接上了 Speaklna 的工具。直接说就行,比如:
把上面的总结念给我听。
Codex 会调用 speak 工具,由 Speaklna 用你选的音色念出来。这和自动报告是两回事。随时按 ⌥S 停止,也可以说“别念了”。
要注意
- Speaklna 用的是 Codex 的 Stop 钩子,不是旧的 notify 设置,不会占用你原来给 notify 配的东西。
- 在
/hooks里点信任之前,不会自动念报告;MCP 朗读工具不受影响。 - 报告会排队,同一会话只留最新一句;别的 App 占着麦克风时 AI 不出声;⌥T 和 ⌥S 永远优先。详细说明。
卸载
speaklna uninstall codex
它会先列出要从 Codex 里删掉的内容,问过你再删。只删 setup 加的东西。