Open-source Claude Managed Agents runtime, built for durable self-hosting.
Mango is an independent implementation of the core Claude Managed Agents API in Go. It runs agent sessions on your infrastructure with PostgreSQL-backed state, Temporal-powered execution, and pluggable sandboxes.
- Compatible: use the supported API through raw HTTP or the official Anthropic Go SDK with a different base URL.
- Durable: accepted work, interrupts, tool orchestration, and client-action waits survive process failures.
- Pluggable: run tools in local, Docker, E2B, CubeSandbox, OpenSandbox, or Daytona sandboxes.
- Observable: persist the event history and stream results over SSE.
Requirements: Docker with Compose.
make local-up
make local-health
curl http://localhost:8080/readyzNo credentials are required. The local stack runs PostgreSQL, Temporal, NATS, the API, and a worker with a deterministic offline model.
Follow the five-minute walkthrough to create an Environment, Agent, and Session and send the first message.
make local-downflowchart LR
Client --> API["Managed Agents API"]
API --> PG[("PostgreSQL")]
PG -- "durable outbox" --> Worker
Worker <--> Temporal
Worker --> Model["Messages API"]
Worker --> Sandbox
Worker -. "live previews" .-> NATS
NATS -.-> API
PostgreSQL owns public state and event history. Temporal owns in-flight execution. NATS carries only ephemeral wakeups and previews. A lost signal, worker restart, or NATS outage cannot discard accepted work.
This separation is consistent with the architecture Anthropic describes for Managed Agents and Cursor's published lessons on durable cloud agents. These are non-normative references, not endorsements or compatibility evidence.
Read the architecture overview for the failure model, transactional outbox, tool journal, interrupt ordering, and sandbox lifecycle.
Important
Alpha. Mango implements a documented subset of the API and is not an Anthropic product or a drop-in production service. Check the compatibility matrix before depending on a capability. The default local sandbox is not a security boundary.
| Area | Status |
|---|---|
| Agents, Environments, Sessions | Core lifecycle implemented |
| Events | Messages, interrupts, custom-tool results, confirmations, pagination, and SSE |
| Runtime | Multi-round model/tool loop with durable park and resume |
| Tools | bash, read, write, edit, glob, and grep |
| Sandboxes | Local and Docker available; E2B, CubeSandbox, OpenSandbox, and Daytona in Preview |
MCP execution, files, skills, memory, vaults, multi-agent orchestration, schedules, and webhooks are not implemented. See Claude API coverage for exact behavior and the roadmap for planned work.
- Use a real model endpoint
- Choose a sandbox backend
- Understand the deployment model
- Browse the API reference
- Read the hosted documentation
make verify
make docs-check
make image-smokeDefault tests are offline. PostgreSQL, Temporal, NATS, Docker, and remote
sandbox integrations have opt-in suites. See
deployments/local and
CONTRIBUTING.md.
Report vulnerabilities through SECURITY.md.
Apache License 2.0. See LICENSE.
