No Things found in this revision yet.
Browse this revision’s files →The ultimate harness for coding agents and beyond. All your agents. All your machines. One command center. Start with code, then follow your curiosity and build across disciplines: CAD, circuits, robots, games and music.
Loading README and project media…
Agents that build things, in one window. Code with Claude Code, Codex, Cursor and eleven more. 3D parts with Solid. PCBs with Copper. Keynotes with Marp. Every agent runs in a persistent terminal on any machine you own, and the domains beyond code get a viewer beside it that shows the work as it is made.
An agent is the who: Claude Code, Codex, Cursor and eleven more for code, and the specialized ones,
Solid, Copper and Marp, each an agent plus the skills, toolchain and viewer of its domain. Harness
never wraps an agent; it reads the transcript each one already writes and installs the vendor's own
hooks, so your credentials stay in your ~/.claude, ~/.codex, and so on. A harness is one
session of an agent running somewhere: a machine, a project, a pane, and for the domains beyond
code, the viewer beside it. Pick an agent, and yours is a git repository away.
| Category | Agents |
|---|---|
| Code | Claude Code Codex Cursor OpenCode Pi Hermes Command Code Devin Muse Code Amp Kilo Grok Antigravity GitHub Copilot |
| 3D design | Solid |
| PCB | Copper |
| Slides | Marp |
Your laptop, the Mac mini at home, the box in the rack, in one window, side by side. Each machine runs a small daemon that dials out; nothing to open, no SSH, no VPN. The relay in between forwards ciphertext and holds no keys, and terminal traffic goes machine to machine over WebRTC when it can.
Sessions live on the machine, not in the window. Every agent is a tmux pane there. Close the laptop,
open it on the train: same pane, same scrollback. After a reboot the daemon brings each agent back
with the engine's own --resume and the same id. Start an agent on another machine by browsing its
folders from New Harness, or clone a repository there first.
A round USB display with a microphone. Your agents are tiles in the order of the window's panes, each with what it is doing and for how long. When an agent asks a question, it is on the face, answerable with a tap. When a turn finishes, the recap, with one quiet tone. Double-tap and speak, and Boss mode routes the task to the agent already on it. No WiFi, no credential: plugging it in is the authorization, and the daemon on that computer serves it over the cable.
https://github.com/user-attachments/assets/97848065-61c6-40df-be66-a8247f69aa4c
The app, macOS 12+ or Ubuntu 22.04+: harness.autonomous.ai/desktop.
Another machine, a server, a Mac mini, a container, with Node ≥ 20 and tmux:
curl -fsSL https://harness.autonomous.ai/cli/install.sh | bash
harness login
harness start
It shows up in the app within a minute.
> runs a command.The full keymap, and how to remap it: docs/keyboard.md. The window in detail: docs/app.md.
Every layer has a contract, a starter and a check, and most ways in never touch this repo's code.
| You could | Start at | The bar |
|---|---|---|
| Build a harness for your domain and list it | dsh/README.md, dsh/starter-dsh/, then a file in dsh/registry/ | harness dsh check . green; an afternoon from the starter |
| Bring your agent as a CLI engine | cli/src/engines/README.md | a recorded session of the real binary; the fixtures pass |
| Bring your agent as an API provider | provider/README.md | eight JSON-RPC methods; the conformance runner, zero failures |
| A terminal multiplexer | CONTRIBUTING.md | npm run test:tmux-real; open an issue first |
| A palette or terminal theme | docs/extending.md | one Dart value; flutter test |
| A keymap | ~/.config/harness/keybindings.jsonc | no code; it reloads on save |
| Automation over the daemon | docs/cli.md | the loopback socket answers |
| A bug report | an issue | an engine bug is fixed from a real transcript; attach one and it is half done |
A domain harness is a git repository: a manifest, an AGENTS.md, skills, a workspace template, a
toolchain that installs itself, and for the pane a viewer server and a verdict file. Harness reads
the manifest and nothing else. Copy the starter, harness dsh check ., harness dsh install . --link,
and your tile is in New Harness. Marp is the
smallest complete one and the place to start.
CONTRIBUTING.md has the workflow, SECURITY.md takes security reports, and the licence is MIT.
harness command, the dashboard, the loopback socket| Docs | this file and docs/ | what confused you in the first five minutes is the next fix |