← 全部工具

majiayu000/harness

AI Agent
热度 65 更新于 AI 与 Agent

Run fleets of parallel coding agents with governance — Rust control plane for Claude Code & Codex: orchestration, policy, cross-agent review, observability.

githubauto-collected

安装

暂未验证可直接使用的安装命令,请查看项目官方文档或 Release。

<div align="center"

Harness

Ship code with a fleet of AI agents you can actually trust — orchestrated, policed, reviewed, and observable.

Documentation · Contributing · Security

<img src="docs/images/harness-card.png" alt="Harness repository card" width="920" /

</div

---

AI development is no longer one agent in one terminal — it is fleets of agents working in parallel across issues, branches, and repositories. The hard problems move up a level: who assigns the work, what each agent is allowed to do, who reviews the output, and what happens when a run goes wrong at 3 a.m.

Harness is a Rust-native control plane for that fleet. It wraps AI coding agents (Claude Code, Codex, Anthropic API) with structured lifecycle management, policy enforcement, and continuous feedback loops. Instead of replacing agents, it standardizes how they run, what they're allowed to do, and how their output is reviewed.

Install

Build from source (no prebuilt binaries or Homebrew formula yet):

git clone https://github.com/majiayu000/harness.git
cd harness
cargo build --release -p harness-cli
# binary at ./target/release/harness

Requires Rust 1.88+. A fresh release build also requires Bun 1.1+ because it embeds the web dashboard; if web/dist is already built, the release build can reuse it without Bun. Postgres and an API authentication token are only needed for the server / fleet features below; a GitHub token is additionally needed for GitHub integration.

Quickstart: run one agent task

Install one local coding runtime on your PATH: either codex or claude. Run Harness as an unprivileged OS user: --drop-sudo defaults to true, so harness exec rejects root and sudo environments. Only pass --drop-sudo=false when elevated execution is deliberate.

On Linux, the default workspace-write sandbox also requires harness-landlock or bwrap on PATH; install your distribution's Bubblewrap package if you do not have the Landlock helper. A host-tier danger-full-access agent with scoped permissions and an empty network allowlist requires bwrap specifically: Landlock cannot provide network-only isolation while leaving filesystem access unrestricted. Harness reports that host tier as unavailable during startup health probing and refuses matching dispatches. Other Linux sandbox combinations continue to accept either helper.

# With Codex CLI (Linux or macOS)
./target/release/harness exec --agent codex \
  "Summarize the public API exposed by crates/harness-core/src/lib.rs"

# Or with Claude Code CLI on Linux
./target/release/harness exec --agent claude \
  "Summarize the public API exposed by crates/harness-core/src/lib.rs"

# Claude Code on macOS cannot run under the Seatbelt workspace-write sandbox
./target/release/harness exec --agent claude --sandbox-mode danger-full-access \
  "Summarize the public API exposed by crates/harness-core/src/lib.rs"

Harness runs the explicitly selected coding agent against the current directory and prints the agent's final response to stdout. The default is workspace-write. The macOS Claude exception grants the agent unrestricted filesystem and process access; use it only in a trusted repository and review the resulting changes.