Codex CLI v0.166.0: transcript selection, queue resume, network diagnostics#
Published by Alex Sorokoletov
Part of the Codex CLI Version Tracker series. | Codex on GitHub | Official Changelog
Codex CLI v0.166.0 follows v0.165.0 with keyboard-driven transcript selection and search in the TUI, a codex queue --resume command for unloaded threads, and codex doctor --network-only for focused connectivity diagnostics. Resuming or forking a thread now preserves its approval settings and reasoning-token accounting.[1]
What shipped#
| Change | What it does |
|---|---|
| Keyboard transcript selection | Select transcript text with word, line, and page motions, with integrated search and configurable shortcuts.[1] |
codex queue --resume | Resume unloaded threads after queueing a message.[1] |
codex doctor --network-only | Run focused configuration, connectivity, and WebSocket diagnostics.[1] |
| Safety-block explanations | Clearer safety-block explanations, with selectable safer follow-up prompts in the TUI.[1] |
| Consistent Markdown rendering | Markdown renders consistently in async questions, choices, answers, and transcript replies.[1] |
Resuming and forking threads#
Several fixes center on threads that are paused and brought back. Resuming or forking a thread now preserves acknowledged approval and permission settings, and reasoning-token accounting is preserved across resume and fork to avoid premature compaction. Restoring killed composer text keeps local image attachments. Unarchiving a parent thread restores its spawned descendant threads.[1]
The app-server side gets matching work: thread startup and shutdown races are fixed, and completed runtimes are released promptly. TUI reconnection recovery improved, including offline /quit and /exit handling. On macOS, standalone release cleanup is fixed for installations that are in use or on paths that contain non-ASCII characters.[1]
Build and packaging#
The standalone executor now ships in the canonical CLI and app-server release packages. The build switched Bazel to a source-built V8 with target-matched Rust bindings and native Windows MSVC archive support. Development and release builds standardized on Node.js 24.22.1 and Rust 1.95.0.[1]
A resume restores a thread's execution context#
The release's fixes share one target: the state a thread carries when it stops. Approval and permission settings, reasoning-token accounting, and spawned descendant threads all return when a thread is resumed, forked, or unarchived. Paired with codex queue --resume, which brings back unloaded threads after a queued message, the lifecycle operations around a thread converge on restoring the same working state.
Together these fixes widen what a resume restores from the message history to the execution context around it: which actions are approved, how much budget remains before compaction, and which child threads exist. For a long or multi-step run that gets interrupted, resuming it later brings that context back, so the session continues under the approvals and the compaction boundary it carried before.
All trademarks and software referenced belong to their respective owners.
Sources#
- Codex CLI release notes, rust-v0.166.0
Previous Codex CLI analysis: v0.165.0 (October 29, 2026)
All 18 Codex CLI analyses: Codex CLI Version Tracker · Official Codex CLI changelog