Awesome Agent Harness

repository·main·Indexed 19 days ago

https://github.com/autojunjie/awesome-agent-harness

A curated directory of tools, frameworks, and resources for agent harness engineering. It covers the infrastructure surrounding LLM coding agents, including session management, context delivery, tool design, and architectural enforcement. The collection categorizes resources into full lifecycle platforms, parallel execution orchestrators, issue-to-PR task runners, agent runtimes, memory solutions, and standards like MCP and AGENTS.md.

Tokens
4.6K
Snippets
7
Records
24
Agent score
67%

What's inside awesome-agent-harness

  1. Explore Agent Harness Frameworks

    main

    Agent Harness Frameworks provide composable primitives for building custom harnesses, following the principle of "fewer tools, more expressiveness" rather than providing opinionated, sprawling toolkits. Use these to build custom agentic workflows and orchestration logic.

    Key frameworks include:

    • Deep Agents: Built on LangChain/LangGraph; uses progressive disclosure via planning tools and subagent spawning.
    • Gambit: For building, running, and verifying LLM workflows.
    • DeerFlow 2.0: ByteDance's SuperAgent harness with a skill system, sub-agent orchestration, and sandboxed execution.
    • Zylos: A persistent harness for Claude Code featuring tiered memory and task scheduling.
    • Microsoft Agent Framework: Supports Python and .NET for building and deploying multi-agent workflows.
    • Compound Engineering Plugin: Provides a unified harness interface across Claude Code, Codex, and Cursor.
    • get-shit-done: A meta-prompting system that structures work into milestone $\rightarrow$ phase $\rightarrow$ plan sequences.
  2. Identify Coding Agents for execution

    main

    Coding agents represent the execution layer. In a harness architecture, the agent is the commodity that writes code, while the harness provides the necessary context and tools.

    Common coding agents:

    • Claude Code: Anthropic's agent featuring progressive disclosure via skill files and multi-agent coordination via Agent Teams.
    • OpenCode: An extensible open-source agent with 44 lifecycle hooks and a TypeScript SDK.
    • Cursor: An AI IDE with an Automations feature for event-triggered agent launches.
    • Aider: A terminal-based AI pair programming tool.
    • Hermes Agent: A self-improving agent that evolves its own capabilities based on execution history.
  3. Use Planning and Spec Tools

    main

    Planning tools address the gap between writing code and deciding what to build. They generate the structured requirements and specifications that agents consume.

    Key tools:

    • Kiro IDE: AWS's spec-driven development IDE for managing requirements.
    • OpenSpec: A CLI for generating structured specs from natural language.
    • agents.md: An open standard for project-level agent instructions (designed as a table of contents rather than an encyclopedia).
    • Open Pencil: An open-source design editor that allows agents to read/write .fig files headlessly via an MCP server.
  4. What is an Agent Harness?

    main

    An agent harness is the infrastructure that wraps around an LLM coding agent. It encompasses everything except the model itself, providing the necessary environment for reliable, scalable agentic work.

    Key components of a harness include:

    • Session management: Maintaining state across interactions.
    • Context delivery: Providing the agent with relevant repository information.
    • Tool design: Defining the action space (APIs, CLI tools, etc.) available to the agent.
    • Architectural enforcement: Using linters, structural tests, and CI checks to maintain invariants.
    • Failure recovery: Handling errors and providing feedback loops.
    • Human oversight: Implementing approval gates and steering mechanisms.
  5. Use Agent Runtimes for persistent infrastructure

    main

    Agent Runtimes serve as the persistent infrastructure layer. They provide capabilities that coding agents lack natively, such as persistent memory, cron scheduling, multi-channel messaging, and sub-agent spawning. While orchestrators manage throughput, runtimes ensure an agent stays alive and connected between tasks.

    Notable runtimes:

    • OpenClaw: Orchestrates agents across messaging channels with a skill system and persistent session management.
    • LangGraph: A library for building stateful, multi-actor applications; manages execution and coordination of agentic workflows.
    • Nanoclaw: A lightweight, container-based alternative to OpenClaw that connects to WhatsApp and Telegram.
    • Claude Managed Agents: Anthropic's managed infrastructure where you define agent templates (tools, skills, repos) and Anthropic handles the execution environment and session logs.
  6. Implement Agent Knowledge & Memory

    main

    To solve the "context cliff" (where agents start from zero in every new session), use Agent Knowledge & Memory tools to provide persistent memory and shared knowledge across sessions.

    Available solutions:

    • claude-mem: Automatically captures sessions via AI compression and injects them into future Claude Code runs.
    • cq: A Mozilla project that acts as a commons where agents deposit and retrieve learned solutions.
    • Honcho: A library providing the persistence layer for session history, user context, and learned preferences.
    • Hindsight: Automatically captures and indexes agent execution history to improve future performance.
    • CodeBurn: Provides token usage analytics for Claude Code to optimize costs.
  7. Understand the difference between Agent Frameworks and Agent Harnesses

    main

    In the agent development landscape, there is a distinction between frameworks and harnesses:

    • Agent Frameworks (e.g., CrewAI, LangChain): Provide building blocks and modular components to construct agentic workflows.
    • Agent Harnesses (e.g., OpenClaw): Provide turnkey, end-to-end systems that include the runtime environment, state management, and tool execution loops.

    Choosing between them depends on whether you need to build the underlying infrastructure (Framework) or deploy a complete, operational system (Harness).

  8. Core Principles of Agent Harness Engineering

    main

    Effective agent harness engineering follows several key principles derived from industry leaders like OpenAI and Anthropic:

    1. Humans steer, agents execute: Engineers design environments and review outcomes rather than writing code manually.
    2. Repository knowledge is the system of record: Agents rely on what is present in the repository; external knowledge (Slack, Docs) is invisible unless integrated.
    3. AGENTS.md is a table of contents, not an encyclopedia: Use AGENTS.md to point to deeper sources of truth rather than dumping all context into one file.
    4. Enforce architecture mechanically: Replace manual code reviews for invariants with custom linters, structural tests, and CI checks.
    5. Agent legibility is the goal: Optimize code for agent readability first, human readability second.
    6. Fewer tools, more expressiveness: Use progressive disclosure and composable primitives instead of sprawling, narrow toolkits.
    7. See like an agent: Observe model outputs and struggle points to evolve the harness.
    8. Corrections are cheap, waiting is expensive: At high throughput, prioritize 'fix-forward' approaches over blocking merge gates.
  9. Principles of Harness Engineering

    main

    Harness Engineering is the practice of building control loops around LLMs to turn them into reliable agents. Key principles include:

    • Progressive Disclosure: Instead of loading all tools and context upfront, provide information and capabilities incrementally. This prevents context window saturation and improves model focus.
    • Tool Subtraction: Fewer, more specialized tools often outperform a large, generic toolset.
    • Repository Knowledge as System of Record: Treat the codebase and its documentation as the primary source of truth for the agent, rather than relying solely on model weights.
    • Mechanical Architecture Enforcement: Use the harness to programmatically enforce architectural rules that the model might otherwise ignore.
  10. Design patterns for Agent Orchestration

    main

    When designing multi-agent systems, consider these architectural patterns:

    • Cheap Executor + Expensive Advisor: Use smaller, faster models (e.g., Claude Haiku) for routine execution tasks and larger, more capable models (e.g., Claude Opus) for high-level decision-making and planning. This optimizes both cost and intelligence.
    • Three-Agent Pattern (Planner, Generator, Evaluator): A specialized harness design for long-running tasks where one agent plans the work, another executes/generates, and a third evaluates the output to ensure quality and adherence to constraints.
  11. Core components of an Agent Harness

    main

    According to industry analysis (notably from LangChain), a robust Agent Harness is composed of four essential pillars that address the limitations of LLMs:

    1. State: Managing the memory and current status of the agent's progress.
    2. Tool Execution: Providing a controlled environment for the agent to interact with the world.
    3. Feedback Loops: Implementing sensors and actuators to close the loop between agent action and environment response.
    4. Enforceable Constraints: Setting boundaries and invariants to ensure the agent operates within safe or desired parameters.