NXTKB 的 Codex Micro 兼容功能,让 Ferris Sweep 和 Sweep Pro 都能在不离开键盘的情况下管理 ChatGPT 对话。你可以切换六个对话、批准或拒绝操作、把当前对话分叉为新对话、使用电脑麦克风输入,以及发送消息;带墨水屏的 Sweep Pro 还会显示对话状态。

你可以用它做什么

六个对话 查看状态并快速切换
六个动作 批准、分叉对话、拒绝、Fast、语音、发送
状态显示 Sweep Pro 墨水屏跟随当前电脑

这些功能不是普通的系统快捷键。键盘和 ChatGPT 之间有一条双向连接:键盘把你的操作发送给 ChatGPT,ChatGPT 再把六个对话的状态传回键盘。它可以通过 USB 或蓝牙工作,不需要 Work Louder Input,也不会替代键盘原有的打字、鼠标、触控板或 ZMK Studio 功能。无屏幕的 Ferris Sweep 接收状态但不显示它们。

开始之前

  • 在电脑上安装并登录 ChatGPT 桌面应用。
  • 确认键盘已刷入带 Codex Micro 支持的固件。
  • 使用 USB 数据线连接,或通过蓝牙重新配对键盘。
  • 在 macOS 首次提示时,允许 ChatGPT 使用 Input Monitoring。
  • 如果需要语音输入,同时允许 ChatGPT 使用电脑麦克风。

ChatGPT 第一次识别到兼容键盘后,可以在 Settings → Codex Micro 中配置六个 Agent 键跟随哪些对话,以及单击是否直接把 ChatGPT 带到前台。更多原版功能行为可以参考 OpenAI 的 Codex Micro 说明

如何进入 Codex 层

  1. 同时按住拇指区左右两个 Tab 层键,进入 FUN 层。
  2. I,切换到 CODEX 层。
  3. 松开层键后,Codex 层会继续保持;按 P 退出。

I 是 Codex 层入口。FUN 层上的 O 仍然是系统静音键,不会和 Codex 入口冲突。进入后,普通字母键会临时变成下面的 Agent 和命令按键,因此需要打字时请先按 P 退出。

Codex 层键位

按键功能使用方式
Q W E R T YAgent 1–6切换或聚焦对应的 ChatGPT 对话
AApprove批准当前等待确认的操作
SSplit chat保留当前上下文,并在一个新对话中继续
DDecline拒绝当前等待确认的操作
FFast切换当前对话的 Fast 模式
HPush-to-talk按住说话;快速双击可锁定录音
JSend发送当前输入
PExit退出 Codex 层,恢复普通键位

六个 Agent 键如何工作

QY 对应 Agent 1 到 Agent 6。默认情况下,它们跟随最近更新的六个 ChatGPT 对话,不要求对话已经固定。你也可以在 ChatGPT 的 Codex Micro 设置中选择最近、固定、优先或自定义分配方式。

  • 单击一次:切换到对应对话,但默认不抢走当前应用的焦点。
  • 350ms 内双击:切换对话并把 ChatGPT 窗口带到前台。
  • 单击即聚焦:可以在 ChatGPT 的 Codex Micro 设置中开启。

六是键盘提供的快捷槽位数量,不是 ChatGPT 只能保存六个对话。其他对话仍然保留在 ChatGPT 中,只是没有同时映射到这六个物理按键。

语音键没有内置麦克风

H 控制的是电脑上的 ChatGPT 语音输入。键盘本身没有麦克风,所以录音质量和权限取决于电脑内置麦克风、耳机或外接麦克风。

  • 按住 H 说话,松开后结束。
  • 在 350ms 内快速按两次,可以锁定录音,不必一直按住。
  • 录音锁定后再按一次 H,停止录音。

如果按键有反应但没有声音输入,请先检查系统的麦克风隐私权限和 ChatGPT 当前选择的输入设备。

Agent 状态与墨水屏

带墨水屏的 Sweep Pro 会显示类似 A2  1I 2W 3N 4? 5! 6- 的状态行。A2 表示当前选中 Agent 2;后面的 1–6 分别对应六个 Agent 键。墨水屏只在状态改变时刷新,因此静止不闪烁是正常现象。

无屏幕的 Ferris Sweep 使用相同的 Agent 和动作按键,但不会在键盘上显示状态;请直接在 ChatGPT 桌面应用中查看当前对话。没有屏幕不会影响 Codex 控制。

屏幕符号ChatGPT 状态含义
-未分配这个 Agent 键当前没有跟随对话
IIdle对话空闲
WThinkingChatGPT 正在工作
NComplete任务完成,并且有未读更新
?Requires input需要你的批准或回复
!Error对话执行出错
UUnknownChatGPT 返回了固件尚未识别的新状态

