Codex:GitHub Releases· github-actions[bot]·· 6 小时前AI 评分44
Codex 0.169.0 发布:终端工作区支持多侧聊标签页
0.169.0
AI 导读
Codex 0.169.0 为可选终端工作区加入多侧聊标签页,支持键鼠切换,并可在重启后恢复本地侧聊记录。该版本还支持从终端添加或编辑自定义模型提供商,macOS 和 Linux 上可开启 Cloud 连接发送图片、选择模型与推理强度。
正文 · 原文
New Features
- The opt-in terminal workspace supports multiple side-chat tabs. Switch between them with the keyboard or mouse, and reopen saved local side chats after restarting Codex. (#59784, #60152, #60181)
- Search older tasks from the agent command center by name, prompt preview, or working directory. (#60286)
- Turn on Collapse turn details in the full-screen transcript to fold completed activity beneath each prompt while keeping answers visible and tool output searchable. (#60554, #60555, #60556, #60557)
- Add or edit custom model providers from the terminal. With custom gateway onboarding enabled, you can create a provider during sign-in and use a device code for supported gateways over SSH or without a local browser. (#59779, #60009, #60186, #60486, #60662)
- Press
Ctrl+Sin the terminal report editor to save a diagnostic ZIP locally, even when uploads are disabled. (#60542) - With the opt-in Cloud connection on macOS and Linux, send images, choose a model and reasoning effort, and archive or restore Cloud conversations from the terminal. (#59828, #60061, #60635, #60651)
Bug Fixes
codex execkeeps project configuration and MCP servers disabled in untrusted directories, even with--sandbox workspace-write. Use--trustwithcodex execorcodex reviewto explicitly save project trust. (#60041)- Yes, clear context and implement now hands the full approved plan to the fresh session and keeps the current session open if the handoff fails. (#60763)
- Fixed Windows sandbox handling for quoted
cmd.exepaths and for PowerShell sessions whose working directory has an unreadable parent. (#60624, #60647) - Pasted images on macOS retain their intended orientation and use native PNG or JPEG clipboard data when available. (#60455)
- The terminal no longer stays busy waiting for MCP servers that a shared app server did not report. (#60280, #60622)
- Interrupted turns now close cleanly, and delayed aborts or file approval cancellations no longer interrupt a later turn. (#59910, #60700)
Documentation
- Updated the
openai-docsskill to focus on Codex and ChatGPT Work questions and first-time API setup, with dedicated guidance for configuring Codex across a team. (#59944, #59949) - Documented how app-server clients can list models or authorize a gateway for a configured provider without changing the default provider. (#59776, #59819)
Chores
- Updated bundled SQLite to 3.54 to pick up write-ahead log fixes. (#60432)
- Plugin marketplace upgrades can reuse Git objects already on disk, reducing repeat downloads. (#60528)
Changelog
Full Changelog: rust-v0.168.0...rust-v0.169.0
- #59739 Add a sidebar chooser and floating workspace shortcut panels @fcoury-oai
- #59743 Forward explicit cyber access programs with header authentication @jamy-OAI
- #59745 Repair legacy Windows sandbox bin permissions for SYSTEM @zm-oai
- #59746 Add typed Cloud user-message submission receipts @bc-openai
- #59749 Use runtime authentication for OpenAI MCP and app requests @cooper-oai
- #59750 Stop Noise relay recovery on rejected executor credentials @richardopenai
- #59752 Configure the Opus Bazel patch and isolate auth tests @bkotsopoulos
- #59754 Enforce host-required cyber access programs per thread @jamy-OAI
- #59759 Update WebSocket dependency forks @charliemarsh-oai
- #59767 Add sidebar tabs and nonblocking side-chat creation @fcoury-oai
- #59768 Stop prefetching plugin discovery at app-server startup @zamoshchin-openai
- #59769 Reuse decoded WebSocket event kinds in telemetry @charliemarsh-oai
- #59770 Add shared service-tier support for host-owned agents @rhan-oai
- #59772 Remove the legacy sandbox policy constructor @ioanbudea-OAI
- #59774 Remove the legacy Seatbelt command wrapper @ioanbudea-OAI
- #59776 Allow selecting a configured provider in
model/list@abhinav-oai - #59778 Expose acceptance metadata and code-cell links in rollout traces @tz-openai
- #59779 Add provider configuration editing to the TUI @alexsong-oai
- #59780 Enable safe identical code folding for x86-64 musl releases @dkovalenko-oai
- #59783 Tie gRPC code-mode connection lifetime to live sessions @frantic-openai
- #59784 Support multiple side chats in the TUI sidebar @fcoury-oai
- #59785 Decouple message lifecycle state from model-visible item IDs @euroelessar
- #59787 Support credential export commands for gateway authentication @alexsong-oai
- #59789 Render delegated thread messages as Markdown in the TUI @bc-openai
- #59792 Centralize managed proxy preparation and sandbox routing @viyatb-oai
- #59793 Support update-boundary paging across forked thread histories @owenlin0
- #59794 Check extension budgets before model generation requests @rhan-oai
- #59795 Support optional thread IDs in hosted file uploads @lt-oai
- #59805 Pack relative relocations in x86-64 musl release builds @dkovalenko-oai
- #59816 Retry gateway credential exports after unauthorized responses @alexsong-oai
- #59817 Handle TUI message submission receipts and preserve uncertain drafts @bc-openai
- #59819 Allow provider selection for gateway OAuth reads and logins @abhinav-oai
- #59822 Add device-code authorization for gateway OAuth @smurching-oai
- #59823 Bind runtime auth to the provider's selected credential source @cooper-oai
- #59824 Enable resizing the sidebar chooser @fcoury-oai
- #59826 Preserve client metadata through queued submissions @eddie-openai
- #59828 Add a gated Cloud backend to the TUI @bc-openai
- #59832 Add opt-in incremental tools for regular OpenAI Responses @akira-oai
- #59842 Carry targeted moderation decisions on final-answer messages @psachdeva-oai
- #59887 Remove incomplete prereleases after asset upload failures @jif-oai
- #59891 Bound REPL provenance costs in elastic context preparation @jif-oai
- #59893 Recompute the approval reviewer when switching models @jif-oai
- #59902 Keep verified question/answer records whole under elastic budgets @jif-oai
- #59903 Delete incomplete prereleases by release ID @jif-oai
- #59905 Validate implicit API keys for Guardian Decisions @jif-oai
- #59908 Avoid full image decoding for original-detail context estimates @jif-oai
- #59910 Scope file change approval cancellation to the requesting turn @jif-oai
- #59913 Resolve Guardian policy from the reviewed thread's catalog @jif-oai
- #59914 Bind Guardian Decisions requests to their credential source @jif-oai
- #59928 Improve sidebar chat selection and tab hover highlighting @fcoury-oai
- #59933 Use permission profiles for protected-model startup downgrades @ioanbudea-OAI
- #59944 Narrow openai-docs to product Q&A and first-time API setup @provencher-oai
- #59949 Route broad Codex setup questions through self-knowledge guidance @vb-openai
- #59954 Resolve skill display names in read and installations tools @jif-oai
- #59955 Bump
ignoreto0.4.30@iceweasel-oai - #59958 Expose model metadata from each thread's catalog and settings @seanh-oai
- #59960 Skip the network denial grace period when remote decisions drain @jif-oai
- #59963 Normalize turn context permissions to a required profile @ioanbudea-OAI
- #59969 Reduce contention in thread writer lock coordination @dkovalenko-oai
- #59972 Fix Opus header installation with relative symlink inputs @bc-openai
- #59973 Enable gRPC and host output truncation by default for Code Mode @seanh-oai
- #59974 Test command completion before network denial grace expires @jif-oai
- #59980 Test rejection of PNGs with readable dimensions but corrupt pixels @fjord-oai
- #59983 Render typed prompts as Markdown in the TUI @bc-openai
- #59987 Resolve startup models using thread creation options @seanh-oai
- #59988 Add inherited styling to TUI display trees @joesavona
- #59991 Preserve app invocation context across MCP tool refreshes @fahad-OAI
- #59993 Add fixed read views for local message boards @felixxia-oai
- #59994 Add read-only evidence retrieval tools for Guardian reviewers @felixxia-oai
- #59995 Add subscription tools for Guardian reviewers @felixxia-oai
- #59998 Add atomic bulk channel subscription updates @felixxia-oai
- #59999 Add model-driven Guardian channel selection @felixxia-oai
- #60000 Plan Guardian evidence delivery in source order @felixxia-oai
- #60001 Add bounded original-evidence delivery for Guardian reviewers @felixxia-oai
- #60002 Decouple Guardian retrieval from local message-board handles @felixxia-oai
- #60003 Apply runtime authentication to realtime connections @cooper-oai
- #60004 Expose ChatGPT user IDs in
account/readresponses @dand-oai - #60006 Reduce SQLite write overhead for thread activity and history @jonluca
- #60007 Start cloud threads with the local GitHub project @bc-openai
- #60008 Refactor TUI clipboard and composer input handling @bc-openai
- #60009 Add custom gateway selection to TUI sign-in @alexsong-oai
- #60010 Add a shared Windows Bazel setup action @dkovalenko-oai
- #60011 Adapt multi-agent mode guidance for hosted tools @rhan-oai
- #60014 Honor managed runtime authentication modes and expand coverage @cooper-oai
- #60017 Disable bundled skills in the prompt-prefix comparison test @felixxia-oai
- #60018 Propagate turn triggers to usage analytics events @chrisdong-oai
- #60019 Add theme-aware semantic colors to extension UI trees @joesavona
- #60020 Strip terminal commands from UI tree strings @joesavona
- #60021 Normalize inline UI tree text across styled leaves @joesavona
- #60022 Separate UI tree preparation from line rendering @joesavona
- #60026 Add multiline layout and row wrapping to UI trees @joesavona
- #60027 Keep configured status lines on the native renderer @joesavona
- #60028 Reuse prepared UI trees for footer rendering @joesavona
- #60029 Render UI trees directly into terminal buffers @joesavona
- #60031 Unify TUI status line layout for extension content @joesavona
- #60032 Allow extension status content to use multiple footer rows @joesavona
- #60034 Omit sensitive process inputs from spawn trace logs @etraut-openai
- #60035 Fix authentication for git-attribution settings requests @cooper-oai
- #60037 Preserve MCP sharing discovery when deferring cached stdio startup @charliemarsh-oai
- #60038 Surface MCP server startup errors when preparing cached tool calls @charliemarsh-oai
- #60039 Add opt-in lazy startup for cached stdio MCP servers @charliemarsh-oai
- #60040 Restrict legacy incremental tools to Amazon Bedrock providers @akira-oai
- #60041 Require explicit project trust in non-interactive runs @etraut-openai
- #60042 Centralize Windows sandbox filesystem override resolution @viyatb-oai
- #60046 Derive MCP network policy and preserve saved denials @viyatb-oai
- #60048 Allow plugin starter prompts up to 512 characters @karenwong-openai
- #60049 Preserve model catalogs when starting child agents @evanz-oai
- #60055 Reauthenticate runtime requests before reusing WebSocket access @cooper-oai
- #60061 Support Cloud image messages and editable draft handoffs @bc-openai
- #60064 Use thread runtime auth for Guardian Decisions and memory quota checks @cooper-oai
- #60067 Ensure side-chat policy reaches the first model request @fcoury-oai
- #60073 Use runtime authentication for remote-control requests @cooper-oai
- #60075 Support asynchronous host service-tier reads and acceptance @rhan-oai
- #60080 Allow asynchronous model request budget checks @rhan-oai
- #60082 Fetch account security reminders through app-server @cooper-oai
- #60096 Stop retrying terminal runtime authentication denials @cooper-oai
- #60101 Use runtime authentication for Analytics requests @cooper-oai
- #60118 Buffer payload JSON reads during rollout trace replay @tz-openai
- #60122 Preserve code mode dispatch errors in rollout traces @tz-openai
- #60152 Persist local workspace side chats and add tab close controls @fcoury-oai
- #60157 Add support for incremental code mode tool definitions @akira-oai
- #60163 Wire incremental exec tool updates into Code Mode sessions @akira-oai
- #60172 Preserve display instructions in answer moderation @psachdeva-oai
- #60173 Test exec catalog preservation across session and compaction changes @akira-oai
- #60177 Add metrics for incremental exec catalog updates @akira-oai
- #60180 Attach typed punctuation to completed skill mentions @bc-openai
- #60181 Add keyboard and mouse navigation for sidebar tabs @fcoury-oai
- #60186 Allow creating custom providers during sign-in @alexsong-oai
- #60188 Allow model overrides for incremental Code Mode tool messages @akira-oai
- #60190 Expose agent tree IDs and environment removal @richardopenai
- #60206 Increase Bazel core unit test shards from 8 to 16 @seanh-oai
- #60270 Warn when a CLI model is absent from the ChatGPT model list @etraut-openai
- #60271 Keep the agents overview open when there is no chat to return to @etraut-openai
- #60280 Fix MCP startup tracking when attaching to shared app servers @charliemarsh-oai
- #60286 Search task history from the command center @etraut-openai
- #60309 Defer executor readiness when prewarming a selected project @bc-openai
- #60319 Improve side-chat discovery and navigation in the TUI @fcoury-oai
- #60320 Include older itemless Cloud failures in full transcripts @bc-openai
- #60327 Suppress stale cloud stream disconnects after reopening a thread @bc-openai
- #60335 Avoid duplicate assistant messages when resuming Cloud threads @bc-openai
- #60342 Treat goal objectives as untrusted context @dylan-hurd-oai
- #60389 Include Codex Apps configuration in cloud prewarm requests @bc-openai
- #60390 Allow deferring plain-text MCP output in thread item listings @btraut-openai
- #60391 Simplify Guardian's post-denial approval guidance @olliem-oai
- #60414 Enable model catalog discovery with gateway OAuth @smurching-oai
- #60416 Keep fitting URLs intact in fullscreen Markdown transcripts @etraut-openai
- #60418 Let terminal status become done while background terminals run @etraut-openai
- #60423 Expose deferred MCP servers in resource listings @charliemarsh-oai
- #60432 Upgrade bundled SQLite to 3.54 for WAL fixes @ioanbudea-OAI
- #60433 Bind API workload identity source reuse to session claims @cooper-oai
- #60434 Reset app-server turn summaries when a turn starts @cooper-oai
- #60435 Dismiss the model switch prompt when account usage recovers @etraut-openai
- #60436 Revalidate request auth ownership after budget checks @won-openai
- #60443 Support cancellation and deadlines for realtime attachments @parabolala
- #60454 Update OpenSSL Rust dependencies @dkovalenko-oai
- #60455 Prefer native clipboard images on macOS and honor image orientation @dkovalenko-oai
- #60461 Honor permission grant scopes in executor capability discovery @dkovalenko-oai
- #60462 Route TUI question answers through Cloud message admission @bc-openai
- #60466 Keep thread storage available when diagnostic logs fail @dkovalenko-oai
- #60472 Serialize default thread permissions as a permission profile @ioanbudea-OAI
- #60473 Respect error retry policy during local compaction @charliemarsh-oai
- #60475 Stop retrying explicit invalid-workspace errors @charliemarsh-oai
- #60476 Treat access program denials as terminal errors @charliemarsh-oai
- #60479 Treat content policy violations as terminal errors @charliemarsh-oai
- #60480 Treat workspace access denials as terminal errors @charliemarsh-oai
- #60481 Treat invalid access program stream errors as terminal @charliemarsh-oai
- #60482 Handle context length errors consistently across response transports @charliemarsh-oai
- #60486 Add device authorization to app-server gateway OAuth @smurching-oai
- #60487 Enable untrusted context tool outputs by default @akira-oai
- #60488 Remove the Xcode 26.4 MCP elicitation compatibility workaround @jameswt-oai
- #60489 Honor feature overrides when starting the app-server daemon @iceweasel-oai
- #60492 Add local-only Claude Code skill migration @aramaraju-oai
- #60496 Preserve typed gRPC code-mode session admission errors @seanh-oai
- #60498 Unify Guardian context preparation across reviewers @ioanbudea-OAI
- #60500 Derive sandbox telemetry labels directly from permission profiles @ioanbudea-OAI
- #60505 Trace MCP refresh causes and plugin metadata changes @charliemarsh-oai
- #60506 Preserve MCP trace context when tracing is disabled @joesavona
- #60507 Use hermetic LLVM for Windows MSVC Bazel builds @zbarsky-openai
- #60511 Treat inference hook denials as terminal errors @ccui-oai
- #60513 Record an MCP refresh reason for session permission grants @charliemarsh-oai
- #60517 Route sandbox CLI launches through the shared sandbox manager @viyatb-oai
- #60519 Handle unfinished tool calls in restored history @etraut-openai
- #60522 Fragment large Responses WebSocket messages into bounded frames @charliemarsh-oai
- #60523 Add policy-checked TCP upstream tunneling for SOCKS @viyatb-oai
- #60524 Encapsulate thread metadata construction @ioanbudea-OAI
- #60525 Preserve first-party catalog display order in app-server model lists @dpatel-oai
- #60526 Disable Daybreak when the selected model lacks access @jamy-OAI
- #60528 Reuse installed Git objects when upgrading marketplaces @charliemarsh-oai
- #60542 Add local diagnostic ZIP saves to the TUI @smurching-oai
- #60554 Add optional tool call summaries to the full-screen transcript @etraut-openai
- #60555 Extend output-free transcript summaries to more tools @etraut-openai
- #60556 Group consecutive tool calls in the full-screen conversation @etraut-openai
- #60557 Collapse completed turn activity beneath transcript prompts @etraut-openai
- #60558 Discard opening prompts when side chat creation fails @etraut-openai
- #60559 Preserve inherited previews for paginated thread forks @etraut-openai
- #60560 Avoid periodic wakeups in idle Windows file watchers @chess-oai
- #60568 Add an OpenSSH ProxyCommand mode to
codex tcp-tunnel@apanasenko-oai - #60574 Allow searching persisted attached threads @btraut-openai
- #60578 Add published OAuth metadata discovery to the RMCP client @vishnu-oai
- #60599 Keep the TUI responsive while opening saved side chats @fcoury-oai
- #60613 Clarify safety recourse messaging and add a reporting option @xiaohk
- #60617 Support incremental tool declarations on GCP @akira-oai
- #60620 Allow sampling in-progress turns with
thread/sample@keyz - #60622 Use app-server MCP configuration and startup events in the TUI @etraut-openai
- #60624 Preserve script quotes in Windows sandbox cmd invocations @malsamiri-oai
- #60635 Support archiving and restoring cloud threads @bc-openai
- #60637 Show pending key chords in a shared floating shortcut guide @fcoury-oai
- #60638 Honor read-only MCP tool hints in automatic approval @cazhang-oai
- #60639 Refresh Apps tools outside the MCP runtime gate @dkovalenko-oai
- #60644 Keep interrupts responsive during host service-tier updates @rhan-oai
- #60645 Update the safety consent test for the current dialog @ambrosino-oai
- #60646 Use trusted Guardian templates for managed policies @won-openai
- #60647 Restore PowerShell's working directory in the MXC sandbox @zm-oai
- #60651 Enable model and reasoning effort selection for Cloud conversations @bc-openai
- #60655 Support environment updates in app-server settings APIs @sayan-oai
- #60662 Support gateway device-code sign-in in headless TUI sessions @smurching-oai
- #60663 Defer exec-server sandbox preparation to the execution host @viyatb-oai
- #60665 Add a content helper for forwarding MCP blocks in Code Mode @cconger
- #60669 Skip submodule worktree scans when checking repository changes @dhavalkapil-oai
- #60670 Initialize Guardian evidence cursors from thread history state @felixxia-oai
- #60671 Add sign-only mode and tighten macOS signing verification @tarunoai
- #60673 Preserve agent message deliveries in rollout traces @cassirer-openai
- #60675 Avoid redundant reads and screen clears when switching side chats @fcoury-oai
- #60680 Keep TUI status content separate from composer hints @joesavona
- #60681 Prioritize draft space when allocating composer footer rows @joesavona
- #60682 Wrap built-in TUI status lines within the footer row budget @joesavona
- #60683 Fit composer footer hints to available terminal space @joesavona
- #60695 Add a Signer Service backend for macOS notarization @tarunoai
- #60697 Limit MCP product attribution to configured REPL-backed calls @trpcic-openai
- #60700 Finalize aborted turns and ignore unrelated late aborts @etraut-openai
- #60702 Centralize permission config selection and legacy translation @ioanbudea-OAI
- #60708 Canonicalize Windows sandbox homes and migrate saved junction paths @zm-oai
- #60721 Gate plugin recommendation cache warming on feature flags @adaley-openai
- #60730 Apply session app overrides during MCP config refresh @jameswt-oai
- #60732 Allow model-facing ID sequences to resume from allocated IDs @euroelessar
- #60735 Preserve file-backed audio in tool outputs @hung-oai
- #60746 Add a Git credential helper for existing Codex logins @ccy-oai
- #60748 Label seed arguments in the model-facing ID recovery test @bc-openai
- #60749 Capture saved Daybreak preferences for native helpers @jamy-OAI
- #60753 Add snapshot coverage for history and notes tool contracts @euroelessar
- #60757 Use typed context window IDs throughout thread persistence @euroelessar
- #60759 Fix Unicode caseless matching in thread search @etraut-openai
- #60763 Hand off approved plans through attachments in fresh sessions @dylan-hurd-oai
来源:Codex:GitHub Releases · github.com