Pad-Lattice: a hardware control surface for coding agents, using a Novation Launchpad as a local state display and action pad.
Pad-Lattice turns a MIDI grid controller into a physical supervisor for coding agents. The daemon owns the hardware, renders agent state on the LEDs, and exposes a small local socket protocol that agent integrations can use to send state updates and receive hardware actions.
The first supported target is the Novation Launchpad Pro Mk1. The first
agent integration is Codex CLI, with codex exec --json support available
through the pad-lattice codex-exec adapter.
Pad-Lattice is not a token-probability visualizer, macro keyboard, or browser WebMIDI app. It is a local agent state and action surface: running, waiting for reply, waiting for approval, success, error, approve, reject, retry, and stop.
Documentation: https://mrueda.github.io/pad-lattice/
Quick Start: https://mrueda.github.io/pad-lattice/docs/usage/quickstart
Production Use: https://mrueda.github.io/pad-lattice/docs/usage/production
GitHub Repository: https://github.com/mrueda/pad-lattice
Install locally from the repository root:
python3 -m pip install -e .List MIDI ports:
pad-lattice portsRun the hardware demo:
pad-lattice demoRun the production daemon:
pad-lattice daemonSend a state from another process:
pad-lattice send-state waiting_for_reply
pad-lattice send-state running
pad-lattice send-state waiting_for_approvalRun a non-interactive Codex task with Launchpad state updates:
pad-lattice codex-exec "summarize this repository in one sentence"Currently tested:
- Novation Launchpad Pro Mk1
Planned extension point:
- Additional Launchpad and MIDI grid controllers through device profiles.
Only one process can own the Launchpad MIDI ports at a time. For normal use,
run one long-lived pad-lattice daemon and let agent integrations talk to it
through the local socket.
Run the Python test suite:
python3 -m pip install -e .
python3 -m unittest discover -s testsRun bytecode checks:
python3 -m py_compile src/pad_lattice/*.py tests/*.pyRun the docs checks:
cd docs-site
npm install
npm run typecheck
npm run buildNo formal citation is available yet. For now, cite the GitHub repository:
Pad-Lattice: hardware control surface for coding agents. https://github.com/mrueda/pad-lattice
Written by Manuel Rueda.
Repository: https://github.com/mrueda/pad-lattice
Copyright (C) 2026 Manuel Rueda.
This project is distributed under the Apache License 2.0. See LICENSE for details.