HarnessRouter Community Edition runs coding-agent harnesses behind one HTTP API on a machine you control. It ships as a single container that holds a gateway, a console, a session runner, and SQLite storage on one data volume; provider keys are supplied from the console or the environment and are used only to call the provider they belong to.
In its model, a harness is the runtime layer around a model — Codex, Claude Code, and Hermes are the examples — and a harness object is a saved configuration naming one of those runtimes plus a model, instructions, and limits. A task is one run of that configuration against a real POSIX workspace with bash and git, streamed back as it happens. Each session gets its own workspace and its own operating-system user, so one session cannot read another's files, and idle workspaces are removed after a configurable time and rehydrated from a checkpoint.
The API is an OpenAI Responses-compatible surface covering turns, harness CRUD, sessions, streaming, cancellation, and idempotency, and the console is a thin client over it. That surface is the Unified Harness Protocol (UHP), published with a versioned specification, OpenAPI 3.1 and JSON Schema definitions, a conformance suite, and a governance document; this edition is the reference implementation and reports a class Full conformance run. The same API is implemented by the hosted service, and a harness can be pushed from a local instance to the cloud.
Model access is configured as connections, and which backends can use a connection depends on its provider:
| Connection provider | Backends that can use it |
|---|---|
| anthropic | Claude Code, Hermes, Pi |
| openai | Codex, Hermes, Pi |
| openrouter | Codex, Hermes, Pi, Deepseek Harness |
| azure-foundry | Codex, Hermes, Pi |
| bedrock | Claude Code, Hermes |
| tokenrouter | Claude Code, Codex, Hermes, Pi, Deepseek Harness |
| vercel | Claude Code, Codex, Hermes, Pi, Deepseek Harness |
| llmtr | Claude Code, Codex, Hermes, Pi, Deepseek Harness |
Features
- One API over several harnesses: Codex, Claude Code, Hermes, Pi, and Deepseek Harness installed into the data volume on first start
- Responses-compatible surface: turns, harness CRUD, sessions, streaming, cancellation, and idempotency over /v1
- Isolated sessions: each run gets a per-session operating-system user and its own workspace with bash and git
- Workspace lifecycle: idle workspaces expire on a configurable TTL and rehydrate from a checkpoint rather than losing work
- Console: the hosted product's own console, minus the pages that need accounts, billing, or a marketplace
- Unified Harness Protocol: a versioned specification, machine-readable schemas, a conformance suite, and a governance policy
- Conformance testing: a uhp-conformance runner that can be pointed at any server implementing the protocol
- Bring your own key: provider credentials stay on the box and are never written into the image
- Starter kits: worked agent products — slides, sheets, dashboards, videos — each with an app, a configured agent, and a skill
- Push to cloud: a working harness can be copied into the hosted service, which then owns it
Integrates with
Claude Code
Terminal-based agentic coding tool that reads your codebase and runs tasks through natural-language commands
Codex
Lightweight coding agent that runs in your terminal
DeepSeek Harness
DeepSeek open-sourced its full agent harness built so every capability is a plugin. You can swap the loop, the sandbox,
Hermes
Self-improving AI agent with a learning loop that creates and refines skills, recalls past sessions, and runs across chat platforms
