Harness

ai.autonomous.harness由 harness.autonomous.ai 發布v0.4.20更新於 Nov 2, 2026

Start Claude Code and Codex agents the person can watch, wait for them and read their answers.

概覽

AI 產生的概覽

本機 MCP 伺服器,讓助理啟動 Claude Code、Codex 等編碼代理工作階段,等待完成並讀取回覆。

可以做什麼
  • 在使用者機器上啟動 Claude Code、Codex 等編碼代理工作階段
  • 等待執行中的工作階段結束並讀回其回覆
  • 將工作階段分組到分頁與工作區中管理
  • 從商店安裝並啟動針對特定工藝的領域專用 harness
  • 在 tmux 窗格中執行代理,支援每個 harness 獨立工作樹與本機模型
適用情境
適合想讓助理把工作交給獨立的編碼代理執行、啟動它們、等待結果並把輸出帶回對話的情境,包括跨多台已連結的機器操作。
執行需求
以本機 stdio 程序執行,來自 npm 套件或 mcpb 套件,僅支援桌面端。需要 Harness 應用程式與每台機器上的守護程序,並安裝 CLI、登入(harness login)以及設定用於連結機器的遠端密碼。從原始碼建置需要 Node.js 20+、tmux、Xcode 與 Flutter/Dart。
安裝前請注意
它啟動的代理會執行真實指令並修改檔案(各自使用獨立工作樹),需留意其操作。機器連結使用密碼而非 SSH 金鑰;遠端流量經 WebRTC、Cloudflare TURN 或廠商中繼,README 稱其端對端加密。代理間訊息功能為實驗性,預設關閉。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Harness,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

[圖片]

Harness like a boss.

The ultimate harness for coding agents and beyond.
Claude Code at work. Codex at home. Hermes in the cloud. One command center.
Start with code. Then follow your curiosity and build across disciplines: CAD, circuits, robots, games and music.

Download · How it works · Beyond code · Harnesses · Device

Every agent, side by side

Claude Code, Codex, Cursor, OpenCode, Devin, Amp, Copilot and seven more.

[Four agents working at once in one window: Claude Code and Codex on a MacBook, Cursor on an office desktop, OpenCode on a GPU box. Each pane shows its machine, project and branch.]

Every machine, side by side

Your laptop, home server and GPU box in one window. Link each one with a password. No SSH keys. No Tailscale. No port forwarding.

[A new GPU box runs four setup commands and comes online. The app links it with its password, then starts Claude Code there.]

Keyboard first

⌘P finds any harness on any machine. ⇧⌘I jumps to the harness waiting on you. ⌘D splits. Every key remaps.

[Keyboard only: open a harness by typing a few letters, zoom it, jump to the agent asking a question and answer it, then split a new pane below.]

End-to-end encrypted

Code, keys and keystrokes are sealed on your machine. The relay forwards bytes it can't read.

[On the left, an agent rotates a secret and redeploys. On the right, the same harness as the relay sees it: numbered frames of ciphertext.]

Fast and light

A native app, not Electron. Close it and your agents keep working.

Idle measurements on an M2 Max:

  • ⌘N, ⌘O, ⌘T UI: 11–13 ms median, 15–18 ms p95.
  • Local terminal echo: 1.1 ms median, 7.2 ms p95, excluding UI rendering.
  • Desktop resources: ~0.1% of one CPU core and 304 MiB, including terminal rendering and scrollback; agent CLIs and the daemon are excluded.

Desktop results use a Release fixture with 16 terminals and 1,000 scrollback lines each. See the workflow and resource benchmarks and remote P2P, TURN and relay results for workloads, slow tails, connection failures and raw data.

