New Features
- Added a plugin system that can load skills, MCP entries, and app connectors from config or a local marketplace, with an install endpoint for enabling plugins from the app server. (#12864, #13333, #13401, #13422)
- Expanded the TUI multi-agent flow with approval prompts,
/agent-based enablement, clearer prompts, ordinal nicknames, and role-labeled handoff context. (#12995, #13246, #13404, #13412, #13505) - Added a persisted
/fasttoggle in the TUI and app-server support forfastandflexservice tiers. (#13212, #13334, #13391) - Improved memories with workspace-scoped writes, renamed memory settings, and guardrails against saving stale or polluted facts. (#13008, #13088, #13237, #13467)
- Added a direct Windows installer script to published release artifacts. (#12741)
Bug Fixes
- Fixed
@file mentions so parent-directory.gitignorerules no longer hide valid repository files. (#13250) - Made sub-agents faster and more reliable by reusing shell state correctly and fixing
/status,Esc, pending-message handling, and startup/profile race conditions. (#12935, #13052, #13130, #13131, #13235, #13240, #13248) - Fixed project trust parsing so CLI overrides apply correctly to trusted project-local MCP transports. (#13090)
- Fixed read-only sandbox policies so network access is preserved when it is explicitly enabled. (#13409)
- Fixed multiline environment export capture and Windows state DB path handling in session state. (#12642, #13336)
- Fixed ANSI/base16 syntax highlighting so terminal-themed colors render correctly in the TUI. (#13382)
Documentation
- Expanded app-server docs around service tiers, plugin installation, renaming unloaded threads, and the new
skills/changednotification. (#13282, #13391, #13414, #13422)
Chores
- Removed the remaining legacy app-server v1 websocket/RPC surfaces in favor of the current protocol. (#13364, #13375, #13397)
Changelog
Full Changelog: rust-v0.107.0...rust-v0.110.0
- #13086 Fix CLI feedback link @etraut-openai
- #13063 Make cloud_requirements fail close @alexsong-oai
- #13083 Enable analytics in codex exec and codex mcp-server @etraut-openai
- #12995 feat: approval for sub-agent in the TUI @jif-oai
- #13027 feat: skill disable respect config layer @jif-oai
- #13125 chore: change mem default @jif-oai
- #13088 Tune memory read-path for stale facts @andi-oai
- #13128 nit: ignore `resume_startup_does_not_consume_model_availability_nux_c… @jif-oai
- #12935 Speed up subagent startup @daveaitel-openai
- #13127 nit: disable on windows @jif-oai
- #13129 fix: package
models.jsonfor Bazel tests @jif-oai - #13065 core: resolve host_executable() rules during preflight @bolinfest
- #12864 feat: load from plugins @xl-openai
- #12989 fix: MacOSAutomationPermission::BundleIDs should allow communicating … @leoshimo-oai
- #13181 [codex] include plan type in account updates @tibo-openai
- #13058 Record realtime close marker on replacement @aibrahim-oai
- #13215 Fix issue deduplication workflow for Codex issues @etraut-openai
- #13197 Improve subagent contrast in TUI @gabec-openai
- #13130 fix:
/statuswhen sub-agent @jif-oai - #13008 feat: polluted memories @jif-oai
- #13237 feat: update memories config names @jif-oai
- #13131 fix: esc in
/agent@jif-oai - #13052 core: reuse parent shell snapshot for thread-spawn subagents @daveaitel-openai
- #13249 chore:
/multiagentalias for/agent@jif-oai - #13057 fix: use https://git.savannah.gnu.org/git/bash instead of https://github.com/bolinfest/bash @bolinfest
- #13090 Fix project trust config parsing so CLI overrides work @etraut-openai
- #13202 tui: restore draft footer hints @charley-oai
- #13246 feat: enable ma through
/agent@jif-oai - #12642 fix(core) shell_snapshot multiline exports @dylan-hurd-oai
- #11814 test(app-server): increase flow test timeout to reduce flake @joshka-oai
- #13282 app-server: Update
thread/name/setto support not-loaded threads @euroelessar - #13285 feat(app-server): add tracing to all app-server APIs @owenlin0
- #13265 Update realtime websocket API @aibrahim-oai
- #13261 fix(app-server): emit turn/started only when turn actually starts @owenlin0
- #13079 app-server: Silence thread status changes caused by thread being created @euroelessar
- #13284 Adjusting plan prompt for clarity and verbosity @bfioca-openai
- #13286 feat(app-server-test-client): support tracing @owenlin0
- #13061 chore: remove SkillMetadata.permissions and derive skill sandboxing from permission_profile @celia-oai
- #12006 tui: preserve kill buffer across submit and slash-command clears @rakan-oai
- #13212 add fast mode toggle @pash-openai
- #13250 fix(core): scope file search gitignore to repository context @fcoury
- #13313 Renaming Team to Business plan during TUI onboarding @bwanner-oai
- #13248 fix: agent race @jif-oai
- #13235 fix: agent when profile @jif-oai
- #13336 fix: db windows path @jif-oai
- #13334 app-server service tier plumbing (plus some cleanup) @pash-openai
- #13341 feat: presentation artifact p1 @jif-oai
- #13344 feat: pres artifact 2 @jif-oai
- #13346 feat: pres artifact 3 @jif-oai
- #13345 feat: spreadsheet artifact @jif-oai
- #13347 feat: spreadsheet v2 @jif-oai
- #13348 feat: presentation part 4 @jif-oai
- #13350 feat: spreadsheet part 3 @jif-oai
- #13355 feat: pres artifact part 5 @jif-oai
- #13357 feat: add multi-actions to presentation tool @jif-oai
- #13360 feat: artifact presentation part 7 @jif-oai
- #13362 feat: wire spreadsheet artifact @jif-oai
- #12741 Add Windows direct install script @efrazer-oai
- #13376 realtime prompt changes @aibrahim-oai
- #13324 app-server-protocol: export flat v2 schema bundle @apanasenko-oai
- #13364 Remove Responses V1 websocket implementation @pakrym-oai
- #12969 app-server: source /feedback logs from sqlite at trace level @charley-oai
- #13381 chore: rm --all-features flag from rust-analyzer @sayan-oai
- #13043 Collapse parsed command summaries when any stage is unknown @nornagon-openai
- #13385 Revert "realtime prompt changes" @aibrahim-oai
- #13389 fix @aibrahim-oai
- #13375 chore(app-server): delete v1 RPC methods and notifications @owenlin0
- #13397 chore(app-server): restore EventMsg TS types @owenlin0
- #13395 Build delegated realtime handoff text from all messages @aibrahim-oai
- #13399 Require deduplicator success before commenting @etraut-openai
- #13398 Revert "Revert "realtime prompt changes"" @aibrahim-oai
- #13333 Refactor plugin config and cache path @xl-openai
- #13275 fix(network-proxy): reject mismatched host headers @viyatb-oai
- #12868 tui: align pending steers with core acceptance @charley-oai
- #13280 Add thread metadata update endpoint to app server @joeytrasatti-openai
- #13050 Add under-development original-resolution view_image support @fjord-oai
- #13402 Ensure the env values of imported shell_environment_policy.set is string @alexsong-oai
- #13331 Make js_repl image output controllable @fjord-oai
- #13401 feat: load plugin apps @sayan-oai
- #13292 [feedback] diagnostics @rhan-oai
- #13414 feat(app-server): add a skills/changed v2 notification @owenlin0
- #13368 feat(app-server): propagate app-server trace context into core @owenlin0
- #13413 copy command-runner to CODEX_HOME so sandbox users can always execute it @iceweasel-oai
- #13366 [bazel] Bump rules_rs and llvm @zbarsky-openai
- #13409 Feat: Preserve network access on read-only sandbox policies @celia-oai
- #13388 config: enforce enterprise feature requirements @bolinfest
- #13218 Add role-specific subagent nickname overrides @gabec-openai
- #13427 chore: Nest skill and protocol network permissions under
network.enabled@celia-oai - #13429 core: box wrapper futures to reduce stack pressure @bolinfest
- #13391 support 'flex' tier in app-server in addition to 'fast' @kharvd
- #13290 image-gen-core @won-openai
- #13404 feat: better multi-agent prompt @jif-oai
- #13412 feat: ordinal nick name @jif-oai
- #13454 add metric for per-turn token usage @jif-oai
- #13240 fix: pending messages in
/agent@jif-oai - #13461 fix: bad merge @jif-oai
- #13460 feat: disable request input on sub agent @jif-oai
- #13456 feat: add metric for per-turn tool count and add tmp_mem flag @jif-oai
- #13468 nit: citation prompt @jif-oai
- #13467 feat: memories in workspace write @jif-oai
- #12383 add new scopes to login @adaley-openai
- #13484 allow apps to specify cwd for sandbox setup. @iceweasel-oai
- #13424 feat(core, tracing): add a span representing a turn @owenlin0
- #13489 remove serviceTier from app-server examples @kharvd
- #13458 [tui] Update Fast slash command description @pash-openai
- #13382 fix(tui): decode ANSI alpha-channel encoding in syntax themes @fcoury
- #13485 feat: external artifacts builder @jif-oai
- #13493 feat(app-server-test-client): OTEL setup for tracing @owenlin0
- #13501 add metrics for external config import @alexsong-oai
- #13495 Notify TUI about plan mode prompts and user input requests @etraut-openai
- #13506 [release] temporarily use thin LTO for releases @bolinfest
- #13505 Prefix handoff messages with role @aibrahim-oai
- #13422 plugin: support local-based marketplace.json + install endpoint. @xl-openai