Documentation/docs/managed-agents/compatibility

#Compatibility

Sandbox0 Managed Agents follows the Claude Managed Agents API shape where practical, while using Sandbox0 as the execution backend.

Official reference: Claude Managed Agents quickstart.

Supported Surface#

AreaStatus
Official Anthropic SDKSupported by setting baseURL to the Sandbox0 Managed Agents API endpoint
Managed Agents beta headerRequired for direct HTTP calls. SDKs set it automatically.
AgentsSupported, including versioned agent definitions
EnvironmentsSupported for type: cloud with package and networking configuration
SessionsSupported with durable status, metadata, agent snapshot, resources, vault ids, usage, and stats
EventsSupported for list, send, and event streaming
FilesSupported for upload, metadata, download, delete, and file-backed message content
Vaults and credentialsSupported for LLM credentials, MCP credentials, and Sandbox0 HTTP header credential projection
Custom skillsSupported through uploaded skill versions
MCP serversSupported for URL MCP servers and vault-backed credentials
GitHub repository resourcesSupported at session creation
Agent harnessesSupported for claude, codex, and openai-agents
External AI gatewaysSupported when the gateway exposes the API shape required by the selected agent harness

Current Differences#

DifferenceSandbox0 behavior
SDK ownershipSandbox0 does not ship a Managed Agents SDK. Use the official Anthropic SDK.
API tokenSDK apiKey is a Sandbox0 API key, not the Anthropic LLM token.
LLM tokenStored in an LLM vault and projected by Sandbox0 credential policy.
Agent harnessSelected by the compatibility key sandbox0.managed_agents.engine on the LLM vault.
Sandbox claimRuntime setup claims or resumes a Sandbox0 sandbox and mounts a persistent workspace volume.
Claude harnessRequires an Anthropic-compatible endpoint.
Codex harnessRequires an OpenAI-compatible endpoint.
OpenAI Agents harnessRequires an OpenAI Responses-compatible endpoint and uses Sandbox0 as a tool target.
Retry stateAutomatic retries are exposed as session.status_rescheduled plus retry_status.type = "retrying" errors when the selected harness provides a retry signal.
External AI gatewayOptional. Use one when provider API shape, provider credentials, logging, caching, or rate limits should be managed outside Sandbox0.
Anthropic pre-built skillsNot supported. Use Sandbox0 custom skills.
Multi-agent threadsNot implemented in the current backend surface.
Outcomes and memory research previewNot implemented in the current backend surface.
Rate limitsDeployment-specific. Do not assume Anthropic-hosted organization limits apply.

Tool Support#

The Claude wrapper maps Managed Agents tool definitions to Claude Agent SDK options.

Tool typeStatusNotes
agent_toolset_20260401SupportedEnables built-in tools such as bash, file operations, grep/glob, web fetch, and web search through the selected harness wrapper
mcp_toolsetSupportedRequires matching mcp_servers entries and vault credentials when the server needs auth
Custom toolsSupportedThe wrapper emits agent.custom_tool_use and waits for user.custom_tool_result

Tool confirmation events are supported. When a tool policy requires confirmation, the session emits session.status_idle with stop_reason.type = "requires_action" and the relevant event ids.

Environment Support#

Only type: cloud environments are accepted today.

Networking options:

Networking typeBehavior
unrestrictedSandbox network mode is allow-all
limitedSandbox network mode is block-all with allowed hosts derived from environment settings, package managers, MCP servers, and session credential bindings

Package managers supported in environment config:

  • apt
  • cargo
  • gem
  • go
  • npm
  • pip

Metadata Rules#

Only vault metadata supports reserved sandbox0.managed_agents.* keys today.

ResourceReserved keys
AgentRejected
EnvironmentRejected
SessionRejected
CredentialRejected
VaultSupported for LLM and credential vault config

Vault Compatibility#

Vault roleRequired metadata
llmrole, engine, optional llm_base_url
credentialrole, kind=http_headers, target_domains, headers_json

LLM vaults must contain exactly one active static_bearer credential and must not set mcp_server_url.

Session Lifecycle Notes#

Sandbox0 stores the session and event log outside the sandbox. Sandbox attachment state is stored outside the sandbox and points at the sandbox and volumes.

ActionBehavior
Create sessionStores durable session truth, snapshots the agent, and records environment, resources, and vault ids.
Send user messageEnsures a sandbox is ready, bootstraps wrapper state, starts a run, and appends status events.
InterruptInterrupts the active wrapper run and moves local session truth back toward idle.
DeleteRejects active running sessions. Delete after interrupting and reaching idle.
ArchiveMakes the session read-only for new input events.

claude and codex use agent in sandbox behavior. openai-agents uses sandbox as tool behavior, so the resident runtime can start a run before a Sandbox0 sandbox is claimed.

Sandbox0 session lifecycle includes idle, running, rescheduling, and terminated. The rescheduling state is transient and means the active run is waiting for an automatic retry. It is currently mapped from Claude Agent SDK api_retry events, Codex app-server willRetry errors, and OpenAI Agents SDK runner-managed retry policy decisions.

Version Drift#

The Managed Agents API is a beta surface. Sandbox0 tracks the official OpenAPI shape, but behavior can differ where Sandbox0 intentionally uses its own runtime, credential, and deployment model.

For application code, prefer SDK methods over hardcoded endpoint paths.

Next Steps#

Overview

Learn the credential model used by sandbox egress auth and managed agent vaults.

Sources

Create reusable credential sources for runtime projection.