Built the way developers work

  • Real terminals. Every agent runs in its own tmux pane. Scrollback, colors and keys just work.
  • Your CLIs, as they are. Harness never wraps an agent. It reads transcripts and uses the vendor's own hooks.
  • A worktree per harness. Start an agent on its own branch. Your working copy stays clean.
  • Remap every key. One JSONC file, reloaded on save. Chords up to four strokes.
  • Local models. Run open-weight models on your own machines with Grid, Ollama, MLX-LM and vLLM.
  • Bytes, not pixels. Remote terminals stream text peer to peer. No remote desktop.
  • Open source, all of it. App, CLI, daemon, relay and device, in this repo.

How it works

In the workspace, a harness is one running session of an agent such as Codex or Claude Code, with its own conversation and working context. A tab groups harnesses. Use New Harness to start one and New Tab to group work. Harnesses in the same tab can message each other with harness send: Agent Messages, an experiment of your account, off by default and turned on in Settings ▸ Experimental.

The Store offers harnesses with instructions, tools, and optional viewers for specific crafts. Install a harness, then start it in your workspace. See the Naming System for the complete naming rules.

One daemon per machine runs your agents in tmux. It dials out, so no machine opens a port.

mermaid
flowchart LR  subgraph laptop["Your laptop"]    app["Harness app"] -- loopback --> d1["daemon"]    d1 --> a1["tmux · Claude Code · Codex"]  end  subgraph box["Your GPU box"]    d2["daemon"] --> a2["tmux · OpenCode · Hermes"]  end  device["Harness device"] -- USB --> d1  d1 <-. "direct WebRTC" .-> d2  d1 <-- "ciphertext" --> relay["Harness relay · no keys"]  relay <-- "ciphertext" --> d2

Every path is sealed end to end: ChaCha20-Poly1305, X25519 session keys, pinned Ed25519 identities. Harness picks the best path on its own.

Direct. A WebRTC channel between your machines. No server in the path.

[The Harness window connects straight to home-server, office-desktop, cloud-server and mac-mini over WebRTC, with no server in the path.]

Through Cloudflare. When a firewall blocks the direct path, the same encrypted channel runs over Cloudflare's TURN network. Harness keeps trying for a direct path.

[The encrypted WebRTC channel passes through the nearest Cloudflare edge when a firewall blocks the direct path.]

Through our relay. A fallback while WebRTC negotiates. The relay holds no keys and forwards ciphertext.

[The Harness relay keeps the harness reachable over its WebSocket while WebRTC negotiates. It holds no keys.]

The architecture guide has the details.

Get started

Download the app for macOS or Linux.

Add a machine. Run this on it, then Machines → Link Machine in the app:

bash
curl -fsSL https://harness.autonomous.ai/cli/install.sh | bashharness loginharness remote-password setharness start

In a terminal: the same line installs hn — tmux's keys and your ~/.tmux.conf, with every harness on every machine (hn). The first time, hn signs in and connects the computer:

bash
curl -fsSL https://harness.autonomous.ai/cli/install.sh | bashhn

For agents: Claude Code and Codex can start, wait for and read other harnesses with the harness skill (harness.autonomous.ai/agents, which has the Codex lines too):

bash
claude plugin marketplace add autonomous-ai/openharness --sparse .claude-plugin pluginsclaude plugin install harness@openharness
Build from source

Needs Node.js 20+, tmux, Xcode and Flutter 3.47+ / Dart 3.13+:

bash
git clone https://github.com/autonomous-ai/openharness.gitcd openharness(cd cli && npm ci)make install-clicd desktopflutter config --enable-swift-package-managerflutter pub getflutter run -d macos

make install-cli installs this checkout's CLI and restarts the local daemon. See the development guide.

Beyond code: Build across disciplines

“World-class entrepreneurs are polymaths.” — Peter Thiel

Coding agents can build far more than software. Give one a harness and it works with the real tools of a craft. You steer in a live viewer. Every clip below is a real session.

Beyond code: Design

Blender. Ask for a lamp and the sliders that matter. Turn them and Blender rebuilds the geometry. Keep the versions you love.

[Shape Lab in Blender: dragging height and twist sliders rebuilds a ribbon lamp, and chosen designs are kept.]

Beyond code: Circuits

