mirror of
https://github.com/openai/codex.git
synced 2026-04-24 22:54:54 +00:00
- Added `codex marketplace add` and app-server support for installing plugin marketplaces from GitHub, git URLs, local directories, and direct `marketplace.json` URLs (#17087, #17717, #17756). - Added TUI prompt history improvements, including `Ctrl+R` reverse search and local recall for accepted slash commands (#17550, #17336). - Added TUI and app-server controls for memory mode, memory reset/deletion, and memory-extension cleanup (#17632, #17626, #17913, #17937, #17844). - Expanded MCP/plugin support with MCP Apps tool calls, namespaced MCP registration, parallel-call opt-in, and sandbox-state metadata for MCP servers (#17364, #17404, #17667, #17763). - Added realtime and app-server APIs for output modality, transcript completion events, raw turn item injection, and symlink-aware filesystem metadata (#17701, #17703, #17719). - Added a secure devcontainer profile with bubblewrap support, plus macOS sandbox allowlists for Unix sockets (#10431, #17547, #17654). ## Bug Fixes - Fixed macOS sandbox/proxy handling for private DNS and removed the `danger-full-access` denylist-only network mode (#17370, #17732). - Fixed Windows cwd/session matching so `resume --last` and `thread/list` work when paths use verbatim prefixes (#17414). - Fixed rate-limit/account handling for `prolite` plans and made unknown WHAM plan values decodable (#17419). - Made Guardian timeouts distinct from policy denials, with timeout-specific guidance and visible TUI history entries (#17381, #17486, #17521, #17557). - Stabilized app-server behavior by avoiding premature thread unloads, tolerating failed trust persistence on startup, and skipping broken symlinks in `fs/readDirectory` (#17398, #17595, #17907). - Fixed MCP/tool-call edge cases including flattened deferred tool names, elicitation timeout accounting, and empty namespace descriptions (#17556, #17566, #17946). ## Documentation - Documented the secure devcontainer profile and its bubblewrap requirements (#10431, #17547). - Added TUI composer documentation for history search behavior (#17550). - Updated app-server docs for new MCP, marketplace, turn injection, memory reset, filesystem metadata, external-agent migration, and websocket token-hash APIs (#17364, #17717, #17703, #17913, #17719, #17855, #17871). - Documented WSL1 bubblewrap limitations and WSL2 behavior (#17559). - Added memory pipeline documentation for extension cleanup (#17844). ## Chores - Hardened supply-chain and CI inputs by pinning GitHub Actions, cargo installs, git dependencies, V8 checksums, and cargo-deny source allowlists (#17471). - Added Bazel release-build verification so release-only Rust code is compiled in PR CI (#17704, #17705). - Introduced the `codex-thread-store` crate/interface and moved local thread listing behind it (#17659, #17824). - Required reviewed pnpm dependency build scripts for workspace installs (#17558). - Reduced Rust maintenance surface with broader absolute-path types and removal of unused helper APIs (#17407, #17792, #17146). ## Changelog Full Changelog: https://github.com/openai/codex/compare/rust-v0.120.0...rust-v0.121.0 - #17087 Add marketplace command @xli-oai - #17409 Fix Windows exec-server output test flake @etraut-openai - #17381 representing guardian review timeouts in protocol types @won-openai - #17399 TUI: enforce core boundary @etraut-openai - #17370 fix: unblock private DNS in macOS sandbox @viyatb-oai - #17396 update cloud requirements parse failure msg @alexsong-oai - #17364 [mcp] Support MCP Apps part 3 - Add mcp tool call support. @mzeng-openai - #17424 Stabilize marketplace add local source test @ningyi-oai - #17414 Fix thread/list cwd filtering for Windows verbatim paths @etraut-openai - #10431 feat(devcontainer): add separate secure customer profile @viyatb-oai - #17314 Pass turn id with feedback uploads @ningyi-oai - #17336 fix(tui): recall accepted slash commands locally @fcoury-oai - #17430 Handle closed TUI input stream as shutdown @etraut-openai - #17385 Add use_agent_identity feature flag @adrian-openai - #17483 Update issue labeler agent labels @etraut-openai - #17493 fix @aibrahim-oai - #17419 Support prolite plan type @etraut-openai - #17416 Clear /ps after /stop @etraut-openai - #17415 Restore codex-tui resume hint on exit @etraut-openai - #17402 chore: refactor name and namespace to single type @sayan-oai - #17486 changing decision semantics after guardian timeout @won-openai - #17521 Clarify guardian timeout guidance @won-openai - #17547 [codex] Support bubblewrap in secure Docker devcontainer @viyatb-oai - #17519 Budget realtime current thread context @aibrahim-oai - #17556 [codex] Support flattened deferred MCP tool calls @fc-oai - #17558 build(pnpm): require reviewed dependency build scripts @mcgrew-oai - #17559 fix(sandboxing): reject WSL1 bubblewrap sandboxing @viyatb-oai - #17520 Mirror user text into realtime @aibrahim-oai - #17550 feat(tui): add reverse history search to composer @fcoury-oai - #17420 Remove context status-line meter @etraut-openai - #17506 Expose instruction sources (AGENTS.md) via app server @etraut-openai - #17566 fix(mcp) pause timer for elicitations @dylan-hurd-oai - #17406 Add MCP tool wall time to model output @pakrym-oai - #17294 Run exec-server fs operations through sandbox helper @starr-openai - #17605 Stabilize exec-server process tests @etraut-openai - #17221 feat: ignore keyring on 0.0.0 @jif-oai - #17216 Build remote exec env from exec-server policy @jif-oai - #17633 nit: change consolidation model @jif-oai - #17640 fix: stability exec server @jif-oai - #17643 fix: dedup compact @jif-oai - #17247 Make forked agent spawns keep parent model config @friel-openai - #17470 Fix custom tool output cleanup on stream failure @etraut-openai - #17417 Emit plan-mode prompt notifications for questionnaires @etraut-openai - #17481 Wrap status reset timestamps in narrow layouts @etraut-openai - #17601 Suppress duplicate compaction and terminal wait events @etraut-openai - #17657 Fix TUI compaction item replay @etraut-openai - #17595 Do not fail thread start when trust persistence fails @etraut-openai - #17407 Use AbsolutePathBuf in skill loading and codex_home @pakrym-oai - #17626 feat: disable memory endpoint @jif-oai - #17365 Include legacy deny paths in elevated Windows sandbox setup @iceweasel-oai - #17638 feat: Avoid reloading curated marketplaces for tool-suggest discovera… @jif-oai - #17398 app-server: Only unload threads which were unused for some time @euroelessar - #17669 only specify remote ports when the rule needs them @iceweasel-oai - #17691 Fix tui compilation @davidhao3300 - #17384 Update phase 2 memory model to gpt-5.4 @kliu128 - #17395 Remove unnecessary tests @kliu128 - #17685 Cap realtime mirrored user turns @aibrahim-oai - #17699 change realtime tool description @aibrahim-oai - #17667 Add `supports_parallel_tool_calls` flag to included mcps @josiah-openai - #17703 Add turn item injection API @pakrym-oai - #17671 Stabilize exec-server filesystem tests in CI @starr-openai - #17557 guardian timeout fix pr 3 - ux touch for timeouts @won-openai - #17719 [codex] Add symlink flag to fs metadata @pakrym-oai - #17146 [codex] Remove unused Rust helpers @pakrym-oai - #17471 fix: pin inputs @viyatb-oai - #17717 [codex] Refactor marketplace add into shared core flow @xli-oai - #17747 Refactor plugin loading to async @pakrym-oai - #17709 [codex] Initialize ICU data for code mode V8 @pakrym-oai - #17749 [codex] drain mailbox only at request boundaries @tibo-openai - #16640 [codex-analytics] feature plumbing and emittance @rhan-oai - #17761 Tighten realtime handoff finalization @aibrahim-oai - #17701 Add realtime output modality and transcript events @aibrahim-oai - #17777 nit: feature flag @jif-oai - #17637 feat: add context percent to status line @jif-oai - #17665 Always enable original image detail on supported models @fjord-oai - #17374 [codex-analytics] add session source to client metadata @marksteinbrick-oai - #17489 Moving updated-at timestamps to unique millisecond times @ddr-oai - #17784 feat: codex sampler @jif-oai - #17732 fix: Revert danger-full-access denylist-only mode @viyatb-oai - #17234 Redirect debug client output to a file @rasmusrygaard - #17803 Keep image_detail_original as a removed feature flag @fjord-oai - #17372 app-server: prepare to run initialized rpcs concurrently @euroelessar - #17704 Refactor Bazel CI job setup @bolinfest - #17674 Route apply_patch through the environment filesystem @starr-openai - #17702 Fix remote skill popup loading @starr-openai - #17830 [codex] Fix app-server initialized request analytics build @etraut-openai - #17389 [codex-analytics] enable general analytics by default @rhan-oai - #17659 thread store interface @wiltzius-openai - #17792 Spread AbsolutePathBuf @pakrym-oai - #17808 fix: apply patch bin refresh @jif-oai - #17838 Add realtime wire trace logs @aibrahim-oai - #17684 Adjust default tool search result caps @malone-oai - #17705 Add Bazel verify-release-build job @bolinfest - #17720 Make skill loading filesystem-aware @pakrym-oai - #17756 [codex] Support local marketplace sources @xli-oai - #17846 Fix for Guardian CI Tests stack overflow, applying Box to reduce stack pressure @won-openai - #17855 support plugins in external agent config migration @alexsong-oai - #17872 Disable hooks in guardian review sessions @abhinav-oai - #17868 Wrap delegated input text @guinness-oai - #17884 Fix clippy warnings in external agent config migration @canvrno-oai - #17837 Reuse remote exec-server in core tests @starr-openai - #17859 sandbox: remove dead seatbelt helper and update tests @bolinfest - #17870 fix: cleanup the contract of the general-purpose exec() function @bolinfest - #17871 fix: add websocket capability token hash support @viyatb-oai - #17763 Send sandbox state through MCP tool metadata @aaronl-openai - #17654 Support Unix socket allowlists in macOS sandbox @aaronl-openai - #17915 fix: cargo deny @jif-oai - #17913 feat: add endpoint to delete memories @jif-oai - #17844 feat: cleaning of memories extension @jif-oai - #17921 chore: exp flag @jif-oai - #17917 [codex] Fix current main CI blockers @sayan-oai - #17919 chore: do not disable memories for past rollouts on reset @jif-oai - #17924 nit: stable test @jif-oai - #17632 feat: memories menu @jif-oai - #17404 register all mcp tools with namespace @sayan-oai - #17941 nit: doc @jif-oai - #17938 feat: sanitize rollouts before phase 1 @jif-oai - #17937 feat: reset memories button @jif-oai - #17883 Remove exec-server fs sandbox request preflight @pakrym-oai - #17386 Register agent identities behind use_agent_identity @adrian-openai - #17907 Fix fs/readDirectory to skip broken symlinks @willwang-openai - #17960 chore(features) codex dependencies feat @dylan-hurd-oai - #17965 fix: rename is_azure_responses_wire_base_url to is_azure_responses_provider @bolinfest - #17946 Fix empty tool descriptions @shijie-oai - #17824 [codex] Add local thread store listing @wiltzius-openai - #17942 Add CLI update announcement @shijie-oai - #17866 Refactor auth providers to mutate request headers @pakrym-oai - #17902 app-server: track remote-control seq IDs per stream @euroelessar - #17957 mcp: remove codex/sandbox-state custom request support @bolinfest - #17953 fix: propagate log db @jif-oai - #17920 chore(tui) cleanup @dylan-hurd-oai - #17981 chore: tmp disable @jif-oai
446 lines
13 KiB
TOML
446 lines
13 KiB
TOML
[workspace]
|
|
members = [
|
|
"analytics",
|
|
"backend-client",
|
|
"ansi-escape",
|
|
"async-utils",
|
|
"app-server",
|
|
"app-server-client",
|
|
"app-server-protocol",
|
|
"app-server-test-client",
|
|
"debug-client",
|
|
"apply-patch",
|
|
"arg0",
|
|
"feedback",
|
|
"features",
|
|
"codex-backend-openapi-models",
|
|
"code-mode",
|
|
"cloud-requirements",
|
|
"cloud-tasks",
|
|
"cloud-tasks-client",
|
|
"cloud-tasks-mock-client",
|
|
"cli",
|
|
"collaboration-mode-templates",
|
|
"connectors",
|
|
"config",
|
|
"shell-command",
|
|
"shell-escalation",
|
|
"skills",
|
|
"core",
|
|
"core-skills",
|
|
"hooks",
|
|
"instructions",
|
|
"secrets",
|
|
"exec",
|
|
"exec-server",
|
|
"execpolicy",
|
|
"execpolicy-legacy",
|
|
"keyring-store",
|
|
"file-search",
|
|
"linux-sandbox",
|
|
"lmstudio",
|
|
"login",
|
|
"codex-mcp",
|
|
"mcp-server",
|
|
"model-provider-info",
|
|
"models-manager",
|
|
"network-proxy",
|
|
"ollama",
|
|
"process-hardening",
|
|
"protocol",
|
|
"realtime-webrtc",
|
|
"rollout",
|
|
"rmcp-client",
|
|
"responses-api-proxy",
|
|
"response-debug-context",
|
|
"sandboxing",
|
|
"stdio-to-uds",
|
|
"otel",
|
|
"tui",
|
|
"tools",
|
|
"v8-poc",
|
|
"utils/absolute-path",
|
|
"utils/cargo-bin",
|
|
"git-utils",
|
|
"utils/cache",
|
|
"utils/image",
|
|
"utils/json-to-toml",
|
|
"utils/home-dir",
|
|
"utils/pty",
|
|
"utils/readiness",
|
|
"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-store",
|
|
"codex-experimental-api-macros",
|
|
"plugin",
|
|
]
|
|
resolver = "2"
|
|
|
|
[workspace.package]
|
|
version = "0.121.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
|
|
app_test_support = { path = "app-server/tests/common" }
|
|
codex-analytics = { path = "analytics" }
|
|
codex-ansi-escape = { path = "ansi-escape" }
|
|
codex-api = { path = "codex-api" }
|
|
codex-app-server = { path = "app-server" }
|
|
codex-app-server-client = { path = "app-server-client" }
|
|
codex-app-server-protocol = { path = "app-server-protocol" }
|
|
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-chatgpt = { path = "chatgpt" }
|
|
codex-cli = { path = "cli" }
|
|
codex-client = { path = "codex-client" }
|
|
codex-collaboration-mode-templates = { path = "collaboration-mode-templates" }
|
|
codex-cloud-requirements = { path = "cloud-requirements" }
|
|
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-config = { path = "config" }
|
|
codex-connectors = { path = "connectors" }
|
|
codex-core = { path = "core" }
|
|
codex-core-skills = { path = "core-skills" }
|
|
codex-exec = { path = "exec" }
|
|
codex-exec-server = { path = "exec-server" }
|
|
codex-execpolicy = { path = "execpolicy" }
|
|
codex-experimental-api-macros = { path = "codex-experimental-api-macros" }
|
|
codex-features = { path = "features" }
|
|
codex-feedback = { path = "feedback" }
|
|
codex-file-search = { path = "file-search" }
|
|
codex-git-utils = { path = "git-utils" }
|
|
codex-hooks = { path = "hooks" }
|
|
codex-instructions = { path = "instructions" }
|
|
codex-keyring-store = { path = "keyring-store" }
|
|
codex-linux-sandbox = { path = "linux-sandbox" }
|
|
codex-lmstudio = { path = "lmstudio" }
|
|
codex-login = { path = "login" }
|
|
codex-mcp = { path = "codex-mcp" }
|
|
codex-mcp-server = { path = "mcp-server" }
|
|
codex-model-provider-info = { path = "model-provider-info" }
|
|
codex-models-manager = { path = "models-manager" }
|
|
codex-network-proxy = { path = "network-proxy" }
|
|
codex-ollama = { path = "ollama" }
|
|
codex-otel = { path = "otel" }
|
|
codex-plugin = { path = "plugin" }
|
|
codex-process-hardening = { path = "process-hardening" }
|
|
codex-protocol = { path = "protocol" }
|
|
codex-realtime-webrtc = { path = "realtime-webrtc" }
|
|
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-sandboxing = { path = "sandboxing" }
|
|
codex-secrets = { path = "secrets" }
|
|
codex-shell-command = { path = "shell-command" }
|
|
codex-shell-escalation = { path = "shell-escalation" }
|
|
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-tui = { path = "tui" }
|
|
codex-utils-absolute-path = { path = "utils/absolute-path" }
|
|
codex-utils-approval-presets = { path = "utils/approval-presets" }
|
|
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-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-plugins = { path = "utils/plugins" }
|
|
codex-utils-pty = { path = "utils/pty" }
|
|
codex-utils-readiness = { path = "utils/readiness" }
|
|
codex-utils-rustls-provider = { path = "utils/rustls-provider" }
|
|
codex-utils-sandbox-summary = { path = "utils/sandbox-summary" }
|
|
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-v8-poc = { path = "v8-poc" }
|
|
codex-windows-sandbox = { path = "windows-sandbox-rs" }
|
|
core_test_support = { path = "core/tests/common" }
|
|
mcp_test_support = { path = "mcp-server/tests/common" }
|
|
|
|
# External
|
|
age = "0.11.1"
|
|
allocative = "0.3.3"
|
|
ansi-to-tui = "7.0.0"
|
|
anyhow = "1"
|
|
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-stream = "0.3.6"
|
|
async-trait = "0.1.89"
|
|
axum = { version = "0.8", default-features = false }
|
|
base64 = "0.22.1"
|
|
bm25 = "2.3.2"
|
|
bytes = "1.10.1"
|
|
chardetng = "0.1.17"
|
|
chrono = "0.4.43"
|
|
clap = "4"
|
|
clap_complete = "4"
|
|
color-eyre = "0.6.3"
|
|
constant_time_eq = "0.3.1"
|
|
crossbeam-channel = "0.5.15"
|
|
crossterm = "0.28.1"
|
|
csv = "1.3.1"
|
|
ctor = "0.6.3"
|
|
deno_core_icudata = "0.77.0"
|
|
derive_more = "2"
|
|
diffy = "0.4.2"
|
|
dirs = "6"
|
|
dotenvy = "0.15.7"
|
|
dunce = "1.0.4"
|
|
ed25519-dalek = { version = "2.2.0", features = ["pkcs8"] }
|
|
encoding_rs = "0.8.35"
|
|
env-flags = "0.1.1"
|
|
env_logger = "0.11.9"
|
|
eventsource-stream = "0.2.3"
|
|
futures = { version = "0.3", default-features = false }
|
|
gethostname = "1.1.0"
|
|
globset = "0.4"
|
|
hmac = "0.12.1"
|
|
http = "1.3.1"
|
|
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"
|
|
jsonwebtoken = "9.3.1"
|
|
keyring = { version = "3.6", default-features = false }
|
|
landlock = "0.4.4"
|
|
lazy_static = "1"
|
|
libc = "0.2.182"
|
|
log = "0.4"
|
|
lru = "0.16.3"
|
|
maplit = "1.0.2"
|
|
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"
|
|
path-absolutize = "3.1.1"
|
|
pathdiff = "0.2"
|
|
portable-pty = "0.9.0"
|
|
predicates = "3"
|
|
pretty_assertions = "1.4.1"
|
|
pulldown-cmark = "0.10"
|
|
quick-xml = "0.38.4"
|
|
rand = "0.9"
|
|
ratatui = "0.29.0"
|
|
ratatui-macros = "0.6.0"
|
|
regex = "1.12.3"
|
|
regex-lite = "0.1.8"
|
|
reqwest = "0.12"
|
|
rmcp = { version = "0.15.0", default-features = false }
|
|
runfiles = { git = "https://github.com/dzbarsky/rules_rust", rev = "b56cbaa8465e74127f1ea216f813cd377295ad81" }
|
|
rustls = { version = "0.23", default-features = false, features = [
|
|
"ring",
|
|
"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 = "1"
|
|
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"
|
|
sha2 = "0.10"
|
|
shlex = "1.3.0"
|
|
similar = "2.7.0"
|
|
socket2 = "0.6.1"
|
|
sqlx = { version = "0.8.6", default-features = false, features = [
|
|
"chrono",
|
|
"json",
|
|
"macros",
|
|
"migrate",
|
|
"runtime-tokio-rustls",
|
|
"sqlite",
|
|
"time",
|
|
"uuid",
|
|
] }
|
|
starlark = "0.13.0"
|
|
strum = "0.27.2"
|
|
strum_macros = "0.28.0"
|
|
supports-color = "3.0.2"
|
|
syntect = "5"
|
|
sys-locale = "0.3.2"
|
|
tempfile = "3.23.0"
|
|
test-log = "0.2.19"
|
|
textwrap = "0.16.2"
|
|
thiserror = "2.0.17"
|
|
time = "0.3.47"
|
|
tiny_http = "0.12"
|
|
tokio = "1"
|
|
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"
|
|
tree-sitter = "0.25.10"
|
|
tree-sitter-bash = "0.25"
|
|
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 = "=146.4.0"
|
|
vt100 = "0.16.2"
|
|
walkdir = "2.5.0"
|
|
webbrowser = "1.0"
|
|
which = "8"
|
|
whoami = "1.6.1"
|
|
wildmatch = "2.6.1"
|
|
zip = "2.4.2"
|
|
zstd = "0.13"
|
|
|
|
wiremock = "0.6"
|
|
zeroize = "1.8.2"
|
|
|
|
[workspace.lints]
|
|
rust = {}
|
|
|
|
[workspace.lints.clippy]
|
|
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-utils-readiness",
|
|
"codex-utils-template",
|
|
"codex-v8-poc",
|
|
]
|
|
|
|
[profile.release]
|
|
lto = "fat"
|
|
split-debuginfo = "off"
|
|
# Because we bundle some of these executables with the TypeScript CLI, we
|
|
# remove everything to make the binary as small as possible.
|
|
strip = "symbols"
|
|
|
|
# See https://github.com/openai/codex/issues/1411 for details.
|
|
codegen-units = 1
|
|
|
|
[profile.ci-test]
|
|
debug = 1 # Reduce debug symbol size
|
|
inherits = "test"
|
|
opt-level = 0
|
|
|
|
[patch.crates-io]
|
|
# Uncomment to debug local changes.
|
|
# ratatui = { path = "../../ratatui" }
|
|
crossterm = { git = "https://github.com/nornagon/crossterm", rev = "87db8bfa6dc99427fd3b071681b07fc31c6ce995" }
|
|
ratatui = { git = "https://github.com/nornagon/ratatui", rev = "9b2ad1298408c45918ee9f8241a6f95498cdbed2" }
|
|
tokio-tungstenite = { git = "https://github.com/openai-oss-forks/tokio-tungstenite", rev = "132f5b39c862e3a970f731d709608b3e6276d5f6" }
|
|
tungstenite = { git = "https://github.com/openai-oss-forks/tungstenite-rs", rev = "9200079d3b54a1ff51072e24d81fd354f085156f" }
|
|
|
|
# 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 = "9200079d3b54a1ff51072e24d81fd354f085156f" }
|