explaingit

planeshiftdev/microd

Analysis updated 2026-07-25

0RustAudience · developerComplexity · 3/5Setup · moderate

TLDR

Two small background programs that connect a physical macropad (the Codex Micro) to desktop automation software, reading button presses and gestures from the keypad and using its RGB lights to show agent status.

Mindmap

mindmap
  root((repo))
    What it does
      Reads macropad input
      Detects gestures
      Controls RGB lights
      Maps keys to agents
    Tech stack
      Rust
      macOS
      Unix sockets
      USB and Bluetooth
    Use cases
      Manage AI agents
      Approve agent actions
      Switch between workspaces
      ChatGPT integration
    Audience
      Macropad owners
      Desktop automation users
      Agent workflow users
    Setup
      macOS permissions
      Private vendor protocol
      Menu bar app

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Control up to six software agents from a physical macropad with color-coded status lights.

USE CASE 2

Switch macropad ownership between herdr automation and the ChatGPT desktop app via a menu bar toggle.

USE CASE 3

Approve or deny agent actions and jump to blocked agents using dedicated keys and joystick.

USE CASE 4

Trigger complex shortcuts on macOS using gestures like chords, long presses, and joystick flicks.

What is it built with?

RustmacOSUnix socketsUSBBluetooth

How does it compare?

planeshiftdev/microd04amanrajj/netwatch0xr10t/pulsefi
Stars000
LanguageRustRustRust
Setup difficultymoderatemoderatehard
Complexity3/53/54/5
Audiencedeveloperops devopsdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires macOS-specific permissions for USB/Bluetooth access and a Codex Micro macropad device from Work Louder.

No license information was provided in the explanation, so the default terms of the repository apply.

In plain English

This repository contains two small programs that connect a physical macropad called the Codex Micro to a desktop automation tool called herdr. The Codex Micro is a small keypad with six programmable keys, a dial, and a joystick, made by Work Louder in collaboration with OpenAI. The programs are written in Rust and run on macOS as background services. The first program, microd, talks directly to the macropad over USB or Bluetooth. It reads every button press, dial turn, and joystick movement from the device and sends those events out as structured text messages over a local communication channel called a Unix socket. Any program on the computer can connect to that socket and receive the events. On top of reporting raw button activity, microd recognizes higher-level gestures like taps, long presses, double taps, chords (holding one key while pressing another), and joystick flicks. It can also send commands back to the pad to control the RGB lighting on each key, with effects like solid colors, flashing, and a breathing fade. The second program, herdr-bridge, sits between microd and herdr. It maps the six physical keys on the macropad to up to six software agents running in herdr. Each key's light reflects the status of its corresponding agent: breathing blue when working, flashing amber when blocked, solid green when done. The keys, dial, and joystick let you switch between agents, approve or deny agent actions, jump to blocked agents, and navigate tabs and workspaces. A small menu bar app lets you switch ownership of the macropad between herdr and the ChatGPT desktop app, since only one program can control the lights at a time. The README includes detailed notes on the device's communication protocol, discovered through reverse engineering and live testing against the firmware. It also documents macOS permission requirements and known limitations, such as the vendor protocol being private and subject to change. The full README is longer than what was shown.

Copy-paste prompts

Prompt 1
I have a Codex Micro macropad and want to build a custom app that reads button presses and controls the RGB lights. Write a Rust program that connects to the microd Unix socket and listens for button events, then prints each event to the console.
Prompt 2
Help me map the six keys on my Codex Micro macropad to different shell commands using herdr-bridge. Show me how to configure each key to run a specific script when pressed, with the key light turning green when the script finishes.
Prompt 3
I want to create a custom lighting effect for my Codex Micro where all six keys do a rainbow wave. Write a Rust function that sends the right commands to microd to set each key to a different color and cycle through hues.
Prompt 4
Explain how to set up the macOS permissions needed for microd to communicate with the Codex Micro macropad over USB and Bluetooth, and walk me through the menu bar app setup.

Frequently asked questions

What is microd?

Two small background programs that connect a physical macropad (the Codex Micro) to desktop automation software, reading button presses and gestures from the keypad and using its RGB lights to show agent status.

What language is microd written in?

Mainly Rust. The stack also includes Rust, macOS, Unix sockets.

What license does microd use?

No license information was provided in the explanation, so the default terms of the repository apply.

How hard is microd to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is microd for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.