Skip to content

Choose the platform that fits your work.

Compare hosting, execution and controls, with sources for each rating.

Ratings checked 27 October 2026. Capabilities and editions can change.

When OpenClaw may fit better

Twenty-plus chat apps, phone apps, MIT source, a registry.

Read the full comparison

Orchestrator Zero

See conditions

Workflow steps replay; lost harness sessions start fresh. Interrupted calls have separate retry rules.

OpenClaw

See conditions

The Gateway persists recovery state and resumes eligible interrupted turns. Retries and reconciliation are bounded and depend on the runtime; this is not uniform replay from each completed step.

Orchestrator Zero

See conditions

Plugin tools follow tenant rules. Some native harness actions bypass the permission hook.

OpenClaw

See conditions

Tool filters and session permission modes restrict actions in code. Exec has approval and auto-review modes; plugin actions and native harnesses have their own approval paths.

Orchestrator Zero

See conditions

Isolation varies by OS and mode. Windows has none; the latest Mac profile fix awaits a real rerun.

OpenClaw

See conditions

Docker sandboxes default to no network. A host allowlist needs OpenShell or your proxy; the secret egress proxy's allowlist only covers unsandboxed Gateway commands.

Orchestrator Zero

See conditions

Retention and legal holds work. Paged capture stays incomplete with missing or invalid source data; it cannot recover lost records.

OpenClaw

See conditions

session.maintenance sets how long sessions are kept and a disk budget, the audit ledger keeps a fixed 30 days, and pinned sessions are protected from maintenance; no legal hold is documented.

Edition, preview status and missing functionality are different conditions. Read each explanation. These criteria are our selection, not a product score.

Research matrix: all 23 products
  • Yes: Documented and available
  • Conditional: Scope, preview or edition conditions apply
  • No: Documented absence or incompatible architecture
  • Not documented: Insufficient evidence

See where others are stronger.

