{ "id": "codex", "name": "Codex", "description": "Codex app-server harness and Codex-managed GPT model catalog.", "providers": ["codex"], "contracts": { "mediaUnderstandingProviders": ["codex"], "migrationProviders": ["codex"] }, "mediaUnderstandingProviderMetadata": { "codex": { "capabilities": ["image"], "defaultModels": { "image": "gpt-5.5" } } }, "providerDiscoveryEntry": "./provider-discovery.ts", "syntheticAuthRefs": ["codex"], "nonSecretAuthMarkers": ["codex-app-server"], "activation": { "onStartup": false, "onAgentHarnesses": ["codex"] }, "commandAliases": [ { "name": "codex", "kind": "runtime-slash", "cliCommand": "plugins" } ], "configSchema": { "type": "object", "additionalProperties": false, "properties": { "codexDynamicToolsProfile": { "type": "string", "enum": ["native-first", "openclaw-compat"], "default": "native-first" }, "codexDynamicToolsExclude": { "type": "array", "items": { "type": "string" }, "default": [] }, "discovery": { "type": "object", "additionalProperties": false, "properties": { "enabled": { "type": "boolean" }, "timeoutMs": { "type": "number", "minimum": 1, "default": 2500 } } }, "computerUse": { "type": "object", "additionalProperties": false, "properties": { "enabled": { "type": "boolean", "default": false }, "autoInstall": { "type": "boolean", "default": false }, "marketplaceDiscoveryTimeoutMs": { "type": "number", "minimum": 1, "default": 60000 }, "marketplaceSource": { "type": "string" }, "marketplacePath": { "type": "string" }, "marketplaceName": { "type": "string" }, "pluginName": { "type": "string", "default": "computer-use" }, "mcpServerName": { "type": "string", "default": "computer-use" } } }, "appServer": { "type": "object", "additionalProperties": false, "properties": { "mode": { "type": "string", "enum": ["yolo", "guardian"], "default": "yolo" }, "transport": { "type": "string", "enum": ["stdio", "websocket"], "default": "stdio" }, "command": { "type": "string" }, "args": { "oneOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "string" } ] }, "url": { "type": "string" }, "authToken": { "type": "string" }, "headers": { "type": "object", "additionalProperties": { "type": "string" } }, "clearEnv": { "type": "array", "items": { "type": "string" } }, "requestTimeoutMs": { "type": "number", "minimum": 1, "default": 60000 }, "approvalPolicy": { "type": "string", "enum": ["never", "on-request", "on-failure", "untrusted"] }, "sandbox": { "type": "string", "enum": ["read-only", "workspace-write", "danger-full-access"] }, "approvalsReviewer": { "type": "string", "enum": ["user", "auto_review", "guardian_subagent"] }, "serviceTier": { "type": ["string", "null"], "enum": ["fast", "flex", null] }, "defaultWorkspaceDir": { "type": "string" } } } } }, "uiHints": { "codexDynamicToolsProfile": { "label": "Dynamic Tools Profile", "help": "Select which OpenClaw dynamic tools are exposed to Codex app-server. native-first omits tools Codex already owns.", "advanced": true }, "codexDynamicToolsExclude": { "label": "Dynamic Tool Excludes", "help": "Additional OpenClaw dynamic tool names to omit from Codex app-server turns.", "advanced": true }, "discovery": { "label": "Model Discovery", "help": "Plugin-owned controls for discovering Codex app-server models." }, "discovery.enabled": { "label": "Enable Discovery", "help": "When false, OpenClaw keeps the Codex harness available but uses the bundled fallback model list." }, "discovery.timeoutMs": { "label": "Discovery Timeout", "help": "Maximum time to wait for Codex app-server model discovery before falling back to the bundled model list.", "advanced": true }, "computerUse": { "label": "Computer Use", "help": "Controls Codex app-server setup for the Computer Use plugin.", "advanced": true }, "computerUse.enabled": { "label": "Enable Computer Use", "help": "When true, Codex-mode turns require the configured Computer Use MCP server to be available.", "advanced": true }, "computerUse.autoInstall": { "label": "Auto Install", "help": "Install the configured Computer Use plugin when Codex-mode turns start.", "advanced": true }, "computerUse.marketplaceDiscoveryTimeoutMs": { "label": "Marketplace Discovery Timeout", "help": "Maximum time to wait for Codex app-server to finish loading marketplaces during Computer Use install.", "advanced": true }, "computerUse.marketplaceSource": { "label": "Marketplace Source", "help": "Optional Codex marketplace source to add before installing Computer Use.", "advanced": true }, "computerUse.marketplacePath": { "label": "Marketplace Path", "help": "Optional local Codex marketplace file path containing the Computer Use plugin.", "advanced": true }, "computerUse.marketplaceName": { "label": "Marketplace Name", "help": "Optional registered Codex marketplace name containing the Computer Use plugin.", "advanced": true }, "computerUse.pluginName": { "label": "Plugin Name", "help": "Codex marketplace plugin name for Computer Use.", "advanced": true }, "computerUse.mcpServerName": { "label": "MCP Server Name", "help": "MCP server name exposed by the Computer Use plugin.", "advanced": true }, "appServer": { "label": "App Server", "help": "Runtime controls for connecting to Codex app-server.", "advanced": true }, "appServer.mode": { "label": "Execution Mode", "help": "Use yolo for unchained local execution or guardian for Codex guardian-reviewed approvals.", "advanced": true }, "appServer.transport": { "label": "Transport", "help": "Use stdio to spawn Codex locally, or websocket to connect to an already-running app-server.", "advanced": true }, "appServer.command": { "label": "Command", "help": "Executable used for stdio transport. Leave unset to use OpenClaw's managed Codex binary.", "advanced": true }, "appServer.args": { "label": "Arguments", "help": "Arguments used for stdio transport. Defaults to app-server --listen stdio://.", "advanced": true }, "appServer.url": { "label": "WebSocket URL", "help": "Codex app-server WebSocket URL when transport is websocket.", "advanced": true }, "appServer.authToken": { "label": "Auth Token", "help": "Bearer token sent to the WebSocket app-server.", "sensitive": true, "advanced": true }, "appServer.headers": { "label": "Headers", "help": "Additional headers sent to the WebSocket app-server.", "advanced": true }, "appServer.clearEnv": { "label": "Clear Environment", "help": "Environment variable names removed from the spawned stdio app-server process after overrides are applied.", "advanced": true }, "appServer.requestTimeoutMs": { "label": "Request Timeout", "help": "Maximum time to wait for Codex app-server control-plane requests.", "advanced": true }, "appServer.approvalPolicy": { "label": "Approval Policy", "help": "Codex native approval policy sent to thread start, resume, and turns.", "advanced": true }, "appServer.sandbox": { "label": "Sandbox", "help": "Codex native sandbox mode sent to thread start and resume.", "advanced": true }, "appServer.approvalsReviewer": { "label": "Approvals Reviewer", "help": "Use user approvals or Codex auto_review for native app-server approvals. guardian_subagent remains accepted for compatibility.", "advanced": true }, "appServer.serviceTier": { "label": "Service Tier", "help": "Optional Codex app-server service tier. Use fast, flex, or null.", "advanced": true }, "appServer.defaultWorkspaceDir": { "label": "Default Workspace", "help": "Workspace used by /codex bind when --cwd is omitted.", "advanced": true } } }