Any model
Use OpenAI, Anthropic and xAI directly, or hundreds of models through OpenRouter. Every agent picks its own.
Run agents with any model, self-hosted in your own cloud.
git clone https://github.com/vectrix-ai/oaocd oaopnpm oao setup Needs Node 22, pnpm, Docker, and a model provider key.
Investigate shipment SHP-1042 and summarize the delay.
Shipment SHP-1042 (road) is in transit, delayed 14 h at the Rotterdam hub by a missed customs slot. New ETA 24 Aug, 12:00 UTC. Full timeline written to report.md.
At Vectrix we built on Claude Managed Agents and loved the experience: agents, sandboxes, sessions, and a clean console with every turn.
Two things stopped us. It only runs Anthropic models, and it could not keep our data in Europe. So we built OAO to fix both, and made it open source.
OpenAI, Anthropic and xAI directly, plus hundreds more through OpenRouter. Every agent picks its own.
Deploy wherever you want, including the EU. Sessions, transcripts and files stay in your own Postgres and buckets.
OAO next to the hosted agent platforms from Anthropic and OpenAI.
| Feature | OAO | Claude Managed Agents | OpenAI Agents API |
|---|---|---|---|
| Open source | Yes, Apache-2.0 | No | No |
| Model choice | Any: OpenAI, Anthropic, xAI, OpenRouter | Claude models only | OpenAI models only |
| Self-hosting | The whole platform | Sandboxes only | Sandboxes only |
| EU hosting | Any region you choose, including the EU | No, data is stored in the US | No, US data residency only |
| Sandboxes | Yes, on Daytona | Anthropic cloud or self-hosted | OpenAI hosted or self-hosted |
| Multi-agent delegation | Yes, pinned delegate rosters | Yes, subagents and workflows | Yes, subagents |
| Price | Free, no subscription. Bring your own model keys. | Claude tokens + $0.08 per session-hour | OpenAI tokens + container time |
Based on public docs as of October 2026: Claude Managed Agents, OpenAI Agents API. All three products are in beta, OAO included.
Built on Flue, the open agent runtime, with Postgres as the single source of truth.
Use OpenAI, Anthropic and xAI directly, or hundreds of models through OpenRouter. Every agent picks its own.
Every run lives in Postgres under a lease. If a worker crashes, another one resumes it from the last checkpoint.
Each session gets a persistent Daytona workspace, with tools and network allowed per agent version.
A coordinator hands work to pinned child agents. Each gets its own session, and all share one workspace.
Publish versioned skills and connect remote MCP servers from the console. Agents only get the tools you approve.
Send files to agents and back up every workspace to your own S3-compatible bucket.
Plain HTTP and Server-Sent Events, plus signed webhooks. Resume any stream from your last event.
Follow each session on a timeline, with every tool call, token count and cost in one view.
Claude Managed Agents runs Claude. OAO runs whatever you connect: frontier labs and open models alike, side by side in one platform. Give every agent the model that fits its job, and swap providers without rewriting a thing.
Each agent version pins its own model preset. A coordinator on one provider can delegate to children on another.
Llama, Qwen, DeepSeek, GLM and Mistral run through OpenRouter, next to the frontier labs.
Agents only see named presets, never a hardcoded model ID. Switching providers is a config change, not a migration.
OAO speaks plain HTTP and Server-Sent Events. No proprietary protocol, no required client library. Create a session, stream its events, and pick up exactly where you left off after any disconnect.
curl -X POST "$OAO_API/v1/projects/$PROJECT_ID/sessions" \
-H "Authorization: Bearer oao_your_secret" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"agentId": "8f2b1c04-…",
"initialMessage": "Investigate shipment SHP-1042 and summarize the delay."
}' curl --no-buffer "$OAO_API/v1/projects/$PROJECT_ID/events" \
-H "Accept: text/event-stream" \
-H "Last-Event-ID: 142"
event: run.state_changed
event: tool_call.requested
event: run.completed Every endpoint is documented at docs.oao.sh: approvals, caller-owned tools, files, skills, and the full event reference. The repo also includes a typed JavaScript SDK.
OAO is an open source package you run in your own cloud, in the region you choose, including the EU. Guides for Railway and Google Cloud are in the docs.
The full platform, free under Apache-2.0. Your Postgres, your object storage, your provider keys. No usage telemetry and no license check, so your data stays where you run it.
github.com/vectrix-ai/oao →Every tenant isolated. Every sandbox scoped. Enforced by the runtime, not a policy.
Row-level security scopes every query. Org and project IDs live in every key.
Sandboxed agents get their own workspace. Filesystem, shell, browser and network are allow-listed per version.
Provider keys are encrypted and can never be read back. Responses carry only a fingerprint.
Secrets and auth headers never appear in logs or event streams. A platform rule, not a lint warning.
Same shape: agents, sandboxes, sessions, and a console that shows every turn. The difference is who holds the keys. OAO is open source, runs any model, and lives in your own cloud and region.
OpenAI, Anthropic and xAI directly, plus hundreds of models through OpenRouter, including Gemini, Llama, DeepSeek and Qwen. Each agent picks its own model preset, and a coordinator can delegate to agents on other providers. You bring your own keys; they are encrypted and write-only.
Deploy OAO in an EU region and agent state, transcripts and files stay in your own Postgres and buckets there. Model calls go to the provider you pick, and sandboxes run wherever your Daytona target runs, so choose those with the same care. OAO makes no certification claims.
The run is a Postgres record held under a lease. When the crashed worker's lease expires, a healthy worker takes over with a higher fencing token and resumes from the last checkpoint. The stale worker can never commit anything afterwards.
Yes. Your application claims a pending tool request, runs it in your environment with your credentials, and submits one result, validated against the schema pinned in the agent version. OAO never needs access to your internal systems.
Nothing. OAO is free under the Apache-2.0 license, with no subscription and no license check. You pay your model provider, your cloud, and Daytona if your agents use sandboxes.
OAO is in early beta: ready for evaluation and development, without production or support guarantees yet. Breaking changes before 1.0 are possible and announced in the changelog.
Free and open source under Apache-2.0. No subscription.
git clone https://github.com/vectrix-ai/oaocd oaopnpm oao setup Needs Node 22, pnpm, Docker, and a model provider key.
Built on Flue, the open agent runtime from @flueai, and Postgres. Follow the build on YouTube.