Skip to content

Repository files navigation

Codex Micro Setup

Use a Codex Micro or Creator Micro 2 to control Claude Desktop on a Mac.

This setup keeps the original Codex controls on Layer 1 and adds Claude Desktop controls on Layer 2. It includes the key map, a small Mac app called Codex Micro Bridge, setup instructions, checks, and an Agent Skill for adding more app layers later.

This is an unofficial community project. It is not made or supported by OpenAI, Anthropic, or Work Louder.

Before you start

You need:

Item Why you need it
Codex Micro or Creator Micro 2 The physical controller
A Mac The Bridge currently supports macOS only
USB data cable Recommended for the first device setup; a charging-only cable will not work
Work Louder Input Creates Layer 2 and saves keys to the Micro
Claude Desktop The target app
Access to the Code tab in Claude Desktop This map controls Code sessions inside Claude Desktop
Apple command-line developer tools Builds the Bridge locally; check with swift --version
Accessibility and Input Monitoring permission Lets the Bridge receive Layer 2 keys and control Claude Desktop

Optional:

  • Aqua Voice for the two voice buttons.
  • ChatGPT/Codex Desktop for the original Layer 1 controls. Creator Micro 2 owners can use a different Layer 1.
  • Git if you clone this repository. Downloading the repository as a ZIP also works.

You do not need terminal Claude Code for this first setup. Claude Desktop's Code tab and terminal Claude Code are different. Terminal profiles can be added later.

If swift --version does not work, run:

xcode-select --install

What this setup changes

  • Layer 1 stays unchanged.
  • Layer 2 receives the keys listed in Claude Desktop controls.
  • Codex Micro Bridge.app is built locally and placed in ~/Applications.
  • A startup entry is placed in ~/Library/LaunchAgents.
  • If you use Aqua Voice, Caps Lock is changed to Globe/Fn for the Creator Micro keyboard only.

The repository does not rewrite Work Louder Input's private files. Input must save each change to the device through its visible controls.

Set it up

  1. Connect the Micro and confirm that it appears in Work Louder Input.
  2. Leave Layer 1 unchanged and create Layer 2 with the + button.
  3. Copy the keys from Claude Desktop controls.
  4. Follow First-time setup to configure voice input and install the Bridge.
  5. Check every control on the real device.

Do not continue pressing session keys if macOS opens a display or brightness panel. That means the Bridge is not receiving the keys. Follow A display or brightness panel opens first.

How the Claude controls behave

  • When Claude Desktop is already in front: press once.
  • When ChatGPT/Codex is in front: press once. The Bridge moves to Claude before Codex can react to a second device press.
  • When another app is in front: press the same control twice quickly.
  • Scrolling may need one click in the Claude conversation first.
  • Model changes work; effort changing is not reliable in every Claude Desktop version.

Layer 2 layout

┌──────────┬───────────┬───────────┬──────────┐
│ Dial     │ Session 1 │ Session 2 │ Joystick │
├──────────┼───────────┼───────────┼──────────┤
│ Session 3│ Session 4 │ Session 5 │ Session 6│
├──────────┼───────────┼───────────┼──────────┤
│ New chat │ Home      │ Code      │ Escape   │
├──────────┴───────────┼───────────┼──────────┤
│ Voice                │ Voice     │ Send     │
└──────────────────────┴───────────┴──────────┘

Dial:

  • Turn left: scroll down
  • Turn right: scroll up
  • Press: change effort

Joystick radial menu:

┌───────────────────────────┬────────────────────────┐
│ Upper-left                │ Upper-right            │
│ Previous model: NumPad 8  │ Next model: NumPad 2   │
├───────────────────────────┼────────────────────────┤
│ Lower-left                │ Lower-right            │
│ Previous session: NumPad 4│ Next session: NumPad 6 │
└───────────────────────────┴────────────────────────┘

Documentation

Read this When to use it
First-time setup Start with a new device or Mac
Claude Desktop controls Enter the exact Layer 2 keys
Troubleshooting A key, dial, joystick, permission, or app switch does not work
Compatibility See what was tested and what remains unconfirmed
Agent Skill Let an agent guide another profile or layer setup

The Agent Skill is guided setup, not a blind import. It records the physical position, Input key, intended action, and real test result separately.

What the automated check covers

./scripts/check.sh

This builds the Swift code, runs the Bridge's internal key and timing tests, checks shell-script syntax, and looks for unfinished text. It does not test the physical Micro, macOS permissions, Work Louder Input, or the real Claude and Codex apps.

Known limits

  • The Bridge is built locally with an ad-hoc signature. It is not Developer ID signed or notarized by Apple.
  • Replacing the Bridge can make macOS ask for Accessibility and Input Monitoring permission again.
  • Work Louder Input and Claude Desktop updates can change their visible controls.
  • Experimental direct HID access and status lighting are off because direct HID caused duplicate typing during testing.
  • See Compatibility before treating an untested system or control as supported.

Remove it

./scripts/uninstall.sh

The uninstall script moves the installed app and startup file to the Trash so they can be recovered.

License

MIT

About

Codex Micro setup for Claude Desktop, voice input, and macOS

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages