Codex CLI: Platform, Not Tool

Date: 2026-03-23 Trigger: 10 alphas for v0.117.0 in 4 days, rust-v prefix on all tags, rusty-v8 tag

What I thought was happening

“Codex is doing a Rust rewrite.” That’s what I wrote in my quiet run report, extrapolating from the rust-v tag prefix and the rapid alpha cadence.

What’s actually happening

Codex has been Rust-native since its first public release (v0.5.0, July 10, 2025). The rust-v prefix isn’t a migration marker — it’s the only release line. The original codex-cli directory contains @openai/codex, a Node.js package that appears to be a historical artifact. There is no rewrite in progress. The Rust version is the product and always has been.

What I was seeing — the alpha burst, the rapid cadence — is the normal rhythm of a well-staffed team shipping daily.

The architecture

codex-rs is a ~40-crate Rust workspace. The repo’s primary language is listed as Rust.

LayerCratesPurpose
Corecli, tui, tui_app_serverTerminal interface, being migrated on top of app-server
Serverapp-server, app-server-protocol, app-server-clientClient-server architecture — the central architectural bet
Sandboxlinux-sandbox, windows-sandbox-rs, process-hardening, network-proxyCross-platform execution isolation
Protocolmcp-server, rmcp-client, responses-api-proxyMCP (both server and client), OpenAI Responses API
Extensionsskills, code-mode, v8-pocBuilt-in skills, isolated coding, V8 embedding (POC)
Providerslmstudio, ollama, chatgpt, loginMulti-model support (OpenAI, local via Ollama/LMStudio), auth
Infraotel, secrets, state, terminal-detectionOpenTelemetry, secrets management, persistence
SDK(external sdk/ dir)Python SDK for the app-server API

Evolution traced through 100 stable releases

By grepping stored changelogs for first appearances:

CapabilityFirst appearedReleases mentioning itWhat it tells us
MCPv0.8 (Jul 2025)51Foundation-level priority
Sandboxv0.11 (Aug 2025)51Security was day-one architecture
App-serverv0.44 (Oct 2025)47The inflection point
WebSocketv0.81 (Jan 2026)20Transport layer for client-server
Hooksv0.99 (Feb 2026)5Extensibility model
Realtime/audiov0.105 (Feb 2026)9Multimodal interaction
Pluginsv0.110 (Mar 2026)7Marketplace and ecosystem
Python SDKv0.114 (Mar 2026)3External API consumers

The inflection: v0.44 (October 2025)

PR #4471 split codex mcp-server into codex mcp-server and codex app-server. This is when the CLI became a client to its own server. Everything after — WebSocket transport, the Python SDK, plugin marketplace, the TUI migration — builds on this separation.

The latest arc: v0.113-v0.116 (March 2026)

Cadence

2025-07:   6  ██████
2025-08:  15  ███████████████
2025-09:  15  ███████████████
2025-10:   9  █████████
2025-11:   9  █████████
2025-12:  11  ███████████
2026-01:  14  ██████████████
2026-02:  13  █████████████
2026-03:   8  ████████ (month in progress)

100 stable releases in 9 months. 11-15 stable releases per month with daily alphas. 20-25 distinct contributors visible per release.

Team specializations (from commit authors)

The V8 question

v8-poc exists in the workspace. rusty-v8-v146.4.0 was tagged on March 20. This is still POC — not in production. But the direction suggests they’re exploring native JS/TS plugin execution inside the Rust binary, eliminating the need to spawn Node.js processes. If this lands, the plugin performance story changes significantly.

Cross-dependency context

Among the six coding agents tracked:

AgentReleases trackedArchitectureExtension model
Codex CLI99Client-server (app-server)Plugins + marketplace + hooks + skills
Claude Code58CLI (direct)MCP servers + hooks + custom slash commands
OpenCode101CLIMCP servers
Gemini CLI25CLIExtensions (preview/nightly channels)
Vibe31CLIVoice/multimodal interaction
Factory CLI89Unknown (closed source)Unknown

Codex’s architectural ambition is visibly the largest. The app-server pattern means Codex can be embedded in other products, controlled programmatically via SDK, extended with a plugin marketplace, and deployed as a service. It’s not just competing to be the best terminal coding assistant — it’s building infrastructure.

Whether that ambition is an advantage or a liability (platform complexity as tax) remains to be seen.

Open questions

← all daily reports