Skip to content
UHPUHPDeveloper Guide
Independent developer guide. Not affiliated with HarnessRouter or the official UHP project.

Unified Harness Protocol ecosystem

A current map of UHP and the broader HarnessRouter implementation ecosystem, with adoption claims kept separate.

Page reviewed 4 Oct 2026 Source and review policy

Protocol: 2026-09-28HarnessRouter: v0.29.1
ComponentCurrent role
UHP2026-09-28 Draft
HarnessRouter CEReference implementation; v0.29.1 / d2572192
Conformance2026.9.28.post3, 85 executable checks
Released HarnessRouter backends20
New protocol surfaceEnvironments
HarnessRouter service planeRuntime Plugins: Browser + Microsoft 365
Latest backend expansionv0.29.0: Kilo CLI, MiniMax Code, Grok Build and Agent Zero
Latest implementation patchv0.29.1: relay streaming/upstream liveness; backend/protocol/conformance counts unchanged

HarnessRouter adapters, provider routes and runtime services are implementation evidence. They do not establish native UHP adoption by upstream harness projects.

Build a stack from the boundary you actually own

Section titled “Build a stack from the boundary you actually own”

Choose a client/server pair before choosing an underlying harness. The community-maintained implementation list groups roles and explicitly rejects implied endorsement or certification.

Reader taskCandidate evidence pathAdditional proof needed
Run several third-party harnesses behind one serverHarnessRouter released backend catalogRequired harness/model/provider scenarios on your deployment
Expose one configured native harnessSuperQode server or System One serverVersion negotiation, required capability and report scope
Consume an external server from a workflowAIWG, SuperQode client or mini-ork transportThat client’s wire revision and endpoint interoperability
Implement another serveruhp-go and protocol referenceFresh suite result against the intended build
Add workspace services or reusable project stateRuntime Plugins and EnvironmentsTheir separate ownership, configuration and optional capability gates

System One’s tagged Core report is project-authored 40/40 Core under suite 2026.9.12.post1, measured on loopback against implementation 0.1.0. Its native s1 serve role is distinct from HarnessRouter’s System One adapter; neither report transfers automatically to the other path.

A typical composition is client → UHP server → harness → tools/runtime services. Follow adoption for claim classification and independent clients for version-specific candidates. A stack diagram identifies interfaces; only measured reports identify working combinations.

For coding automation, first decide whether your application controls a runtime directly or selects it through a gateway. The Claude Code guide explains headless configuration loading and why current bare-mode guarantees cannot be projected onto an older adapter pin. If you are integrating an editor or interactive host instead, OpenCode’s interface comparison separates native Agent Client Protocol support from the HarnessRouter UHP path. This choice determines which component owns permissions, session state and the installed runtime version.

Then choose an acceptance case for the failure your product must survive. A model-selection problem calls for the Gemini CLI routing guide: upstream model availability and a gateway’s discoverable catalogue are different evidence. A worker restart calls for the OpenHands recovery guide, which distinguishes its application release from the agent-server packages and durable conversation store used by the adapter. A successful first answer cannot substitute for either check; record the served model or recovered conversation before accepting the integration.

If your TypeScript application will own harness sessions and runtime cleanup itself, Vercel AI SDK Harnesses offers an experimental adapter layer rather than an external UHP server contract. Its host-process and sandbox adapters require different permission and teardown decisions. Choose that application-level abstraction when it matches the boundary you control; choose a UHP client/server integration when your product needs the external complete-harness execution contract. An adapter or package name alone establishes neither native UHP adoption nor a working deployment.

Three distinct plugin/environment concepts

Section titled “Three distinct plugin/environment concepts”
  1. UHP Harness Plugins — Agent Plugins packages transported and bound through the protocol.
  2. HarnessRouter Runtime Plugins — workspace-connected services included per harness; current released examples include Browser and Microsoft 365.
  3. UHP Environments — reusable built project state mounted read-only into sessions.

These are separate lifecycle and trust boundaries.

MCP remains the tool/context protocol comparison point; A2A covers agent-to-agent interoperability; ACP covers client/agent integration. Their stable protocol baselines are tracked separately from UHP.

Choose the boundary before choosing a protocol

Section titled “Choose the boundary before choosing a protocol”

Use the job your system must perform to narrow the comparison. These guides include proposals and experimental implementations as well as published contracts; being listed here does not imply equal maturity or a standardized UHP binding.

Your next design questionRead nextDecision to make
How will clients find a service or obtain its input assets?DNS-AID discovery and OpenSharing asset accessSeparate locating an endpoint from authorization to retrieve data and from executing a task.
How should independent agents exchange information, and what verifies compatibility?NLIP communication and A2A conformance workChoose the message contract and evaluate its own test evidence; UHP conformance does not transfer.
Which layer controls a governed action beyond one harness session?AICP infrastructure control and GetAIP coordinationDetermine who owns the plan, approval, durable operation and outcome record before adding a bridge.
How can a human controller authorize a remote agent?AC2 communication and controlCompare the human approval and authenticated control boundary with UHP’s task lifecycle.
Is the concern identity, commerce trust or evidence about execution?Know Your Agent, TRACE evidence and N-AALP/N-PAMPDecide what must be identified or proven; a trust signal, signed object and observed runtime fact are different evidence.
Where will a tool action actually run?WebMCP browser tools and MHS physical equipmentIdentify the browser or device enforcement point and its permissions, separately from the outer harness contract.
Can a tool server influence when inference happens?MCPL host/server controlReview host policy and maturity before allowing a server to initiate or steer inference.