Orchestrator Zero and 22 other agent platforms, rated on 18 capabilities
ProductAny machine you ownLinux, macOS and WindowsSelf-hosted control planeNo inbound portsFleet operationsDurable runsTool policy outside the modelApprovals in chatTool snapshotsTenants built inBudgets that stop a runProvider keys off the workersSandbox with an egress allowlistTamper-evident audit trailErasure by keyRetention with legal holdModel provider choiceMCP and A2A
Orchestrator ZeroYesYesNative; hosted-runner testedYesYesYesConditionalDepends on agent typeConditionalHarness coverage variesConditionalTested against stand-ins onlyYesYesYesSet strict reservationYesConditionalLinux/macOS; Windows tier 0YesKeep trusted chain headsYesRestore with erasure ledgerConditionalCapture needs source dataYesYes
Hermes AgentYesYour hardware or cloudYesNative on all threeYesLocal agent and gatewayConditionalDepends on connectionConditionalGateway and peer managementConditionalRecovery depends on pathConditionalTool and backend coverageConditionalChat prompts; timed waitsNoTool lists refresh directlyConditionalProfiles and separate keysConditionalLimits on costed MCP callsConditionalDocker sandbox scopeConditionalDocker; network setup neededNot documentedNot documentedConditionalPruning; no documented holdYesMultiple vendors and localYesMCP and A2A plugin
RufloYesYour own hardwareYesNative CLI installationYesLocal core and federationConditionalLocal stdio; network peersConditionalFederation peer managementConditionalPersisted workflow progressConditionalHost and transport coverageConditionalHuman review gatesNot documentedConditionalSeparate AI Team serviceConditionalNew subagents can be stoppedNoKeys in runtime configConditionalDepends on execution pathConditionalSelected receipt chainsNot documentedConditionalBounded local audit logsYesMultiple vendors and OllamaConditionalMCP; A2A discovery only
WindmillYesConditionalWindows and Mac in EnterpriseYesYesConditionalWorker tags and groupsYesConditionalTool lists per runYesSlack and TeamsNot documentedYes3 workspaces freeConditionalMetered, no cost stopConditionalSecret store, worker reads itConditionalnsjail, no egress allowlistConditionalLogs vary by editionNot documentedConditionalRetention, no legal holdYesConditionalMCP, no A2A
Temporal Agent HarnessYesYesYesYesConditionalWorker list, no machine joinYesYesPer agent and sessionYesSlack, Discord and TeamsNot documentedConditionalNamespaces, access is yoursConditionalTokens counted, no budgetNoKeys in worker environmentConditionalCode Mode only, no allowlistConditionalHistory, not tamper-evidentConditionalDelete runs, no per-user keysConditionalRetention, no legal holdYesConditionalMCP, no A2A
HatchetYesConditionalMac and Linux; Windows via WSLYesYesConditionalLabels, no version rolloutsYesNot documentedConditionalEvent waits; chat is your codeNot documentedYesNot documentedNoKeys in worker environmentNot documentedConditionalPaid plan, not tamper-evidentNot documentedConditionalRetention, no legal holdConditionalYour code calls the modelConditionalMCP, no A2A
Dapr AgentsYesYesYesNoSidecars call each otherConditionalPlacement, no labels or blockYesDurableAgent workflowsConditionalHook code; OPA on MCP onlyConditionalChat only via your own botNot documentedConditionalNamespaces, access is yoursConditionalClaude executor onlyConditionalKey in sidecar on the workerConditionalCode sandbox, no allowlistConditionalSigned history, preview onlyConditionalPurge per run, no user keysConditionalRetention, no legal holdYesConditionalMCP, no A2A
AgentFieldYesYesWindows via the desktop appYesNoCalls into agentsConditionalAgent registry and canariesConditionalRe-runs, resume is manualConditionalAllow/deny rules, no approveConditionalWebhook API, no chat or CLINot documentedConditionalTeam boundariesConditionalCaps for some harnessesNoKeys in the agent's envNot documentedYesSigned record per executionNot documentedConditionalRetention period, no holdYesConditionalMCP; no A2A protocol calls
OpenClawYesYesYesYesYesConditionalRuntime-dependent recoveryConditionalControls vary by runtimeConditionalExpiry and restart limitsConditionalPlugin pins; MCP uncheckedConditionalOne boundary per gatewayConditionalEstimates, no cost capYesWorkers proxy via GatewayConditionalAllowlist only via OpenShellConditionalAudit log without hash chainConditionalDelete sessions and memoryConditionalRetention setting, no holdYesYes
kagentConditionalKubernetes onlyNoKubernetes onlyYesNoTraffic routed inConditionalKubernetes poolsConditionalActive turn lost on node deathConditionalTool lists, approval flagConditionalUI and A2A API, no chat appNot documentedConditionalNamespaces; user isolation gapsConditionalTokens traced, no budgetYesYesgVisor, default-deny egressConditionalTraces without tamper evidenceConditionalDelete a user's memoriesNoNo retention for run historyYesYes
LangSmith DeploymentConditionalEnterprise planConditionalDocker on macOS and WindowsConditionalEnterprise planConditionalServer takes requestsConditionalDeployments, no routingYesCheckpointed workflowsConditionalMiddleware in agent codeConditionalSlack cards in beta onlyNot documentedYesConditionalCaps in gateway betaConditionalOptional gateway, betaYesLangSmith SandboxesConditionalAdmin actions, EnterpriseConditionalDelete traces by metadataConditionalRetention, no legal holdYesYes
CrewAIConditionalFactory on your KubernetesConditionalFramework only; AMP on LinuxConditionalFactory, Enterprise planNoCrews serve an HTTP APIConditionalOne K8s node pool, all crewsConditionalManual resume from checkpointConditionalTool hooks you writeConditionalEmail and UI; chat via webhookNot documentedYesOrganizations; RBAC EnterpriseConditionalCost estimates, no spend capConditionalInjected into crew envConditionalExternal sandbox requiredConditionalAudit logs, no hash chainConditionalForget a memory scopeConditionalTrace retention, no holdYesYes
DifyYesAnywhere Docker runsConditionalDocker; WSL 2 on WindowsYesFree community editionNoAPI calls the agent backendNot documentedConditionalWaits persist; no crash resumeConditionalTool list per agent onlyConditionalWeb, email, API; no chat appConditionalMCP tool list updated by handConditionalMany workspaces: EnterpriseConditionalToken costs shown, no capConditionalPlatform-held credentialsConditionalOpenShell allowlist is optionalConditionalEnterprise, admin actions onlyConditionalDelete conversations by APIConditionalRetention days, no legal holdYesConditionalMCP; A2A via community plugin
n8nYesConditionalNative npm being deprecatedYesYesConditionalNo label routingConditionalManual retryConditionalReview set per workflowYesSlack, Teams and moreNot documentedConditionalProjects, paid plansConditionalPrepaid credits, Cloud onlyConditionalCloud gateway credits onlyConditionalSandbox, no egress allowlistConditionalLog streaming, EnterpriseConditionalDelete their executionsConditionalPruning, no legal holdYesConditionalMCP, no A2A
IBM watsonx OrchestrateConditionalTheir cloud or OpenShiftNoTheir cloud or OpenShiftConditionalPaid, on OpenShift onlyNoCalls into agentsNoNo machine fleetConditionalCrash resume not documentedConditionalMCP controls; SaaS scopeYesWorkflow forms in SlackConditionalTool versions pinnedYesConditionalUsage tracked, no capYesConditionalAllowlist on SaaS onlyConditionalActivity events, not chainedConditionalDeleted with user accessConditionalRetention, no legal holdYesYes
UiPathConditionalLocal robots in previewConditionalWindows; Linux in DockerYesAutomation Suite on KubernetesYesRobots and Relay dial outConditionalRobots; agent jobs in previewConditionalManual retry from last stepYesPer-agent tool guardrailsYesTeams, Slack, Outlook; cloudConditionalA2A cards kept until refreshYesConditionalUnit cap; LLM call boundariesYesAI Trust Layer gatewayConditionalIsolated, no egress allowlistConditionalLogs, not tamper-evidentNot documentedConditionalRetention, no legal holdYesIncl. own models via RelayConditionalA2A in preview
CamundaYesWorkers on hosts you chooseConditionalLinux only in productionConditionalEnterprise licence in prodYesWorkers poll for jobsConditionalJob types, no machine registryYesConditionalGates modelled per processConditionalCLI; Teams app in alphaConditionalBPMN tools versioned; MCP liveYesConditionalCall caps; trial LLM budgetConditionalSecrets resolved on the workerNot documentedConditionalAudit log, no hash chainConditionalDelete instances, no own keysConditionalRetention, no legal holdYesConditionalMCP; A2A client in alpha
Microsoft Copilot StudioConditionalComputer use on own PCsNoTheir cloud; Windows PCsNoMicrosoft cloud onlyConditionalOwn PCs dial out; A2A calls inConditionalComputer-use machines onlyConditionalFlows hold waits up to 30 daysConditionalConnector block, no approveYesTeams, Outlook, portalNoMCP changes apply liveYesPower Platform environmentsConditionalCredit cap; delayed enforcementYesModels served by MicrosoftConditionalOffline sandbox; URL filtersConditionalPurview log, no hash chainConditionalPurview delete; env-level keysYesPurview retention and holdsConditionalNo local modelsYes
Guild.aiNoRuns in Guild's runtimeNoGuild's cloud onlyNoHosted on Google CloudNoAPI forwards to the runtimeNoGuild runs the computeConditionalTypeScript state machinesConditionalAllow and deny, no approveConditionalAgent asks; no call gateConditionalVersioned, no change checkYesOrganizations, workspacesYesMonthly USD, blocks at 100%YesCredential proxy holds themYesProxy only, domains by policyConditionalNo documented checkNot documentedNot documentedConditionalMany vendors, no localConditionalMCP, no A2A
Amazon Bedrock AgentCoreConditionalRuntime runs in AWS onlyNoAWS cloud, Linux onlyNoManaged AWS serviceNoPlatform calls the agentNoAWS manages all computeConditionalStorage, not step replayConditionalCedar allow and denyConditionalInline function, your own UIConditionalCached schema until resyncConditionalTenant mapping is yoursConditionalToken caps, no money budgetConditionalGateway for OpenAI, AnthropicConditionalSandbox, allowlist via VPCYesEnable logging and validationConditionalDelete per actor, no own keysConditionalExpiry settings, no legal holdYesYes
Microsoft Foundry Agent ServiceConditionalMicrosoft hosts the agentsNoMicrosoft cloud onlyNoManaged Azure serviceNoPlatform calls the containerNoMicrosoft-managed computeConditionalPreview, handler restartsConditionalPer-agent MCP listsConditionalAPI only, no chat approvalsConditionalToolbox versions; manual reviewConditionalTenants defined by your appConditionalToken quotas, no run budgetConditionalEntra identity, no static keyConditionalNo egress, or via your VNetConditionalAudit log, no integrity proofConditionalPer-user delete, no own keysYesPurview, pay-as-you-goYesCatalog or your own gatewayYes
Google Gemini Enterprise Agent PlatformConditionalGoogle-managed runtimeNoGoogle cloud onlyNoManaged Google Cloud serviceNoContainer serves port 8080NoFully managed runtimeConditionalManual resume by invocation IDConditionalAllow and deny, no approveConditionalExperimental, in ADK codeConditionalRegistry copy; manual updatesConditionalIAM per user, no tenantsConditionalToken metrics, no budgetConditionalIAM identity, no static keyConditionalAllowlist only in previewConditionalAudit logs, no integrity proofConditionalPurge per user, no own keysConditionalTTL settings, no legal holdYesYesA2A hosting in preview
WarpConditionalEnterprise workersYesNoWarp hosts the control planeYesConditionalRouting; you maintain hostsConditionalResumable sessionsConditionalCoverage depends on harnessConditionalApp approvals; chat intakeNot documentedYesTeams and workspacesConditionalEnterprise; external costsConditionalWarp-managed inferenceConditionalEgress depends on backendConditionalLogs; integrity not documentedNot documentedConditionalRetention; hold not documentedYesLocal via reachable endpointConditionalMCP; A2A not documented

