What is an agent harness?

A model answers; an agent acts. An agent harness is the runtime that turns one into the other: the model thinks, the harness decides what that thinking is allowed to touch.

Simon Willison's definition of the agent itself is the cleanest: "an LLM agent runs tools in a loop to achieve a goal." The harness is everything around that loop: which tools exist, what needs approval, what the model sees each turn, what survives a crash. Andrej Karpathy named the architecture back in 2023: the model is "the kernel process of a new Operating System", and the harness is the rest of that OS, its scheduler, permissions, and memory. The SWE-agent paper proved the stakes by coining the agent-computer interface: how tools and feedback are presented changes what a model can do, independent of the model. The field's advice has since converged on investing here rather than in framework plumbing, from Anthropic's build-simple guidance to Jerry Liu's argument that the framework era is over and the layers that matter now are skills, tools, and context quality. Those are the layers this list catalogs.

Why harnesses matter

Better models make harnesses more important: more capabilities mean more failure modes, and production needs retry logic, fallbacks, and validation. Harness quality, not just model quality, determines whether agents actually ship. This list ranks projects by relevance to harness concerns (environment, orchestration, lifecycle, guardrails) and by stars/activity.

The benchmark data now backs this up. On SWE-bench Pro, "swapping the agent harness changed pass@1 more than many model upgrades do" (AINews, Aug 8 2026, citing analysis by @joelniklaus). Same model, different harness: 23% to 52% pass@1 on GLM-5.2, and 15% to 36% on Gemma 4 26B. Harness rankings barely transfer across models (rank correlation -0.05), so a small model in the right harness can approach a much larger model in the wrong one.

That is the problem the MCP server in this repo solves. Point your agent at it and it can call recommend or pick_harness to choose a harness matched to your model and task, instead of inheriting whichever harness someone else benchmarked.

The landscape at a glance

The Agent Harness Landscape — all projects plotted by adoption surface area against GitHub stars

Every project in the list, plotted by adoption surface area (the simplicity ↔ capability axis) against GitHub stars. Colors are categories; the largest projects in each tier are labeled.

Autonomy × Recovery — every loop-owning project placed by designed autonomy regime and failure-recovery tier

The same projects placed by how much unsupervised rope they're designed to give (autonomy) and what happens when a run dies (recovery). In the tables below, ★ marks headless-ready projects and ✱ marks durable ones. Both charts regenerate from the list data on every refresh.

How to Pick a Harness

Start with the guide, then the head-to-head decision pages — grounded in the same data as the tables below:

Pick by use case

Reader's index: pick by what you want to do, not by category. Tag chips (e.g. mcp · memory) next to each row let you cross-filter by capability — see TAGS.md for the full cross-reference.

For agents

