Mac 上给 Codex 语音输入:整理成可审阅的指令
在 Mac 上用 ListenIn 给 Codex 听写指令,理顺目标和约束而不新增任务,并检查复制卡片、权限、中英术语和本地清稿的边界。
ListenIn 操作步骤于 2026 年 10 月 12 日依据 0.3.7 测试构建核实。当日公开下载仍为 0.3.6,较新的控件可能尚未包含在该公开版本中。 查看公开版本
先看结论
用 ListenIn 给 Codex 输入可审阅的指令:先点进输入框,按配置的触发键开始口述,结束后检查文字,再自行发送。在 ListenIn 设置 → 听写中开启「在 AI 编码工具里写成 prompt」,它会按内容组织段落或列表,理顺目标和约束,不替你执行任务。
一个好用的口述编程指令,需要说明改什么、为什么改,以及哪些东西不能动。把口语逐行加上项目符号,并不一定能把这些关系理顺。目标应该是得到一段可以先检查、再交给编码工具执行的文字。
ListenIn 是 Mac 语音输入软件:在本机识别语音,整理识别出的文字,安全时插入当前输入框。在识别到的 Codex 桌面 App 中,可选的指令清稿模式会把口述整理成适合 AI agent 阅读的要求。它不会读取你的仓库、修复代码,也不会自动发送指令。
先区分听写和实时语音对话
OpenAI 的语音文档区分了两种用途:听写先把语音变成文字,再由你发送;实时语音可以边对话边讨论、调整任务。具体入口和可用性取决于当前 App、账号和工作区。如果原生功能已经满足需求,先用它即可。
| 想做的事 | 可以先尝试 |
|---|---|
| 来回讨论正在执行的任务 | 编码工具可用的实时语音功能 |
| 发出指令前检查并编辑文字 | 原生听写或系统范围的语音输入软件 |
| 在 Codex、邮件、笔记中使用同一个快捷键 | ListenIn 这类 Mac 语音输入软件 |
| 识别和清稿都留在本机 | 安装所需模型后,让 ListenIn 在离线模式使用 localhost Ollama |
听写在本机完成,不等于后续编码 agent 也在本机运行。把文字发送给 Codex 之后,处理方式遵循 Codex 自己的设置与数据政策。本地与云端听写的边界解释了这一区别。
在 Codex 输入框里配置 ListenIn
- 在 macOS 14 或以上安装 ListenIn,完成麦克风、语音识别和辅助功能设置。macOS 14–15 还需要确认所用的听写语言已经下载。
- 打开 ListenIn 设置 → 听写,开启 「在 AI 编码工具里写成 prompt」。它负责在识别到的编码 App 中选择指令清稿,普通 App 的清稿强度是另一项设置。
- 在同一页确认触发键。默认是 fn/地球键;如果 macOS 已占用 fn,新安装可能使用右侧 Command。以你当前设置为准。
- 打开 Codex 任务,点击输入框,按触发键开始口述,再按一次结束。如果配置了按住交互,就使用该交互。
- 检查插入的文字,修正遗漏或标识符,再自行发送。
第一次先用无副作用的句子检查焦点和文字插入,不必让编码 agent 为了测试听写而修改生产数据。如果 fn 打开了表情或切换了输入法,先看快捷键冲突处理。
先理顺意思,再决定段落或列表
当前指令清稿规则要求把目标放在前面,合并重复请求,把理由和限制放到相关行动旁边。简单要求可以只用一句话,多项独立要求才考虑分条。无论使用哪种格式,都不应该新增你没说过的测试、工具、路径或实现方案。
下面的输出来自 2026 年 10 月 12 日对 ListenIn 内置清稿的开发验证。它是行为示例,不是准确率测评,也不保证每次口述都会产生相同文字。
测试原稿(模拟口述表达):
那个设置里按钮太小了,然后点起来容易点错,我想让它更容易点击,但是别把整个页面都改了。
整理后的指令:
提高设置按钮的点击便利性,解决按钮太小、容易误点的问题;不要改动整个页面。
这段文字明确了行动,保留误点的理由和修改范围,没有自行决定按钮要改成多大,也没有新增整页设计方案。真正的不确定性要留下,例如「我不确定是不是缓存的问题,先检查原因,不要直接清缓存」,不能整理成「清理缓存」。
结果仍取决于识别器和清稿模型。发现术语或限制不对时,在 听写历史 中对照原稿和成稿。清稿强度选择说明了应该检查哪些内容。
出现复制卡片,没有插入 Codex 时怎么办
复制卡片表示结果已经保留,但 ListenIn 无法确认自动插入足够安全。看到光标,不等于 App 已经通过辅助功能暴露了可写入的输入框。
| 检查项 | 下一步 |
|---|---|
| 缺少辅助功能权限 | 给当前安装的 ListenIn 授权,再重试 |
| 录音或清稿时换了 App、输入框或选区 | 重新聚焦目标,点击复制,再手动粘贴 |
| 输入框受保护,或终端开启了安全键盘输入 | 保留安全保护,在合适的位置手动复制粘贴 |
| App 没提供足够的输入框信息 | 使用复制降级,不必反复听写同一句话 |
点击 复制 会把结果放入剪贴板,原卡片替换成短暂的 已复制 提示,不会替你发送。确认文字所在位置后,再按 Enter。
如果使用 Terminal、iTerm2 中的 Codex CLI,插入能力还取决于终端和安全输入状态。终端听写故障指南单独介绍了这条路径。
桌面 App 和浏览器输入框的识别边界
ListenIn 在录音开始时记录目标。原生编码 App 通过 App 身份识别;如果当前输入框的辅助功能父级提供网页 URL,也可以识别受支持的 AI 网站,以及部分网页邮件、聊天和文档场景。搜索框和密码框不自动进入 agent 指令模式。
它不会读取你输入的正文或仓库来决定语气。浏览器能识别到什么,取决于浏览器暴露的辅助功能信息。未知网站或读取不到 URL 时,回到 App 级别的判断;仅凭标题里出现编程关键词,不足以认定它是编码输入框。
中文要求里保留英文标识符
可以口述包含 token、cache、unchanged 等英文词的中文要求。项目词汇可放进个人词典;反复出现、含义明确的错误可使用显式替换规则。路径和符号仍有歧义时,拼读或手动修正更稳妥。
如果原稿里的英文已经识别错了,先看中英混合听写指南。指令排版无法可靠还原一个没有被识别出来的标识符。
哪一步留在本机,哪一步需要网络
语音识别在 Mac 上运行。内置清稿把识别出的文字发送到 ListenIn 服务,自带 API Key 的清稿发送到你选择的模型提供方。安装好所需模型后,离线模式使用 localhost Ollama,可以把清稿也留在同一台 Mac 上。原始听写和跳过模型的短输入还有各自的路径,完整说明见按模式列出的安全边界。
需要本地清稿时,先按Ollama 配置指南设置,再断网测试输入框。成功的断网听写只验证这次听写流程,不代表把指令发给 Codex 之后也不会联网。
在自己的 Mac 上试一下
免费档不用注册;音频不出本机。
由 ListenIn 产品方发布;第三方信息以文中标注的来源与日期为准。