New Features
- Add tools for creating and listing managed Git worktrees from trusted local projects when the worktrees feature is enabled. (#50148)
- Pin tasks in the agent Command Center with
pand keep them in a shared Pinned group when supported by the server. (#51500) - Navigate and copy transcript blocks with
/copy, useCtrl+Insertto copy selections, and tune mouse-wheel scrolling withtui.mouse_scroll_speed. (#50434, #50215, #50209) - Make URLs clickable in approval headers, questions, MCP prompts, warnings, banners, and verification prompts, including when links wrap across lines. (#51439, #51449, #51450, #51451, #51452, #51458)
- Configure live web access and remote compaction capabilities for custom Responses-compatible model providers. (#50459)
- Add JavaScript helpers for streaming promise results as they settle, plus opt-in ranked tool search in Code Mode. (#51126, #51209)
Bug Fixes
- Respect server model and reasoning-summary defaults for new TUI threads while retaining explicit launch overrides. (#50013, #50811, #50913)
- Preserve existing CRLF line endings in
apply_patchupdates without requiring an opt-in. (#51203) - Fix Linux sandbox startup with multiple denied files, reject writable sandbox-construction executables, and keep ripgrep configuration from weakening deny-glob masks. (#50059, #51211, #51407, #51527)
- Restore ordinary drive-letter file access on Windows 10 and match Windows sandbox temp permissions to the child process environment. (#51511, #51512)
- Honor server
Retry-Afteradvice for retryable Responses and WebSocket failures. (#50418, #51440) - Fix archive checksum verification when installing through Windows PowerShell with PowerShell 7 module paths present. (#51257)
Chores
- Publish a signed PowerShell installer with Windows releases. (#51158)
- Keep older stable releases and prereleases from replacing newer stable download targets or installer aliases. (#51186, #51425)
Changelog
Full Changelog: rust-v0.161.0...rust-v0.162.0
- #50013 Honor server model defaults when starting fresh TUI threads @etraut-openai
- #50018 Use descriptor-safe helpers for executable test fixtures @jif-oai
- #50019 Protect the guardian decisions API key from environment forwarding @swastik-oai
- #50026 Preserve user restrictions in Guardian handoff context @jif-oai
- #50035 Follow MCP tool pagination in legacy protocol mode @jif-oai
- #50039 Keep transcript Find results readable after closing the query @fcoury-oai
- #50045 Keep transcript Find expansion scoped to the current match @fcoury-oai
- #50046 Stabilize Windows voice build cache keys across tool reinstalls @anp-oai
- #50050 Keep plugin and skill snapshots scoped to each step @sayan-oai
- #50052 Preserve question context in recovered TUI answer drafts @imac-oai
- #50054 Check token estimate filtering directly on the tracing subscriber @tamird
- #50058 Upgrade Windows bindings to
windows-sys0.61.2 @tamird - #50059 Fix Linux sandbox startup with multiple denied files @yuzhu-oai
- #50066 Add a bounded Decisions transport for Guardian comparison classification @swastik-oai
- #50082 Enable dynamic tool inheritance for fresh V2 subagents @ke-oai
- #50083 Add paginated reverse lookup for thread attachments @joeytrasatti-openai
- #50087 Preserve queued agent mail across session eviction @jif-oai
- #50093 Prevent shared instruction providers from delegating to themselves @bryanashley
- #50094 Add attachment owner lookup to the app-server @joeytrasatti-openai
- #50099 Add opt-in Decisions comparison for Guardian V2 @swastik-oai
- #50105 Consolidate chat composer footer logic in
footer_state@imac-oai - #50109 Keep fullscreen prompts bounded and scrollable @imac-oai
- #50112 Centralize TUI loading glyphs and frame scheduling @imac-oai
- #50113 Add a native gRPC client for cloud thread resume and attach @bc-openai
- #50128 Expose the model selected for a running turn's next step @sayan-oai
- #50129 Preserve Windows environment variables for remote MCP servers @aidanv-oai
- #50131 Add opt-in JSON diagnostics for TCP tunnels @richardopenai
- #50140 Use the server permission catalog for TUI permission shortcuts @etraut-openai
- #50148 Add managed worktree tools to the TUI @bc-openai
- #50162 Bound in-flight file opens in exec-server @anp-oai
- #50166 Upgrade
ageto 0.12.1 and remove the obsolete advisory exception @michaelm-openai - #50177 Enable writable file streaming in exec-server @anp-oai
- #50183 Add
dotsto issue labeler guidance @etraut-openai - #50189 Replace the Figma OAuth exception with Mercado Pago @mzeng-openai
- #50199 Restore the account email in
/statusafter account updates @etraut-openai - #50200 Report the configured TUI mode in
codex doctor@etraut-openai - #50207 Release stable Markdown tables into scrollback during streaming @etraut-openai
- #50209 Make transcript mouse scroll speed configurable @etraut-openai
- #50215 Support Ctrl+Insert for copying TUI selections @etraut-openai
- #50216 Use the shared text editor for command-center task renaming @bc-openai
- #50219 Bound tmux option probes to one second @etraut-openai
- #50273 Record Guardian V2 Decisions agreement and latency metrics @swastik-oai
- #50339 Add end-to-end coverage for MCP sandbox state enforcement @bolinfest
- #50345 Keep the subagent picker consistent with thread archive state @etraut-openai
- #50348 Back off automatic remote control reconnects with jitter @cooper-oai
- #50354 Skip unrelated subtrees during config alias normalization @btraut-openai
- #50359 Render ANSI styles in TUI hook system messages @etraut-openai
- #50360 Remove initial messages from session configuration events @owenlin0
- #50375 Use printable ASCII terminal titles under GNU Screen @imac-oai
- #50380 Fix thread unloading after disconnect during MCP startup @yuzhu-oai
- #50384 Allow opting into 16 KiB ARM64 code pages for macOS signing @chess-oai
- #50389 Honor configured keybindings before transcript navigation @etraut-openai
- #50396 Honor pager bindings for transcript page keys @bc-openai
- #50402 Consolidate command execution output into
aggregated_output@owenlin0 - #50416 Clarify Git worktree choices for new and forked conversations @bc-openai
- #50418 Honor Retry-After headers in failed Responses events @anp-oai
- #50427 Cap persisted command output in paginated history at 64 KiB @owenlin0
- #50431 Preserve terminal hyperlinks in agents overview previews @bc-openai
- #50433 Allow API-key accounts to use Daybreak in the TUI @etraut-openai
- #50434 Add keyboard copy selection to the owned transcript @bc-openai
- #50435 Persist additional tool definitions in rollout history @pakrym-oai
- #50437 Add a CLI command to uninstall the legacy Windows sandbox @chess-oai
- #50441 Support ordered response items in world-state context updates @pakrym-oai
- #50442 Preserve native USD amounts in thread usage responses @asohrabi-oai
- #50443 Stabilize paused-time code-mode service tests @seanh-oai
- #50445 Assert that only direct tool calls emit timing events @seanh-oai
- #50446 Bundle rollout attachments into a gzip tar archive @dkovalenko-oai
- #50447 Remove the provider capability gate for tool namespaces @pakrym-oai
- #50454 Measure rollout persistence size reductions @owenlin0
- #50458 Truncate oversized MCP results in paginated thread history @owenlin0
- #50459 Add capability overrides for custom model providers @celia-oai
- #50462 Populate thread previews from delegated task inputs @bc-openai
- #50464 Add the
incremental_toolsfeature flag @pakrym-oai - #50465 Retry registry authentication outages and jitter executor reconnects @apanasenko-oai
- #50467 Copy transcript selections as literal text while preserving rich HTML @fcoury-oai
- #50470 Account for JSON overhead when truncating MCP tool results @owenlin0
- #50472 Enable Ultrafast service tiers for Amazon Bedrock Astra models @celia-oai
- #50477 Use the app-server default output cap for TUI workspace commands @etraut-openai
- #50480 Skip managed config loading for registered Windows sandbox refreshes @zm-oai
- #50499 Include installer stderr in daemon update failures @etraut-openai
- #50503 Use Enter to accept transcript Find results and Escape to cancel @fcoury-oai
- #50504 Center TUI confirmations over their retained backdrop @bc-openai
- #50505 Keep Command Center selection adjacent after task removal @bc-openai
- #50507 Record Windows sandbox service stop diagnostics @zm-oai
- #50510 Require GovCloud guidance acknowledgment after Bedrock setup @jackz100
- #50516 Add scenario coverage for remote
/compactcontext preservation @pakrym-oai - #50525 Reject unknown TUI keys in strict config validation @etraut-openai
- #50531 Persist realtime transcript tails before closure without inference @guinness-oai
- #50536 Keep shared MCP types stable in Code Mode exec descriptions @aibrahim-oai
- #50540 Send incremental tool catalog updates in Responses Lite @pakrym-oai
- #50546 Keep MCP resource helpers available in code mode @aibrahim-oai
- #50555 Skip daemon auto-start for Windows-mounted WSL homes @etraut-openai
- #50558 Avoid reading the current directory when resolving absolute paths @etraut-openai
- #50559 Distinguish daemon release identity from executable contents @etraut-openai
- #50562 Keep Code Mode tool discovery guidance stable across catalog changes @aibrahim-oai
- #50564 Allow transcript selection and copying while bottom modals are open @etraut-openai
- #50687 Keep third-party tools deferred in strict Code Mode Only @aibrahim-oai
- #50695 Preserve local Markdown link labels in the TUI @bc-openai
- #50700 Let the transport create the Windows remote-control socket directory @etraut-openai
- #50720 Decode Windows Terminal's mapped Shift+Enter sequence @bc-openai
- #50727 Show model and reasoning effort near the top of task details @etraut-openai
- #50741 Keep environment-backed tools exposed across readiness changes @won-openai
- #50756 Show unavailable slash commands when searched in side conversations @bc-openai
- #50764 Allow
/archivewhile a turn is running @bc-openai - #50781 Restrict TUI MCP startup notifications to owned threads @etraut-openai
- #50782 Retry Windows daemon release publication on transient file locks @etraut-openai
- #50786 Remember Command Center grouping across launches @bc-openai
- #50788 Open slash commands from empty drafts in Vim Normal mode @bc-openai
- #50802 Fall back to mklink when Windows daemon junction updates are denied @etraut-openai
- #50803 Use the managed daemon for eligible remote-control launches @etraut-openai
- #50804 Preserve review lifecycle ordering on failure @etraut-openai
- #50808 Prune TUI snapshots and consolidate behavior tests @etraut-openai
- #50811 Honor server reasoning summary defaults in new TUI threads @etraut-openai
- #50913 Use server model defaults for connected TUI fresh starts @etraut-openai
- #50940 Recover malformed Windows deny-read ACL state safely @zm-oai
- #50962 Gate stable environment tool exposure behind a feature flag @aibrahim-oai
- #50964 Track inference tool changes in turn analytics @aibrahim-oai
- #50977 Isolate tracing in the strict third-party tool deferral test @alishobeiri-oai
- #51061 Gate Guardian continuation tests on classifier request capture @jif-oai
- #51063 Honor prior cancellation before starting Codex delegates @jif-oai
- #51064 Ignore stale refresh responses in agents overview tests @jif-oai
- #51065 Scope Guardian V2 response timing to snapshot sampling @swastik-oai
- #51067 Use issuing-step context for Guardian MCP elicitation reviews @jif-oai
- #51070 Preserve trusted-tool context in Guardian Decisions requests @swastik-oai
- #51117 Install full context in compaction replacement history @pakrym-oai
- #51119 Clarify incremental tool namespace updates in Responses Lite @akira-oai
- #51126 Add promise settlement streaming helpers to code mode @cconger
- #51133 Allow Guardian Decisions to fall back to
OPENAI_API_KEY@swastik-oai - #51137 Recover Guardian reviews from parent checkpoints @felixxia-oai
- #51139 Force fresh Guardian sessions for parent-checkpoint recovery @felixxia-oai
- #51140 Isolate Guardian checkpoint recovery flags per review attempt @felixxia-oai
- #51156 Send base instructions as Responses input messages @pakrym-oai
- #51157 Enforce required environment skills before model inference @anp-oai
- #51158 Sign the PowerShell installer in Windows releases @chess-oai
- #51184 Remove obsolete Guardian thread-context enables from tests @felixxia-oai
- #51185 Retry transient gRPC code-mode session admission failures @cassirer-openai
- #51186 Prevent stable release pointers from moving backward @andrewgu-oai
- #51188 Record base instructions in incremental tool history @pakrym-oai
- #51191 Clean up Unix app-server control-socket startup lock files @etraut-openai
- #51192 Wait for SIGCONT when resuming the TUI @etraut-openai
- #51193 Test thread archiving before the first turn @btraut-openai
- #51194 Add browser extension request headers to config requirements @jn-openai
- #51198 Allow concurrent release builds while serializing publication @andrewgu-oai
- #51200 Upgrade Bazel to 9.2.0 and refresh the module lockfile @anp-oai
- #51202 Distinguish namespace removals in incremental tool updates @akira-oai
- #51203 Make apply_patch preserve line endings unconditionally @charliemarsh-oai
- #51206 Record initialization analytics for resumed subagents @peilin-openai
- #51207 Gate CLI Daybreak controls and selection behind an opt-in feature @julee-oai
- #51209 Add ranked tool discovery to JavaScript code mode @zamoshchin-openai
- #51211 Reject sandbox-writable bubblewrap executables from PATH @viyatb-oai
- #51215 Measure raw MCP tool catalog sizes in telemetry @owenlin0
- #51217 Preserve review targets and scope misalignment continuation metadata @yunhan-wei
- #51220 Honor the OTLP metrics temporality preference @daniel-oai
- #51221 Separate environment requests from runtime selections @anp-oai
- #51223 Remove legacy personality template metadata @rhan-oai
- #51230 Make session lookup pagination stable and report listing failures @etraut-openai
- #51235 Remove default model labels from TUI model pickers @etraut-openai
- #51241 Add a partial answer message phase @rb-oai
- #51249 Handle partial answers consistently across agent workflows @rb-oai
- #51253 Enforce Fast and Ultra Fast policies independently @dpatel-oai
- #51256 Start the Windows sandbox service during registered Core setup @zm-oai
- #51257 Fix installer checksum verification under Windows PowerShell @zm-oai
- #51260 Handle partial answers in realtime routing and thread search @rb-oai
- #51329 Remove partial-history subagent forks @jif-oai
- #51330 Measure total Guardian approval decision duration @jif-oai
- #51331 Track sub-agent result delivery outcomes @jif-oai
- #51332 Record multi-agent wait duration by outcome @jif-oai
- #51333 Record the multi-agent version in turn analytics @jif-oai
- #51334 Count Guardian denial-limit interruptions in telemetry @jif-oai
- #51335 Update collaboration snapshots for full-history fork instructions @jif-oai
- #51347 Measure shell snapshot use and wait time per command @jif-oai
- #51350 Allow larger shell snapshots when replaying from a file @jif-oai
- #51355 Add bounded diagnostics for agent spawn failures @jif-oai
- #51378 Keep Guardian v2 WebSocket pools warm with concurrent replenishment @jif-oai
- #51391 Make URLs in asynchronous question titles clickable @charliemarsh-oai
- #51396 Let late low-risk scores complete pending Guardian reviews @jif-oai
- #51400 Prevent later Guardian scores from releasing earlier pending reviews @jif-oai
- #51402 Preserve turn attribution across recovery and compaction @eddie-openai
- #51407 Protect ripgrep lookup during Linux sandbox construction @viyatb-oai
- #51411 Suppress repeated image paste presses in legacy terminals @etraut-openai
- #51415 Expose and persist turn lineage across the app server @eddie-openai
- #51419 Preserve turn attribution when queued mail wakes durable sleep @eddie-openai
- #51420 Finish idle thread unloads after slow shutdown @jif-oai
- #51421 Include root turn IDs in host-owned Apps tool calls @eddie-openai
- #51422 Accept environment requests at thread and turn settings boundaries @anp-oai
- #51425 Skip stable installer alias publishing for prereleases @zsol-openai
- #51426 Remove the Bazel JVM override for Windows ARM64 voice builds @anp-oai
- #51427 Prevent invalidated wakeups from starting a turn @jif-oai
- #51433 Show hook status messages as titles in the hooks browser @abhinav-oai
- #51439 Preserve clickable URLs in TUI approval headers @charliemarsh-oai
- #51440 Honor Retry-After in WebSocket error events @anp-oai
- #51441 Fix core integration tests for updated turn APIs @anp-oai
- #51449 Make URLs clickable in TUI user input questions @charliemarsh-oai
- #51450 Make URLs clickable in MCP elicitation prompts @charliemarsh-oai
- #51451 Make URLs in the TUI warnings viewer clickable @charliemarsh-oai
- #51452 Make banner URLs clickable across wrapped lines @charliemarsh-oai
- #51457 Preserve status usage hyperlinks when the URL wraps @charliemarsh-oai
- #51458 Make URLs clickable in user verification prompts @charliemarsh-oai
- #51459 Preserve wrapped help links in Windows sandbox prompts @charliemarsh-oai
- #51460 Retry realtime sideband attachment while an existing call activates @bullman-oai
- #51463 Record resolved model and reasoning effort in sub-agent activity @sdcoffey
- #51465 Add an optional JSON transcript format for Guardian @felixxia-oai
- #51466 Keep Guardian transcript records structured through budget recovery @felixxia-oai
- #51467 Keep submission logs useful without exposing payloads @chess-oai
- #51470 Raise the managed app-server file descriptor limit on Unix @etraut-openai
- #51471 Preserve clickable URLs in pending input previews @charliemarsh-oai
- #51472 Preserve clickable URLs in TUI selection rows @charliemarsh-oai
- #51473 Preserve URL destinations in wrapped hook details @charliemarsh-oai
- #51480 Preserve tool declaration mode across resumed context windows @pakrym-oai
- #51482 Use PathUri for skill identity and path matching @anp-oai
- #51483 Add correlated, credential-free rendezvous connection diagnostics @alexi-openai
- #51491 Classify executor capability root ownership independently of parsing @stevenlee-oai
- #51492 Remove obsolete fields from persisted turn context @pakrym-oai
- #51493 Bind capability roots to environment selections @anp-oai
- #51499 Load rollout history on a single blocking worker @charliemarsh-oai
- #51500 Add shared task pinning to the agent command center @etraut-openai
- #51502 Bound relay connection attempts and handle pongs during blocked writes @alexi-openai
- #51503 Expose selected environments to MCP contributors @mtsui-oai
- #51510 Preserve live TUI settings when configuration reloads fail @imac-oai
- #51511 Fix Windows 10 drive-letter opens for no-follow filesystem operations @zm-oai
- #51512 Align Windows sandbox temp permissions with the child environment @zm-oai
- #51515 Expose detailed agent tree shutdown failure reports @keitht-openai
- #51517 Pass thread persistence intent to attachment uploads @kchainani-oai
- #51525 Preserve the CLI MXC preference in executor config reads @zm-oai
- #51527 Ignore ripgrep configuration when expanding sandbox deny globs @viyatb-oai