This list is also published in machine-readable form, so coding agents and research agents can recommend harnesses — not just humans browsing GitHub:

  • harnesses.json — every project with category, complexity tier, capability tags, stars, license signal, and a concrete example link, plus the full use-case index.
  • llms.txt — the entire list in one agent-readable file. Point any agent at the raw URL.
  • MCP serverrecommend (one opinionated pick + alternatives + what to avoid, e.g. repos flagged for star manipulation), compare/compare_for (2–4 harnesses side by side — by id or by task — who leads on which axis incl. researched sandboxing/memory/hooks/prompt-optimization ratings, graveyard warnings, the matching decision guide), pick_harness (ranked, with complexity/autonomy/recovery filters), pick_infrastructure (picks at any level of the infra stack plus a live GitHub/Hacker News discovery pass, so answers aren't limited to this list), search_harnesses, get_harness, list_categories, plus list_comparisons/get_comparison for the decision guides. Published to PyPI and the official MCP registry as io.github.RyanAlberts/agent-harnesses. One-line install (needs uv):
claude mcp add agent-harnesses -- uvx agent-harnesses-mcp

Or hire a skeleton

Don't just read the list — agents/ ships three agent skeletons: open-source agents that run on the AI subscription you already pay for. Clone the file, customize the instructions, done. All three work against the current week's data and deliver to Slack or Notion when either is connected:

  • harness-scout — describe what you're building; it picks your harness, with evidence and a graveyard check.
  • stack-auditor — flags the harnesses in your codebase that died, and can trace your agent session logs to show how the harness steers your technical decisions.
  • harness-radar — weekly movement briefing: climbers, arrivals, deaths, graduations.
curl -fsSL https://raw.githubusercontent.com/RyanAlberts/best-of-Agent-Harnesses/main/agents/harness-scout.md -o .claude/agents/harness-scout.md

Contents

Guide to rankings

  • Stars — GitHub star count, captured 2026-08-16; tables sort by stars descending.
  • ⚖️ Simplicity ↔ capability — adoption surface, 4 tiers: super simple (a format, one concept) → mostly simple (thin layer) → slightly complex (real SDK) → complex (product suite).
  • Headless-ready — designed for unattended runs, batches, and fleets (the top of the autonomy scale: step-gated → checkpoint-gated → bounded → headless).
  • Durable — persisted execution state survives restarts mid-task (the top of the recovery scale: none → retry → resumable → durable).
  • Open source — ✅ standard OSS license · ⚠️ source-available/restricted · ❓ no or unclear license.
  • 🏷️ Tags — capability chips auto-derived from descriptions; full cross-reference in TAGS.md.
  • 🎯 Examples — one concrete "show me it in action" link per project, not a docs root.

Every project's full autonomy and recovery tier is plotted in the grid above and carried in harnesses.json and llms.txt; scores are editorial, from public docs — maintainer corrections via issue/PR are merged fast.

Progressive disclosure harnesses

Formats, runtimes, and patterns that reveal context, tools, or instructions in layers—index first, details on demand—to control tokens and improve agent focus (the "map, not encyclopedia" principle).

# Project ⭐ Stars Description Open source Simplicity ↔ capability Examples
1 Headroom 66.5k Compresses tool outputs, logs, files, and RAG chunks with content-aware compressors before they reach the model—claimed 20% fewer tokens for coding agents and 60–95% fewer for JSON, same answers. Ships as a library, HTTP proxy, or MCP server, so it drops in front of whatever harness you already run. mcp · rag mostly simple (compression library/proxy/MCP server) Project README
2 awesome-cursorrules 40.6k Curated .cursorrules and skills that leverage Cursor's index-then-load model; the canonical collection for rules-as-progressive-disclosure in the IDE. ide super simple (content bundle) PyTorch cursorrules
3 agents.md 23.7k Open format for repo-scoped agent briefings; nested AGENTS.md files scope instructions per directory, so agents get a map of what exists and load only what's relevant. Read by 20+ tools including Codex, Cursor, and Copilot. ide · typescript super simple (format only) Self-hosting AGENTS.md
4 context-mode 19.9k Context-window optimization layer that sandboxes tool output before it reaches the model (claimed 98% reduction) and persists session memory across 17 agent platforms via MCP and hooks—progressive disclosure applied to tool results, not just instructions. mcp · memory · sandbox ⚠️ Elastic-2.0 mostly simple (output sandboxing, cross-platform) Project README
5 langgraph-bigtool ✱ 554 Build LangGraph agents with large tool sets; retrieval and on-demand tool loading so agents scale beyond context without stuffing every schema upfront. tool-discovery · python slightly complex (large tool sets) Math-library tool agent
6 MCP-Zero 506 Active tool discovery for autonomous agents: model requests tools by requirement; hierarchical semantic routing over 308 servers / 2,797 tools with ~98% token reduction (APIBank). tool-discovery complex (3k tools, full routing) APIBank experiment
7 ToolGen 184 ICLR 2025: unified tool retrieval and calling via generation; 47k+ tools without context stuffing—retrieval and invocation in one generative step. tool-discovery · python complex (47k+ tools) Full eval pipeline
8 ToolRAG 33 Semantic tool retrieval for LLMs; serves only the tools the user query demands (MCP-compatible), unlimited tool sets with zero context penalty. mcp · tool-discovery mostly simple (query-driven retrieval) MCP server retrieval

Coding agent products (IDEs, CLIs, full suites)

Turnkey coding agents you install and run: IDE extensions, terminal CLIs, Dockerized workspaces. Each entry notes which part is the harness (the agent loop, tool wiring, approval model) versus the UI shell (VS Code extension, TUI, browser client).

# Project ⭐ Stars Description Open source Simplicity ↔ capability Examples
1 opencode ★ 198k Open-source terminal coding agent (formerly sst/opencode; transferred to anomalyco). The harness is a multi-provider tool-call loop (Claude, OpenAI, Gemini, local) with strong plugin and MCP support; the TUI is the shell. 100% OSS, very actively shipped. mcp · provider-agnostic · cli · tui · typescript slightly complex (multi-provider, plugins, MCP) Agent system page
2 Gemini CLI 107k Google's first-party terminal agent for Gemini. The harness is the plugin/MCP tool-call loop; the terminal is the shell—Google's parallel to Claude Code / Codex, not just an API. mcp · cli · typescript slightly complex (official CLI, plugins, MCP) MCP server setup
3 Codex 106k OpenAI's terminal coding agent. The harness is the sandboxed tool-call loop with multi-provider support; the CLI is the shell. Reference implementation for "official CLI that ships code." sandbox · provider-agnostic · cli slightly complex (reference CLI, sandboxed) Sandboxing concept
4 pi 91.3k The upstream AI agent toolkit behind this list's oh-my-pi fork: a unified multi-provider LLM API, agent loop, and TUI shell providing the harness that oh-my-pi's Rust rewrite builds on. provider-agnostic · tui · rust slightly complex (multi-provider agent loop, TUI) Project README
5 OpenHands ★ 84.2k Dockerized software-engineering agent. The harness is the bash/editor/browser toolset with micro-agents and event-stream session bridging; Docker is the sandbox. Main OSS choice for teams self-hosting autonomous repo work. memory · browser · sandbox · python ⚠️ (multi-license) complex (Docker runtime, multi-surface agent — product suite) Repository microagents
6 Open Interpreter 68k Lightweight terminal coding agent oriented to open models (DeepSeek, Kimi, Qwen). The harness is a code-execution loop — the model writes code, the harness executes it with confirmation gates; the CLI is the shell. The original "let the LLM run code on my machine" project, reborn for open weights. cli · python mostly simple (lean code-exec loop) Quick start
7 Cline 66.3k VS Code extension whose harness is a plan-then-act loop with per-step human approval and cost transparency; the VS Code integration is the UI shell. Open-source counterweight to Cursor. ide · typescript slightly complex (plan-then-act, approval gates) Plan & Act mode
8 goose ★ 52.9k Block-originated Rust agent, now stewarded by the Linux Foundation's Agentic AI Foundation (aaif-goose/goose). The harness is the MCP/ACP extension model with recipes and provider choice; there's no fixed UI slot—you bolt it into whatever shell you use. mcp · rust slightly complex (extensions, MCP/ACP) Goose recipes guide
9 DeepSeek-Reasonix 34.6k DeepSeek-native terminal coding agent. The harness is engineered around prefix-cache stability for long-running sessions; the TUI is the shell. memory · cli · tui · typescript slightly complex (terminal agent, prefix-cache tuned) Project README
10 vibe-kanban 27.8k Kanban-style fleet manager for running Claude Code, Codex, or any coding agent across many tasks at once. The harness contribution is the task-queue/review layer on top of whichever agent executes; not an agent loop itself. slightly complex (task-fleet manager) Project README
11 crush 27.4k Charm's terminal coding agent (Charm's fork of the original OpenCode). The harness is the tool-calling loop with session persistence; the Bubble Tea TUI is the shell. memory · cli · tui ⚠️ FSL-1.1-MIT slightly complex (terminal agent, TUI) Crush launch post
12 qwen-code 27.1k Alibaba's official terminal coding agent, forked from Gemini CLI's agent loop and retuned for Qwen models. The harness is the same sandboxed tool-call loop as its upstream; the terminal is the shell. sandbox · cli · typescript slightly complex (official CLI, Gemini-CLI fork) Project README
13 Kilo Code 26.9k VS Code extension and CLI in the Cline/Roo-Code lineage — a natural pick now that Roo-Code is archived upstream. The harness is an approval-gated autonomous-mode loop with a provider/tool marketplace; the IDE is the shell. mcp · cli · ide · typescript slightly complex (IDE extension + CLI, MCP) Project README
14 Symphony ★ 26.7k OpenAI's harness for fanning a task out into many isolated, autonomous coding-agent implementation runs and surfacing the ones that pass, so a team manages outcomes instead of supervising each session. sandbox complex (parallel isolated runs — product suite) Project README
15 oh-my-pi 25.2k Terminal coding agent (fork of Pi) that wires the IDE into the harness: hash-anchored edits, a 32-tool loop tuned per-model, LSP rename/references/diagnostics on every write, a real DAP debugger (lldb/dlv/debugpy), long-lived Python + Bun execution kernels that call back into the agent's tools, browser control, and 40+ providers (Claude/OpenAI/Gemini/local). ~55k-line Rust core. browser · provider-agnostic · cli · ide · rust slightly complex (terminal agent, LSP/DAP, multi-provider) LSP wired into edits
16 Roo Code 24.3k VS Code/Cursor extension in the Cline lineage. The harness is the approval-gated agent with custom modes and a strong MCP story; the IDE is the UI. Popular community fork when you want that workflow without the upstream extension. mcp · workflow · ide · typescript slightly complex (IDE extension, MCP-first) Custom modes guide
17 jcode 17.7k Rust terminal coding agent pitched as the most RAM-efficient harness in its class; MCP support, multi-provider (Claude/OpenAI). mcp · memory · provider-agnostic · cli · rust slightly complex (terminal agent, low-memory) Project README
18 eigent 15k Open-source desktop harness positioned as a local, free alternative to Claude Cowork and Codex: multi-agent workspace orchestration in a self-hosted app rather than a hosted product. multi-agent · local complex (desktop multi-agent workspace — product suite) Project README
19 cc-haha 14.1k Local-first desktop workspace harness for Claude Code and other agents: multi-agent sessions, Git worktrees, code diffs, a skill marketplace, and chat-app access (WeChat, Telegram, WhatsApp). memory · multi-agent · typescript complex (desktop workspace, multi-agent — product suite) Project README
20 claw-code-agent 543 Python reimplementation of the Claude Code agent architecture with zero external dependencies; interactive chat, streaming, plugin runtime, nested agent delegation, cost tracking, MCP transport—portable harness without the Rust/TS toolchain. mcp · rust · python · typescript slightly complex (pure Python, plugin runtime) Quick Start guide
21 AgentBox 352 Runs multiple coding agents in parallel, each in its own sandboxed VM, locally or in the cloud, from one command. The harness contribution is the VM-per-agent isolation and fleet fan-out layer; whichever agent runs inside owns the loop. sandbox · typescript slightly complex (VM-per-agent sandbox, parallel fan-out) Parallel agents quick start
22 Proliferate 167 Open-source AI IDE for Claude Code, Codex, OpenCode, and more. The harness contribution is the workspace/session orchestration layer: run multiple coding agents in parallel, locally or in the cloud, with isolated workspaces, reusable workflows, and shared team context. multi-agent · sandbox · ide · typescript complex (multi-agent workspace orchestration — product suite) Product README

