exoharness/exo

Exo is an agent + harness architecture that is fully recursive, able to safely edit all aspects of itself at runtime to get better at your tasks.

What it solves

Exo provides a framework for creating AI agents capable of recursive self-improvement. Unlike standard agents that can only update memory or skills, Exo allows an agent to have full visibility and control over its own source code, runtime logs, and harness policy, enabling it to incrementally evolve its own architecture, prompts, and tooling to solve complex problems.

How it works

Exo operates using a host-side loop that manages model context and tool execution outside of a sandbox. It utilizes a vanilla Ubuntu sandbox where the agent can install packages and run commands, with the ability to snapshot and rewind the environment to recover from errors. The agent's source code is mounted directly into this sandbox, allowing it to read, modify, and rebuild itself. A durable event log stores a canonical history of all actions, ensuring the agent can track its experiments and avoid recursive loops.

Who it’s for

It is designed for developers who want to build long-lived agents that can adapt to smarter models over time or for those needing agents that can iterate on system-level properties to optimize costs or solve highly complex technical tasks.

Highlights

  • Recursive Self-Improvement: Ability to modify its own prompts, memory, tooling, and harness policy.
  • Sandbox Environment: Uses Docker for safe experimentation with snapshot and rewind capabilities.
  • Multi-Channel Integration: Supports interaction via a local REPL, a web-based chat (ExoChat), and integrations with Discord, WhatsApp, Signal, Slack, and IRC.
  • Durable State: Maintains a canonical history of tool activity and conversation records that persist across sandbox rewinds and restarts.

Related

  • Project
  • Project
  • Project
  • Project