CircuitJS. Build a filter. Change one resistor. Overlay the new trace, measure the difference and keep both.

[Scope Lab in CircuitJS: an RC filter captured at 1 kΩ and 2 kΩ, traces overlaid and measured with cursors.]

Beyond code: Robotics

MuJoCo. Pin a moment in a robot's run. Shove it with 100 N. Watch two futures split.

[A Unitree Go2 in MuJoCo: the original and shoved futures play together with a height chart.]

Beyond code: Games

Godogen. Your agent makes a playable game. Miss a jump, rewind, try again. Pin the moment so the agent sees what you mean.

[Alpine Drift, a game made with Godogen: a run is rewound, retried and a moment is pinned with feedback.]

Beyond code: Music

Strudel. The track is code you can perform. Bring voices in and out, mark the good parts, keep the WAV. Hear it.

[A live Strudel performance: voice lanes play beside the code, and the take is kept with markers.]

Beyond code: Chemistry

RDKit. Turn a bond and watch the molecule move. Follow the real energy curve. Keep the pose worth a closer look.

[A bond scan in RDKit: the molecule rotates through sampled poses along an MMFF94 energy curve.]

Beyond code: Documents

Typst. Your agent writes a real PDF. Circle a detail, quote a line, leave a note. The next draft answers it.

[A Typst PDF under review: notes are pinned to an area and a sentence, then carried to the next draft.]

Domain-specific harnesses (DSH)

Code is the common medium. Geometry scripts make parts. Netlists make boards. Animation code makes film.

A domain-specific harness turns a coding agent into a specialist. It brings the craft's instructions and skills, a pinned toolchain, a project template, checks and a live viewer. You chat on one side. The board, the part or the game takes shape on the other.

The agent does the reasoning. The harness supplies the tools and the view. It's a folder with a harness.json, so adding a craft never touches the app.

49 harnesses in the Store

Upstream open-source tools and original workflows. 10 shared viewers install alongside the harnesses that need them. Unlisted experiments are not shown.

Build your own

The next harness is the one for your craft. Wrap a tool you love or your team's toolchain. It can live here or in your own repo. From this repo:

json
{  "spec": 1,  "id": "examples/hello-world",  "name": "Hello World",  "engine": "codex",  "workspace": { "template": "template", "marker": "index.html" },  "agent": { "instructions": "AGENTS.md" },  "viewer": { "use": "autonomous/web-viewer" }}
bash
harness dsh install "$PWD/store/viewers/web-viewer" --linkcp -R store/examples/hello-world ../my-harnessharness dsh check ../my-harnessharness dsh install ../my-harness --link

Press ⌘N → Hello World and say hello. The authoring guide covers the rest.

Harness device

Get a Harness device, or build your own from the files below. The firmware guide lists the supported boards and build commands, and the hardware guide covers the design files.

[A finger taps the round Harness device, speaks a task to fix the login flow, and the device shows the agent deploying, then a summary of the shipped fix.]

The optional Harness device is a round, always-on display that sits beside your keyboard and shows your agents at a glance: what each one is doing, which one has finished, and which one is waiting on you. Read a question and answer it on the screen, or tap and speak a new task, without switching windows.

It is open hardware, all the way down. This repository has everything it takes to build one:

LayerWhat's here
FirmwareESP32-S3, ESP-IDF, a 466 × 466 round AMOLED with touch, microphones and audio. Connects to the host's daemon over USB — no Wi-Fi setup, no account on the device.
PCBThe EasyEDA Pro project, the schematic, Gerbers, the bill of materials, and pick-and-place data for assembly.
EnclosureSTEP for editing and STL for printing: the housing, an iron counterweight base, the USB clamp, and the button.

Contribute

Make a harness for a tool you love. Improve terminals, engines, the daemon or the relay. Port the firmware. Start with the contribution guide.

Architecture · Product direction (proposal) · Development · Extending · CLI · Security · MIT license; upstream tools keep their own.

來源:README.md,提交 cd9684c

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.4.20最新Oct 19, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分