原版 Codex Micro 使用白、蓝、绿、琥珀和红色灯光表达这些状态。Sweep Pro 的墨水屏把它们转换成字符,使状态在低功耗黑白屏上仍然清楚可读。

USB、蓝牙与多台电脑

Codex 控制会自动跟随键盘当前选中的输出端点。你不需要再为 ChatGPT 单独切换一次:用键盘原有的 USB/蓝牙输出切换键或蓝牙 profile 键选择电脑后,Agent 按键和可用的显示状态也会一起切换。具体设备切换键位可以查看 Ferris SweepSweep Pro 键位说明。

  • USB:适合固定桌面,延迟低,也不依赖电池。
  • 蓝牙:Codex 控制和普通键盘输入共用当前蓝牙 profile。
  • 多台电脑:每台已连接电脑保留自己的六个 Agent 状态;切回时恢复该电脑最后一次状态。
  • 其他电脑不会被断开:切换输出只改变按键当前发送到哪里,不会主动断开仍连接的 USB 或蓝牙设备。

如果 USB 和蓝牙同时连接到同一台电脑,系统可能看到两个 Codex 接口,但按键仍只跟随当前选中的键盘输出。通常可以正常共存;如果 ChatGPT 反复重连,暂时断开不使用的那条连接有助于确认问题来自哪一路。

为什么蓝牙升级后需要重新配对

电脑会缓存蓝牙键盘提供的功能描述。第一次刷入带 Codex 蓝牙支持的固件后,旧配对记录可能仍把键盘当作普通键盘,因此仅关闭再打开蓝牙通常不够。

  1. 在电脑的蓝牙设置中忽略或删除旧的键盘。
  2. 在键盘上切换到对应蓝牙 profile,并清除该 profile 的配对。
  3. 重新进入配对状态,在电脑上重新连接。
  4. 打开 ChatGPT,等待它检测并连接 Codex Micro 兼容接口。

这个步骤通常只在首次启用该功能,或固件更新改变蓝牙功能描述时需要执行。

连接失败或按键无响应

按这个顺序检查

  1. 确认正在使用 ChatGPT 桌面应用,而不是浏览器网页。
  2. 确认键盘当前输出选择的是这台电脑。
  3. 重新进入 Codex 层:按住两个 Tab 层键,再按 I。
  4. 在 macOS 中确认 ChatGPT 已获得 Input Monitoring;语音还需要麦克风权限。
  5. USB 模式下换一条确定支持数据传输的线,并重新插拔。
  6. 蓝牙模式下按上一节完整删除旧配对并重新配对。
  7. 暂时退出 Karabiner、键盘重映射器或可能拦截 HID 的安全软件。
  8. 退出并重新打开 ChatGPT;仍不工作时重启电脑。

如果 ChatGPT 显示“found your Codex Micro but couldn't connect”,通常表示系统已经识别到兼容接口,但双向通信没有建立。此时重点检查权限、旧蓝牙配对、HID 拦截软件和是否选择了正确的键盘输出,而不是反复按 Agent 键。

如果只有麦克风键不工作,优先检查麦克风权限。如果只有墨水屏状态没有变化,先在 ChatGPT 中确认六个 Agent 键已经分配对话,并确认键盘当前选中的正是运行 ChatGPT 的那台电脑。

连接背后的简单原理

Ferris Sweep 系列通过操作系统的 HID 设备通道与 ChatGPT 桌面应用通信。键盘向上发送 Agent 和命令按键的按下、松开事件;ChatGPT 向下发送连接状态和六个对话的状态。USB 和蓝牙承载的是同一类双向消息,所以两种连接可以提供一致的 Codex 操作体验。

当前兼容层只处理完成这些功能所需的按键动作和状态,不把对话正文、提示词或代码内容显示或保存到键盘。它也不会赋予键盘额外的 ChatGPT 账户权限;所有实际操作仍由已经登录的 ChatGPT 桌面应用执行。

当前支持范围

功能支持情况
六个 Agent 对话键支持
Approve、Split chat、Decline、Fast、语音、Send支持
单击、双击、长按和按键松开支持,由 ChatGPT 解释
USB 控制支持
蓝牙控制与多 profile支持
墨水屏 Agent 状态Sweep Pro 支持;无屏幕 Ferris Sweep 不显示
Codex Micro 模拟摇杆与旋钮自定义不适用于当前 Ferris Sweep 系列键位
完整 RGB 灯效编辑与设备固件更新不支持

Ferris Sweep 与 Sweep Pro 都覆盖了完整的控制流程:连接当前电脑、进入 Codex 层、选择六个对话并执行常用命令;Sweep Pro 额外通过墨水屏显示 ChatGPT 是否正在工作、等待输入或已经完成。