Skip to main content
Harnest is an agent harness for teams moving beyond “the model responded” to “this needs to work in production.” Built and maintained by Fused. It handles the day-two work around ADK and LangGraph agents: repeatable builds and tests, serving, authentication, approvals, persistent sessions, durable background tasks, and telemetry. You own the agent’s behavior; Harnest provides the structure and runtime around it. Every Harnest agent is compiled from the capabilities you add. Tools, queued tasks, SubAgents, MCP connections, Agent Skills, Agent Plugins, Harnest Extensions, sandboxes, and lifecycle hooks and factories are left out unless you use them.

Managed and advanced modes

Harnest builds on the work of Google ADK and LangGraph. Managed mode gives you the fastest path. Advanced mode lets you break out to native framework APIs without giving up the harness around them.
Existing agents can start in advanced mode and move compatible capabilities into the managed structure over time. See Migrate a project.

Install

1

Install the CLI

2

Verify the CLI and managed runtime

Installation and releases covers version pinning, CI installation, upgrades, checksums, and private forks.

Initialize a project

Choose a framework:
Then enter the agent folder, sync, and test the isolated environment:
Start with only the core files, then add resources from inside the new agent:
You can also add task, lifecycle, and context resources. Use --project <agent-root> only when running outside the agent folder. compile, test, and serve sync automatically. Add only your packages to pyproject.toml; Harnest owns the framework dependency.

Migrate a project

Bring an existing agent into Harnest

Start with the mode that preserves your current behavior. Harnest adds tests, serving, sessions, auth, storage, telemetry, and the playground around it. Move native pieces into managed capabilities only when that improves the project.

Upgrade an older Harnest project

Preview first, then apply and test:
The first command previews the change. Apply verifies the reviewed files and creates backups.

Switch between ADK and LangGraph

For a managed agent, change spec.framework.name in config.yaml:
Test and serve the target framework:
Review native extensions, evals, sandboxes, custom nodes, and active checkpoints first. Advanced projects need a manual migration.
Follow the full framework migration checklist.

Serve a project

The playground and neutral API work in both modes. Override server defaults in the optional server: section of config.yaml.

Explore Harnest

Build agents

Learn the project concepts and where each capability belongs.

Compare frameworks

See what moves between ADK and LangGraph.

Configure lifecycle

Add resources, storage, auth, hooks, and telemetry.

Serve agents

Use the neutral API, events, approvals, and playground.