release: rust-v0.161.0-cometix
New Features
- GPT-6.1 Sol is now the default model in the bundled and Amazon Bedrock catalogs. (openai#49318, openai#49339)
- Amazon Bedrock supports multi-agent V2 and Ultra reasoning on compatible models; Bedrock Mantle also accepts AWS GovCloud regions. (openai#49345, openai#49813)
- Sign in to MCP servers from an active terminal session with
/mcp login <name>. (openai#49290) - Choose your microphone, speaker, and microphone input channels for voice conversations, with preferences saved locally. (openai#49437, openai#49836)
- Daybreak is opt-in through
--enable cli_daybreakorfeatures.cli_daybreak=true;daybreak=truealone is insufficient. By default, controls and indicators are hidden,/daybreakis unavailable, and automatic Cyber routing is omitted—even for saved Daybreak threads. Saved preferences remain intact. Opt-in routing requires eligible ChatGPT sign-in, the OpenAI provider, and advertised model/program support. (openai#49856, openai#49858, openai#49859, openai#49861, openai#51207) - Select a Cyber access program per turn with
codex exec --cyber-access-programor the TypeScript SDK’scyberAccessProgramoption. The explicit exec override remains available withcli_daybreakdisabled and leaves the saved choice unchanged. (openai#49939, openai#51207)
Bug Fixes
- Approved filesystem escalation can now grant broader write access while preserving denied reads and network restrictions. Background tasks retain their originating turn’s permissions. (openai#49353, openai#49880)
- Explicit launch permissions survive terminal reconnects and new sessions, while implicit client settings no longer overwrite server or saved-thread web-search settings. (openai#49809, openai#49799)
- Elevated Windows terminal sessions can start using an embedded server, and sandboxed PowerShell preserves relative paths beneath protected user profiles. (openai#49855, openai#49690)
- Enter correctly submits buffered input after paste detection expires, including in Vim insert mode. (openai#49810)
- Thread resume includes the latest committed history. Startup detects recoverable SQLite corruption earlier and preserves damaged databases as backups. (openai#49599, openai#49701)
- Responses retries and WebSocket-to-HTTP fallback honor server retry guidance, reducing premature failures during overload. (openai#49441)
Documentation
- Authentication guidance now accounts for keyring storage instead of implying credentials always reside in
auth.json. (openai#49361)
Chores
- Publishing an older alpha or hotfix no longer moves npm alpha tags backward. (openai#49704)
Changelog
Full Changelog: openai/codex@rust-v0.160.0...rust-v0.161.0
- openai#49246 Use executable fixture copying in the bundled bwrap test @felixxia-oai
- openai#49257 Allow Guardian cached approvals with incomplete root context @felixxia-oai
- openai#49260 Restrict enterprise MCP auth and fail closed on config refresh @nicksteele-oai
- openai#49261 Preserve Windows sandbox runner launch errors @zm-oai
- openai#49262 Trace turn phases and correlate accepted input with turns @jif-oai
- openai#49266 Remove the remote agent message board client README @jif-oai
- openai#49267 Support remote agent message boards in multi-agent sessions @jif-oai
- openai#49269 Preserve thread overrides and cloud policy validity during config reloads @nicksteele-oai
- openai#49275 Isolate realtime conversation tests from Responses prewarm connections @felixxia-oai
- openai#49276 Enable enterprise MCP sign-in and account-scoped grant cleanup @nicksteele-oai
- openai#49277 Avoid a turn teardown race in the Guardian agent message test @felixxia-oai
- openai#49280 Restrict capability roots to captured turn environments @miz-openai
- openai#49286 Model exec-server session attachment state as an enum @jif-oai
- openai#49290 Add
/mcp login <name>to the TUI @nicksteele-oai - openai#49294 Record Guardian context mode in review and classification telemetry @felixxia-oai
- openai#49295 Simplify configuration fingerprint canonicalization @jif-oai
- openai#49297 Scan the session index backwards for batch thread name lookups @jif-oai
- openai#49300 Compact the inline hidden tag buffer once per chunk @jif-oai
- openai#49305 Batch metadata reads when resolving thread names @jif-oai
- openai#49308 Run piped legacy Windows sandbox processes without a console @etraut-openai
- openai#49312 Notify parent agents when Guardian stops a subagent @jif-oai
- openai#49316 Bump taiki-e/install-action to v2.87.21 in CI setup @jgershen-oai
- openai#49318 Add GPT-6.1 Sol as the default catalog model @andrewgu-oai
- openai#49325 Retry Windows sandbox runner logon once on error 1056 @zm-oai
- openai#49330 Keep remote control reconnect backoff capped during sustained failures @yansenzhou-oai
- openai#49332 Clean up canceled exec-server RPC requests immediately @jif-oai
- openai#49339 Add GPT-6.1 Sol to Bedrock catalogs and make it the default @celia-oai
- openai#49345 Enable multi-agent V2 and Ultra reasoning on Amazon Bedrock @celia-oai
- openai#49353 Allow approved filesystem escalation while preserving denied reads @viyatb-oai
- openai#49357 Continue Markdown blockquotes when pasting multiline text @bc-openai
- openai#49360 Carry shell invocation metadata and report executor PATH directories @anp-oai
- openai#49361 Clarify credential storage wording across authentication UI and docs @celia-oai
- openai#49369 Update Bedrock GPT-6 Sol catalog tests to expect multi-agent V2 @celia-oai
- openai#49379 Compile hook matchers during discovery @jif-oai
- openai#49384 Track credential storage outcomes and redact sensitive errors @celia-oai
- openai#49388 Fix Windows path inference for opaque URIs with slash prefixes @dkovalenko-oai
- openai#49389 Serialize tests that share Windows sandbox accounts @jgershen-oai
- openai#49392 Add attributed MCP OAuth credential storage telemetry @celia-oai
- openai#49395 Remove randomized greetings from TUI session headers @etraut-openai
- openai#49401 Preserve live tool-call metadata across request windows @ningyi-oai
- openai#49403 Add an experimental flag for bundled tools in login shells @anp-oai
- openai#49406 Support explicit cyber access programs with OpenAI API keys @julee-oai
- openai#49407 Recover exec-server sessions after environment info timeouts @vivi
- openai#49408 Compare tool call metadata in the recorder refresh test @euroelessar
- openai#49411 Bind the app-server time provider to a local variable @euroelessar
- openai#49414 Filter graceful shutdown guard and trigger traces from SQLite logs @dkovalenko-oai
- openai#49415 Truncate input text in protocol debug output @dkovalenko-oai
- openai#49416 Omit payloads from multiline ANSI warnings @dkovalenko-oai
- openai#49424 Infer Windows UNC paths with forward and mixed slashes @dkovalenko-oai
- openai#49425 Prune diagnostic logs periodically by age and database size @dkovalenko-oai
- openai#49426 Enable analytics by default for daemon-launched app servers @bc-openai
- openai#49432 Preserve bootstrap discovery across authentication changes @cooper-oai
- openai#49437 Add local audio device selection to TUI voice settings @bc-openai
- openai#49441 Honor server retry advice across Responses retries and fallback @anp-oai
- openai#49444 Use
memrchrto find newlines in reverse JSONL scans @btraut-openai - openai#49467 Restore executor tool paths after login shell startup @anp-oai
- openai#49472 Use server-authoritative permissions in the TUI @etraut-openai
- openai#49473 Use the rmcp SDK for enterprise-managed token exchanges @nicksteele-oai
- openai#49475 Complete turn abort callbacks before emitting terminal events @euroelessar
- openai#49478 Discover and validate MCP authorization servers before ID-JAG exchange @nicksteele-oai
- openai#49480 Add experimental thread prediction protocol types @keyz
- openai#49489 Add regression coverage for account switches between analytics batches @anp-oai
- openai#49517 Add a fork shortcut to the TUI command center @etraut-openai
- openai#49560 Add an opt-in model catalog to multi-agent context @jif-oai
- openai#49564 Copy selected file paths as plain text in the TUI @fcoury-oai
- openai#49584 Skip host skill discovery for Guardian reviews @jif-oai
- openai#49595 Make the strict network approval test independent of request order @jif-oai
- openai#49598 Persist explicit user goal edits in model history @felixxia-oai
- openai#49599 Return authoritative replay history when resuming a thread @felixxia-oai
- openai#49600 Reuse unchanged history snapshots when resuming threads @felixxia-oai
- openai#49624 Use server authentication for explicit remote session commands @cooper-oai
- openai#49642 Allow managed requirements to disable the Windows MXC sandbox @iceweasel-oai
- openai#49675 Serialize Responses routing fields before large inputs @jbeckwith-oai
- openai#49678 Escape command drafts when recovering question answers @imac-oai
- openai#49683 Add a managed feature gate for in-app voice @vishnu-oai
- openai#49686 Deliver remote message board notifications to active turns @jif-oai
- openai#49689 Export skill invocation events through OpenTelemetry @jif-oai
- openai#49690 Preserve PowerShell relative paths in the elevated Windows sandbox @johnl-oai
- openai#49692 Keep compressed rollout snippet searches on one blocking worker @npancha-openai
- openai#49693 Move thread history projection into one blocking task @charliemarsh-oai
- openai#49694 Batch rollout listing scans on cancellable blocking workers @charliemarsh-oai
- openai#49696 Make exec-server file reads cancellable between chunks @charliemarsh-oai
- openai#49701 Detect SQLite corruption during startup and preserve recovery backups @dkovalenko-oai
- openai#49702 Rename exec-server file handle management identifiers @anp-oai
- openai#49704 Prevent npm alpha dist-tags from moving backward @imac-oai
- openai#49706 Upgrade the argument comment lint toolchain and Dylint @tamird
- openai#49708 Move session index I/O off async runtime threads @charliemarsh-oai
- openai#49710 Classify SQLite corruption using typed error codes @dkovalenko-oai
- openai#49712 Avoid full-string scans in token-budget truncation @jif-oai
- openai#49713 Remove repository-local Codex guidance, skills, and environment config @anp-oai
- openai#49714 Decouple API-key cyber access programs from model discovery @julee-oai
- openai#49715 Add account security setup reminders to the TUI @dennyku
- openai#49778 Define exec-server protocol types for streamed file writes @anp-oai
- openai#49781 Include the environment's MXC backend in MCP sandbox metadata @zm-oai
- openai#49782 Clean up process groups for failed shell snapshot captures @jif-oai
- openai#49783 Preserve background thread requests when forking in the TUI @etraut-openai
- openai#49784 Add a requirements feature gate for the browser annotation API @tepman-oai
- openai#49785 Persist empty paginated threads when naming them @rd-oai
- openai#49786 Clarify V2 spawn model override guidance for context catalogs @jif-oai
- openai#49787 Remove
AGENTS.mdfrom Bazel core test data @andrewgu-oai - openai#49792 Add retained conversation support to Guardian async sampling @felixxia-oai
- openai#49793 Add conversation mode to Guardian v2 async classification @felixxia-oai
- openai#49795 Avoid duplicate sync reviews in Guardian classifier continuations @felixxia-oai
- openai#49796 Deduplicate Guardian retained-context omission notices @felixxia-oai
- openai#49798 Share cached exec-server environment info with Arc @anp-oai
- openai#49799 Preserve server web-search settings in the TUI @etraut-openai
- openai#49800 Allow cleanup of replay-only side conversations with missing threads @bc-openai
- openai#49801 Update the Rust toolchain action for argument-comment linting @andrewgu-oai
- openai#49804 Use platform-specific modifier labels in TUI shortcut hints @bc-openai
- openai#49805 Add capability-gated writable file streams to the exec-server client @anp-oai
- openai#49806 Accept unknown Codex error variants in the app-server protocol @anp-oai
- openai#49807 Enable API-key model discovery by default @andrewgu-oai
- openai#49809 Preserve local launch permissions across TUI sessions and reconnects @etraut-openai
- openai#49810 Flush expired paste bursts before handling Enter @bc-openai
- openai#49811 Handle unsupported
fs/writeBlockrequests in exec-server @anp-oai - openai#49812 Move shadow skill ranking off the turn preparation path @vkg-oai
- openai#49813 Support AWS GovCloud regions for Amazon Bedrock Mantle @alexsong-oai
- openai#49814 Add coordinated shutdown for local agent trees @owenlin0
- openai#49816 Remove browser-open success messages from the TUI @bc-openai
- openai#49817 Add an advisory Bedrock GovCloud requirements check @alexsong-oai
- openai#49818 Use dedicated parameters for sandboxed file opens @anp-oai
- openai#49819 Recover daemon startup and updater re-exec after cwd deletion @etraut-openai
- openai#49822 Box the resume future in the agents overview permissions test @sayan-oai
- openai#49835 Clarify service tier default save errors in the TUI @etraut-openai
- openai#49836 Allow microphone channel selection for voice conversations @bc-openai
- openai#49843 Preserve daemon diagnostics and include updater logs in reports @etraut-openai
- openai#49846 Capture host-supplied extension data for each turn @sayan-oai
- openai#49847 Persist world-state snapshots alongside rendered context @pakrym-oai
- openai#49850 Launch Windows daemon children in a dedicated working directory @etraut-openai
- openai#49852 Improve diagnostics for report attachment failures @dkovalenko-oai
- openai#49855 Use embedded mode for elevated Windows TUI sessions @etraut-openai
- openai#49856 Support Daybreak selection in
codex exec@etraut-openai - openai#49857 Use the model catalog to select TUI cyber refusal guidance @etraut-openai
- openai#49858 Add a persistent
/daybreaktoggle to the TUI @etraut-openai - openai#49859 Honor Daybreak settings in TUI continuations and background tasks @etraut-openai
- openai#49861 Add Daybreak state to the status line and terminal title @etraut-openai
- openai#49867 Update elevated-launch warning snapshot to use
⌃ofor copy @etraut-openai - openai#49874 Point usage and credit links to ChatGPT settings @etraut-openai
- openai#49875 Decouple TUI startup presentation from execution configuration @etraut-openai
- openai#49876 Remove personality plumbing from the TUI @etraut-openai
- openai#49880 Bind permission grants to the originating turn @anp-oai
- openai#49894 Return world-state snapshots and context updates together @pakrym-oai
- openai#49898 Scope extension filesystem access to callback permissions @anp-oai
- openai#49910 Preserve validation errors for invalid TUI keybindings @etraut-openai
- openai#49912 Respect approval policies in temporary structured threads @etraut-openai
- openai#49939 Add per-turn Cyber access program selection to exec and the SDK @mldangelo-oai
- openai#49946 Prevent stale file search results from being labeled with a new query @jif-oai
- openai#49951 Include preceding assistant context in Guardian sender reviews @jif-oai
- openai#49956 Cache the placeholder regex for MCP hook argument expansion @jif-oai
- openai#49959 Test session index thread-name append and removal @jif-oai
- openai#49972 Share byte buffers across exec-server output chunks @jif-oai
- openai#49987 Add renewable EMA HTTP authentication and credential versioning @nicksteele-oai
- openai#49993 Preserve the async Guardian history prefix as retained context changes @felixxia-oai