Back to guides
Compare·September 18, 2026·Updated September 21, 2026·9 min read

Agent Zero vs OpenClaw: execution, memory and model costs

One hands the agent a Linux computer, the other stays reachable on hardware you already own — and that changes what you configure and what you pay.

Last reviewed on .

Agent Zero and OpenClaw are both MIT-licensed and both free to install, and they are not competing for the same job: Agent Zero gives one agent a containerised Linux computer to work inside, while OpenClaw runs a persistent gateway on hardware you own and reaches you through chat channels. Choose Agent Zero when the agent needs a machine. Choose OpenClaw when you need an assistant that is always reachable. In both cases the recurring bill is model tokens plus the box you run it on, before any paid tool APIs you add yourself.

Both projects were active when this page was checked on September 21, 2026. The Agent Zero repository was not archived and had been pushed the previous day, with v2.12 as its latest tagged release (published September 9, 2026, after v2.11 on August 27). The OpenClaw repository was likewise not archived and had been pushed that day. Star counts read from the GitHub API on the same day were 19,225 and 390,183; those drift daily and are a popularity signal, not a quality one.

Two version details are easy to misread. OpenClaw ships several update channels, and that document maps the stable channel to the npm dist-tag latest while extended-stable is a tag of its own. On September 21, 2026 the registry listed latest at 2026.9.5 and extended-stable at 2026.6.35, and each tag is repointed independently, so read the dist-tag rather than inferring a channel from the version number. Separately, both LICENSE files contain the MIT terms — Agent Zero under Agent Zero, s.r.o., OpenClaw under the OpenClaw Foundation — while GitHub's license API reports NOASSERTION for both repositories. If licensing is a procurement question, read the LICENSE file rather than the badge, and confirm with your own counsel.

Check you are comparing the right two projects

Four things share these names closely enough to derail a search. Three of them are GitHub repositories, and none of those three was archived when their metadata was read on September 21, 2026; the fourth is not a software project at all.

  • OpenClaw, the 1997 game engine. pjasicek/OpenClaw is a C++ reimplementation of the Captain Claw platformer. It was created in 2017, years before the assistant, and is unrelated game code.
  • A token calling itself OpenClaw. The project states it has no token, and its own history page records that grifters launched a $OPENCLAW token within minutes of the January 2026 rename. Any presale or airdrop marketed under the name is not the project.
  • Agent0, the research project. aiming-lab/Agent0 is an Apache-2.0 academic series on self-evolving agents. The org name is one character away from agent0ai and it is a different thing entirely.
  • Space Agent. agent0ai/space-agent is by the same team, and its README points at a hosted demo server you can try with a guest account. Anything it charges for is Space Agent pricing, not Agent Zero pricing.

Who should pick which

You need the agent to operate a computer. Pick Agent Zero. Its installation docs open by stating that Agent Zero runs as a Docker container, and the README describes the desktop it opens in its Canvas as a real XFCE session running in that container, explicitly not a remote VM. Reaching your host machine is a separate opt-in: the README points at the A0 CLI connector, which you run on the host rather than in the container. The cost of that power is the container: the VPS deployment guide lists a floor of 2 GB RAM, 20 GB storage and 1 vCPU, with 4+ GB, 50+ GB and 2+ vCPU recommended.

You need an assistant that is always reachable and cheap to host. Pick OpenClaw. Its first-run FAQ documents an absolute floor of 1 GB RAM, one core, 500 MB of free disk and a 64-bit OS. The tradeoff is the permission model: sandboxing is off by default, tool execution runs on the host, and the docs are explicit that the sandbox, when enabled, is not a perfect security boundary. The gateway process itself always stays on the host either way.

