Muse Code vs Claude Code vs Codex CLI is the terminal-agent question of this week. Meta put Muse Code into beta on August 5, 2026, and for the first time in months the comparison has a genuinely new entrant rather than a point release. This guide re-scores all three from each vendor’s own current documentation, retrieved August 7, 2026 — not from a spring snapshot that has quietly gone stale.
That distinction matters more than it usually does. Our Q2 2026 matrix is the franchise predecessor to this post, and it was explicit about being a dated snapshot. It was right to be. One of its central distinctions — that Codex offered only limited in-session task decomposition while Claude Code had first-class subagents — no longer holds. OpenAI’s changelog now marks its multi-agent v2 subagent system stable, with configurable sub-agent models, reasoning levels and concurrency. Anyone still quoting the April framing is quoting a harness that has shipped dozens of releases since.
What follows is a working comparison across five axes that actually change day-to-day engineering: how each harness fans out parallel work, how each contains what the agent runs, what the published benchmark rows do and do not establish, how the three pricing stacks differ in shape rather than level, and which context-window number you are actually buying. Every figure below is labelled with the version or retrieval date it came from.
- 01Muse Code bets on recoverability, not on the scoreboard.Its runtime appends every model call, tool run, approval and edit to a local event log, which Meta describes as making sessions replay-exact and restart-safe. On the three charts with located figures, Muse trails Claude Code on every row.
- 02Subagents are table stakes; the concurrency models are not.Muse Code runs children at roughly core count minus two, clamped between 2 and 16, and a child cannot spawn its own children. Claude Code's docs on August 7, 2026 describe up to 20 concurrent subagents and nesting three layers below the main conversation. Codex exposes sub-agent model, reasoning level and concurrency as configuration.
- 03The Q2 knock on Codex is stale — stop repeating it.Codex CLI shipped v0.147.0 on August 7, 2026 with installable Agent Plugins and an opt-in MCP 2026-07-28 protocol revision, and its changelog history marks multi-agent v2 stable. The April characterisation of Codex as decomposition-limited should not be carried forward.
- 04All three benchmark tables are a press reading of an image.The Terminal-Bench 2.1, DeepSWE 1.1 and Meta-internal figures below come from one outlet's reading of Meta's own launch chart, which is published as an image rather than machine-readable text. Treat them as vendor-published and press-transcribed, not independently audited.
- 05The pricing stacks differ in shape more than in level.Meta meters the Model API with a two-rate structure where the cheap rate is a training-data trade. Anthropic sells a subscription plan that bundles the harness, with a separate metered API. OpenAI gates Codex access by ChatGPT plan tier. Comparing headline dollars across those three is a category error.
01 — The FieldThree harnesses, three different bets.
The three terminal agents are converging on a shared feature list — subagents, skills or plugins, a headless entry point — and diverging on what they optimise underneath it. Read the three cards below as statements of priority, not as feature checklists.
Muse Code
A terminal coding agent installed by shell script, with an event-log runtime that Meta positions as crash-safe. Four background observer agents run alongside the main session; parallel children are capped at roughly core count minus two. Meta says Muse Spark 1.2 was co-trained with the Muse Code harness and across multiple third-party harnesses.
Claude Code
The broadest surface area of the three: terminal CLI, a VS Code and Cursor extension, a JetBrains plugin, desktop apps, web, Remote Control for steering a local session from a paired phone or browser, Channels bridging Telegram, Discord, iMessage and webhooks into a session, and Routines for cloud-hosted recurring tasks that keep running when the machine is off.
Codex CLI
The most configuration-driven of the three. Multi-agent v2 is marked stable with configurable sub-agent models, reasoning levels and concurrency. The same-day v0.147.0 release added installable Agent Plugins searchable across local, personal, workspace and remote catalogues, persistent manually-ordered conversation sections, and an --approve-for-me flag.
Muse Code’s design bet is the one worth sitting with, because it is the least common. Rather than optimising for a benchmark row, Meta optimised for what happens when a long agentic run dies halfway through. Every model call, tool run, approval and edit is appended to a local log, and that log is the session’s single source of truth. The claim that follows from it is a durability claim, not a capability claim.
“This single source of truth makes the runtime replay-exact and restart-safe: after a crash, the agent can resume precisely where it stopped.”— Meta · Muse Code launch post, August 5, 2026
Meta backs that with a case study rather than a score: Muse Spark 1.2 iteratively optimised GPU kernels — KDA and MLA on NVIDIA Hopper — over more than 1,000 tool calls and up to 24 hours inside Muse Code’s agentic environment, without importing third-party kernel libraries. A 24-hour run is exactly the workload class where restart-safety stops being a nice-to-have. We walk through the runtime mechanics in the fan-out and event-log deep dive, and the launch context in our full Muse Spark 1.2 and Muse Code launch guide.
One boundary is easy to get wrong, and most coverage has. The GitHub agent and computer-use cookbooks that ship alongside Muse Code’s documentation run on OpenCode, a third-party CLI, driving Muse Spark 1.1 through the Model API. They are demonstrations of the model, not native capabilities of the Muse Code harness. If you are scoping against those cookbooks, you are scoping a different tool.
02 — OrchestrationHow each one fans out parallel work.
All three harnesses spawn subagents. The interesting differences are in the ceilings, the nesting rules, and whether the ceiling is a fixed number or a function of your hardware.
Concurrent children
The default cap scales with the machine: roughly core count minus two, clamped between 2 and 16. In practice the lower clamp binds below four cores and the upper clamp only binds above eighteen, so on most developer laptops the effective number is simply your core count minus two.
Concurrent subagents
The default cap, beyond which the CLI reports that the concurrent subagent limit has been reached. Tunable via CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS, and sessions running with ultracode active are exempt from the limit entirely. Requires v2.1.217 or later.
Multi-agent, marked stable
The changelog history traces multi-agent v2 from experimental to stable. Sub-agent models, reasoning levels, concurrency and restored roles are all configurable, though the changelog does not publish a fixed default concurrency number the way the other two vendors do.
The nesting rules split the field more sharply than the concurrency numbers do. Muse Code allows exactly one level: a spawned child cannot spawn children of its own. That is a deliberate simplification — it makes the event log linear and the failure modes tractable, at the cost of ruling out recursive decomposition. Claude Code goes the other way and lets subagents spawn subagents, which is powerful and correspondingly easy to run away with. We cover the budgeting side of that in Claude Code’s subagent depth and budget caps, and the Codex side in Codex’s multi-agent GA.
Comparing the ceilings directly: Claude Code’s default of 20 concurrent subagents sits 25% above the top of Muse Code’s 16-child clamp, and Muse’s clamp is itself hardware-dependent rather than fixed. That is a real difference in how much parallel work you can schedule from one session — but it is a ceiling comparison, not a throughput comparison, and neither vendor publishes what happens to per-agent quality at the top of the range.
CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH. Older references record a cap of five, tied to v2.1.172. Both can be accurate for their respective versions — the default may simply have changed between v2.1.172 and the current v2.1.224. Cite the number with its date and version attached; do not state either figure flatly as the depth limit.Muse Code adds a second kind of parallelism that neither rival frames the same way: four background observer agents that run alongside the main session rather than being spawned by it. Memory recall, skill recall and goal tracking are on by default; verification is off by default. Each observer makes its own model calls, which is a cost consideration people miss — a Muse Code session bills for more than the visible conversation.
Worth noting while you are reading Meta’s material: its two properties do not currently agree on the bundled skill roster. The developer documentation lists four skills — /plan for turning a task into a grounded, decision-complete plan, /grilling for stress-testing a plan or design, /grill-with-docs for doing the same while recording decisions into project docs, and /taste as a design-quality gate for frontend work — with /goal classified as a goal-tracking background observer rather than a skill. The launch post instead names three, counting /goal among them. We follow the developer docs here, and note the disagreement rather than quietly picking a number.
On the Claude Code side, the equivalent lever is the effort ladder. Levels low, medium, high and xhigh persist across sessions once set, while max and ultracode apply to the current session only. Ultracode is worth naming precisely because it is routinely mis-described as a model or an effort tier.
xhigh to the model and additionally has Claude orchestrate dynamic workflows for substantive tasks. It requires v2.1.203 or later, applies to the current session only, and — per the subagent docs — exempts that session from the 20-concurrent cap. Three built-in subagents ship by default: Explore, Plan and general-purpose, with Explore inheriting the main conversation’s model since v2.1.198 rather than always running on a cheap model.03 — ArchitectureThe three harnesses, side by side.
Every cell below is drawn from the named vendor’s own current documentation or changelog, retrieved August 7, 2026. Where a vendor does not publish a figure, the cell says so rather than borrowing a number from somewhere else.
| Dimension | Muse Code (Meta) | Claude Code (Anthropic) | Codex CLI (OpenAI) |
|---|---|---|---|
| Orchestration · how parallel work is scheduled | |||
| State on Aug 7, 2026 | Beta, launched August 5, 2026; installed by shell script | v2.1.224, newest entry in the published changelog index | v0.147.0, released the same day this comparison was assembled |
| Parallel children (default) | Roughly core count minus two, clamped between 2 and 16 | 20 concurrent subagents; env-tunable, and ultracode sessions are exempt | Configurable under multi-agent v2; no fixed default published in the changelog |
| Nesting depth | One level — a spawned child cannot spawn its own children | Three layers below the main conversation per docs retrieved Aug 7, 2026; older sources record five at v2.1.172 | Not published as a fixed depth; sub-agent model and reasoning level are set per agent |
| Built-in agent roster | Four background observers — memory recall, skill recall, goal tracking, verification (verification off by default) | Explore, Plan and general-purpose; Explore inherits the main conversation’s model since v2.1.198 | Restored roles under multi-agent v2, plus installable Agent Plugins from local, personal, workspace and remote catalogues |
| Control, automation and reach | |||
| Session-level control surface | Observer toggles plus a bundled skill set; the developer docs list /plan, /grilling, /grill-with-docs and /taste | Effort ladder — low, medium, high and xhigh persist; max and ultracode are session-only | Profiles layered from ~/.codex/config.toml and selected with --profile |
| Headless and CI entry point | muse exec runs one prompt to completion and exits, with --disable-approval (sandbox stays on) or --yolo (no approval, no sandbox) | Terminal CLI plus Routines — cloud-hosted recurring or triggered tasks that keep running when the machine is off | --approve-for-me for automatically reviewed approvals (v0.147.0); sandbox modes read-only, workspace-write, danger-full-access |
| Where you can drive it | Terminal; MCP servers connect through an mcp_servers settings block over stdio or streamable_http | Terminal, VS Code and Cursor, JetBrains, desktop, web, Remote Control and Channels | Terminal; auth by ChatGPT OAuth, API key, device-code flow or an access token piped on stdin |
Two structural observations fall out of the table. The first is that Claude Code is the only one of the three whose reach extends beyond the terminal in a documented, first-party way — the JetBrains plugin, Remote Control and Channels are surfaces the other two do not currently match. The second is that Codex is the only one whose extension story is a catalogue: Agent Plugins are installed and searched, which is a distribution model rather than a configuration file. Those are different theories of how teams standardise.
Codex’s v0.147.0 also added opt-in support for the MCP 2026-07-28 protocol revision alongside the existing spec — paginated discovery, multi-round requests and non-blocking server startup. That is the kind of plumbing change that only shows up in your day when a slow MCP server stops blocking session start. The broader config surface is covered in Codex CLI’s config, profiles and sandbox modes.
04 — ContainmentSandboxes, approvals, and the gaps between them.
Containment is where the two vendors that publish detail publish very different detail. Muse Code documents an OS-enforced sandbox and a staged approval model; Codex documents three named sandbox modes and a new automatic-approval flag. Both are worth reading before you point either at a repository you did not write.
OS-enforced, proxy-only by default
Default network policy is proxy-only: each new outbound host, port or protocol stops for review. Alternatives are restricted (no network) and enabled (full egress). Default approval mode is on-request, where only a built-in dangerous set — rm -f, rm -rf, and sudo in front of either — stops for review and everything else is contained by the sandbox. A stricter untrusted mode escalates any unmatched shell stage. Compound shell commands are reviewed stage by stage, so the first unapprovable stage blocks the whole line.
Three named modes, config-driven
Sandbox posture is selected explicitly rather than derived from a policy engine, and it layers with profiles in ~/.codex/config.toml. The v0.147.0 release added --approve-for-me, which handles approvals through an automatic review step rather than a prompt. MCP servers are declared under [mcp_servers.NAME] rather than under a bare mcp table — a config error that costs people an afternoon.
Claude Code’s permission model is a large enough topic to have its own treatment rather than a table cell, and the documentation set we pulled for this comparison focused on orchestration, effort and pricing. For the approval-decision side, see Claude Code’s auto-mode permission model rather than inferring it from the cells above.
--yolo, which drops both approval and the sandbox and trusts the workspace. Meta explicitly warns against using it on a fork or pull-request checkout, because AGENTS.md, rules and skills all become attacker-controlled content in that situation. Both gaps are documented rather than hidden — which is the right behaviour, and also means you have no excuse for tripping over them.05 — Published ScoresThe benchmark rows, and why they need a caveat first.
Meta published comparison charts alongside the Muse Code launch. The figures below are one outlet’s reading of those charts, which are published as images rather than as machine-readable text on Meta’s own site. That provenance is not a reason to ignore them; it is a reason to label them precisely every time they are quoted.
Terminal-Bench 2.1 · press reading of a vendor chart
Source: Meta's own launch chart, as read and reported by Decrypt, August 5, 2026The second chart tells a different story about the same three tools. On DeepSWE 1.1, Claude Code and Codex are effectively level and Muse sits well behind both — a ranking inversion relative to Terminal-Bench, where Muse placed second.
DeepSWE 1.1 · press reading of a vendor chart
Source: Meta's own launch chart, as read and reported by Decrypt, August 5, 2026A third chart, Meta’s own internal coding benchmark, shows Claude Code at 79.4% against Muse at 70.6% — an 8.8-point gap on Meta’s home turf, which is an unusually candid thing for a launch chart to show. Meta published a fourth chart as well; no independently reported figures for it were located, so it is left out here rather than estimated.
Here is the interpretation that matters more than any individual number. Across the two multi-harness charts, the spread from top row to bottom row is 5.1 points on Terminal-Bench 2.1 and 5.7 points on DeepSWE 1.1 — and the ordering of the middle two swaps between them. When four harnesses on Terminal-Bench and three on DeepSWE all cluster inside six points and change places depending on which suite you run, the score is not the deciding variable. The scaffolding around it is.
That is not a rhetorical hedge; it is the documented behaviour of this benchmark class. We worked through it in our guide to reading agent benchmark scores, where holding the model constant and swapping the harness moved Terminal-Bench 2.1 results by several points on its own. Meta’s own framing compounds the point: it says Muse Spark 1.2 was co-trained with the Muse Code harness and across multiple third-party harnesses, precisely so performance would generalise beyond its own CLI. A model shaped by its harness during training is a model whose scores carry harness assumptions into every comparison.
06 — Pricing StacksThree pricing stacks that are not the same shape.
The single most common mistake in comparing these three is putting their headline numbers in the same column. Meta meters the Model API. Anthropic sells a subscription plan that bundles the harness, with a separate metered API underneath. OpenAI gates Codex access by ChatGPT plan tier. Every figure below is labelled with the surface it belongs to.
| Dimension | Muse Code · Meta Model API | Claude Code · Anthropic | Codex CLI · OpenAI |
|---|---|---|---|
| What you pay for access to the harness | |||
| Individual entry point | Metered Model API usage; no separate harness subscription is published | Claude Pro subscription plan — $17/mo billed annually ($200 up front) or $20/mo billed monthly, bundling Claude Code, Cowork, Design and Science | Bundled with ChatGPT plans — Free and Go get limited Codex access, Plus gets full Codex access |
| Step-up tier | Standard versus contributor is a rate choice, not a seat tier | Claude Max subscription plan from $100/mo for 5× Pro usage; a 20× tier also exists | ChatGPT Pro gets expanded Codex usage — task volume, not a different model |
| What you pay the model, and how it is limited | |||
| Backing-model standard rate (per Mtok) | $1.25 input / $0.15 cached input / $4.25 output — Meta Model API standard rate for muse-spark-1.1 and muse-spark-1.2 | Sonnet 5, the default model since July 1, 2026, on an Anthropic API introductory rate of $2 input / $10 output through August 31, 2026, reverting to $3 / $15 | No Codex-specific token rate is published; ChatGPT-authenticated sessions draw on plan allowances, API-key sessions bill at the model’s API rate |
| Discounted or data-trade rate | $0.10 / $0.002 / $0.20 on the contributor rate — 12.5× cheaper input, 75× cheaper cached input and about 21× cheaper output, in exchange for prompts and completions being usable to train future Meta models | None published; cache-write and cache-read promotional rates of $2.50 and $0.20 sit alongside the Sonnet 5 introductory rate | None published |
| Rate-limit shape | 3,000 requests/min and 4,000,000 tokens/min on standard; 60 requests/min and 2,100,000 tokens/min on contributor — applied per team, not per API key | Usage attached to the plan — Max is sold as 5× or 20× Pro usage | Plan-tier access levels — limited on Free and Go, full on Plus, expanded on Pro |
| Dated watch-item | Web search grounding is an add-on at $2.50 per 1,000 queries on the Meta Model API, billed on top of tokens; each background observer also makes its own model calls | The Sonnet 5 introductory API rate ends August 31, 2026 — a 50% step up on both input and output | GPT-5.4 and GPT-5.4 mini leave Codex for ChatGPT-signed-in users on August 31, 2026; API-key sessions and the raw API keep them |
A few of those cells reward a second read. Claude Pro billed annually at $200 up front works out to roughly $17 a month, about $40 a year less than paying $20 monthly — a subscription-plan comparison, not an API one. Anthropic’s Sonnet 5 introductory API rate of $2 and $10 per million tokens becomes $3 and $15 after August 31, 2026, which is a 50% increase on both sides of the meter; if your cost model was built during the introductory window, it needs revisiting before September.
OpenAI’s dated item is easy to over-read. GPT-5.4 and GPT-5.4 mini leaving Codex on August 31, 2026 applies to users signed in with ChatGPT; the recommended replacements are GPT-5.6 Terra and GPT-5.6 Luna respectively. Both retiring models remain available through the OpenAI API and through Codex sessions authenticated with an API key. It is an account-surface sunset, not a model deprecation, and writing it the other way will send teams into an unnecessary migration.
The pricing-shape taxonomy these three feed into — seat subscriptions with usage multiples, metered APIs, plan-gated access and data-for-discount tiers — is the subject of our companion piece on how AI coding pricing shapes compare. For budgeting across a mixed stack, the shape matters more than any single rate.
07 — Context BudgetsWhich context window are you actually buying?
This is the axis most comparisons get wrong, because two different numbers share one name. The model’s API context window is what the model can hold. The harness’s bundled context is what the CLI actually schedules into it. They are not the same figure, and for Codex CLI they are not close.
Bundled harness context
Corrected to 272,000 tokens in CLI v0.144.6 on July 18, 2026 for the GPT-5.6 Sol, Terra and Luna family. This is the CLI's own instruction budget — a harness-level figure, published in the CLI changelog rather than on a model page.
Raw model API context
The vendor-listed API context window for the same model family — close to four times the CLI's bundled budget. Put differently, roughly 26% of the advertised window is what the harness schedules by default.
Long-context premium
On the Meta Model API standard rate, Muse Spark 1.2 bills the same per-token rate regardless of how full the context window is. There is no published threshold at which long sessions step up to a higher tier — cost scales linearly with tokens, not with fill.
The practical consequence is that a Codex CLI session is not a 1,050,000-token session unless you have deliberately changed the harness budget. If you are planning a whole-repository pass on the assumption of the model-page number, plan against the CLI number instead. And when a vendor, a blog post or a procurement document quotes a context window for a CLI tool, the first question is always which of the two figures it is quoting.
Meta’s flat-rate structure is the quieter finding here. Some long-context pricing carries a step: past a given fill threshold, the per-token rate rises. The Meta Model API standard rate does not, which makes long agentic runs unusually easy to forecast — you multiply tokens by a single number. Paired with the event-log restart-safety, it reads as a coherent bet on long-horizon work rather than on short, sharp, benchmark-shaped tasks.
08 — FitWho should run which — including several at once.
None of these tools is a general winner on the evidence available. Each has a workload shape it fits better than the others, and the most defensible position for a team of any size is to run more than one and route deliberately.
Multi-hour work that must survive a crash
The event-log runtime and the flat per-token rate are aimed exactly here, and Meta's own case study is a run of more than 1,000 tool calls over up to 24 hours. Accept the trade: one level of child nesting, a hardware-dependent fan-out clamp, and a beta label as of August 5, 2026.
Fan-out across many files or services
20 concurrent subagents by default, nesting three layers below the main conversation per the August 7, 2026 docs, and an ultracode session setting that lifts the concurrency cap and orchestrates dynamic workflows. The broadest surface list of the three if the work moves between terminal, IDE and mobile.
Repeatable setups across a fleet
Profiles in ~/.codex/config.toml, layered with --profile, plus installable Agent Plugins searchable across local, personal, workspace and remote catalogues. Three explicit sandbox modes make the containment posture a reviewable config value rather than a runtime judgement call.
Running more than one on purpose
The benchmark rows cluster within six points and swap order between suites, so a single-vendor standard buys less than it looks like it does. Route by workload shape — crash-sensitive long runs, wide fan-out, fleet-standardised config — and re-verify every version-bound figure before it enters a contract.
Looking forward, the axis most likely to separate these three over the next two quarters is not model quality. It is whether the harness can be made a reviewable artefact. Codex has already moved that way with profiles and a plugin catalogue; Muse Code has moved that way with an event log that is, by construction, an audit trail; Claude Code has moved that way with Routines that run without a developer machine attached. All three are converging on the same requirement from different directions — that what the agent did be inspectable after the fact by someone who was not watching at the time.
The corollary is that the next stale claim will be about orchestration primitives, not about scores. This post’s own architecture table has a shelf life measured in weeks: Codex shipped a release on the day it was written, and Muse Code is in beta. If you are building a tooling decision on any comparison in this space, build in a re-verification date. Ours is attached to every cell above. If you want that discipline applied to your own stack, our AI and digital transformation engagements start with exactly this kind of evidence-dated evaluation, and the web development team runs the same routing logic across production codebases.
09 — ConclusionA three-way field where the scoreboard is the least useful column.
The harnesses are converging on features and diverging on what they optimise.
Muse Code arrived on August 5, 2026 with a thesis that is unusual for a launch: not that it wins, but that it recovers. The event-log runtime, the flat long-context rate and the one-level fan-out all point the same direction — long, restartable, forecastable runs. On the three charts with located figures, it trails Claude Code on every row, and Meta published those charts anyway.
Claude Code holds the widest orchestration ceiling and by some distance the widest surface area, with figures that need a version attached every time they are quoted — the subagent depth question being the live example. Codex CLI has quietly outgrown the characterisation it carried into this year: multi-agent v2 is stable, Agent Plugins make extensions a catalogue rather than a config file, and the config-first posture makes it the easiest of the three to standardise across a team.
The useful conclusion is a process one. The whole field fits inside six points on each published chart, the middle ranks swap between suites, and the charts themselves are a press reading of vendor images. That is not enough signal to pick a standard. Run your own evaluation on your own repositories, route by workload shape rather than by leaderboard position, and date every number you carry into a decision. In a field shipping releases on the same day you write about it, the re-verification habit is worth more than the comparison.