Build a physical control surface with dedicated keys for approving, cancelling, or sending commands to a Codex coding agent session.
Flash a Keychron Q6 Pro with sample firmware to try RGB lighting that reflects agent task status.
Experiment with the Micro Lab mode strictly for local research into ChatGPT Desktop hardware compatibility on owned devices.
| shuhari04/arkey | hreinssondev/anypip | insidegui/liquidglassflag | |
|---|---|---|---|
| Stars | 21 | 21 | 21 |
| Language | Swift | Swift | Swift |
| Setup difficulty | hard | easy | easy |
| Complexity | 4/5 | 1/5 | 2/5 |
| Audience | developer | general | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires macOS 14+, Swift 6, Node 20+, a working Codex CLI, and flashing custom firmware onto a specific Keychron Q6 Pro keyboard.
Arkey is an unofficial project that turns compatible QMK keyboards into a physical control panel for coding agent tools like Codex, adding dedicated keys for tasks, approvals, and sending commands, plus an RGB lighting effect called AgentGlow that changes with the state of a task. The README is explicit that Arkey has no official relationship with OpenAI, ChatGPT, Codex, Work Louder, Keychron, or QMK, and that it is meant for development, research, and testing on hardware the user owns, not commercial use. The project ships two separate modes that do not share a protocol. The default App Server mode talks to a local Codex app server process over standard input and output, then relays commands to the keyboard over a 32 byte raw HID connection that Arkey defines itself. An optional Codex Micro Lab mode is described as an experimental, local only research path that makes a specific keyboard, a Keychron Q6 Pro, temporarily present itself in a way compatible with the current ChatGPT Desktop app, using a separate configuration protocol Arkey also defines. The README stresses that this compatibility identity is not an official or guaranteed Codex API and may stop working after a ChatGPT Desktop update. The repository includes a macOS SwiftUI client, a Node.js command line daemon that drives the keyboard bridge, QMK firmware source for the Keychron Q6 Pro, and a suite of tests covering the host code, the Swift client, and firmware builds. The only keyboard currently supported out of the box is the Keychron Q6 Pro with a knob, and full raw HID control only works over USB, not Bluetooth. Getting started requires macOS 14 or later, Swift 6, Node.js 20 or later, and an already working Codex CLI installation, plus flashing the sample firmware onto the keyboard. The README repeatedly warns that build scripts only compile firmware and never flash it automatically, and that flashing a keyboard, especially with the experimental Micro Lab firmware, carries risks around device identity, warranty, and vendor terms of service that users should read about before proceeding.
An unofficial project that maps Codex coding agent actions onto a QMK keyboard's keys and RGB lighting, with an experimental ChatGPT Desktop compatible mode.
Mainly Swift. The stack also includes Swift, Node.js, QMK.
Arkey's own client, host, and docs are noncommercial only under PolyForm Noncommercial, while the underlying QMK and Keychron firmware stays under its original GPL and MIT licenses.
Setup difficulty is rated hard, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.