Full news history for ClawCodex. The README News section keeps only the 10 most recent items.
- 2026-07-13:
/ecotoken compression — -80% Bash-output tokens, measured, now a headline (#708, #712) — a new session toggle compresses the model-bound rendering of every Bash result with deterministic filters ported from RTK's method set: failure-focused test summaries (kept error lines are never rewritten),git/pip/npmceremony stripping, log dedup with[×N]counts, and a recoverable head-cap — all behind a never-worse guard, with every lossy compression teeing the full output to disk behind a runnable recovery hint (#708). A reproducible benchmark (eval/eco/) replays 27 real command outputs through the exact production pipeline and counts real tokenizer tokens: 92,989 → 17,767 (-80%) corpus-wide, -88% on filter hits, plus an honestly conservative recompute of RTK's own 30-minute-session model (-19% under their averaged assumptions — real sessions are fat-tailed) (#712). Full tables: the/ecosection andeval/eco/results/. - 2026-07-12 (v1.1.0): ClawCodex v1.1.0 — run OpenAI and Claude models on your subscription, not metered API billing — the headline of 1.1.0 is subscription auth for the two biggest model families, so you can point ClawCodex at a plan you already pay for. Sign in with ChatGPT (#698):
clawcodex login → openai → subscription(browser, device-code, or import from an existing Codex CLI login) routes requests through the ChatGPT Codex backend's Responses API —gpt-5.5,gpt-5.4,gpt-5.4-mini, andgpt-5.3-codex-sparkon your Plus/Pro allowance, with encrypted-reasoning replay across turns and $0 metered cost. Claude Pro/Max (#697):clawcodex login → anthropic → subscriptionconnects a Claude subscription via OAuth (PKCE) with automatic token refresh and the same $0 accounting; follow-ups repaired the login after Anthropic moved its OAuth endpoints toplatform.claude.com(#702) and stopped sending adaptive thinking to models that don't support it (#699). A configured API key always wins, and subscription usage reportsbilling_mode: subscription. More models: a Meta (api.meta.ai) provider with the 1M-contextmuse-spark-1.1reasoning model (#692) and refreshed MiniMax parameters (#696). Workflow & TUI:/planmode with implicit plan-mode entry/exit (#676),--worktree/-wsession isolation for parallel runs in separate git worktrees (#672), the/memorypicker +$EDITORspawn (#693), config/state directories rebranded.claude → .clawcodexwith a one-time migration (#678),/logostartup color schemes (#677), plus TUI polish — Tab accepts the suggested placeholder (#690), past inputs get the Claude-Code highlight band (#691), clickable agent URLs (#694), and a per-terminal link-open affordance (#701). Quality: semantic tool-input coercion with parity validation errors (#700) and looser, Claude-Code-faithful permission granting (#673). - 2026-07-07:
/loopscheduled tasks now actually fire — full port of Claude Code's session-scoped scheduler (#680) — the bundled/loopskill finally has a real engine behind it: a newsrc/scheduled_tasksmodule parses standard 5-field cron expressions and fires due prompts between turns from the agent-server's idle poll.CronCreate/CronList/CronDeleteregister real firing jobs (8-char IDs, 50-job cap, deterministic jitter, 7-day recurring expiry with one final fire), and the newScheduleWakeuptool drives self-paced/loopmode — the model picks each next delay (1 min–1 hr),stop: trueends the loop, and a ~20-minute fallback wakeup catches iterations that forget to reschedule. Typed skill slash commands now reach the backend (newskill_commandcontrol), so/loop 5m check ciworks from the composer with completion + argument hint; the TUI shows a live countdown indicator (⟳ loop wakeup in 2m 14s · ⏰ 1 scheduled) and Esc while idle stops a waiting loop./cleardrops session tasks,--resumerestores unexpired ones,CLAWCODEX_DISABLE_CRON=1disables the scheduler. 117 new tests; verified live over stdio NDJSON and a real PTY TUI drive (typed dispatch → CronCreate → a real wakeup fire between turns → Esc-stop). - 2026-07-07: Bounded the ESC-cancel chunk queue in OpenAI-compatible streaming (#278) —
OpenAICompatibleProvider.chat_stream_response's worker-thread queue (added in #148) was an unboundedqueue.Queue. A non-graceful disconnect from a proxy that keeps sending bytes after ESC (and never closes the SDK iterator) let the orphaned worker thread accumulate chunks in memory indefinitely. The queue is now capped at 64 chunks, soput()blocks the worker once full instead of growing without bound. - 2026-07-06 (v1.0.0): ClawCodex v1.0.0 — the 1.0 release: goal-directed autonomy, hooks & MCP wired for production, and a hardened permission system — 86 commits since v0.7.0 (#580–#668) finish wiring the big subsystems end-to-end and graduate ClawCodex to 1.0. Goal-directed autonomy: the
/goal+/subgoalcompletion-condition loop keeps the agent working until an LLM judge confirms the goal is actually met (#664), the new Monitor tool streams long-running shell output with backpressure (#665), background-bash completion notifications (#663), coordinator mode wired end-to-end on the live paths (#634), and/advisortoken-efficient worker/reviewer pairing restored on the Ink TUI (#668). Hooks live in production: configured hooks now actually fire — bootstrap Hooks abstraction (#583), UserPromptSubmit (#597), multi-scope + lifecycle hooks (#595),ifpre-filters (#643), PreToolUsepermissionDecision(#655), PermissionRequest hooks at the ask seam (#637), MCP elicitation hooks (#659), and teammate TaskCompleted / TeammateIdle stop hooks (#642). MCP completion: OAuth server auth via the/mcpflow (#662), livetools/list_changedrefresh (#598, #604), server instructions injected into the system prompt (#654), andclawcodex mcp servere-exposes ClawCodex tools as an MCP stdio server (#635). Permission hardening: readable approval boxes with broadenable, persistent session grants (#608–#611), compound-command permission parity (#622), Bash normalization hardening (#626),disableBypassPermissionsModelockdown (#660), an honest refuse-to-start unsandboxed guard (#658), subprocess secret-scrubbing (#650), and a flag-gated LLM security-classifier lane for auto mode (#589). TUI maturity: faithful Claude Code look & feel — diff rendering, tool-call transcript, task list, composer + permission-mode badge, busy line (#612–#616) — plus a minimal vim editing engine (#667), Esc-interrupt with a defanged Ctrl+C (#625), fully editable multi-line input (#621), slash-command argument hints (#631), a persistent session-stats line (#657), and restored/cost,/skills, and/model(#627, #629, #630). Reliability: the production compaction pipeline is wired and auto-compact actually applies its result (#587, #607), full retry lane + model fallback + message-history caching (#586), parallel Agent fan-out with the concurrency-cap deadlock fixed (#590), killing a background agent really stops the run (#606), and output styles work end-to-end (#640). Codebase stats: 1,170 Python files, 256,909 lines (up from 233,520 lines on 2026-06-11). - 2026-06-30 (v0.7.0): ClawCodex v0.7.0 — TUI auto-theming, faithful inline rendering & a Claude-Code-style tool trail — the Ink TUI now detects your terminal's background color (OSC 11) on startup and selects the light/dark theme to match, so text stays readable on any terminal with no env var needed (#577). Inline mode renders truly inline like Claude Code: no screen wipe on launch, and no overlap with prior terminal output on startup or with the returning shell prompt on exit (#573, #575). The tool trail reads Claude-style — workspace-relative paths (
Read(src/foo.ts)),Grep(pattern)labels, and aRead N linesresult collapse (#574) — and the banner gains a 🦞 mascot with brighter secondary text on dark themes (#576). - 2026-06-24 (v0.6.0): ClawCodex v0.6.0 — interactive TUI REPL parity — a batch of input ports brings the Python REPL to parity with the ink reference: a working slash-command menu (execute / complete / filter like the ink REPL), the sparkle spinner with a live token + elapsed busy row, context-aware prompt footer hints (interrupt / bash / grammar), the
?shortcuts help panel, an@file-mention dropdown with in-place splice, double-press Ctrl+C / Ctrl+D to exit, Ctrl+R history search + double-Esc clear-draft, a[Pasted text #N +K lines]large-paste placeholder, and the completed command queue (drain queued prompts + dim preview). Login docs now list all 25 providers (#383). - 2026-06-23: One-click installer —
curl -fsSL https://clawcodex.app/install.sh | bashinstalls uv (no sudo), provisions Python 3.10+, clones to~/.clawcodex, creates a lock-pinned venv, and registersclawcodexon PATH; ships status / doctor / verify / update / uninstall subcommands, is safe to re-run, and works on macOS / Linux / WSL. - 2026-06-21: 18 new LLM providers — the registry grows 7 → 25 (#377) — a data-driven
ProviderSpecregistry adds 18 OpenAI-compatible backends (nvidia-nim, fireworks, together, moonshot/Kimi, novita, siliconflow, deepinfra, stepfun, arcee, huggingface, volcengine, xiaomi-mimo, atlascloud, wanjie-ark, plus local ollama / vllm / sglang) alongside the hand-written providers; alias-aware config resolution, standard env-var key fallback (e.g.TOGETHER_API_KEY), and keyless local servers. - 2026-06-18: DeepSeek prefix-cache exploitation — a HUGE token-cost win (#363) — ClawCodex now keeps its request prefix byte-stable across turns so DeepSeek's automatic prompt-prefix cache covers the entire
system + tools + historyspan. Per-request-volatile sections (env, the mutableMEMORY.mdbody, plan-mode, etc.) are relocated to a trailing<system-reminder>after the conversation history, so the cached prefix never breaks even when memory/env change. We also register DeepSeek's 1M-token context window, map its prompt-cache usage onto the Anthropiccache_read_input_tokensconvention, and surface a per-model prompt-cache hit-rate + cost in/cost. Why this is enormous — the token economics: Claude Fable 5 runs $10 / $50 per 1M input/output tokens, while DeepSeek-V4-Pro is just $0.435 / $0.87 — already ~23× cheaper on input and ~57× cheaper on output. And because cache-hit input is billed at only 10% of the normal input rate, the long, context-heavy sessions that agentic coding actually produces pay just ~$0.0435 per 1M input tokens — roughly 230× cheaper than Fable 5 input. The token efficiency ClawCodex unlocks here is HUGE. Everything is gated to thedeepseekprovider — every other provider's request is byte-for-byte unchanged. Follow-up: truncated tool-call argument JSON is now best-effort recovered in the shared OpenAI-compatible layer, so an interrupted DeepSeek stream keeps its partial tool args instead of dropping them to{}(#364). - 2026-06-16: Z.ai GLM-5.2 support (#343) — new
zaiprovider for Z.ai's OpenAI-compatible GLM Coding Plan (https://api.z.ai/api/coding/paas/v4), shippingGLM-5.1and theGLM-5.2preview; GLM-5.2 delivers coding capability comparable to Claude Opus 4.7. First app built end-to-end with GLM-5.2 — a FIFA World Cup 2026 intro page (animated hero + live countdown, three host nations, 16 stadiums, tournament format, and record-breaking facts). - 2026-06-11: Codebase stats — Total Python files: 1,093 files; Total Lines of Python Code: 233,520 lines (up from 213,777 lines on 2026-05-29; ~+19.7k lines from the interactive command-system batch, the dynamic workflow engine +
/deep-research, and the Tavily web-tooling refresh). - 2026-06-10 to 2026-06-11: Dynamic workflow engine +
/deep-research(#262–#264, #266–#271) — Python workflow engine core (agent()/parallel()/pipeline()/phase(), journaling, resume) wired end-to-end: Workflow tool,/workflowsTUI dialog + status-line pill, per-agent retry, worktree isolation, result delivery, and the bundled/deep-researchharness registered as a slash command. Reliability: LLM read timeout applied centrally to all openai-compatible providers (#269), parallel agents no longer serialize on the event loop (#270), and the deep-research synthesize step forbids tools so the report-writer can't loop (#271). Follow-ups: workflow max-turns cap fix (#272), deep-research verdict-enum fix (#273), rich/workflowslive monitor with phase progress + per-agent stats (#287). - 2026-06-10: Web tooling refresh (#265) — dead DuckDuckGo scraping replaced with a Tavily-backed WebSearch plus config-backed secrets storage; WebFetch rebuilt with deterministic markdown/text/html extraction (borrowed from opencode).
- 2026-05-30 to 2026-06-09: Interactive command-system parity (#230–#261) — interactive ports of
/theme,/effort,/model,/logo,/mcp,/tasks,/diff,/export,/output-style,/statusline,/release-notes,/copy,/vim,/memory,/stickers, and/rename, built on a new prompt-text primitive and interactive command bridge; skill registration and model tool-exposure wiring; the session-persistence producer (SessionPersister+ agent-bridge wiring); plus extended thinking support (#249) and a model error-swallow fix (#250). - 2026-05-29: Codebase stats — Total Python files: 977 files; Total Lines of Python Code: 213,777 lines (up from 183,768 lines on 2026-05-21; ~+30k lines from the remote-bridge parity port (phases 0–18) plus the
/buddycompanion subsystem and the CLI transport layer). - 2026-05-29: Remote-bridge parity + CLI transports (#200–#226) — full port of the remote-control bridge across phases 0–18: bridge API client, child-CLI session runner, env-less v2 orchestrator, multi-session daemon, worktree spawn, in-place reconnect, perpetual mode with crash recovery, JWT refresh, and the v1
WebSocketTransport/SerialBatchEventUploaderwrite path with hybrid dispatch. Plus the CLI transport factory, coalescing worker-state uploader, andRemoteIObridge (#226); new/buddyvirtual-companion command — hatch / pet / status / mute (#225). - 2026-05-21: Codebase stats — Total Python files: 890 files; Total Lines of Python Code: 183,768 lines (up from 177,428 lines on 2026-05-16; net −4 files from the
src/tool_system/agent_loop.pyconsolidation intosrc/query/query.py). - 2026-05-21:
/advisortoken-efficient coding mode (#181–#193) — pair a cheap worker (haiku-4-5, $1/$5 per Mtok) with an expensive reviewer (opus-4-7, $5/$25) consulted only at decision points; ~6× cheaper than opus-only on typical sessions. Explicit<provider>:<model>syntax, cross-provider routing (e.g.deepseek/deepseek-v4-proworker +claude-opus-4-7advisor via litellm), and live worker/advisor token + USD cost in the status bar. - 2026-05-16: Codebase stats — Total Python files: 894 files; Total Lines of Python Code: 177,428 lines (up from 167,034 lines on 2026-05-14; ~+10.4k lines in two days, mostly ESC-cancellation hardening + image-handling parity).
- 2026-05-16: Image-handling parity (Tier C, #149/#154/#155/#156) — Read tool TS image pipeline (sniff, resize/compress, base64 cap);
@image.pngmentions inline as realImageBlocks instead of mojibake; cross-provider Anthropicimage/document→ OpenAIimage_url/filetranslation; pre-API base64 size validation inBaseProvider. - 2026-05-16: Subagent + Bash reliability — custom subagents now discovered from
.claude/agents/(#151); Bashtool_resultdistinguishes timeout from ESC-abort so the model can tell the two apart (#152); async-subagentAbortControllerisolation pinned by regression tests so a parent's ESC doesn't fire a sibling's abort listeners (#153); cancelledtool_resultreliably surfacesREJECT_MESSAGEon the production path (#150). - 2026-05-15 to 2026-05-16: ESC cancellation hardening across providers (#144–#148) — mid-stream cancellation closes the streaming HTTP response within ~50ms for every supported provider (Anthropic, OpenAI, GLM, Minimax, DeepSeek, OpenRouter); shared
StreamAbortGuardhelper extracted; LiteLLM worker-thread iteration fixes long-tail hangs on OpenAI-compat backends. - 2026-05-15: SWE-bench Verified result —
clawcodexresolves 291/499 (58.2%) vsopenclaude265/499 (53.0%) on Gemini 2.5 Pro under the standardized harness (seeeval/for the comparison framework — cumulative batching, parallel--predict-workers, full stream-json trace capture). - 2026-05-15: Native Gemini provider —
src/providers/gemini_provider.pyvia thegoogle-genaiSDK. Schema sanitization keeps OpenAI-style tool definitions compatible with Gemini's stricterSchema(oneOf/additionalPropertiesstripped, polymorphic params coerced tostring). - 2026-05-14: Codebase stats — Total Python files: 837 files; Total Lines of Python Code: 167,034 lines.
- 2026-05-14: ESC cancellation latency fix (#130) — pressing ESC now cancels in-flight Bash commands and streaming responses within ~50ms, on top of the diff color-bar full-width render fix (#129) and the bypass-permissions outside-paths fix (#128).
- 2026-05-12: Bootstrap + architecture docs — new architecture overview at
docs/ARCHITECTURE.md; production bootstrap port (memoizedinit(), trust boundary, unifiedlaunch_repl(args),--barefast path, schema migration runner); main query loop and agent loop routed throughdispatch_fullwith deferred tool loading. - 2026-05-11 (v0.5.0): ClawCodex v0.5.0 released — rebrand to ClawCodex across user-visible UI; reactive state subsystem ported (signals, store, session context, cost tracker, 1h cache eligibility); API layer hardened (output-token cap, request-id injection, message-level cache breakpoints, Haiku fast path, watchdog + non-streaming fallback, retry-with-stream); agent loop foundation (typed terminal, media recovery, blocking-limit guards, token budget, stop hooks, model fallback, continuation nudge); refreshed README screenshot.
- 2026-05-10: MCP subsystem landed — full Model Context Protocol support with OAuth wiring, HTTPS, XSS hardening, and async I/O; passed a multi-pass security review.
- 2026-05-10: Performance pass — startup profiler, prompt-cache plumbing with sticky latches, bitmap + async search indexing with score-bound pruning, cold-start latency reduction, streaming hardening.
- 2026-05-10: CCR remote bridge (phases 0–5) — Direct Connect via
cc://andcc+unix://, Bridge v2 transport, Remote Session viewer, CCR upstream proxy. - 2026-05-10: Standalone REPL modules — vim mode, transcript search, IME cursor, terminal hyperlinks, frame metrics, thinking widget, per-tool permission specialization, output-styles frontmatter; REPL transcript readability and ANSI diff backgrounds.
- 2026-05-08: Hooks system — snapshot-based executor with workspace-trust gate, expanded event/source taxonomy, schema validation, environment injection.
- 2026-05-08: Multi-agent coordination — typed task state machine, JSONL transcript writer, agent task lifecycle, progress tracker, task-notification routing,
SendMessagepeer DMs, swarm primitives, background resume, coordinator mode + worker agents, permission forwarding bridge; full test suite green onmain. - 2026-05-07: Auto-memory + concurrency — ported the persistent auto-memory subsystem (user / feedback / project / reference types); concurrency-orchestrator and tool-execution parity with the TypeScript reference; permission-system gaps closed.
- 2026-05-06: Subagent parity — fork-subagent path ported; subagent async lifecycle aligned with TypeScript reference.
- 2026-05-05: Docs polish — added Quick Install section under header; documented the config path written by
clawcodex login. - 2026-04-30: Skills subsystem parity — Skills (project + user, named args, tool limits) brought to parity with the TypeScript reference.
- 2026-04-29: REPL spinner UX — show elapsed time and token count in the REPL spinner row.
- 2026-04-27: New demo — Adopt Me-style pet game (React + Vite + Vitest), generated end-to-end by ClawCodex.
- 2026-04-26: Reliability fix — DeepSeek thinking-mode replay failures and noisy permission prompts resolved.
- 2026-04-25: DeepSeek support — direct DeepSeek provider (V4 Pro / Flash via
api.deepseek.com) plus OpenRouter route. - 2026-04-25: API validation fix —
AskUserQuestionoptions schema fixed for API validation. - 2026-04-23: Generated demos — CRM, LinkedIn, and Minecraft demo apps (all generated by ClawCodex itself) and a Demos section in the README.
- 2026-04-21: Permissions wiring —
--dangerously-skip-permissionswired through every entrypoint (REPL, TUI,-p). - 2026-04-20: Initial public release — first commit with project source, docs, tests, and build config.