Official sources checked 27, 29 and 30 October 2026.

What each column means.

Where it runs

Any machine you own
Agents run on hardware you choose: laptops, servers, VMs and GPU boxes.
Linux, macOS and Windows
The part that runs agents installs natively on all three.
Self-hosted control plane
You can run the whole control plane on your own servers.
No inbound ports
Machines that run agents only dial out, so nothing has to be opened to them.
Fleet operations
Join, label, route work to, block and upgrade the machines that run agents.

Durability

Durable runs
A crash or a restart continues a run from its last finished step.
ConditionalOrchestrator Zero: Depends on agent type

Governance

Tool policy outside the model
Rules an admin sets decide whether each tool call runs, waits for a person or is refused, and the platform enforces them.
ConditionalOrchestrator Zero: Harness coverage varies
Approvals in chat
A risky call waits durably for a person, who can answer it from a chat app.
ConditionalOrchestrator Zero: Tested against stand-ins only
Tool snapshots
A tool that changes its description or schema is blocked until someone approves the change.
Tenants built in
Separate tenants or workspaces, each with its own access and data.

Cost

Budgets that stop a run
A spend limit in money that stops a run when it is reached.

Security

Provider keys off the workers
Model provider keys stay in a gateway, and the machines that run agent code never hold them.
Sandbox with an egress allowlist
Agent tools run isolated and reach only the network hosts you list.
ConditionalOrchestrator Zero: Linux/macOS; Windows tier 0

Audit and compliance

Tamper-evident audit trail
A record of what agents did that is hash-chained or signed, so an edit shows when it is checked.
Erasure by key
Per-person encryption keys can erase recorded payloads, with a documented way to keep erasures effective after backup restoration.
Retention with legal hold
Admins set how long run records are kept, and a legal hold stops their deletion.
ConditionalOrchestrator Zero: Capture needs source data

Openness

Model provider choice
Compatible models from several vendors, including self-hosted services, through the same platform.
MCP and A2A
Agents use tools over MCP and work with other agents over A2A.

Where others are stronger.

What Orchestrator Zero does not do yet

  • No hosted service.
  • No independent security audit, ISO certification or SOC 2 report yet.
  • No drag-and-drop canvas, and a small set of verified plugins.
Product and limits

How we rated.

Our vendor comparison.

  1. Docs, pricing and repositories reviewed 27, 29 and 30 October 2026. No hands-on benchmark. Some IBM sources were search-indexed copies.
  2. Undocumented does not mean absent. Send sourced corrections to hello@oz0.ai .
  3. The same criteria apply to oz0. Configuration is expected; coverage gaps lower ratings. Roadmap work is excluded.

Explore a task before choosing.