Coding harness configs and SDKs

Skill packs, slash-command libraries, meta-prompting frameworks, and official SDKs that give you the harness (the agent loop, planning, memory, hooks) without bundling a specific IDE or CLI shell.

# Project ⭐ Stars Description Open source Simplicity ↔ capability Examples
1 superpowers 273k Performance-oriented harness pack for Claude Code and 13 other harnesses (Codex, Cursor, OpenCode, Gemini CLI, more): skills, instincts, memory, security, research-first workflows. Treats harness engineering itself as the performance lever. memory · cli · ide complex (multi-IDE skill stack — product suite) TDD skill
2 Anthropic Skills 170k Anthropic's official Agent Skills repository: SKILL.md-based folders (instructions, scripts, resources) Claude dynamically loads on Claude Code, Claude.ai, and the API. The reference for progressive-disclosure skill packs in 2026. ⚠️ Anthropic terms mostly simple (official skills format) docx skill
3 GStack 128k Garry Tan's Claude Code skill stack: 23 slash-command modes (CEO/eng/design review, QA, ship, browse, retro, …) that structure one assistant as a virtual engineering team. Daily driver while running YC. typescript slightly complex (multi-role slash-command harness) /ship SKILL.md
4 addyosmani/agent-skills 87.7k Addy Osmani's production-grade skill pack: 24 engineering skills and 4 specialist agent personas that encode senior-dev workflows (spec through deploy) across 70+ coding agents including Claude Code, Cursor, and Copilot. The harness contribution is the skill/workflow layer, not a new agent loop. workflow · ide mostly simple (skills bundle, cross-agent) Project README
5 awesome-claude-code 52.4k Large community-curated index of Claude Code skills, slash commands, status lines, and plugins—resources for extending the harness, not a harness itself, but the most-followed catalog of the genre. super simple (curated resource index) Project README
6 wshobson/agents 38.9k Cross-harness marketplace of drop-in subagents and skills for Claude Code, Codex CLI, Cursor, OpenCode, and Copilot; specialized, production-ready agent definitions you install rather than hand-write. multi-agent · cli · ide super simple (drop-in agent packs) [Agent catalog](https://github.com/wshobson/agents#re