You are choosing on cost or on migration effort. Both are $0 for the software, so the decision is downstream. Agent Zero needs at least two paid model slots configured before it behaves well, and its bundled Context Window plugin reports token counts and a full-window breakdown, showing a price only when the provider reports usage and LiteLLM maps the model. OpenClaw needs one model to start and ships /status, /usage cost and a Control UI usage panel; the spend figures OpenClaw computes itself are estimates aggregated from its session logs, and provider-reported usage or quota appears beside them when the provider exposes it. On migration: Agent Zero state lives in a Docker named volume, and OpenClaw keeps canonical memory as plain Markdown files in its workspace (MEMORY.md and memory/*.md, indexed into a derived SQLite store), which is the easier thing to read, diff and carry elsewhere.

Side-by-side

DimensionAgent ZeroOpenClaw
Shape of the productA framework and workbench the agent works inside; a web UI, plus a desktop launcher and a host-side CLI connectorA Node CLI and gateway that reaches you through chat channels
RuntimeDocker container, started with one docker run mounting a named volumeInstalled as an npm package; documented floor is Node 24.16+ or 26.1+, with Node 26 recommended
Execution boundaryIsolation is the default: the framework runs in the container, and host access is a separate opt-in connectorTool execution is on the host by default; sandboxing is opt-in and covers exec, file and process tools, never the gateway itself
Untrusted inputProject guidance is to keep it containerised and not to mount your whole home directoryOn channels that implement the pairing API, dmPolicy defaults to pairing: an unknown sender gets a code and their message is not processed until an operator approves
Multi-userThe settings schema defines a single UI login and password plus a container root password, with no per-user rolesTeam use is configuration of the same product, not a separate edition; a gateway is one trust domain
Cost visibilityBundled Context Window plugin: token counts and a full-window breakdown; price appears only when the provider reports usage and LiteLLM maps the modelBuilt in: /status, /usage cost and a Control UI usage panel; OpenClaw's own cost figures are estimates from session logs, shown beside provider-reported usage when the provider exposes it
Paid editionNone published. A free first-party LLM endpoint exists but is gated on staking the project tokenNone. The project states it has no paid tier, no hosted service and no token

Sources for this table, all read on September 21, 2026: the two READMEs, Agent Zero VPS deployment (its authentication section documents the single login and password; the container root password is a setting listed in the installation docs linked above), the Context Window plugin README, what OpenClaw sandboxes, OpenClaw DM access control, OpenClaw teams and OpenClaw usage tracking.

The model-role split is the real difference

This is where the two products diverge most, and where a feature checklist hides the decision. Agent Zero groups models into presets, and its model presets guide states that every setup contains a main, a utility and an embedding model, so switching presets switches them together. OpenClaw's slots are separate config keys, documented in its agent model reference.

RoleAgent ZeroOpenClaw
MainThe chat slot in the active preset: conversation, reasoning and tool useagents.defaults.model.primary, plus an ordered fallbacks list tried in turn
UtilityA second slot in every preset, for internal work such as summarising and memory managementutilityModel is optional; unset, OpenClaw derives the primary provider's declared small model when that provider declares one, and an empty string disables utility routing
Embedding and memory searchA third slot in every preset; the shipped default is a local model that runs on CPU, and changing it re-indexes stored memoryConfigured separately under memory.search.provider; a managed local GGUF is one option, and none leaves keyword-only ranking
MediaAn optional Browser LLM Preset can route browser helper work elsewhere; the installation docs state the built-in Browser has no separate default model slot of its ownOptional imageModel, pdfModel and mediaModels entries, each a string or an object of primary plus ordered fallbacks

One practical consequence for the utility slot: the Agent Zero installation docs warn that very small models (they name 4B) fail at reliable memory extraction and consolidation, and point at 70B-class models or strong cloud flash/mini models instead, so it is not a place to economise blindly.

Kunavo does not serve embeddings. No enabled model backs that endpoint, so the request is rejected rather than answered, and the third slot is not something you buy here. Both products document a local option for that step, and that is the path to use.

Agent Zero's curated presets — downloaded from that public repository when no saved collection exists — name specific refs: Default pairs a GPT-5.6 Terra chat model with a Google flash-lite utility model, Power pairs GPT-5.6 Sol with GPT-5.6 Luna, and Efficiency pairs a GLM chat model with a DeepSeek utility model. The file writes them in the OpenRouter style it uses (openai/gpt-5.6-sol), so no preset ref is a Kunavo id as written. Kunavo's catalog does carry GPT-5.6 Terra, Sol and Luna, and GPT-6 Astra, but no flash-lite, GLM or DeepSeek model. So both of the Power preset's models have a Kunavo equivalent under Kunavo's own ids, the Default preset needs a substitute utility model, and the Efficiency preset does not map at all.

What each one actually costs

The software is $0 on both sides. OpenClaw states it has no subscription, no hosted tier and no token, and repeats it in the README alongside the note that the Foundation is an independent 501(c)(3) and that OpenAI is a donor rather than an owner. Agent Zero publishes no pricing page and no paid plan.

Agent Zero does operate a first-party LLM endpoint. Its front page links it as an “LLM API (beta)” and states neither a price nor a condition of access. The terms page supplies both: it is a free bonus feature for holders who stake the project's A0T token, it acts only as a proxy to a third-party API, quota is determined dynamically and not guaranteed, and there is no customer support, no service level agreement and no refunds. Read the terms before assuming a beta label means a purchasable endpoint. A0T is an ERC-20 token on Ethereum's Base layer-2 whose own token page warns the value may drop to zero and is covered by no guarantee or compensation scheme. That is the gate described as a mechanism; this guide does not price it, recommend it, or treat it as a way to buy inference.

Line itemAgent ZeroOpenClaw
Software licence$0, MIT$0, MIT
Documented hardware floor2 GB RAM, 20 GB storage, 1 vCPU; 4+ GB, 50+ GB, 2+ vCPU recommended1 GB RAM, 1 core, 500 MB free disk, 64-bit OS
Model tokensAt least two paid slots in practiceOne primary; utility optional
Paid tools you addYour own accountsYour own accounts

For the token half, here is an illustrative month at Kunavo catalog rates. Assume 8 million uncached input and 400,000 output tokens on the main model, plus 2 million input and 200,000 output tokens on the utility model. Nobody measured either agent loop for this page, so treat every figure below as arithmetic on an assumed workload, not a measured task cost and not a bill ceiling.

Main modelUtility modelMain rate, input / output per 1MEstimated month
GPT-5.6 TerraGPT-5.6 Luna$0.70 / $4.20$7.50
GPT-5.6 SolGPT-5.6 Luna$2.00 / $12.00$21.02
GPT-6 AstraGPT-5.6 Luna$4.00 / $20.00$40.22
GPT-6 AstraClaude Haiku 4.5$4.00 / $20.00$41.20

The last two rows are the useful ones. Swapping the utility model from GPT-5.6 Luna to Claude Haiku 4.5 moves this total by about a dollar, because the main model carries most of the tokens in this split. Optimising the second slot is not where the money is unless your workload is unusually chat-light. Note also that a lower listed rate is not the same claim as a lower cost to finish the task: a weaker main model that needs a second attempt can cost more than the stronger one that did not.

Pointing either one at a single OpenAI-compatible endpoint

Both products can target one gateway, by different routes. What follows was read from each project's own configuration files and documentation on September 21, 2026. Kunavo has not run either client end to end, so this is documented protocol, not a verified compatibility result — keep your existing working route available while you trial it.

Agent Zero. Remote model calls go through LiteLLM (models.py routes the local sentence-transformers path around it), and the provider you want is Other OpenAI compatible — config id other in conf/model_providers.yaml, where its litellm_provider is openai. In models.py that id is remapped to openai just before the LiteLLM call, and your model name is passed through unchanged. The installation docs put the key under External Services, then Other OpenAI-compatible API keys, and select OpenAI Compatible as the provider in model settings. The base URL is the per-slot API URL field. On the model id itself, Agent Zero's troubleshooting doc covers a different pair of providers — it says openai/gpt-5.3 is correct for OpenRouter and incorrect for the native OpenAI provider, which takes no prefix — and documents no id format for Other OpenAI compatible, so use the ids your own gateway's model list returns. Setting a base URL also makes the picker request the model list from that base with a bearer token, per the model-search endpoint. The environment-variable route below is read from models.py, where get_api_key resolves the three spellings in order and round-robins a comma-separated value.

Agent Zero: key by environment instead of the settings UI
# Agent Zero resolves the key for provider id `other` from the first
# spelling it finds, in this order. A comma-separated value is
# round-robined across calls.
API_KEY_OTHER=your-kunavo-key
# OTHER_API_KEY=your-kunavo-key
# OTHER_API_TOKEN=your-kunavo-key

# The API URL field on each model slot (stored as api_base in the
# preset file) takes the OpenAI-shaped base: https://api.kunavo.com/v1

OpenClaw. Register a block under models.providers in the JSON5 config with baseUrl, apiKey, an adapter in api, and authHeader when the credential must ride in the Authorization header — all four are in the custom-provider field reference, which also states that a baseUrl with no api defaults to openai-completions. The ref used elsewhere is then provider/model. A starting configuration for Kunavo's Messages-shaped route, plus the validate and restart commands, is already written up in best API for OpenClaw.

Five OpenClaw restrictions are worth knowing before you migrate, all from its custom-provider reference and routing rules. The Codex agent runtime is unreachable from a custom endpoint and fails closed if you demand it. On a non-native completions endpoint, OpenClaw forces the developer role off and drops service-tier, store and prompt-cache hints. On a non-direct Anthropic-shaped endpoint it suppresses the implicit beta headers unless you set them yourself. Per-model cost defaults to all zeros when omitted, and the usage docs treat a recorded zero-dollar cost as valid cost data, so /usage cost reports $0 for that route instead of flagging it as unpriced. And the baseUrl you configure is itself the network-trust decision: OpenClaw trusts that exact scheme://host:port origin through its guarded fetch path, while other private, loopback or different-port destinations still need an explicit request.allowPrivateNetwork opt-in.

If you decide to route either harness at one OpenAI-compatible endpoint, create a Kunavo account. The minimum is a $10 prepaid top-up with no subscription; billing explains why a catalog estimate is a floor rather than a ceiling.

What this comparison does not establish

No runtime test was run for this page against either product. Specifically unverified: whether Agent Zero's tool-calling loop completes end to end through a third-party OpenAI-compatible endpoint for any given model; whether its model picker parses a given gateway's model list; whether its native Anthropic provider accepts a custom API URL at all, which its own UI tip does not say. On the OpenClaw side, prompt-cache behaviour through a non-direct Anthropic-shaped endpoint is untested here, and it interacts with the suppressed beta headers above. Token consumption per task was not measured for either loop. Star counts, version numbers, npm dist-tags and hardware floors are single readings dated September 21, 2026 and will move.

For adjacent decisions, OpenClaw pricing covers its full operating bill, OpenClaw alternatives covers the wider field, and the OpenAI-compatible API reference covers the endpoint shape both products speak.

FAQ

Is Agent Zero or OpenClaw better?

They answer different questions, so neither is better in general. Agent Zero runs as a Docker container and hands the agent a real Linux desktop session inside it, which suits work that needs a machine to operate. OpenClaw runs a gateway process on hardware you already own and reaches you over chat channels, which suits an always-on assistant. Both are MIT-licensed, and in both cases what you pay for is model tokens, the machine you run it on, and any paid tool APIs you wire in yourself.

Is OpenClaw the same project as Clawdbot or Moltbot?

Yes. The project's own history page records that it was called Clawd and lived in Clawdbot, was renamed Moltbot on January 27, 2026 after Anthropic asked for a name change over trademark, and became OpenClaw on January 30, 2026. The npm registry corroborates the timeline: the clawdbot package was created on January 4, 2026, moltbot on January 27, 2026, and openclaw on January 29, 2026. Old install instructions under the former names are stale.

Does Agent Zero or OpenClaw cost money to use?

Neither charges for the software. OpenClaw states it has no paid tier, no hosted service and no token, and its LICENSE carries MIT terms. Agent Zero is MIT-licensed by Agent Zero, s.r.o. and publishes no pricing page or paid plan. What you pay for in both cases is model API tokens, the machine that runs the agent, and any paid tool APIs you wire in yourself.

Can Agent Zero and OpenClaw share one API key?

Each product documents a path to an OpenAI-compatible endpoint, so in principle one gateway key can serve both. Agent Zero exposes a provider called Other OpenAI compatible whose base URL is a per-model-slot field. OpenClaw registers a custom provider under models.providers with a baseUrl and an apiKey. Kunavo has not run either client end to end, so treat that as documented configuration rather than a verified compatibility result.

How many models do you have to configure in each one?

Agent Zero uses model presets, and its model-presets guide states that every setup contains three: a main chat model, a utility model for internal work such as memory consolidation, and an embedding model whose shipped default runs locally on CPU. OpenClaw needs one primary model; a utility model is optional and, when unset, OpenClaw derives the primary provider's declared small model if that provider declares one. OpenClaw also has separate optional slots for images, PDFs and other media.

Is Agent Zero abandoned now that the same team ships Space Agent?

No. On September 21, 2026 the Agent Zero repository was not archived, had been pushed the previous day, and had shipped v2.12 on September 9, 2026 after v2.11 on August 27. Its README does call Space Agent "the related, more polished product direction", while saying Agent Zero "remains the open framework and Linux-powered workbench". Space Agent is a separate product at space-agent.ai; anything it charges for is not Agent Zero pricing.

Repository metadata, release tags, npm dist-tags and both projects' official documentation checked September 21, 2026. Kunavo rates are read from the live model catalog; the monthly totals are token arithmetic on a stated assumption, not measured task costs.