mirror of
https://github.com/openai/codex.git
synced 2026-10-18 17:18:52 +00:00
- Choose an optional fullscreen UI with `/tui` for your next launch, including transcript search, mouse selection, and right-click copying. (#46732, #46734, #46883, #46895) - Voice conversations are enabled by default, with an F8 toggle, a `/voice settings` picker, and bundled audio runtimes for Linux and Windows. (#44921, #46071, #44622, #44714, #44922) - Explore account usage, token totals, and plugin and skill activity through the `/usage` analytics dashboard. (#45764, #45769) - Filter tasks by status and create worktree sessions from the agent command center; worktree support is now enabled by default. (#46839, #45276, #44870) - Customize the terminal with six new themes and view supported Mermaid diagrams and display equations directly in responses. (#46504, #46054, #45612) - Update the local background server through `/daemon`, or bypass it with `--no-daemon`. (#45854, #46088) ## Bug Fixes - Preserve streamed answers and plans when turns fail, are interrupted, or receive subagent completion events. (#45549, #46867) - Fix clipboard forwarding in tmux and SSH sessions and preserve tab indentation when terminals send pasted text as individual keystrokes. (#45457, #45454) - Restore Plan mode when resuming sessions and preserve thread identity and settings when editing earlier prompts. (#45519, #45845) - Recover login through system proxies and refresh MCP credentials when OAuth discovery returns a 503 error. (#46562, #44636) - Prevent speech from being dropped during playback pauses or bursts of incoming audio. (#46880) - Close sandbox isolation gaps involving inbound Windows connections, privileged Linux/macOS sockets, and writes through read-only macOS file handles. (#44639, #45984, #46500) ## Documentation - Clarify that deprecated `friendly` and `pragmatic` personality settings no longer select response styles. (#45809) - Explain how `?` matches a single character in network proxy allow and deny patterns. (#46027) ## Chores - Update bundled TLS dependencies, including OpenSSL 3.6.4 for Linux musl builds. (#45149, #45489) ## Changelog Full Changelog: https://github.com/openai/codex/compare/rust-v0.155.0...rust-v0.156.0 - #44606 Preserve whole diagnostic attachments and report incomplete uploads @chess-oai - #44611 Preserve root turn attribution in turn-start events @owenlin0 - #44613 Enable user verification for local Codex Desktop sessions @riley-oai - #44615 Treat non-interactive dumb terminals as warnings in `codex doctor` @etraut-openai - #44616 Simplify enterprise OAuth login helpers and expand callback tests @nicksteele-oai - #44617 Invalidate cached Guardian approvals for unscored permission widening @jif-oai - #44619 Allow discarded code mode tool responses to be garbage collected @jif-oai - #44620 Support temporary and minimal filesystem grants in MXC @iceweasel-oai - #44622 Add `/voice settings` to choose a voice for future conversations @bc-openai - #44626 Add bounded environment transport for MXC launch requests @iceweasel-oai - #44628 Expose session analytics state in Responses turn metadata @marksteinbrick-oai - #44629 Add manual callback input to MCP OAuth login @willwang-openai - #44631 Focus the task list when reopening the agent command center @etraut-openai - #44636 Recover OAuth metadata discovery from 503 responses via OIDC @malsamiri-oai - #44639 Block non-loopback inbound traffic for the Windows offline sandbox @viyatb-oai - #44646 Honor thread analytics opt-outs when using shared clients @priyanshusingh-de - #44650 Enforce managed model provider selection and definitions @alexsong-oai - #44651 Keep command center errors visible and preserve drafts @etraut-openai - #44654 Preserve missing environment variable diagnostics in Codex Doctor @etraut-openai - #44655 Honor thread-level plugin exclusions across runtime capabilities @mzeng-openai - #44656 Attribute turn metrics to the models used during the turn @eternal-openai - #44658 Keep Windows sandbox private desktops alive across helper exits @chess-oai - #44659 Preserve turn triggers across delegated agent work @joeytrasatti-openai - #44661 Trace tool call receipt, result readiness, and code-mode dispatch @anp-oai - #44666 Honor system reduced-motion preferences in the TUI @imac-oai - #44669 Resolve filesystem denials with explicit path context @seanh-oai - #44670 Restrict login setup redirects to known platform origins @hintz-openai - #44671 Keep voice sessions alive through mute and audio backlog @bc-openai - #44675 Refresh global instructions at model-request boundaries @vkg-oai - #44676 Resolve permission profiles with explicit execution-host path context @seanh-oai - #44691 Warn about ignored configuration settings @andrewgu-oai - #44693 Preserve selected profile settings over managed new-thread defaults @alexr-oai - #44694 Include the Windows sandbox service in release artifacts @johnl-oai - #44701 Add a provider for thread-scoped instructions @vkg-oai - #44711 Return to the command center after session cancellation or deletion @etraut-openai - #44714 Bundle Linux voice runtimes and improve audio reliability @bc-openai - #44732 Clarify folder trust prompts and add restricted widget support @etraut-openai - #44742 Preserve editor yanks across new sessions and thread switches @bc-openai - #44744 Make archive confirmation number shortcuts act immediately @etraut-openai - #44746 Check folder trust after resolving the startup destination @etraut-openai - #44747 Update `quinn-proto` and allow the pinned H3 Git source @richardopenai - #44749 Preserve voice caption order when replaying TUI history @bc-openai - #44752 Render Markdown in agent overview task details @etraut-openai - #44755 Check folder consent before creating or resuming TUI tasks @etraut-openai - #44814 Test approved command execution with managed unified exec disabled @jif-oai - #44826 Expose advertised MCP server capabilities in status responses @gpeal - #44832 Add trusted enterprise MCP auth configuration @nicksteele-oai - #44857 Add consistent theme-based thread colors across the TUI @etraut-openai - #44862 Preserve parent cache affinity for ephemeral forks @jif-oai - #44865 Scope code mode callback delegates to individual executions @abhinav-oai - #44866 Preserve originating context for yielded code-mode tool calls @abhinav-oai - #44867 Preserve originating budgets for code mode notifications @abhinav-oai - #44870 Enable worktrees by default and clarify local daemon errors @bc-openai - #44872 Add managed network policy support to the Windows MXC sandbox @iceweasel-oai - #44877 Return public key metadata from user verification enrollment @riley-oai - #44879 Fade Astra composer stars and stabilize cursor redraws @imac-oai - #44883 Reject token-budget history notes for unsupported starting models @jif-oai - #44893 Expose available access programs in model discovery @faizan-oai - #44903 Wire up the native Windows MXC helper entry point @iceweasel-oai - #44905 Expose disabled plugin settings in the app-server API @mzeng-openai - #44915 Remove the deprecated `thread/rollback` API @owenlin0 - #44921 Enable TUI voice conversations by default @bc-openai - #44922 Bundle native voice runtimes in Windows releases @bc-openai - #44924 Refresh the speaker format when restarting voice output @bc-openai - #44925 Accept voice response audio before captions on quiet turns @bc-openai - #44928 Preserve voice meter history through quiet samples @bc-openai - #44930 Embed friendly instructions in bundled GPT-5.4 and GPT-5.5 @rhan-oai - #44931 Stop setting `YARN_NO_PROXY` in the managed proxy environment @viyatb-oai - #44932 Unify context snapshots and group requests into windows @pakrym-oai - #44933 Remove Windows world-writable scans and warnings from the TUI @etraut-openai - #44934 Add scenario snapshots for remote compaction and Code Mode tools @pakrym-oai - #44935 Remove personality selection from the TUI @rhan-oai - #44938 Add connector auth failure detection without an install URL @priyanshusingh-de - #44939 Respect execution hosts in Windows sandbox setup @etraut-openai - #44942 Clarify the Windows Visual C++ runtime notice for voice packages @bc-openai - #44944 Enforce managed provider requirements on existing app-server threads @alexsong-oai - #44945 Route TUI Windows sandbox setup through the app server @etraut-openai - #44946 Retire Friendly and Pragmatic personality selection @rhan-oai - #44948 Add context snapshots for async questions and plugin refresh @pakrym-oai - #44952 Keep voice captions visible across speaker updates and history handoff @bc-openai - #44957 Add model grouping to the agent command center @etraut-openai - #44969 Open tasks managed elsewhere as read-only history in the command center @etraut-openai - #44970 Show task tokens and usage estimates in the agent command center @etraut-openai - #44976 Make context snapshot text rendering consistent @pakrym-oai - #45035 Run DotSlash publishing directly on Ubuntu runners @charliemarsh-oai - #45039 Use gzip compression level 6 for Codex package archives @charliemarsh-oai - #45051 Consolidate Rust release artifact downloads @charliemarsh-oai - #45089 Delay automatic recaps and compact their TUI layout @fcoury-oai - #45090 Preserve conversation context and separate next actions in recaps @fcoury-oai - #45094 Estimate history tokens from content instead of serialized envelopes @won-openai - #45108 Cancel pending thread title generation after manual renames @fcoury-oai - #45112 Use blueberry in the realtime background-agent test fixture @anp-oai - #45116 Prevent multiline report notes from submitting early @etraut-openai - #45124 Add a feature flag for asynchronous user messages @alishobeiri-oai - #45135 Preview streaming prose before a newline arrives in the TUI @etraut-openai - #45137 Remove Astra sparkle animation from the TUI composer @fcoury-oai - #45149 Use OpenSSL 3.6.4 for musl builds @zm-oai - #45169 Extract Windows sandbox setup and installation storage into the library @zm-oai - #45176 Wire the Windows MXC sandbox into command execution @iceweasel-oai - #45178 Split Windows sandbox cleanup into preparation and completion phases @zm-oai - #45180 Extract shared network configuration and environment policy helpers @seanh-oai - #45182 Validate Windows sandbox token groups before copying SIDs @zm-oai - #45185 Bind direct tool-call metadata to invocation outputs @ningyi-oai - #45224 Register Windows desktop uninstall ownership before sandbox setup @chess-oai - #45248 Use captured step settings for request metadata and tool hooks @abhinav-oai - #45255 Open new sessions directly from the command center @etraut-openai - #45262 Route pastes into the active history search query @charliemarsh-oai - #45271 Preserve terminal scrollback when growing the TUI viewport @fcoury-oai - #45276 Add worktree session creation to the agents overview @etraut-openai - #45312 Extract Windows sandbox configuration preparation into a helper @seanh-oai - #45345 Publish opt-in provisioned macOS packages with Rust releases @riley-oai - #45399 Cancel code mode timer tasks when cleared or the cell finishes @jif-oai - #45409 Add session and originating window IDs to MCP request metadata @jif-oai - #45413 Invalidate Guardian review sessions after parent history resets @jif-oai - #45417 Extract guardian transcript selection into `guardian-context` @felixxia-oai - #45418 Extract Guardian conversation bookkeeping into the reviewer crate @felixxia-oai - #45420 Extract Guardian sampler execution into a dedicated module @felixxia-oai - #45428 Avoid cloning MCP server status snapshot data @charliemarsh-oai - #45439 Share tool output schemas and defer MCP envelope construction @charliemarsh-oai - #45440 Share Apps tool catalogs without retaining unused snapshots @charliemarsh-oai - #45441 Preserve Guardian parent response IDs across sampling requests @jif-oai - #45445 Attribute command and plugin analytics to the invoking model @jwang-openai - #45454 Preserve tabs in non-bracketed paste bursts @etraut-openai - #45455 Refactor Windows sandbox setup and service helpers @zm-oai - #45457 Fix clipboard routing for tmux and SSH sessions @fcoury-oai - #45459 Resolve enterprise-managed MCP registrations in the catalog @nicksteele-oai - #45461 Label rollout compression failures by stage and I/O error kind @jif-oai - #45463 Allow dedicated listeners for managed network proxies @iceweasel-oai - #45475 Fix fuzzy match scoring within Unicode lowercase expansions @etraut-openai - #45487 Retain thread persistence acquisition through session cancellation @jif-oai - #45489 Update `rustls` and AWS-LC dependencies in Cargo and Bazel lockfiles @zm-oai - #45491 Remove Guardian subagent-spawner plumbing @felixxia-oai - #45492 Split Guardian V2 async scoring into focused modules @felixxia-oai - #45493 Make the Guardian deadline cancellation helper crate-private @felixxia-oai - #45495 Expose effective login methods in config requirements @acrognale-oai - #45496 Trace global user instruction loading @vkg-oai - #45499 Send local TUI images as portable attachments to remote app servers @etraut-openai - #45501 Render inline TeX math as Unicode in the TUI @etraut-openai - #45502 Add managed thread lifetimes with cancellation-safe startup @jif-oai - #45503 Add revocable network policy primitives to the HTTP client @acrognale-oai - #45504 Allow ConPTY output to close after the last console client exits @iceweasel-oai - #45505 Add lifecycle tracing for unified exec @anp-oai - #45506 Allow background persistence for steered user input @bryanashley - #45509 Share MCP tool specs until search results are selected @owenlin0 - #45513 Allow setting `daybreakEnabled` when starting a thread @faizan-oai - #45515 Filter plugin-install test analytics by event type @zm-oai - #45516 Allow configuring the Guardian prompt template @won-openai - #45517 Use a dedicated mock server in the provider enforcement test @zm-oai - #45518 Route Guardian reviewers through ThreadManager for inline parents @jif-oai - #45519 Restore collaboration mode when resuming threads @etraut-openai - #45520 Add dependencies to the Windows sandbox service @zm-oai - #45521 Move Guardian reviewer startup into the pool @jif-oai - #45524 Enable MXC TTY launches and managed networking in the exec server @iceweasel-oai - #45526 Stage Python runtime wheels directly from package directories @charliemarsh-oai - #45528 Compress larger Windows release artifacts first @charliemarsh-oai - #45529 Expose selected workspace routing in app-server account reads @acrognale-oai - #45533 Harden and share Windows sandbox identity helpers @zm-oai - #45534 Honor explicit Unix socket grants in the Linux managed sandbox @viyatb-oai - #45535 Classify tool analytics events by call origin @eddie-openai - #45537 Move Guardian reviewer lifecycle into the extension @jif-oai - #45542 Add service-managed package registration for Windows sandbox accounts @zm-oai - #45543 Refactor image content to use a shared `ImageReference` type @kchainani-oai - #45544 Discourage logging full image generation results @Gan-Tu - #45546 Move daemon packages out of the standalone CLI installation @etraut-openai - #45548 Honor prepared Unix socket permissions in Seatbelt @viyatb-oai - #45549 Preserve streamed answers and plans when turns terminate @etraut-openai - #45550 Add opt-in registered package execution to the Windows sandbox @zm-oai - #45554 Use shared Bazel cache preparation in SDK CI @charliemarsh-oai - #45556 Add attachment upload and resolution APIs and pass stores into sessions @kchainani-oai - #45558 Seed missing daemon installs from complete local CLI packages @etraut-openai - #45559 Resume Windows sandbox registration refresh after service restarts @zm-oai - #45579 Copy current thread attachments into non-ephemeral forks @joeytrasatti-openai - #45580 Add explicit daemon package replacement from the CLI @etraut-openai - #45602 Fix retry classification for throttling and quota errors @sdcoffey - #45612 Render standalone display math in the TUI @etraut-openai - #45649 Add elicitation classification support to app and MCP analytics @priyanshusingh-de - #45669 Centralize child agent configuration in the agent module @jif-oai - #45670 Move V2 agent message delivery into `AgentControl` @jif-oai - #45672 Consolidate Guardian reviewer lifecycle ownership @jif-oai - #45676 Move spawned-agent interruption rules into `AgentControl` @jif-oai - #45677 Move Guardian review reporting and denial accounting into the extension @jif-oai - #45679 Retire the unused Guardian extension prototype API @felixxia-oai - #45680 Restrict guardian assessment parsing and circuit breaker visibility @felixxia-oai - #45683 Consolidate guardian transcript tests in `guardian-context` @felixxia-oai - #45684 Pass `ReviewModel` through guardian review sessions @felixxia-oai - #45693 Move Guardian approval routing into the reviewer extension @jif-oai - #45711 Add startup tool allowlists for threads @jif-oai - #45716 Classify MCP auth and approval outcomes in analytics @priyanshusingh-de - #45729 Move Guardian reviewer configuration into the extension @jif-oai - #45730 Separate executor sandbox selection from Windows sandbox levels @iceweasel-oai - #45736 Route Guardian requests through `/responses` with identifying headers @jif-oai - #45737 Separate Windows sandbox implementations from legacy setup modes @iceweasel-oai - #45739 Add typed account analytics reports to the backend client @fcoury-oai - #45740 Add account analytics data normalization to the TUI @fcoury-oai - #45741 Add token history and credit formatting helpers for analytics @fcoury-oai - #45742 Add account-bound authentication for analytics requests @fcoury-oai - #45746 Explicitly gate DotSlash publishing on release success @chess-oai - #45749 Extract reusable Bash and Zsh startup scripts @jif-oai - #45755 Honor canonical plugin disables for shared connectors @mzeng-openai - #45757 Wire Windows sandbox selection into managed proxy routing @iceweasel-oai - #45760 Disable V8 optimization paths affected by array sort bugs @kliu128 - #45762 Load analytics reports with server plans and account identity checks @fcoury-oai - #45763 Add stacked chart primitives for account analytics @fcoury-oai - #45764 Add an account analytics dashboard to `/usage` @fcoury-oai - #45765 Add Top chats to usage analytics @fcoury-oai - #45766 Add gated plan usage history to TUI analytics @fcoury-oai - #45768 Add consumer Top chats usage analytics @fcoury-oai - #45769 Add an account Summary tab to Analytics @fcoury-oai - #45770 Improve analytics chart readability and navigation @fcoury-oai - #45772 Expose experimental analytics plan history and improve navigation @fcoury-oai - #45779 Use native process identities for PID-managed daemons @etraut-openai - #45780 Allow daemon updates to restore pinned packages to latest stable @etraut-openai - #45781 Normalize bullet glyphs in the image preparation disconnect snapshot @jgershen-oai - #45782 Preserve Guardian authorization evidence across checkpoint migration @felixxia-oai - #45789 Preserve Guardian evidence during checkpoint migration @felixxia-oai - #45794 Support image references by file ID in inputs and tool outputs @kchainani-oai - #45796 Preserve `ImageUserInput` in the Python SDK @kchainani-oai - #45799 Complete Windows sandbox uninstall cleanup @chess-oai - #45805 Preserve MCP App UI metadata in tool-call events and history @victor-openai - #45806 Restrict plugin install requests to the root thread @rennie-openai - #45807 Record interrupted turns in managed daemon recovery snapshots @etraut-openai - #45809 Retire the personality feature flag and document deprecated settings @rhan-oai - #45811 Bound WSL terminal detection and handle inconclusive probes safely @etraut-openai - #45812 Add workspace routing support for Responses requests @acrognale-oai - #45813 Track Windows sandbox policy and per-thread executor hosts in the TUI @etraut-openai - #45817 Add a bounded Mermaid text renderer @etraut-openai - #45820 Continue interrupted work after managed daemon restarts @etraut-openai - #45821 Use app-server state for TUI Windows sandbox decisions @etraut-openai - #45822 Add opt-in response body limits to the HTTP transport @sergio-oai - #45823 Run R2 publishing when release dependencies succeed @dkumar-oai - #45825 Add opt-in nonfatal handling for clock read failures @vivi - #45830 Use app-server configuration for Windows sandbox state in the TUI @etraut-openai - #45831 Allow session-only model and reasoning selection in the TUI @etraut-openai - #45837 Hide WSLg's duplicate root in restricted Linux sandboxes @etraut-openai - #45845 Revert the current thread when editing an earlier TUI prompt @etraut-openai - #45849 Preserve the app-server shutdown signal future across loop iterations @jgershen-oai - #45852 Preserve executor path conventions in permission summaries @seanh-oai - #45854 Add `/daemon` menu for local background server updates @etraut-openai - #45863 Preserve executor path URIs in permission profile workspace roots @seanh-oai - #45865 Reject paths in project documentation fallback filenames @etraut-openai - #45900 Add a hidden HTTP/3 TCP tunnel command @richardopenai - #45915 Make Code Mode wrappers transparent to Guardian model policies @jif-oai - #45928 Bound model catalog decode errors and classify request timeouts @jif-oai - #45933 Avoid redundant model catalog lookups in reused Guardian reviewers @jif-oai - #45956 Record memory storage size after successful consolidation @jif-oai - #45957 Centralize Guardian policy resolution in config and protocol @jif-oai - #45960 Tag memory usage telemetry with the memory version @jif-oai - #45964 Expose partial completion in rollout compression metrics @jif-oai - #45966 Measure rollout read and materialization durations @jif-oai - #45978 Keep selection adjacent when hiding tasks in the agents overview @etraut-openai - #45980 Fall back to summary history for read-only conversations @etraut-openai - #45981 Preserve session config when switching thread permission profiles @etraut-openai - #45982 Use native DNS resolution for the network proxy on macOS @jdkula-openai - #45983 Show a loading message when opening tasks from the agents overview @etraut-openai - #45984 Isolate app-server Unix sockets from filesystem-restricted commands @etraut-openai - #45985 Replace guardian review result tuples with named structs @felixxia-oai - #45987 Centralize Guardian action preparation for review @felixxia-oai - #46002 Extract route-aware HTTP request execution into a separate module @acrognale-oai - #46004 Preserve attachment Unix socket grants when controller policy is omitted @open-matt - #46006 Report clock failures again after recovery @anp-oai - #46008 Route built-in permission selections through the app server @etraut-openai - #46009 Centralize compaction checkpoint selection and validation @felixxia-oai - #46010 Enable app tool result metadata with analytics controls @ningyi-oai - #46011 Enforce managed residency when constructing API providers @andrewgu-oai - #46013 Route permission shortcuts through the shared selection flow @etraut-openai - #46015 Allow callers to disable executor skills per environment @vkg-oai - #46019 Allow hosted Apps MCP contributions to override the protocol mode @teddywyly-oai - #46020 Add an experimental rollout compression endpoint @jif-oai - #46026 Centralize model-message resolution and rendering in `codex-prompts` @rhan-oai - #46027 Document and test `?` wildcards in network proxy domain patterns @viyatb-oai - #46029 Allow browser app cleanup hooks on interrupt @syuan-oai - #46031 Keep Noise relay streams alive after repeated handshake failures @viyatb-oai - #46032 Require forced macOS preferences for managed configuration @joeflorencio-openai - #46033 Preserve orchestrator skill caches across MCP runtime updates @hlevy-openai - #46035 Add per-app tool exposure configuration @ptiet-oai - #46036 Preserve config error causes when saving the approvals reviewer @darius-oai - #46038 Test Windows sandbox bin DACL modification permissions @zm-oai - #46040 Default TUI animations off when a screen reader is detected @etraut-openai - #46041 Tighten request handling in Guardian approval tests @jgershen-oai - #46042 Add read-only policy support to MCP tool requests @rennie-openai - #46043 Repair expired Windows sandbox account passwords during setup @zm-oai - #46044 Include Code Mode tool metadata in compaction prompts @ningyi-oai - #46047 Tag rollout compression metrics by trigger @jif-oai - #46051 Track WebSocket continuation modes and full-input send reasons @vkg-oai - #46054 Render Mermaid code blocks as diagrams in the TUI @etraut-openai - #46058 Attribute analytics events to realtime voice sessions @chrisdong-oai - #46063 Trim Guardian tests and tighten request layout assertions @felixxia-oai - #46064 Consolidate Guardian tests at shared policy and context boundaries @felixxia-oai - #46065 Route prepared images through the attachment store @kchainani-oai - #46066 Keep MCP user interaction on the root thread @rennie-openai - #46067 Remove the `done` prefix from TUI completion timestamps @etraut-openai - #46069 Use syntax theme colors for inline code and file paths @etraut-openai - #46070 Suppress warnings when skill descriptions are shortened @etraut-openai - #46071 Add a configurable F8 shortcut for voice conversations @etraut-openai - #46072 Account for file images in context budgets and Guardian reviews @kchainani-oai - #46073 Bound code-mode output previews across result blocks @etraut-openai - #46075 Use captured step settings when spawning subagents @rhan-oai - #46077 Keep the composer responsive during Command Center session creation @etraut-openai - #46081 Mark finished empty Code Mode tool inventories as complete @nf-openai - #46088 Add `--no-daemon` to bypass the shared background server @etraut-openai - #46096 Add a one-time composer starfield for new Astra tasks @imac-oai - #46104 Pause TUI events in the agents overview regression test @etraut-openai - #46107 Box app-server request handler futures to reduce stack usage @etraut-openai - #46108 Replace Sites migration state with a runtime compatibility guard @jiwon-oai - #46112 Preserve filesystem sandbox policy context when the cwd disappears @anp-oai - #46116 Make TUI web and image activity summaries compact and descriptive @etraut-openai - #46117 Add opt-in automatic background server startup @etraut-openai - #46122 Route filesystem reads and writes by their own sandbox permissions @anp-oai - #46123 Allow model catalogs to override the V2 `spawn_agent` description @rhan-oai - #46125 Fix daemon socket isolation checks for private tmp mounts @open-matt - #46126 Record daemon startup and update telemetry with consent handling @etraut-openai - #46179 Include sender user messages in Guardian delegation reviews @jif-oai - #46230 Preserve configured Flex tiers without catalog or fast-mode support @sdcoffey - #46237 Improve Windows sandbox error details and registry cleanup @chess-oai - #46239 Prefer the provisioning service for automatic Windows sandbox setup @zm-oai - #46241 Repair Windows sandbox access to existing runtime children @chess-oai - #46245 Publish Guardian cached scores and coverage atomically @felixxia-oai - #46258 Preserve uploaded image file IDs in user message display history @kchainani-oai - #46264 Relax delegation guidance in the v2 `spawn_agent` description @surajs-oai - #46266 Expand Unicode math rendering with accents, symbols, and delimiters @etraut-openai - #46268 Add filesystem accessors bound to environment permissions @anp-oai - #46271 Enable MXC selection through Windows sandbox configuration @iceweasel-oai - #46278 Reduce R2 release upload concurrency and enable standard retries @anp-oai - #46279 Preserve Guardian's reusable history prefix across approval requests @jif-oai - #46281 Connect app-server workspace discovery to model request routing @acrognale-oai - #46288 Add opt-in overhead timing to code-mode responses @cassirer-openai - #46291 Filter saved reasoning overrides from requests when disabled @felixxia-oai - #46292 Preserve selected reasoning effort for synchronous Guardian reviews @felixxia-oai - #46293 Route skill discovery and loading through `EnvironmentAccess` @anp-oai - #46294 Separate thread startup metadata from replay history @charliemarsh-oai - #46297 Support catalog descriptions for all multi-agent V2 tools @rhan-oai - #46300 Centralize OAuth login and refresh handling with safer diagnostics @alexsong-oai - #46302 Validate network socket policies using the executor OS @seanh-oai - #46303 Serialize release asset uploads to avoid secondary rate limits @imac-oai - #46305 Avoid cloning turn items for app-server active turn lookups @charliemarsh-oai - #46306 Preserve bio policy errors as a distinct non-retryable error @rennie-openai - #46309 Preserve plugin caches across display metadata refreshes @vkg-oai - #46310 Defer environment selection changes until the next turn @sayan-oai - #46318 Add OAuth credential management for model provider gateways @alexsong-oai - #46319 Preserve web search actions and results in exec JSON output @etraut-openai - #46322 Set the Windows sandbox type in the pending environment test @sayan-oai - #46323 Record active plugin inventory in turn analytics @marksteinbrick-oai - #46324 Broaden compaction fallback to the current model @aibrahim-oai - #46328 Avoid persisting project trust for projectless directories @viyatb-oai - #46330 Move retry backoff into `codex-async-utils` @bolinfest - #46331 Defer environment network policy validation until after composition @seanh-oai - #46332 Dim conversation recaps in the TUI @etraut-openai - #46333 Handle disabled Windows sandbox accounts during cleanup @chess-oai - #46334 Share platform identity across path, network, and sandbox configuration @seanh-oai - #46335 Keep MCP policy evaluation consistent with turn environments @sayan-oai - #46482 Handle unknown error classifications and configure gateway OAuth @etraut-openai - #46486 Make TUI async question replies compatible with desktop @etraut-openai - #46487 Keep TUI exploration grouped across reasoning and nonzero exits @etraut-openai - #46488 Split analytics tests into focused suites @rhan-oai - #46490 Compose gateway OAuth with primary provider authentication @alexsong-oai - #46492 Unify TUI tool output previews with a three-row limit @etraut-openai - #46493 Allow `/review` during MCP startup @etraut-openai - #46494 Keep remote workspace roots under server control @etraut-openai - #46495 Preserve the provisioned macOS CLI's code-signing identity @riley-oai - #46498 Allow worktree sessions to use an existing local daemon @etraut-openai - #46499 Allow approved escalation with environment-owned network policies @sayan-oai - #46500 Block mutating fcntls in restricted macOS Seatbelt policies @nornagon-openai - #46501 Add configuration and feature diagnostics to report metadata @pakrym-oai - #46503 Use catalog model display names throughout the TUI @etraut-openai - #46504 Add six bundled TUI themes and theme-aware accents @etraut-openai - #46505 Support catalog parameter schemas for Multi-Agent V2 tools @rhan-oai - #46506 Share ChatGPT cookies between HTTP and WebSocket transports @jif-oai - #46507 Run Windows sandbox tests exclusively when local @jif-oai - #46508 Refresh the model catalog before turns after auth changes @jif-oai - #46509 Flush completed Guardian reviews before delivering decisions @jif-oai - #46510 Avoid cloning active turn items for metadata-only thread resumes @charliemarsh-oai - #46511 Avoid cloning excluded turn items during thread resume @charliemarsh-oai - #46512 Capture Guardian review checkpoints from live context @jif-oai - #46513 Rename `AgentControl` to `LocalAgentControl` @jif-oai - #46514 Replay guardian checkpoints into a fresh session in tests @jif-oai - #46516 Handle completion timing in the multi-agent resume test @jif-oai - #46517 Stabilize the TUI exit interruption test @jif-oai - #46518 Handle delayed process startup in the Guardian network approval test @jif-oai - #46519 Use paused time in sampler and model catalog timeout tests @jif-oai - #46521 Use macOS member fallback in shared process-group termination helpers @jif-oai - #46522 Enable Guardian parent-compaction reuse by default @felixxia-oai - #46523 Default local binding to true for MXC managed networking @iceweasel-oai - #46524 Retry busy executable launches in packaged daemon tests @felixxia-oai - #46527 Pin WinGet publishing dependencies in the release workflow @imac-oai - #46528 Bind executor plugin measurements to the trusted plugin version @papayo-oai - #46529 Allow compatible feature overrides when starting the shared daemon @etraut-openai - #46530 Gate reasoning effort updates on explicit model support @felixxia-oai - #46531 Preserve request-level reasoning effort for memory and title workers @felixxia-oai - #46532 Remove `com.apple.runningboard` from Seatbelt platform defaults @nornagon-openai - #46533 Disable reasoning summaries by default for new TUI threads @celia-oai - #46534 Support `env_inherit` in `workspace_root_test` @bolinfest - #46535 Allow unrelated namespace mounts in Linux sandbox socket checks @pash-openai - #46539 Add a command-start callback for tool lifecycle extensions @papayo-oai - #46540 Centralize retry decisions and delays in `CodexErr` @anp-oai - #46541 Add opt-in compaction after final responses @hlevy-openai - #46542 Add authenticated remote plugin measurement references @papayo-oai - #46543 Add bounded filesystem path diagnostics to `codex doctor` @etraut-openai - #46544 Expose declared onboarding skills in plugin details @victor-openai - #46546 Skip skill discovery when injecting items into initialized threads @hlevy-openai - #46547 Expose a backend-independent agent control contract @jif-oai - #46548 Advertise the control socket's WebSocket message size limit @konsti-openai - #46551 Add a composite action to build and smoke-test Codex packages @anp-oai - #46552 Move child completion routing into the agent controller @jif-oai - #46553 Return `LiveAgent` records from agent listing @jif-oai - #46554 Always use private desktops for legacy Windows sandboxes @iceweasel-oai - #46555 Track executor registrations across connection refresh and recovery @viyatb-oai - #46556 Keep step settings and approval environments consistent @sayan-oai - #46557 Fix active-turn environment selection lookup @sayan-oai - #46558 Add shared plugin catalog discovery APIs @TAFOYA-OAI - #46559 Encapsulate rollout budget accounting in `LocalAgentControl` @jif-oai - #46560 Fix stale environment config in the network approval test @sayan-oai - #46561 Support explicit provider model catalog URLs @andrewgu-oai - #46562 Add system proxy fallback for login and startup requests @abhinav-oai - #46564 Rename plugin MCP and app extension APIs @TAFOYA-OAI - #46565 Preserve reasoning order in TUI activity groups @etraut-openai - #46566 Allow recovery commands when the current thread is unavailable @etraut-openai - #46567 Separate plugin catalog listing from package resolution @TAFOYA-OAI - #46568 Use captured environment state for permissions and daemon recovery @sayan-oai - #46569 Set explicit turn triggers for exec and TUI requests @eddie-openai - #46570 Tag remote model fetch duration by authentication mode @andrewgu-oai - #46571 Preserve macOS Seatbelt exclusions in scratch directories @nornagon-openai - #46572 Add turn-start cloud plugin discovery to the MCP extension @TAFOYA-OAI - #46573 Add a standalone network proxy binary with JSON configuration @viyatb-oai - #46574 Notify users when asynchronous questions arrive in the TUI @etraut-openai - #46575 Preserve Windows package identity for sandboxed descendants @zm-oai - #46577 Allow thread instruction providers to share updates with subagents @vinh-gpt - #46578 Fix standalone network proxy policy initialization @etraut-openai - #46579 Limit the agent command center to 10 recent sessions on startup @etraut-openai - #46580 Keep Guardian reviews on the applied instruction snapshot @jif-oai - #46583 Deny XPC service lookups in macOS Seatbelt profiles @nornagon-openai - #46659 Move local child-process spawning into `codex-utils-pty` @charliemarsh-oai - #46660 Make local child process launch settings explicit @charliemarsh-oai - #46661 Avoid fork when spawning macOS filesystem helpers @charliemarsh-oai - #46673 Extend server version notices to prerelease and local clients @etraut-openai - #46680 Improve TUI contrast, keyboard hints, and picker layouts @etraut-openai - #46691 Standardize TUI picker presentation and fix wrapping boundaries @etraut-openai - #46692 Unify TUI picker styling and improve compact layouts @etraut-openai - #46694 Unify TUI completion popup styling and preserve result identity @etraut-openai - #46695 Unify TUI prompts with shared picker styling and layouts @etraut-openai - #46697 Unify TUI picker styling and improve compact session layouts @etraut-openai - #46708 Preserve logical source text and styles across TUI wrapping @etraut-openai - #46709 Add compact activity rendering and preserve transcript source text @etraut-openai - #46710 Restore rich tool details in persisted TUI transcripts @etraut-openai - #46711 Align persisted TUI activity groups and reasoning with live output @etraut-openai - #46712 Recover executed tool call metadata under recorder capacity pressure @ningyi-oai - #46714 Skip polling delays in the external queue lifecycle test @charliemarsh-oai - #46715 Split shell snapshot credential tests into focused cases @charliemarsh-oai - #46719 Extract the TUI transcript overlay into its own module @etraut-openai - #46720 Cache transcript layouts across measurement and rendering @etraut-openai - #46721 Anchor transcript scrolling to entries and bound viewport rendering @etraut-openai - #46722 Cancel pending transcript Home jumps on subsequent navigation @etraut-openai - #46731 Render dynamic tool activity and preserve TUI history ordering @etraut-openai - #46732 Add selection and copying to the transcript viewer @etraut-openai - #46733 Integrate the interactive transcript into the alternate-screen TUI @etraut-openai - #46734 Add transcript search and per-activity detail controls @etraut-openai - #46739 Add compact transcript browsing and prompt navigation to the TUI @etraut-openai - #46749 Stabilize transcript and composer interactions in the TUI @etraut-openai - #46750 Preserve startup drafts and submit them when the session is ready @etraut-openai - #46751 Add a warning footer and dedicated warnings viewer to the TUI @etraut-openai - #46752 Add an animated Codex logo to fresh conversations and onboarding @etraut-openai - #46832 Add independent controls for TUI visual effects @etraut-openai - #46835 Respect reduced motion in the voice UI @etraut-openai - #46837 Improve agent command center rows and page navigation @etraut-openai - #46838 Refine the agent command center layout and metadata editing @etraut-openai - #46839 Add status filter tabs to the agent command center @etraut-openai - #46840 Simplify agent command center hints and back navigation @etraut-openai - #46844 Select read-only permissions for temporary structured threads @etraut-openai - #46845 Honor the system clock preference in TUI completion timestamps @etraut-openai - #46849 Move fullscreen transcript control to TUI configuration @etraut-openai - #46855 Increase the default terminal probe timeout from 100 ms to 250 ms @etraut-openai - #46856 Support stadium nodes in Mermaid terminal diagrams @etraut-openai - #46857 Extract shared text selection helpers for the TUI @etraut-openai - #46858 Add mouse selection and editing to the fullscreen composer @etraut-openai - #46859 Limit the welcome logo animation to onboarding @etraut-openai - #46861 Remove analytics TUI snapshots @etraut-openai - #46862 Refresh analytics on identity changes and compact usage menus @etraut-openai - #46863 Stabilize usage dashboard navigation and add keyboard help @etraut-openai - #46864 Improve usage report layouts and preserve reading positions @etraut-openai - #46866 Enable mouse navigation in the TUI usage view @etraut-openai - #46867 Preserve streamed answers when subagents finish @fcoury-oai - #46877 Allow subagents to request MCP elicitation input @rennie-openai - #46879 Count TUI launches by fullscreen transcript configuration @etraut-openai - #46880 Preserve voice playback across pauses and packet bursts @etraut-openai - #46882 Streamline agent command-center shortcuts and layout @etraut-openai - #46883 Add `/tui` to choose the terminal UI mode for the next launch @fcoury-oai - #46884 Enable plain clicks on transcript links and style bare URLs @etraut-openai - #46895 Add right-click copying for transcript and composer selections @fcoury-oai - #46897 Honor the effective terminal color level in activity charts @etraut-openai - #46899 Make transcript list spacing uniform after streaming @fcoury-oai - #46902 Hide Back to bottom when the current transcript tail is visible @fcoury-oai - #46905 Identify local background servers in `/status` @etraut-openai - #46910 Preserve transcript position when opening settings pickers @etraut-openai - #46912 Keep quota warnings visible in the TUI @fcoury-oai - #46917 Enforce current provider requirements for the model catalog @alexsong-oai - #46922 Fix realtime V3 transcript reconciliation for handoffs @etraut-openai - #46929 Remove the `Error` prefix from TUI `config.toml` load errors @etraut-openai - #46931 Use shared, keymap-aware tips in the fullscreen composer @etraut-openai - #46938 Add independent TUI rendering toggles for Mermaid, math, and tables @etraut-openai - #46946 Populate the agents overview from background tool responses @etraut-openai - #46952 Preserve metadata in native user verification requests @teddywyly-oai - #46959 Add shared agent message-board extension interfaces @jif-oai - #46962 Avoid exposing config values in `codex doctor` errors @jif-oai - #46966 Add SQLite storage for local agent message boards @jif-oai - #46978 Implement paginated queries for the local agent message board @jif-oai - #46979 Index channel posts by timestamp for latest-message lookups @jif-oai - #46981 Canonicalize the workspace trust key in the doctor config test @jif-oai - #46985 Add collaboration tools for the agent message board @jif-oai - #46989 Expand agent message board tool integration coverage @jif-oai - #46993 Clarify Bazel lockfile verification failures @jif-oai - #46994 Route agent delivery through captured send requests @jif-oai - #46999 Decouple tool restrictions from session identity with `ToolPolicy` @felixxia-oai - #47010 Add agent inspection without restoring unloaded runtimes @jif-oai - #47017 Wire agent message boards into persistent multi-agent runtimes @jif-oai - #47026 Add diagnostics for rollout compression metadata failures @jif-oai - #47028 Align message-board tools with the multi-agent namespace @jif-oai - #47029 Delete persisted message boards with their root threads @jif-oai - #47030 Preserve ordered assistant context in Guardian reviews @felixxia-oai - #47035 Defer extension tool history materialization until first access @charliemarsh-oai - #47036 Share stored JSON payloads across code mode cells with `Arc` @charliemarsh-oai - #47038 Cache OS discovery for user agents and telemetry @charliemarsh-oai - #47039 Preserve delivered messages through post-tool hook failures @felixxia-oai - #47042 Recover corrupt message-board storage during thread deletion @jif-oai - #47049 Share SQLite pools across local agent message-board handles @jif-oai - #47050 Batch message-board subscriber reads into one SQLite result @jif-oai - #47055 Fetch local message board thread summaries in one query @jif-oai
637 lines
19 KiB
TOML
637 lines
19 KiB
TOML
[workspace]
|
|
members = [
|
|
"aws-auth",
|
|
"analytics",
|
|
"agent-graph-store",
|
|
"agent-identity",
|
|
"agent-roles",
|
|
"backend-client",
|
|
"bwrap",
|
|
"build-info",
|
|
"ansi-escape",
|
|
"attachment-store",
|
|
"async-utils",
|
|
"app-server",
|
|
"app-server-transport",
|
|
"app-server-daemon",
|
|
"app-server-client",
|
|
"app-server-protocol",
|
|
"app-server-protocol-noop-macros",
|
|
"app-server-test-client",
|
|
"apply-patch",
|
|
"arg0",
|
|
"feedback",
|
|
"features",
|
|
"install-context",
|
|
"codex-backend-openapi-models",
|
|
"code-mode",
|
|
"code-mode-host",
|
|
"code-mode-protocol",
|
|
"code-mode-runtime",
|
|
"codex-home",
|
|
"cloud-config",
|
|
"cloud-tasks",
|
|
"cloud-tasks-client",
|
|
"cloud-tasks-mock-client",
|
|
"cli",
|
|
"collaboration-mode-templates",
|
|
"connectors",
|
|
"config",
|
|
"config-schema",
|
|
"context-fragments",
|
|
"shell-command",
|
|
"shell-escalation",
|
|
"skills",
|
|
"core",
|
|
"core-api",
|
|
"core-plugins",
|
|
"diagnostics",
|
|
"guardian-context",
|
|
"hooks",
|
|
"history",
|
|
"http-client",
|
|
"secrets",
|
|
"exec",
|
|
"file-system",
|
|
"exec-server-protocol",
|
|
"exec-server",
|
|
"exec-server/tests/support",
|
|
"execpolicy",
|
|
"ext/agent",
|
|
"ext/agent-message-board",
|
|
"ext/connectors",
|
|
"ext/extension-api",
|
|
"ext/goal",
|
|
"ext/git-attribution",
|
|
"ext/guardian-reviewer",
|
|
"ext/guardian-v2",
|
|
"ext/history-notes",
|
|
"ext/image-generation",
|
|
"ext/items",
|
|
"ext/memories",
|
|
"ext/mcp",
|
|
"ext/queue",
|
|
"ext/skills",
|
|
"ext/web-search",
|
|
"external-agent-migration",
|
|
"keyring-store",
|
|
"file-search",
|
|
"file-watcher",
|
|
"linux-sandbox",
|
|
"lmstudio",
|
|
"login",
|
|
"codex-mcp",
|
|
"memories/read",
|
|
"memories/write",
|
|
"mermaid",
|
|
"model-provider-info",
|
|
"mxc-sandbox",
|
|
"models-manager",
|
|
"network-proxy",
|
|
"ollama",
|
|
"process-hardening",
|
|
"realtime-webrtc",
|
|
"voice-host",
|
|
"protocol",
|
|
"prompts",
|
|
"rollout",
|
|
"rollout-trace",
|
|
"rmcp-client",
|
|
"responses-api-proxy",
|
|
"response-debug-context",
|
|
"sandboxing",
|
|
"stdio-to-uds",
|
|
"otel",
|
|
"otel-trace-websocket",
|
|
"tcp-tunnel",
|
|
"tui",
|
|
"user-verification",
|
|
"tools",
|
|
"v8-poc",
|
|
"websocket-client",
|
|
"windows-sandbox-service",
|
|
"worktree",
|
|
"workload-identity",
|
|
"utils/absolute-path",
|
|
"utils/audio",
|
|
"utils/path-uri",
|
|
"utils/cargo-bin",
|
|
"git-utils",
|
|
"utils/cache",
|
|
"utils/git-discovery",
|
|
"utils/image",
|
|
"utils/json-to-toml",
|
|
"utils/home-dir",
|
|
"utils/pty",
|
|
"utils/readiness",
|
|
"utils/redacted-string",
|
|
"utils/rustls-provider",
|
|
"utils/string",
|
|
"utils/cli",
|
|
"utils/elapsed",
|
|
"utils/sandbox-summary",
|
|
"utils/sleep-inhibitor",
|
|
"utils/approval-presets",
|
|
"utils/oss",
|
|
"utils/output-truncation",
|
|
"utils/path-utils",
|
|
"utils/plugins",
|
|
"utils/fuzzy-match",
|
|
"utils/stream-parser",
|
|
"utils/template",
|
|
"codex-client",
|
|
"codex-api",
|
|
"state",
|
|
"terminal-detection",
|
|
"test-binary-support",
|
|
"thread-manager-sample",
|
|
"thread-store",
|
|
"uds",
|
|
"codex-experimental-api-macros",
|
|
"plugin",
|
|
"model-provider",
|
|
]
|
|
resolver = "2"
|
|
|
|
[workspace.package]
|
|
version = "0.156.0"
|
|
# Track the edition for all workspace crates in one place. Individual
|
|
# crates can still override this value, but keeping it here means new
|
|
# crates created with `cargo new -w ...` automatically inherit the 2024
|
|
# edition.
|
|
edition = "2024"
|
|
license = "Apache-2.0"
|
|
|
|
[workspace.dependencies]
|
|
# Internal
|
|
codex-realtime-webrtc = { path = "realtime-webrtc" }
|
|
app_test_support = { path = "app-server/tests/common" }
|
|
codex-analytics = { path = "analytics" }
|
|
codex-agent-graph-store = { path = "agent-graph-store" }
|
|
codex-agent-identity = { path = "agent-identity" }
|
|
codex-agent-roles = { path = "agent-roles" }
|
|
codex-ansi-escape = { path = "ansi-escape" }
|
|
codex-api = { path = "codex-api" }
|
|
codex-attachment-store = { path = "attachment-store" }
|
|
codex-aws-auth = { path = "aws-auth" }
|
|
codex-app-server = { path = "app-server" }
|
|
codex-app-server-transport = { path = "app-server-transport" }
|
|
codex-app-server-daemon = { path = "app-server-daemon" }
|
|
codex-app-server-client = { path = "app-server-client" }
|
|
codex-app-server-protocol = { path = "app-server-protocol" }
|
|
codex-app-server-protocol-noop-macros = { path = "app-server-protocol-noop-macros" }
|
|
codex-app-server-test-client = { path = "app-server-test-client" }
|
|
codex-apply-patch = { path = "apply-patch" }
|
|
codex-arg0 = { path = "arg0" }
|
|
codex-async-utils = { path = "async-utils" }
|
|
codex-backend-client = { path = "backend-client" }
|
|
codex-build-info = { path = "build-info" }
|
|
codex-chatgpt = { path = "chatgpt" }
|
|
codex-client = { path = "codex-client" }
|
|
codex-collaboration-mode-templates = { path = "collaboration-mode-templates" }
|
|
codex-cloud-config = { path = "cloud-config" }
|
|
codex-cloud-tasks-client = { path = "cloud-tasks-client" }
|
|
codex-cloud-tasks-mock-client = { path = "cloud-tasks-mock-client" }
|
|
codex-code-mode = { path = "code-mode" }
|
|
codex-code-mode-protocol = { path = "code-mode-protocol" }
|
|
codex-code-mode-runtime = { path = "code-mode-runtime" }
|
|
codex-home = { path = "codex-home" }
|
|
codex-http-client = { path = "http-client" }
|
|
codex-websocket-client = { path = "websocket-client" }
|
|
codex-config = { path = "config" }
|
|
codex-connectors = { path = "connectors" }
|
|
codex-agent-extension = { path = "ext/agent" }
|
|
codex-agent-message-board-extension = { path = "ext/agent-message-board" }
|
|
codex-connectors-extension = { path = "ext/connectors" }
|
|
codex-context-fragments = { path = "context-fragments" }
|
|
codex-core = { path = "core" }
|
|
codex-core-api = { path = "core-api" }
|
|
codex-core-plugins = { path = "core-plugins" }
|
|
codex-diagnostics = { path = "diagnostics" }
|
|
codex-exec = { path = "exec" }
|
|
codex-file-system = { path = "file-system" }
|
|
codex-exec-server-protocol = { path = "exec-server-protocol" }
|
|
codex-exec-server = { path = "exec-server" }
|
|
codex-exec-server-test-support = { path = "exec-server/tests/support" }
|
|
codex-execpolicy = { path = "execpolicy" }
|
|
codex-extension-api = { path = "ext/extension-api" }
|
|
codex-extension-items = { path = "ext/items" }
|
|
codex-goal-extension = { path = "ext/goal" }
|
|
codex-git-attribution = { path = "ext/git-attribution" }
|
|
codex-guardian-reviewer = { path = "ext/guardian-reviewer" }
|
|
codex-guardian-v2 = { path = "ext/guardian-v2" }
|
|
codex-history-notes-extension = { path = "ext/history-notes" }
|
|
codex-image-generation-extension = { path = "ext/image-generation" }
|
|
codex-external-agent-migration = { path = "external-agent-migration" }
|
|
codex-experimental-api-macros = { path = "codex-experimental-api-macros" }
|
|
codex-features = { path = "features" }
|
|
codex-feedback = { path = "feedback" }
|
|
codex-install-context = { path = "install-context" }
|
|
codex-file-search = { path = "file-search" }
|
|
codex-file-watcher = { path = "file-watcher" }
|
|
codex-git-utils = { path = "git-utils" }
|
|
codex-guardian-context = { path = "guardian-context" }
|
|
codex-hooks = { path = "hooks" }
|
|
codex-history = { path = "history" }
|
|
codex-keyring-store = { path = "keyring-store" }
|
|
codex-linux-sandbox = { path = "linux-sandbox" }
|
|
codex-lmstudio = { path = "lmstudio" }
|
|
codex-login = { path = "login" }
|
|
codex-mermaid = { path = "mermaid" }
|
|
codex-message-history = { path = "message-history" }
|
|
codex-memories-extension = { path = "ext/memories" }
|
|
codex-web-search-extension = { path = "ext/web-search" }
|
|
codex-memories-read = { path = "memories/read" }
|
|
codex-memories-write = { path = "memories/write" }
|
|
codex-mcp = { path = "codex-mcp" }
|
|
codex-mcp-extension = { path = "ext/mcp" }
|
|
codex-model-provider-info = { path = "model-provider-info" }
|
|
codex-models-manager = { path = "models-manager" }
|
|
codex-mxc-sandbox = { path = "mxc-sandbox" }
|
|
codex-network-proxy = { path = "network-proxy" }
|
|
codex-ollama = { path = "ollama" }
|
|
codex-otel = { path = "otel" }
|
|
codex-otel-trace-websocket = { path = "otel-trace-websocket" }
|
|
codex-plugin = { path = "plugin" }
|
|
codex-model-provider = { path = "model-provider" }
|
|
codex-process-hardening = { path = "process-hardening" }
|
|
codex-protocol = { path = "protocol" }
|
|
codex-prompts = { path = "prompts" }
|
|
codex-queue-extension = { path = "ext/queue" }
|
|
codex-responses-api-proxy = { path = "responses-api-proxy" }
|
|
codex-response-debug-context = { path = "response-debug-context" }
|
|
codex-rmcp-client = { path = "rmcp-client" }
|
|
codex-rollout = { path = "rollout" }
|
|
codex-rollout-trace = { path = "rollout-trace" }
|
|
codex-sandboxing = { path = "sandboxing" }
|
|
codex-secrets = { path = "secrets" }
|
|
codex-shell-command = { path = "shell-command" }
|
|
codex-shell-escalation = { path = "shell-escalation" }
|
|
codex-skills-extension = { path = "ext/skills" }
|
|
codex-skills = { path = "skills" }
|
|
codex-state = { path = "state" }
|
|
codex-stdio-to-uds = { path = "stdio-to-uds" }
|
|
codex-terminal-detection = { path = "terminal-detection" }
|
|
codex-test-binary-support = { path = "test-binary-support" }
|
|
codex-thread-store = { path = "thread-store" }
|
|
codex-tools = { path = "tools" }
|
|
codex-tcp-tunnel = { path = "tcp-tunnel" }
|
|
codex-tui = { path = "tui" }
|
|
codex-uds = { path = "uds" }
|
|
codex-utils-absolute-path = { path = "utils/absolute-path" }
|
|
codex-utils-approval-presets = { path = "utils/approval-presets" }
|
|
codex-utils-audio = { path = "utils/audio" }
|
|
codex-utils-cache = { path = "utils/cache" }
|
|
codex-utils-cargo-bin = { path = "utils/cargo-bin" }
|
|
codex-utils-cli = { path = "utils/cli" }
|
|
codex-utils-elapsed = { path = "utils/elapsed" }
|
|
codex-utils-fuzzy-match = { path = "utils/fuzzy-match" }
|
|
codex-utils-git-discovery = { path = "utils/git-discovery" }
|
|
codex-utils-home-dir = { path = "utils/home-dir" }
|
|
codex-utils-image = { path = "utils/image" }
|
|
codex-utils-json-to-toml = { path = "utils/json-to-toml" }
|
|
codex-utils-oss = { path = "utils/oss" }
|
|
codex-utils-output-truncation = { path = "utils/output-truncation" }
|
|
codex-utils-path = { path = "utils/path-utils" }
|
|
codex-utils-path-uri = { path = "utils/path-uri" }
|
|
codex-utils-plugins = { path = "utils/plugins" }
|
|
codex-utils-pty = { path = "utils/pty" }
|
|
codex-utils-redacted-string = { path = "utils/redacted-string" }
|
|
codex-utils-rustls-provider = { path = "utils/rustls-provider" }
|
|
codex-utils-sandbox-summary = { path = "utils/sandbox-summary" }
|
|
codex-worktree = { path = "worktree" }
|
|
codex-utils-sleep-inhibitor = { path = "utils/sleep-inhibitor" }
|
|
codex-utils-stream-parser = { path = "utils/stream-parser" }
|
|
codex-utils-string = { path = "utils/string" }
|
|
codex-utils-template = { path = "utils/template" }
|
|
codex-user-verification = { path = "user-verification" }
|
|
codex-v8-poc = { path = "v8-poc" }
|
|
codex-workload-identity = { path = "workload-identity" }
|
|
codex-windows-sandbox = { path = "windows-sandbox-rs" }
|
|
core_test_support = { path = "core/tests/common" }
|
|
|
|
# External
|
|
learning_mode_windows = { git = "https://github.com/microsoft/mxc", rev = "6cd3d58f05d3447e67109cfb75e042803b843ca4" }
|
|
wxc_common = { git = "https://github.com/microsoft/mxc", rev = "6cd3d58f05d3447e67109cfb75e042803b843ca4" }
|
|
age = "0.11.1"
|
|
ansi-to-tui = "8.0.1"
|
|
anyhow = "1"
|
|
appcontainer_common = { git = "https://github.com/microsoft/mxc", rev = "6cd3d58f05d3447e67109cfb75e042803b843ca4" }
|
|
arboard = { version = "3", features = ["wayland-data-control"] }
|
|
arc-swap = "1.9.0"
|
|
assert_cmd = "2"
|
|
assert_matches = "1.5.0"
|
|
async-channel = "2.3.1"
|
|
async-io = "2.6.0"
|
|
async-stream = "0.3.6"
|
|
aws-config = "1"
|
|
aws-credential-types = "1"
|
|
aws-sigv4 = "1"
|
|
aws-types = "1"
|
|
axum = { version = "0.8", default-features = false }
|
|
base64 = "0.22.1"
|
|
bitflags = "2.13.1"
|
|
blake3 = "1.8.2"
|
|
bm25 = "2.3.2"
|
|
bytes = "1.10.1"
|
|
caseless = "0.2.2"
|
|
chardetng = "0.1.17"
|
|
chrono = "0.4.43"
|
|
clap = "4"
|
|
clap_complete = "4"
|
|
clatter = { version = "2.2.0", default-features = false, features = [
|
|
"alloc",
|
|
"getrandom",
|
|
"use-25519",
|
|
"use-aes-gcm",
|
|
"use-rust-crypto-ml-kem",
|
|
"use-sha",
|
|
] }
|
|
color-eyre = "0.6.3"
|
|
constant_time_eq = "0.3.1"
|
|
crossbeam-channel = "0.5.15"
|
|
crypto_box = { version = "0.9.1", features = ["seal"] }
|
|
crossterm = "0.29.0"
|
|
ctor = "0.6.3"
|
|
deno_core_icudata = "0.77.0"
|
|
derive_more = "2"
|
|
diffy = "0.4.2"
|
|
dirs = "6"
|
|
divan = "0.1.21"
|
|
dns-lookup = "3.0.1"
|
|
dotenvy = "0.15.7"
|
|
dunce = "1.0.4"
|
|
ed25519-dalek = { version = "2.2.0", features = ["pkcs8"] }
|
|
encoding_rs = "0.8.35"
|
|
eventsource-stream = "0.2.3"
|
|
flate2 = "1.1.8"
|
|
futures = { version = "0.3", default-features = false }
|
|
gethostname = "1.1.0"
|
|
gix = { version = "0.81.0", default-features = false, features = ["sha1"] }
|
|
gix-url = "0.35.2"
|
|
glob = "0.3"
|
|
globset = "0.4"
|
|
hmac = "0.12.1"
|
|
http = "1.3.1"
|
|
httpdate = "1.0.3"
|
|
iana-time-zone = "0.1.64"
|
|
icu_decimal = "2.1"
|
|
icu_locale_core = "2.1"
|
|
icu_provider = { version = "2.1", features = ["sync"] }
|
|
ignore = "0.4.23"
|
|
image = { version = "^0.25.9", default-features = false }
|
|
include_dir = "0.7.4"
|
|
indexmap = "2.12.0"
|
|
insta = "1.46.3"
|
|
inventory = "0.3.19"
|
|
itertools = "0.14.0"
|
|
jsonptr = { version = "0.7.1", default-features = false }
|
|
jsonwebtoken = "9.3.1"
|
|
keyring = { version = "3.6", default-features = false }
|
|
landlock = "0.4.4"
|
|
lazy_static = "1"
|
|
libc = "0.2.182"
|
|
# Keep SQLx's bundled SQLite on a version containing the WAL-reset corruption fix:
|
|
# https://www.sqlite.org/wal.html#the_wal_reset_bug
|
|
libsqlite3-sys = { version = "0.37", default-features = false }
|
|
log = "0.4"
|
|
lru = "0.18.2"
|
|
maplit = "1.0.2"
|
|
memchr = "2.7.6"
|
|
mime_guess = "2.0.5"
|
|
multimap = "0.10.0"
|
|
notify = "8.2.0"
|
|
nucleo = { git = "https://github.com/helix-editor/nucleo.git", rev = "4253de9faabb4e5c6d81d946a5e35a90f87347ee" }
|
|
once_cell = "1.20.2"
|
|
openssl-sys = "*"
|
|
opentelemetry = "0.31.0"
|
|
opentelemetry-appender-tracing = "0.31.0"
|
|
opentelemetry-otlp = "0.31.0"
|
|
opentelemetry-semantic-conventions = "0.31.0"
|
|
opentelemetry_sdk = "0.31.0"
|
|
os_info = "3.12.0"
|
|
owo-colors = "4.3.0"
|
|
pathdiff = "0.2"
|
|
portable-pty = "0.9.0"
|
|
predicates = "3"
|
|
pretty_assertions = "1.4.1"
|
|
pulldown-cmark = { version = "0.10", default-features = false }
|
|
quick-xml = "0.41.0"
|
|
rand = "0.9"
|
|
rand_regex = "0.18.1"
|
|
ratatui = { version = "0.30.2", default-features = false, features = [
|
|
"crossterm",
|
|
"layout-cache",
|
|
"underline-color",
|
|
] }
|
|
ratatui-macros = "0.7.2"
|
|
rcgen = { version = "0.14.7", default-features = false, features = [
|
|
"aws_lc_rs",
|
|
"pem",
|
|
] }
|
|
regex = "1.12.3"
|
|
regex-automata = { version = "0.4.13", default-features = false, features = ["std", "syntax", "unicode", "nfa-pikevm"] }
|
|
regex-lite = "0.1.8"
|
|
regex-syntax = "0.8.8"
|
|
reqwest = { version = "0.12", features = ["cookies"] }
|
|
rmcp = { version = "=3.2.0", default-features = false }
|
|
runfiles = { git = "https://github.com/dzbarsky/rules_rust", rev = "b56cbaa8465e74127f1ea216f813cd377295ad81" }
|
|
rustix = { version = "1.1.4", features = ["net"] }
|
|
rustls = { version = "0.23.45", default-features = false, features = [
|
|
"aws_lc_rs",
|
|
"std",
|
|
] }
|
|
rustls-native-certs = "0.8.3"
|
|
rustls-pki-types = "1.14.0"
|
|
schemars = "0.8.22"
|
|
seccompiler = "0.5.0"
|
|
semver = "1.0"
|
|
sentry = "0.46.0"
|
|
serde = { version = "1", features = ["rc"] }
|
|
serde_ignored = "0.1.14"
|
|
serde_json = "1"
|
|
serde_path_to_error = "0.1.20"
|
|
serde_with = "3.17"
|
|
serde_yaml = "0.9"
|
|
serial_test = "3.2.0"
|
|
sha1 = "0.10.6"
|
|
scopeguard = "1.2.0"
|
|
sha2 = "0.10"
|
|
shlex = "1.3.0"
|
|
signal-hook = "0.3.18"
|
|
similar = "2.7.0"
|
|
symphonia = { version = "0.6.0", default-features = false, features = [
|
|
"isomp4",
|
|
"mkv",
|
|
"mp3",
|
|
"ogg",
|
|
"wav",
|
|
] }
|
|
socket2 = "0.6.1"
|
|
# When bumping sqlx, audit the SQLite constructor deny list in clippy.toml.
|
|
sqlx = { version = "0.9.0", default-features = false, features = [
|
|
"chrono",
|
|
"json",
|
|
"macros",
|
|
"migrate",
|
|
"runtime-tokio",
|
|
"tls-rustls",
|
|
"sqlite-bundled",
|
|
"time",
|
|
"uuid",
|
|
] }
|
|
starlark = { version = "0.14.2", default-features = false }
|
|
strum = "0.27.2"
|
|
strum_macros = "0.28.0"
|
|
supports-color = "3.0.2"
|
|
syntect = "5"
|
|
sys-locale = "0.3.2"
|
|
system-configuration = "0.7"
|
|
tar = { version = "=0.4.45", default-features = false }
|
|
tempfile = "3.23.0"
|
|
test-log = "0.2.19"
|
|
textwrap = "0.16.2"
|
|
thiserror = "2.0.17"
|
|
tikv-jemallocator = "=0.7.0"
|
|
time = "0.3.47"
|
|
tiny_http = "0.12"
|
|
tokio = "1"
|
|
tokio-rustls = "0.26.4"
|
|
tokio-stream = "0.1.18"
|
|
tokio-test = "0.4"
|
|
tokio-tungstenite = { version = "0.28.0", features = [
|
|
"proxy",
|
|
"rustls-tls-native-roots",
|
|
] }
|
|
tokio-util = "0.7.18"
|
|
toml = "0.9.5"
|
|
toml_edit = "0.24.0"
|
|
tracing = "0.1.44"
|
|
tracing-appender = "0.2.3"
|
|
tracing-opentelemetry = "0.32.0"
|
|
tracing-subscriber = "0.3.22"
|
|
tracing-test = "0.2.5"
|
|
tonic = { version = "0.14.3", default-features = false, features = ["channel", "codegen"] }
|
|
tonic-prost = "0.14.3"
|
|
tree-sitter = "0.25.10"
|
|
tree-sitter-bash = "0.25"
|
|
tree-sitter-powershell = "=0.26.4"
|
|
ts-rs = "11"
|
|
tungstenite = { version = "0.27.0", features = ["deflate", "proxy"] }
|
|
uds_windows = "1.1.0"
|
|
unicode-segmentation = "1.12.0"
|
|
unicode-width = "0.2"
|
|
url = "2"
|
|
urlencoding = "2.1"
|
|
uuid = "1"
|
|
v8 = "=150.4.0"
|
|
vt100 = "0.16.2"
|
|
walkdir = "2.5.0"
|
|
webbrowser = "1.2.2"
|
|
which = "8"
|
|
whoami = "1.6.1"
|
|
wildmatch = "2.6.1"
|
|
winapi-util = "0.1.11"
|
|
zip = "2.4.2"
|
|
zstd = "0.13"
|
|
|
|
wiremock = "0.6"
|
|
zeroize = "1.8.2"
|
|
|
|
[workspace.lints]
|
|
rust = {}
|
|
|
|
[workspace.lints.clippy]
|
|
await_holding_invalid_type = "deny"
|
|
await_holding_lock = "deny"
|
|
disallowed_methods = "deny"
|
|
expect_used = "deny"
|
|
identity_op = "deny"
|
|
manual_clamp = "deny"
|
|
manual_filter = "deny"
|
|
manual_find = "deny"
|
|
manual_flatten = "deny"
|
|
manual_map = "deny"
|
|
manual_memcpy = "deny"
|
|
manual_non_exhaustive = "deny"
|
|
manual_ok_or = "deny"
|
|
manual_range_contains = "deny"
|
|
manual_retain = "deny"
|
|
manual_strip = "deny"
|
|
manual_try_fold = "deny"
|
|
manual_unwrap_or = "deny"
|
|
needless_borrow = "deny"
|
|
needless_borrowed_reference = "deny"
|
|
needless_collect = "deny"
|
|
needless_late_init = "deny"
|
|
needless_option_as_deref = "deny"
|
|
needless_question_mark = "deny"
|
|
needless_update = "deny"
|
|
redundant_clone = "deny"
|
|
redundant_closure = "deny"
|
|
redundant_closure_for_method_calls = "deny"
|
|
redundant_static_lifetimes = "deny"
|
|
trivially_copy_pass_by_ref = "deny"
|
|
uninlined_format_args = "deny"
|
|
unnecessary_filter_map = "deny"
|
|
unnecessary_lazy_evaluations = "deny"
|
|
unnecessary_sort_by = "deny"
|
|
unnecessary_to_owned = "deny"
|
|
unwrap_used = "deny"
|
|
|
|
# cargo-shear cannot see the platform-specific openssl-sys usage, so we
|
|
# silence the false positive here instead of deleting a real dependency.
|
|
[workspace.metadata.cargo-shear]
|
|
ignored = [
|
|
"icu_provider",
|
|
"openssl-sys",
|
|
"codex-v8-poc",
|
|
]
|
|
|
|
[profile.dev]
|
|
# Keep line tables/backtraces while avoiding expensive full variable debug info
|
|
# across local dev builds.
|
|
debug = "limited"
|
|
|
|
[profile.dev-small]
|
|
inherits = "dev"
|
|
opt-level = 0
|
|
debug = "none"
|
|
strip = "symbols"
|
|
|
|
[profile.release]
|
|
lto = "thin"
|
|
debug = "line-tables-only"
|
|
split-debuginfo = "off"
|
|
# Keep release binaries symbolicateable until packaging has archived the
|
|
# sidecar symbols and stripped the binaries.
|
|
strip = false
|
|
|
|
# Balance parallel release code generation against binary size.
|
|
codegen-units = 4
|
|
|
|
[profile.profiling]
|
|
inherits = "release"
|
|
debug = "full"
|
|
lto = false
|
|
strip = false
|
|
|
|
[profile.ci-test]
|
|
# Reduce binary size to reduce disk pressure.
|
|
debug = "limited"
|
|
inherits = "test"
|
|
opt-level = 0
|
|
|
|
[patch.crates-io]
|
|
# Uncomment to debug local changes.
|
|
# ratatui = { path = "../../ratatui" }
|
|
crossterm = { git = "https://github.com/openai-oss-forks/crossterm", rev = "45fecb9508105988f42fe6ff0441783ed3717f92" }
|
|
tokio-tungstenite = { git = "https://github.com/openai-oss-forks/tokio-tungstenite", rev = "0e5b2d73aa18dd9f0a50ee9ff199d5aef7594186" }
|
|
tungstenite = { git = "https://github.com/openai-oss-forks/tungstenite-rs", rev = "4fffad30fe373adbdcffab9545e9e9bf4f2fc19f" }
|
|
|
|
# Uncomment to debug local changes.
|
|
# rmcp = { path = "../../rust-sdk/crates/rmcp" }
|
|
|
|
[patch."ssh://git@github.com/openai-oss-forks/tungstenite-rs.git"]
|
|
tungstenite = { git = "https://github.com/openai-oss-forks/tungstenite-rs", rev = "4fffad30fe373adbdcffab9545e9e9bf4f2fc19f" }
|