Open managed agents

Open agents, batteries included.

OAO handles the hard parts of running AI agents: orchestration, durable runs, retries, state. You just define the agent and hand off tasks. Open source, on your infrastructure, with any model provider.

OPEN SOURCE ANY MODEL PROVIDER MANAGED CLOUD — COMING SOON

Open by design

Any provider. Any model. Mixed freely.

OAO is not tied to a single vendor. Connect the model providers you choose — commercial clouds and open-source models alike — and combine them in one platform. Run Claude next to Grok next to Llama, give every agent the model that fits its job, and swap providers without rewriting a thing.

  1. 01
    Mix providers per agent

    Each agent version pins its own model preset — a coordinator on one provider can delegate to children on entirely different ones.

  2. 02
    Open-source models welcome

    Llama, Qwen, DeepSeek, GLM and Mistral are first-class citizens, not an afterthought.

  3. 03
    No lock-in, by construction

    Agents only ever see named presets — never a hardcoded model ID — so switching providers is a config change, not a migration.

SUPPORTED TODAY
  • OpenRouter 100+ models, incl. open-source
  • Anthropic Claude family
  • Grok xAI models
  • OpenAI GPT family
MODELS YOU CAN MIX
anthropic/claude-opus-5openai/gpt-5.6x-ai/grok-4.6google/gemini-3.7-flashdeepseek/deepseek-v4-proqwen/qwen3.8-maxz-ai/glm-5.1meta/llama-4-scoutmistral/mistral-large-3 + more providers coming
For developers

Two requests to a durable agent.

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.

1 · Start a session 201 in milliseconds — work durably queued
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."
  }'
2 · Follow every state change resumable from any committed position
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
Read the docs View on GitHub

Every endpoint is documented at docs.oao.sh — approvals, caller-owned tools, files, skills, and the full event reference. A typed TypeScript SDK is on the way.

Your infrastructure, your rules

Self-host it — or let us run it.

Two ways to run OAO: the full open-source platform on your own hardware, or the managed cloud where every project picks its region — EU or US. Built EU-minded either way: sovereignty is a feature, not a compliance checkbox.

SELF-HOST · OPEN SOURCE

Your own infrastructure

The full platform under the Apache-2.0 license — coming soon. Your PostgreSQL, your object storage, your provider keys. Run it on any cloud or in your own datacenter; your data stays wherever you run it.

DOCKER COMPOSEPOSTGRES 17S3-COMPATIBLE STORAGENO PHONE-HOME
github.com/vectrix-ai/oao →
OAO CLOUD · MANAGED

Managed, in your region

The hosted platform with nothing to operate — durable runtime, console, backups and event streams included. Create a project, pick where it runs, and the data stays in the region you chose.

PICK PER PROJECT
EU European Union
US United States
Join the waitlist — one list, both regions →
The platform

Everything an agent needs to endure.

Built on Flue — the durable runtime at the backbone of OAO — with PostgreSQL as the single source of truth. No bolted-on queues, no state scattered across services.

skill_v3 · catalog

Versioned skills

Reusable packages of instructions and resources with progressive disclosure — agents see a small catalog entry first and load full instructions only when needed, keeping context lean.

roster · 32 pinned versions

Multi-agent orchestration

A coordinator pins an exact roster of child agent versions, each with its own durable thread — sharing one sandbox workspace without mixing conversation histories.

daytona · per-version policy

Persistent sandboxes

One workspace per thread, reused across runs on Daytona sandbox infrastructure. Network mode and capabilities — filesystem, shell, browser — are selected exactly, per published agent version.

s3 · sha256-verified

Workspace backups

Every completed run re-archives the workspace to S3-compatible storage. If the sandbox disappears, OAO restores it before the agent gets any tools.

lease · fence · claim

Caller-owned tools

Your app claims tool requests under a lease with monotonic fencing, does the work in your environment, and submits one immutable, schema-validated result. Stale workers can't commit.

sse · Last-Event-ID

Resumable event stream

One ordered event feed per project. Disconnect at any moment and resume from your last committed position — the stream is the source of truth, not a best-effort broadcast.

Security

Boring where it matters.

Every tenant isolated. Every agent sandboxed. Enforced by the runtime, not a policy.

Isolated by construction

Row-level security scopes every query. Org and project IDs live in every key.

Sandboxed by default

Each agent runs in its own sandbox. Filesystem, shell, browser and network are allow-listed per version.

Write-only credentials

Provider keys are encrypted and can never be read back. Responses carry only a fingerprint.

Nothing leaks into logs

Secrets and auth headers never appear in logs or event streams. A platform rule, not a lint warning.

FAQ

Fair questions.

What is a managed agent?

An AI agent whose configuration — prompt, model preset, skills, tools, sandbox policy, and limits — is published as an immutable version, and whose runs are executed durably by the platform. You define what the agent is; OAO takes responsibility for keeping its work alive, inspectable, and reproducible.

What actually happens when a worker crashes mid-run?

Nothing is lost. The run is a durable PostgreSQL obligation held under a lease. When the crashed worker's lease expires, another worker acquires it with a higher fencing token and resumes the run. The stale worker can never commit anything afterwards — fencing tokens make sure of it.

Which model providers does OAO support?

Today: OpenRouter, Anthropic, Grok (xAI), and OpenAI — with OpenRouter unlocking 100+ further models, including open-source ones, and more direct providers on the way. Mix them freely: different agents (or a coordinator and its children) can each run on a different provider. You bring your own keys; they're encrypted write-only, and agents only ever see approved, named model presets — never a raw model ID or credential — so switching providers is a config change, not a migration.

Can agents call tools inside my own systems?

Yes — that's the caller-owned tool protocol. Your application claims a pending tool request under a lease, executes it in your environment with your credentials, and submits one immutable result that's validated against the schema pinned in the agent version. OAO never needs access to your internal systems.

Where does my data live?

Wherever you decide. Self-hosted, OAO runs entirely on your infrastructure — your PostgreSQL, your object storage — and nothing phones home, so your data stays wherever you run it. On OAO Cloud you choose an EU or US region when you create a project, and your data stays in that region.

Is OAO open source?

It will be. The platform lives at github.com/vectrix-ai/oao and is being prepared for an open-source release under the Apache-2.0 license, alongside OAO Cloud, a managed version for teams who don't want to operate it themselves. It builds on Flue, the durable runtime at its backbone. Join the waitlist to hear the moment either is ready.

When can I use it?

OAO is in active development. The waitlist is the way in: early access to OAO Cloud, and a heads-up when the open-source release lands.

Define the agent.
We run the rest.

Be first in line for OAO Cloud and the open-source release.

You're on the list — talk soon.

Early access to OAO Cloud and the open-source release. No spam, ever.

OPEN · DURABLE · PORTABLE