mirror of
https://github.com/openai/codex.git
synced 2026-10-30 19:18:49 +00:00
Add a standalone codex-exec-server executable (#57589)
## What changed Extract executor startup into `codex-exec-server-cli`, shared by `codex exec-server` and the new standalone binary. Preserve executor arguments, authentication, configuration overrides, and sandbox helper dispatch across both entry points. Build the standalone binary with `cargo build -p codex-exec-server-cli --bin codex-exec-server` and run it with `codex-exec-server --listen stdio`. ## Testing Add standalone CLI parsing and help coverage, plus an integration test for version reporting, stdio initialization, filesystem reads, process execution, and sandbox helper re-execution when supported. GitOrigin-RevId: ab3a81c6b91b6f45e4d72d8add2e01af8372e97f
This commit is contained in:
committed by
copyberry
parent
37f199dab1
commit
a9ea49e78b
+124
@@ -0,0 +1,124 @@
|
||||
---
|
||||
source: exec-server-cli/src/exec_server_args_tests.rs
|
||||
assertion_line: 318
|
||||
expression: help
|
||||
---
|
||||
[EXPERIMENTAL] Run the standalone exec-server service
|
||||
|
||||
Usage: codex-exec-server [OPTIONS] [COMMAND]
|
||||
|
||||
Commands:
|
||||
forward Register an existing WebSocket exec-server as a remote environment
|
||||
help Print this message or the help of the given subcommand(s)
|
||||
|
||||
Options:
|
||||
-c, --config <key=value>
|
||||
Override a configuration value that would otherwise be loaded from
|
||||
`~/.codex/config.toml`. Use a dotted path (`foo.bar.baz`) to override
|
||||
nested values. The `value` portion is parsed as TOML. If it fails to
|
||||
parse as TOML, the raw string is used as a literal.
|
||||
|
||||
Examples: - `-c model="o3"` - `-c
|
||||
'sandbox_permissions=["disk-full-read-access"]'` - `-c
|
||||
shell_environment_policy.inherit=all`
|
||||
|
||||
--strict-config
|
||||
Error out when config.toml contains fields that are not recognized by
|
||||
this version of Codex
|
||||
|
||||
--linux-sandbox-pid-namespace <MODE>
|
||||
Linux PID namespace: isolate (default) or inherit. Inherit allows
|
||||
signals to other same-UID processes; enable only when provisioning a
|
||||
dedicated environment
|
||||
|
||||
[default: isolate]
|
||||
|
||||
--proxy-private-ips-via-upstream
|
||||
Allow permitted private IP destinations to use the configured upstream
|
||||
proxy. If no valid upstream proxy applies to the request protocol,
|
||||
connect directly. Loopback stays local. This flag does not require
|
||||
upstream routing
|
||||
|
||||
[env: CODEX_EXEC_SERVER_PROXY_PRIVATE_IPS_VIA_UPSTREAM]
|
||||
|
||||
--concurrent-requests <COUNT>
|
||||
Maximum number of requests to process concurrently on each connection
|
||||
|
||||
[default: 1]
|
||||
|
||||
--listen <URL>
|
||||
Transport endpoint URL. Supported values: `ws://IP:PORT` (default),
|
||||
`stdio`, `stdio://`
|
||||
|
||||
--ws-auth <MODE>
|
||||
Authentication mode for incoming WebSocket connections
|
||||
|
||||
[possible values: capability-token, signed-bearer-token]
|
||||
|
||||
--ws-token-file <PATH>
|
||||
Absolute path to the capability-token file
|
||||
|
||||
--ws-token-sha256 <HEX>
|
||||
Hex-encoded SHA-256 digest of the capability token
|
||||
|
||||
--ws-shared-secret-file <PATH>
|
||||
Absolute path to the shared secret file for signed JWT bearer tokens
|
||||
|
||||
--ws-issuer <ISSUER>
|
||||
Expected issuer for signed JWT bearer tokens
|
||||
|
||||
--ws-audience <AUDIENCE>
|
||||
Expected audience for signed JWT bearer tokens
|
||||
|
||||
--ws-max-clock-skew-seconds <SECONDS>
|
||||
Maximum clock skew when validating signed JWT bearer tokens
|
||||
|
||||
--remote <URL>
|
||||
Register this exec-server as a remote environment using the given base
|
||||
URL
|
||||
|
||||
--remote-transport <REMOTE_TRANSPORT>
|
||||
Transport used for the remote executor connection
|
||||
|
||||
[default: noise]
|
||||
[possible values: noise, direct]
|
||||
|
||||
--environment-id <ID>
|
||||
Environment id to attach to when registering remotely
|
||||
|
||||
--name <NAME>
|
||||
Human-readable environment name
|
||||
|
||||
--use-agent-identity-auth
|
||||
Use Agent Identity auth from CODEX_ACCESS_TOKEN for remote
|
||||
registration
|
||||
|
||||
--executor-credential-stdin
|
||||
Read rotating executor credentials from stdin; exit when the pipe
|
||||
closes
|
||||
|
||||
--aws-sigv4
|
||||
Sign Direct registration and WebSocket handshake requests with AWS
|
||||
SigV4
|
||||
|
||||
--aws-profile <PROFILE>
|
||||
AWS profile used for SigV4 authentication
|
||||
|
||||
--aws-region <REGION>
|
||||
AWS signing region. Uses the SDK region chain when omitted
|
||||
|
||||
--aws-service <SERVICE>
|
||||
AWS signing service
|
||||
|
||||
[default: execute-api]
|
||||
|
||||
--exit-on-stdin-close
|
||||
Exit when the parent-owned standard-input pipe closes
|
||||
|
||||
[env: CODEX_EXEC_SERVER_EXIT_ON_STDIN_CLOSE]
|
||||
|
||||
-h, --help
|
||||
Print help (see a summary with '-h')
|
||||
|
||||
-V, --version
|
||||
Print version
|
||||
Reference in New Issue
Block a user