AI 接线员 (AI Commander) — 把耳机的播放/暂停媒体键映射成快捷键,一键唤起语音输入、和 AI 对话、vibe coding。macOS + Windows · 语音输入 · push-to-talk · hotkey
Swift
15
33 commits
updated Jul 27, 2026
用耳机上的「播放 / 暂停」键,一键接通你的 AI —— 开口说,文字直接落进光标。
随口说,出成稿 · 全程本地 · 为爱发电,永久免费
中文 · English
⭐ 觉得有用,点个 Star 支持一下
语音输入 · 本地语音识别 · 本地大模型 · 离线 · 媒体键映射 · push-to-talk · voice input · vibe coding · 接线员 · macOS · Windows
以前打电话,是一件很具体的事。
听筒有重量,电话线会绕在手边。号码拨出去以后,要等另一头有人接起。电话把相隔很远的两个人接在一起,声音从一根细细的线里传过来。
后来,电话被收进一块薄薄的屏幕里。我们不再守在电话旁,等一个人。听筒悄悄退场,成了电影里的道具。
我一直很喜欢那个简单的动作:拿起听筒,线路接通,然后开口。
在这个时代,要是还有这样一部电话呢?
过去,电话把人与人连接在一起。
现在,我们用它,和未来说话。
AI 接线员 v2.1 有两种独立的使用方式:在 Apple 芯片 Mac 或 Windows x64 电脑上直接使用内置的本地语音输入;或只做耳机键映射,调用已经安装的语音工具。使用本地语音不需要安装 Typeless、微信输入法或任何第三方输入法。
macOS 版整体采用 Liquid Glass 设计规范;Windows 版遵循 Fluent 2。两个平台的听写悬浮胶囊都会随「录音 → 识别 → 润色」状态变化,完成即收起,不打断手头的事。
下面是一段典型的工作口述,并用当前生产版管线实际处理。确定性规则先清理口语词,本地大模型再整理重复、数字和标点;关键信息保持不变。
| 阶段 | 输出 |
|---|---|
| 原始转写 | 嗯,我我看了一下,项目预算大概三千五百块,然后然后下周三上午十点半开会,订单号是零零八六二一,呃,地址是三号楼二单元。 |
| 规则清理 | 我我看了一下,项目预算大概三千五百块,然后下周三上午十点半开会,订单号是零零八六二一,地址是三号楼二单元。 |
| 本地大模型润色 | 我看了下,项目预算大概 3500 元,然后下周三上午 10:30 开会,订单号是 008621,地址是三号楼二单元。 |
| 组件 | 支持语言 | 擅长 | 大小 |
|---|---|---|---|
| Qwen3-ASR · 高精度(推荐) | 30 种语言 + 22 种中文方言 | 中英混说、长口述;16GB+ 机型 | 约 840-990MB |
| SenseVoice · 轻量 | 中、英、粤、日、韩 | 日常口述;8GB 机型 | 约 220-290MB |
| Qwen3-8B · 语义增强(可选) | 中文为主,支持中英混说 | 去重复、数字格式、断句分段 | 约 4.7GB |
模型均按真实口述场景,通过本地数据及开源数据集,经过选型和调优。 只用按键映射时,无需下载任何模型。
前往 Releases 下载。
| 平台 | 文件 | 能力 |
|---|---|---|
| macOS(Apple 芯片) | AI.Commander_Mac_v2.1.dmg | 本地语音输入 + 耳机键映射 |
| Windows(x64) | AI.Commander_Win_v2.1.exe | 本地语音输入 + 耳机键映射 |
应用未做 Apple 公证,首次打开可能提示「已损坏」或「身份不明的开发者」。软件没问题,任选一种处理:
sudo xattr -cr /Applications/AI接线员.app
首次启动会引导授权辅助功能与麦克风,并可顺手检测耳机播放键。
不会。总开关开启后,AI 接线员会接管并吞掉这次播放键事件:本地语音模式只控制录音,按键映射模式只发送目标工具的快捷键。它不会一边启动 Typeless 一边暂停音乐,也不会在结束语音时自动恢复播放。
这也意味着,总开关开启期间,耳机播放键不再控制媒体;关闭总开关后,监听会完整释放,按键恢复原有的播放 / 暂停功能。这是明确的按键接管,不是两个操作同时触发的冲突。
不会。macOS 版映射 Typeless 默认的 Fn,Windows 版映射默认的 Right Alt;AI 接线员只会在你按耳机键时模拟对应按键,不会修改它原本的功能,也不会占用其他快捷键。如果你改过 Typeless 的默认快捷键,再使用「自定义」映射。
不需要。macOS 版会映射微信输入法的 Fn + 空格 免提模式,按一下开始、再按一下结束;Windows 版会在你按住耳机键时映射官方的 Ctrl + Win 语音输入。都不需要额外安装自动化脚本。
不需要。打开 App,选择一种输入方式就能使用;macOS 首次启动会引导完成必要授权。使用现有输入法无需下载模型,选择本地语音时再下载一个语音识别模型即可。
AI 接线员监听的是系统收到的「播放 / 暂停」媒体键事件。如果耳机、转接头或外接按键本身不发送这个标准线控事件,软件也无法识别。macOS 首次引导里的「耳机播放键检测」可以先确认硬件是否支持;目前也不能改用键盘快捷键触发本地语音。
AI 接线员使用系统当前的默认输入设备,不会替你切换麦克风。请先在 macOS 或 Windows 的声音设置里选择要使用的输入设备,再开始录音。
先确认系统麦克风权限已经打开,再检查输入设备是否选对、当前语音识别模型是否已经下载完整。Qwen3 和 SenseVoice 只会运行当前选中的那一档,不会在后台偷偷切换。
请在按下耳机键前把光标放进目标输入框。macOS 还需要辅助功能权限;Windows 无法向以管理员身份运行的高权限窗口注入文字。密码框等系统隐私区域也可能禁止合成输入。
Windows 10/11 x64 从 v2.1 起已经支持完整本地语音输入。Intel Mac 暂不支持;macOS 版内置的 sherpa-onnx 与 llama.cpp 运行组件仅提供 Apple 芯片版本。
Windows v2.1 使用 CPU 运行可选的 Qwen3-8B 润色模型,速度取决于处理器。首次开启时 App 会实测性能:太慢会明确提醒或关闭润色,超时则回退到规则清理结果。不开润色不影响本地语音识别。
它需要「全局监听耳机键 + 合成键盘输入」两项敏感能力,所有代码均已开源,可供验证:
macOS(Xcode 命令行工具,Apple 芯片——内置 sherpa-onnx / llama.cpp 运行时为 arm64):
./build.sh # 编译 arm64 + 签名 → AI接线员.app
Windows(.NET 8 SDK):
cd Commander-Windows
dotnet publish -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true
MIT © 2026 Jonny Yu
Swift
38.5%
C#
28.7%
C
22.1%
Python
8.9%
PowerShell
1.1%
AI 接线员 (AI Commander) — 把耳机的播放/暂停媒体键映射成快捷键,一键唤起语音输入、和 AI 对话、vibe coding。macOS + Windows · 语音输入 · push-to-talk · hotkey
Swift
15
33 commits
updated Jul 27, 2026
用耳机上的「播放 / 暂停」键,一键接通你的 AI —— 开口说,文字直接落进光标。
随口说,出成稿 · 全程本地 · 为爱发电,永久免费
中文 · English
⭐ 觉得有用,点个 Star 支持一下
语音输入 · 本地语音识别 · 本地大模型 · 离线 · 媒体键映射 · push-to-talk · voice input · vibe coding · 接线员 · macOS · Windows
以前打电话,是一件很具体的事。
听筒有重量,电话线会绕在手边。号码拨出去以后,要等另一头有人接起。电话把相隔很远的两个人接在一起,声音从一根细细的线里传过来。
后来,电话被收进一块薄薄的屏幕里。我们不再守在电话旁,等一个人。听筒悄悄退场,成了电影里的道具。
我一直很喜欢那个简单的动作:拿起听筒,线路接通,然后开口。
在这个时代,要是还有这样一部电话呢?
过去,电话把人与人连接在一起。
现在,我们用它,和未来说话。
AI 接线员 v2.1 有两种独立的使用方式:在 Apple 芯片 Mac 或 Windows x64 电脑上直接使用内置的本地语音输入;或只做耳机键映射,调用已经安装的语音工具。使用本地语音不需要安装 Typeless、微信输入法或任何第三方输入法。
macOS 版整体采用 Liquid Glass 设计规范;Windows 版遵循 Fluent 2。两个平台的听写悬浮胶囊都会随「录音 → 识别 → 润色」状态变化,完成即收起,不打断手头的事。
下面是一段典型的工作口述,并用当前生产版管线实际处理。确定性规则先清理口语词,本地大模型再整理重复、数字和标点;关键信息保持不变。
| 阶段 | 输出 |
|---|---|
| 原始转写 | 嗯,我我看了一下,项目预算大概三千五百块,然后然后下周三上午十点半开会,订单号是零零八六二一,呃,地址是三号楼二单元。 |
| 规则清理 | 我我看了一下,项目预算大概三千五百块,然后下周三上午十点半开会,订单号是零零八六二一,地址是三号楼二单元。 |
| 本地大模型润色 | 我看了下,项目预算大概 3500 元,然后下周三上午 10:30 开会,订单号是 008621,地址是三号楼二单元。 |
| 组件 | 支持语言 | 擅长 | 大小 |
|---|---|---|---|
| Qwen3-ASR · 高精度(推荐) | 30 种语言 + 22 种中文方言 | 中英混说、长口述;16GB+ 机型 | 约 840-990MB |
| SenseVoice · 轻量 | 中、英、粤、日、韩 | 日常口述;8GB 机型 | 约 220-290MB |
| Qwen3-8B · 语义增强(可选) | 中文为主,支持中英混说 | 去重复、数字格式、断句分段 | 约 4.7GB |
模型均按真实口述场景,通过本地数据及开源数据集,经过选型和调优。 只用按键映射时,无需下载任何模型。
前往 Releases 下载。
| 平台 | 文件 | 能力 |
|---|---|---|
| macOS(Apple 芯片) | AI.Commander_Mac_v2.1.dmg | 本地语音输入 + 耳机键映射 |
| Windows(x64) | AI.Commander_Win_v2.1.exe | 本地语音输入 + 耳机键映射 |
应用未做 Apple 公证,首次打开可能提示「已损坏」或「身份不明的开发者」。软件没问题,任选一种处理:
sudo xattr -cr /Applications/AI接线员.app
首次启动会引导授权辅助功能与麦克风,并可顺手检测耳机播放键。
不会。总开关开启后,AI 接线员会接管并吞掉这次播放键事件:本地语音模式只控制录音,按键映射模式只发送目标工具的快捷键。它不会一边启动 Typeless 一边暂停音乐,也不会在结束语音时自动恢复播放。
这也意味着,总开关开启期间,耳机播放键不再控制媒体;关闭总开关后,监听会完整释放,按键恢复原有的播放 / 暂停功能。这是明确的按键接管,不是两个操作同时触发的冲突。
不会。macOS 版映射 Typeless 默认的 Fn,Windows 版映射默认的 Right Alt;AI 接线员只会在你按耳机键时模拟对应按键,不会修改它原本的功能,也不会占用其他快捷键。如果你改过 Typeless 的默认快捷键,再使用「自定义」映射。
不需要。macOS 版会映射微信输入法的 Fn + 空格 免提模式,按一下开始、再按一下结束;Windows 版会在你按住耳机键时映射官方的 Ctrl + Win 语音输入。都不需要额外安装自动化脚本。
不需要。打开 App,选择一种输入方式就能使用;macOS 首次启动会引导完成必要授权。使用现有输入法无需下载模型,选择本地语音时再下载一个语音识别模型即可。
AI 接线员监听的是系统收到的「播放 / 暂停」媒体键事件。如果耳机、转接头或外接按键本身不发送这个标准线控事件,软件也无法识别。macOS 首次引导里的「耳机播放键检测」可以先确认硬件是否支持;目前也不能改用键盘快捷键触发本地语音。
AI 接线员使用系统当前的默认输入设备,不会替你切换麦克风。请先在 macOS 或 Windows 的声音设置里选择要使用的输入设备,再开始录音。
先确认系统麦克风权限已经打开,再检查输入设备是否选对、当前语音识别模型是否已经下载完整。Qwen3 和 SenseVoice 只会运行当前选中的那一档,不会在后台偷偷切换。
请在按下耳机键前把光标放进目标输入框。macOS 还需要辅助功能权限;Windows 无法向以管理员身份运行的高权限窗口注入文字。密码框等系统隐私区域也可能禁止合成输入。
Windows 10/11 x64 从 v2.1 起已经支持完整本地语音输入。Intel Mac 暂不支持;macOS 版内置的 sherpa-onnx 与 llama.cpp 运行组件仅提供 Apple 芯片版本。
Windows v2.1 使用 CPU 运行可选的 Qwen3-8B 润色模型,速度取决于处理器。首次开启时 App 会实测性能:太慢会明确提醒或关闭润色,超时则回退到规则清理结果。不开润色不影响本地语音识别。
它需要「全局监听耳机键 + 合成键盘输入」两项敏感能力,所有代码均已开源,可供验证:
macOS(Xcode 命令行工具,Apple 芯片——内置 sherpa-onnx / llama.cpp 运行时为 arm64):
./build.sh # 编译 arm64 + 签名 → AI接线员.app
Windows(.NET 8 SDK):
cd Commander-Windows
dotnet publish -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true
MIT © 2026 Jonny Yu
Swift
38.5%
C#
28.7%
C
22.1%
Python
8.9%
PowerShell
1.1%