You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This file tracks fork-specific features and fixes that should remain visible during README, release-note, and roadmap updates. It is an engineering inventory, not a marketing page. Keep it scoped to behavior implemented in this fork.
Scope
Open Codex CLI is a native Codex fork. Features listed here should generally require one of these layers:
Rust runtime changes under codex-rs
launcher or npm distribution changes under codex-cli
app-server, protocol, state, or TUI contract changes
repository-level instruction or release process changes that affect how this fork is operated
Fast-moving prompt packs, hooks, setup flows, and project policies are better handled by wrapper/workflow projects unless they need native runtime guarantees.
Implemented Features
TUI readability and turn correctness
Feature
User-facing behavior
Main entry points
Notes
User-query highlighting
User-authored queries are visually easier to scan in composer and history.
Beta quality, useful as rough responsiveness signal.
Workspace git diff status item
Status line can show tracked +added/-deleted and untracked file count.
workspace-changes item
Helps notice local changes without opening /status or shell.
Side-channel workflows
Feature
User-facing behavior
Main entry points
Notes
/btw side questions
Ask quick side questions without taking over the primary chat thread.
/btw <question>
Runs as an inline hidden thread with expected model, effort, permission, and tool behavior.
Default commit attribution
Open Codex can apply the fork's commit attribution identity by default.
git attribution extension/config
Implemented before the recent 0.130.x release series.
Release Notes
0.133.3 - 2026-05-27
Wire code rewind all the way through core: FileHistoryRestore now restores tracked file checkpoints instead of being a no-op.
Persist file-history checkpoints under the current thread id, so code restore still works after quitting and resuming the same session.
Start file-history checkpoints when a real user turn begins, matching Claude Code's snapshot-before-edits model while keeping restore scoped to the current Open Codex thread.
Extend the pre-response Esc rewind path so the submitted prompt returns to the composer, the interrupted turn is rolled back from conversation history, and the transient interrupt notice is not left behind.
0.133.2 - 2026-05-25
Extend Claude-style Esc rollback through the TurnStarted-before-first-output window: if the model has not emitted assistant text, reasoning, plan output, or tool/command activity yet, Esc restores the submitted prompt to the composer and interrupts the turn.
Keep Esc interrupt semantics after output begins: once any assistant output or work activity appears, Esc remains interrupt-only and does not silently restore/clear partial responses.
Clarify the Open Codex subagent spawn policy: explicit user requests for parallel/subagent work are strong triggers, but not prerequisites; the real gate is whether a lane is independent, consumable, bounded, and worth the coordination cost.
Document the background terminal/process ownership rule: do not stop unrelated work merely because it consumes CPU; stop only current-task-owned, blocking, artifact-risking, or explicitly requested work.
0.133.1 - 2026-05-25
Match Claude Code's "treat the query as not sent" behavior: while a user prompt is awaiting TurnStarted from core, pressing Esc now rolls the prompt text back into the composer in addition to issuing the interrupt, so the user can edit and resubmit without retyping.
Fix the workspace-changes status item (+added/-deleted ?untracked) staying frozen after first lookup: refresh it on TurnDiffUpdated notifications and at both finalize_turn sites alongside the existing branch/git-summary refreshes.
0.133.0 - 2026-05-24
Merge upstream openai/codex through rust-v0.133.0 (59 upstream commits, 361 files, +18.2k / -2.3k) on top of the 0.131.6 fork base. Backup tag backup/before-merge-0.133.0-20260524 preserves the pre-merge state.
Preserve every fork-specific feature across the merge: agent-view session browser (Left-arrow overlay + codex agents subcommand), contract-first subagent spawn guidance with CollabAgentState receipt fields surfaced into the background-task panel, Zellij-aware insert_history and alt-screen handling, background subagent/terminal status-line refresh, /effort / /export / /rename / /btw / /collab / /memory / /memory-overlay, per-turn xhigh / ulw / ultra reasoning markers reflected live in the status line, active-staging memory overlay, and the @leonw24/open-codex npm package identity.
Take upstream's new vendor layout in codex-cli/bin/codex.js and scripts/build_npm_package.py while keeping fork update commands (npm install -g @leonw24/open-codex@latest).
Merge core::state::session::SessionState to use upstream's plural pending_session_start_sources: VecDeque<...> while keeping fork memory_overlay + last_injected_memory_overlay_revision.
Chain upstream sync_active_thread_reasoning_setting(app_server, effort) and fork sync_active_thread_model_settings_to_cached_session() so /effort changes propagate both to the app-server and to the locally cached session.
Preserve fork Shift+Tab reasoning speed toggle and fast_default_opt_out tracking while adding upstream refresh_effective_service_tier and the new active_permission_profile slot in override_turn_context.
Preserve fork /btw (StartBtw lightweight inline thread) dispatch ahead of upstream's combined Side | Btw empty-side-conversation handler.
Known follow-up: five Fast tests (status_line_fast_mode_*, fast_status_indicator_requires_chatgpt_auth, /fast slash-command flow, user_turn_sends_standard_override_after_fast_is_turned_off, queued_fast_slash_applies_before_next_queued_message) need updates because upstream gated effective_service_tier behind Feature::FastMode and the existing tests do not enable that feature in setup.
0.131.6 - 2026-05-22
Add the first beta version of agent-view: codex agents can inspect saved sessions offline, and the TUI session browser can open from the composer with Left arrow.
Render the agent-view session browser as a full-screen overlay with grouped session rows, peek preview, delete confirmation, resume, and start-new-session flows.
Mark agent-view as beta in this release: the core browsing/resume workflow is available, but UI polish and interaction details may still change.
Fix the 0.131 merge regression where standalone xhigh, ultra, or ulw markers no longer submitted the current query with xhigh reasoning.
Show the per-turn xhigh override in model-with-reasoning status-line output while that foreground turn is pending or running, without mutating persistent session defaults.
Keep per-turn effort override state across thread switch capture/restore.
Fix background task status-line drift so /ps and the footer agree when background terminals or subagents start, finish, or are cleared.
Preserve Zellij pane scroll behavior by rendering TUI inline under Zellij instead of trapping pane scroll in the alt screen.
Tighten subagent spawning guidance around contract-first delegation and quota-aware cleanup.
0.131.5 - 2026-05-21
Show renamed session identity directly in the chat composer border with a Session: <name> marker.
Update live /rename feedback to use direct resume commands such as open-codex resume <thread-id> instead of resume, then select <name> (<thread-id>).
Update quit summaries so renamed sessions say To continue <name>, run open-codex resume <thread-id> while unnamed sessions keep this session.
Keep fork-specific launcher names through CODEX_RESUME_COMMAND_NAME, so local dev installs can show open-codex-dev resume <thread-id>.
Add snapshot and focused CLI/TUI regression coverage for renamed-session display and resume hint formatting.
0.131.4 - 2026-05-21
Fix Zellij pane scroll compatibility by disabling xterm alternate-scroll mode when Open Codex detects ZELLIJ, ZELLIJ_SESSION_NAME, or ZELLIJ_VERSION.
Preserve normal terminal behavior outside Zellij, so non-Zellij sessions still get alternate-scroll handling while inside the TUI alt screen.
Apply the same Zellij guard across Ctrl-Z suspend/resume so pane scroll remains usable after returning to Open Codex.
Remove the redundant background-terminal footer/status text (/ps to view · /stop to close) now that background terminals are managed through the down panel.
Restore 0.130.x Esc routing semantics for pending steers and rejected steers, so single Esc can steer/interrupt instead of being intercepted by double-Esc rewind detection.
Add focused regression coverage for alternate-scroll enablement inside and outside Zellij.
0.131.3 - 2026-05-21
Merge upstream openai/codex through cfa16fcc2e, bringing in 271 upstream commits after the fork point.
Preserve Open Codex fork behavior across the merge, including memory overlay/browser, rewind/revoke UX, persistent Shift+Tab speed toggle, /btw, /effort, subagent tracking, and git attribution.
Reconcile upstream ThreadSettings, Op::UserInput, MCP runtime environment, permission profile, rate-limit, status-surface, and package-layout changes with fork-specific runtime state.
Keep stale-turn output guards, foreground/background task state, and fork-correct package/update identity intact after the upstream merge.
Restore the 0.130.x user-query history highlighting with visible divider rows and the cyan User › label after the upstream history-cell split.
Restore the Rust workspace release version so built binaries report 0.131.3 instead of upstream source-build 0.0.0.
0.131.2 - 2026-05-20
Fix slash popup navigation: use keymap list.move_up/down instead of hardcoded Ctrl-P/N, fixing popup only moving upward.
Open slash popup immediately on bare / without paste-burst flush delay.
Deduplicate service tier commands that collide with builtin slash command names.
Restore top/bottom border on chat composer to visually separate history from input.
Clarify /subagents description: closed rows are reviewable, not quota holders.
Support CODEX_RESUME_COMMAND_NAME env var for fork-specific resume command formatting.
0.131.1 - 2026-05-19
Merge upstream Codex 0.131.0 into Open Codex.
Preserve fork runtime features across the merge: memory overlay/browser, persistent Shift+Tab speed toggle, Claude-style rewind/revoke, /btw, /effort, subagent quota reclamation, background subagent tracking, git attribution, and inline update release notes.
Restore fork-correct npm packaging and update diagnostics so install/update guidance targets @leonw24/open-codex.
Keep the release publishable through the local release-fast path with concrete GitHub release notes for the startup update prompt.
Recently Important Fixes
Commit
Date
Summary
d587d950bc
2026-05-19
Fix resume state restoration for streamed assistant deltas, reasoning effort, and fast/standard service tier.
2615364e34
2026-05-18
Show inline release notes in the update prompt.
b6f62e4867
2026-05-17
Fix revoke restore scope and release notes link.
0d20c120d8
2026-05-16
Fix rewind restore and Esc interrupt routing.
81f61c9aa4
2026-05-15
Add persistent Shift+Tab reasoning speed toggle.
0505d0528a
2026-05-15
Document persistent Shift+Tab speed toggle.
df5d9799de
2026-05-14
Fix rewind picker session scope.
eb47a50088
2026-05-14
Improve rewind code restore UX.
11a5ff07e4
2026-05-14
Document memory overlay metrics and subagent GC.
bfa6fa9890
2026-05-14
Add memory browser and preserve resume effort.
5348fb6fcd
2026-05-14
Fix completed subagent quota reclamation.
ba54960a86
2026-05-14
Add memory overlay status diagnostics.
8670c2c842
2026-05-13
Fix subagent completion wakeups.
4cf2052d1c
2026-05-12
Clarify Open Codex wrapper positioning.
e42cbb9d66
2026-05-12
Update README for BTW and background task UX.
README Sync Checklist
When adding or changing a feature:
Add or update the feature row in this file.
If the feature is user-facing and stable, mirror it in README Current Delta and Roadmap.
If the feature is part of a release, include concrete bullets in the GitHub release body.
If the feature changes npm/package identity, verify update prompt copy and install smoke tests.
If the feature changes session, memory, or subagent behavior, include a focused regression test and note the slash command or keybinding entry point.