{ "$schema": "http://json-schema.org/draft-07/schema#", "definitions": { "v2": { "AbsolutePathBuf": { "description": "A path that is guaranteed to be absolute and normalized (though it is not guaranteed to be canonicalized or exist on the filesystem).\n\nIMPORTANT: When deserializing an `AbsolutePathBuf`, a base path must be set using [AbsolutePathBufGuard::new]. If no base path is set, the deserialization will fail unless the path being deserialized is already absolute.", "type": "string" }, "Account": { "oneOf": [ { "properties": { "type": { "enum": [ "apiKey" ], "title": "ApiKeyAccountType", "type": "string" } }, "required": [ "type" ], "title": "ApiKeyAccount", "type": "object" }, { "properties": { "email": { "type": "string" }, "planType": { "$ref": "#/definitions/v2/PlanType" }, "type": { "enum": [ "chatgpt" ], "title": "ChatgptAccountType", "type": "string" } }, "required": [ "email", "planType", "type" ], "title": "ChatgptAccount", "type": "object" } ] }, "AccountLoginCompletedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "error": { "type": [ "string", "null" ] }, "loginId": { "type": [ "string", "null" ] }, "success": { "type": "boolean" } }, "required": [ "success" ], "title": "AccountLoginCompletedNotification", "type": "object" }, "AccountRateLimitsUpdatedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "rateLimits": { "$ref": "#/definitions/v2/RateLimitSnapshot" } }, "required": [ "rateLimits" ], "title": "AccountRateLimitsUpdatedNotification", "type": "object" }, "AccountUpdatedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "authMode": { "anyOf": [ { "$ref": "#/definitions/v2/AuthMode" }, { "type": "null" } ] } }, "title": "AccountUpdatedNotification", "type": "object" }, "AgentMessageDeltaNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "delta": { "type": "string" }, "itemId": { "type": "string" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "delta", "itemId", "threadId", "turnId" ], "title": "AgentMessageDeltaNotification", "type": "object" }, "AnalyticsConfig": { "additionalProperties": true, "properties": { "enabled": { "type": [ "boolean", "null" ] } }, "type": "object" }, "AppBranding": { "description": "EXPERIMENTAL - app metadata returned by app-list APIs.", "properties": { "category": { "type": [ "string", "null" ] }, "developer": { "type": [ "string", "null" ] }, "isDiscoverableApp": { "type": "boolean" }, "privacyPolicy": { "type": [ "string", "null" ] }, "termsOfService": { "type": [ "string", "null" ] }, "website": { "type": [ "string", "null" ] } }, "required": [ "isDiscoverableApp" ], "type": "object" }, "AppConfig": { "properties": { "default_tools_approval_mode": { "anyOf": [ { "$ref": "#/definitions/v2/AppToolApproval" }, { "type": "null" } ] }, "default_tools_enabled": { "type": [ "boolean", "null" ] }, "destructive_enabled": { "type": [ "boolean", "null" ] }, "enabled": { "default": true, "type": "boolean" }, "open_world_enabled": { "type": [ "boolean", "null" ] }, "tools": { "anyOf": [ { "$ref": "#/definitions/v2/AppToolsConfig" }, { "type": "null" } ] } }, "type": "object" }, "AppInfo": { "description": "EXPERIMENTAL - app metadata returned by app-list APIs.", "properties": { "appMetadata": { "anyOf": [ { "$ref": "#/definitions/v2/AppMetadata" }, { "type": "null" } ] }, "branding": { "anyOf": [ { "$ref": "#/definitions/v2/AppBranding" }, { "type": "null" } ] }, "description": { "type": [ "string", "null" ] }, "distributionChannel": { "type": [ "string", "null" ] }, "id": { "type": "string" }, "installUrl": { "type": [ "string", "null" ] }, "isAccessible": { "default": false, "type": "boolean" }, "isEnabled": { "default": true, "description": "Whether this app is enabled in config.toml. Example: ```toml [apps.bad_app] enabled = false ```", "type": "boolean" }, "labels": { "additionalProperties": { "type": "string" }, "type": [ "object", "null" ] }, "logoUrl": { "type": [ "string", "null" ] }, "logoUrlDark": { "type": [ "string", "null" ] }, "name": { "type": "string" } }, "required": [ "id", "name" ], "type": "object" }, "AppListUpdatedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "EXPERIMENTAL - notification emitted when the app list changes.", "properties": { "data": { "items": { "$ref": "#/definitions/v2/AppInfo" }, "type": "array" } }, "required": [ "data" ], "title": "AppListUpdatedNotification", "type": "object" }, "AppMetadata": { "properties": { "categories": { "items": { "type": "string" }, "type": [ "array", "null" ] }, "developer": { "type": [ "string", "null" ] }, "firstPartyRequiresInstall": { "type": [ "boolean", "null" ] }, "firstPartyType": { "type": [ "string", "null" ] }, "review": { "anyOf": [ { "$ref": "#/definitions/v2/AppReview" }, { "type": "null" } ] }, "screenshots": { "items": { "$ref": "#/definitions/v2/AppScreenshot" }, "type": [ "array", "null" ] }, "seoDescription": { "type": [ "string", "null" ] }, "showInComposerWhenUnlinked": { "type": [ "boolean", "null" ] }, "subCategories": { "items": { "type": "string" }, "type": [ "array", "null" ] }, "version": { "type": [ "string", "null" ] }, "versionId": { "type": [ "string", "null" ] }, "versionNotes": { "type": [ "string", "null" ] } }, "type": "object" }, "AppReview": { "properties": { "status": { "type": "string" } }, "required": [ "status" ], "type": "object" }, "AppScreenshot": { "properties": { "fileId": { "type": [ "string", "null" ] }, "url": { "type": [ "string", "null" ] }, "userPrompt": { "type": "string" } }, "required": [ "userPrompt" ], "type": "object" }, "AppToolApproval": { "enum": [ "auto", "prompt", "approve" ], "type": "string" }, "AppToolConfig": { "properties": { "approval_mode": { "anyOf": [ { "$ref": "#/definitions/v2/AppToolApproval" }, { "type": "null" } ] }, "enabled": { "type": [ "boolean", "null" ] } }, "type": "object" }, "AppToolsConfig": { "type": "object" }, "AppsConfig": { "properties": { "_default": { "anyOf": [ { "$ref": "#/definitions/v2/AppsDefaultConfig" }, { "type": "null" } ], "default": null } }, "type": "object" }, "AppsDefaultConfig": { "properties": { "destructive_enabled": { "default": true, "type": "boolean" }, "enabled": { "default": true, "type": "boolean" }, "open_world_enabled": { "default": true, "type": "boolean" } }, "type": "object" }, "AppsListParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "EXPERIMENTAL - list available apps/connectors.", "properties": { "cursor": { "description": "Opaque pagination cursor returned by a previous call.", "type": [ "string", "null" ] }, "forceRefetch": { "description": "When true, bypass app caches and fetch the latest data from sources.", "type": "boolean" }, "limit": { "description": "Optional page size; defaults to a reasonable server-side value.", "format": "uint32", "minimum": 0.0, "type": [ "integer", "null" ] }, "threadId": { "description": "Optional thread id used to evaluate app feature gating from that thread's config.", "type": [ "string", "null" ] } }, "title": "AppsListParams", "type": "object" }, "AppsListResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "EXPERIMENTAL - app list response.", "properties": { "data": { "items": { "$ref": "#/definitions/v2/AppInfo" }, "type": "array" }, "nextCursor": { "description": "Opaque cursor to pass to the next call to continue after the last item. If None, there are no more items to return.", "type": [ "string", "null" ] } }, "required": [ "data" ], "title": "AppsListResponse", "type": "object" }, "AskForApproval": { "oneOf": [ { "enum": [ "untrusted", "on-failure", "on-request", "never" ], "type": "string" }, { "additionalProperties": false, "properties": { "reject": { "properties": { "mcp_elicitations": { "type": "boolean" }, "rules": { "type": "boolean" }, "sandbox_approval": { "type": "boolean" } }, "required": [ "mcp_elicitations", "rules", "sandbox_approval" ], "type": "object" } }, "required": [ "reject" ], "title": "RejectAskForApproval", "type": "object" } ] }, "AuthMode": { "description": "Authentication mode for OpenAI-backed providers.", "oneOf": [ { "description": "OpenAI API key provided by the caller and stored by Codex.", "enum": [ "apikey" ], "type": "string" }, { "description": "ChatGPT OAuth managed by Codex (tokens persisted and refreshed by Codex).", "enum": [ "chatgpt" ], "type": "string" }, { "description": "[UNSTABLE] FOR OPENAI INTERNAL USE ONLY - DO NOT USE.\n\nChatGPT auth tokens are supplied by an external host app and are only stored in memory. Token refresh must be handled by the external host app.", "enum": [ "chatgptAuthTokens" ], "type": "string" } ] }, "ByteRange": { "properties": { "end": { "format": "uint", "minimum": 0.0, "type": "integer" }, "start": { "format": "uint", "minimum": 0.0, "type": "integer" } }, "required": [ "end", "start" ], "type": "object" }, "CancelLoginAccountParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "loginId": { "type": "string" } }, "required": [ "loginId" ], "title": "CancelLoginAccountParams", "type": "object" }, "CancelLoginAccountResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "status": { "$ref": "#/definitions/v2/CancelLoginAccountStatus" } }, "required": [ "status" ], "title": "CancelLoginAccountResponse", "type": "object" }, "CancelLoginAccountStatus": { "enum": [ "canceled", "notFound" ], "type": "string" }, "CodexErrorInfo": { "description": "This translation layer make sure that we expose codex error code in camel case.\n\nWhen an upstream HTTP status is available (for example, from the Responses API or a provider), it is forwarded in `httpStatusCode` on the relevant `codexErrorInfo` variant.", "oneOf": [ { "enum": [ "contextWindowExceeded", "usageLimitExceeded", "serverOverloaded", "internalServerError", "unauthorized", "badRequest", "threadRollbackFailed", "sandboxError", "other" ], "type": "string" }, { "additionalProperties": false, "properties": { "httpConnectionFailed": { "properties": { "httpStatusCode": { "format": "uint16", "minimum": 0.0, "type": [ "integer", "null" ] } }, "type": "object" } }, "required": [ "httpConnectionFailed" ], "title": "HttpConnectionFailedCodexErrorInfo", "type": "object" }, { "additionalProperties": false, "description": "Failed to connect to the response SSE stream.", "properties": { "responseStreamConnectionFailed": { "properties": { "httpStatusCode": { "format": "uint16", "minimum": 0.0, "type": [ "integer", "null" ] } }, "type": "object" } }, "required": [ "responseStreamConnectionFailed" ], "title": "ResponseStreamConnectionFailedCodexErrorInfo", "type": "object" }, { "additionalProperties": false, "description": "The response SSE stream disconnected in the middle of a turn before completion.", "properties": { "responseStreamDisconnected": { "properties": { "httpStatusCode": { "format": "uint16", "minimum": 0.0, "type": [ "integer", "null" ] } }, "type": "object" } }, "required": [ "responseStreamDisconnected" ], "title": "ResponseStreamDisconnectedCodexErrorInfo", "type": "object" }, { "additionalProperties": false, "description": "Reached the retry limit for responses.", "properties": { "responseTooManyFailedAttempts": { "properties": { "httpStatusCode": { "format": "uint16", "minimum": 0.0, "type": [ "integer", "null" ] } }, "type": "object" } }, "required": [ "responseTooManyFailedAttempts" ], "title": "ResponseTooManyFailedAttemptsCodexErrorInfo", "type": "object" } ] }, "CollabAgentState": { "properties": { "message": { "type": [ "string", "null" ] }, "status": { "$ref": "#/definitions/v2/CollabAgentStatus" } }, "required": [ "status" ], "type": "object" }, "CollabAgentStatus": { "enum": [ "pendingInit", "running", "completed", "errored", "shutdown", "notFound" ], "type": "string" }, "CollabAgentTool": { "enum": [ "spawnAgent", "sendInput", "resumeAgent", "wait", "closeAgent" ], "type": "string" }, "CollabAgentToolCallStatus": { "enum": [ "inProgress", "completed", "failed" ], "type": "string" }, "CollaborationMode": { "description": "Collaboration mode for a Codex session.", "properties": { "mode": { "$ref": "#/definitions/v2/ModeKind" }, "settings": { "$ref": "#/definitions/v2/Settings" } }, "required": [ "mode", "settings" ], "type": "object" }, "CollaborationModeMask": { "description": "A mask for collaboration mode settings, allowing partial updates. All fields except `name` are optional, enabling selective updates.", "properties": { "developer_instructions": { "type": [ "string", "null" ] }, "mode": { "anyOf": [ { "$ref": "#/definitions/v2/ModeKind" }, { "type": "null" } ] }, "model": { "type": [ "string", "null" ] }, "name": { "type": "string" }, "reasoning_effort": { "anyOf": [ { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningEffort" }, { "type": "null" } ] }, { "type": "null" } ] } }, "required": [ "name" ], "type": "object" }, "CommandAction": { "oneOf": [ { "properties": { "command": { "type": "string" }, "name": { "type": "string" }, "path": { "type": "string" }, "type": { "enum": [ "read" ], "title": "ReadCommandActionType", "type": "string" } }, "required": [ "command", "name", "path", "type" ], "title": "ReadCommandAction", "type": "object" }, { "properties": { "command": { "type": "string" }, "path": { "type": [ "string", "null" ] }, "type": { "enum": [ "listFiles" ], "title": "ListFilesCommandActionType", "type": "string" } }, "required": [ "command", "type" ], "title": "ListFilesCommandAction", "type": "object" }, { "properties": { "command": { "type": "string" }, "path": { "type": [ "string", "null" ] }, "query": { "type": [ "string", "null" ] }, "type": { "enum": [ "search" ], "title": "SearchCommandActionType", "type": "string" } }, "required": [ "command", "type" ], "title": "SearchCommandAction", "type": "object" }, { "properties": { "command": { "type": "string" }, "type": { "enum": [ "unknown" ], "title": "UnknownCommandActionType", "type": "string" } }, "required": [ "command", "type" ], "title": "UnknownCommandAction", "type": "object" } ] }, "CommandExecParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "command": { "items": { "type": "string" }, "type": "array" }, "cwd": { "type": [ "string", "null" ] }, "sandboxPolicy": { "anyOf": [ { "$ref": "#/definitions/v2/SandboxPolicy" }, { "type": "null" } ] }, "timeoutMs": { "format": "int64", "type": [ "integer", "null" ] } }, "required": [ "command" ], "title": "CommandExecParams", "type": "object" }, "CommandExecResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "exitCode": { "format": "int32", "type": "integer" }, "stderr": { "type": "string" }, "stdout": { "type": "string" } }, "required": [ "exitCode", "stderr", "stdout" ], "title": "CommandExecResponse", "type": "object" }, "CommandExecutionOutputDeltaNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "delta": { "type": "string" }, "itemId": { "type": "string" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "delta", "itemId", "threadId", "turnId" ], "title": "CommandExecutionOutputDeltaNotification", "type": "object" }, "CommandExecutionStatus": { "enum": [ "inProgress", "completed", "failed", "declined" ], "type": "string" }, "Config": { "additionalProperties": true, "properties": { "analytics": { "anyOf": [ { "$ref": "#/definitions/v2/AnalyticsConfig" }, { "type": "null" } ] }, "approval_policy": { "anyOf": [ { "$ref": "#/definitions/v2/AskForApproval" }, { "type": "null" } ] }, "compact_prompt": { "type": [ "string", "null" ] }, "developer_instructions": { "type": [ "string", "null" ] }, "forced_chatgpt_workspace_id": { "type": [ "string", "null" ] }, "forced_login_method": { "anyOf": [ { "$ref": "#/definitions/v2/ForcedLoginMethod" }, { "type": "null" } ] }, "instructions": { "type": [ "string", "null" ] }, "model": { "type": [ "string", "null" ] }, "model_auto_compact_token_limit": { "format": "int64", "type": [ "integer", "null" ] }, "model_context_window": { "format": "int64", "type": [ "integer", "null" ] }, "model_provider": { "type": [ "string", "null" ] }, "model_reasoning_effort": { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningEffort" }, { "type": "null" } ] }, "model_reasoning_summary": { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningSummary" }, { "type": "null" } ] }, "model_verbosity": { "anyOf": [ { "$ref": "#/definitions/v2/Verbosity" }, { "type": "null" } ] }, "profile": { "type": [ "string", "null" ] }, "profiles": { "additionalProperties": { "$ref": "#/definitions/v2/ProfileV2" }, "default": {}, "type": "object" }, "review_model": { "type": [ "string", "null" ] }, "sandbox_mode": { "anyOf": [ { "$ref": "#/definitions/v2/SandboxMode" }, { "type": "null" } ] }, "sandbox_workspace_write": { "anyOf": [ { "$ref": "#/definitions/v2/SandboxWorkspaceWrite" }, { "type": "null" } ] }, "tools": { "anyOf": [ { "$ref": "#/definitions/v2/ToolsV2" }, { "type": "null" } ] }, "web_search": { "anyOf": [ { "$ref": "#/definitions/v2/WebSearchMode" }, { "type": "null" } ] } }, "type": "object" }, "ConfigBatchWriteParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "edits": { "items": { "$ref": "#/definitions/v2/ConfigEdit" }, "type": "array" }, "expectedVersion": { "type": [ "string", "null" ] }, "filePath": { "description": "Path to the config file to write; defaults to the user's `config.toml` when omitted.", "type": [ "string", "null" ] } }, "required": [ "edits" ], "title": "ConfigBatchWriteParams", "type": "object" }, "ConfigEdit": { "properties": { "keyPath": { "type": "string" }, "mergeStrategy": { "$ref": "#/definitions/v2/MergeStrategy" }, "value": true }, "required": [ "keyPath", "mergeStrategy", "value" ], "type": "object" }, "ConfigLayer": { "properties": { "config": true, "disabledReason": { "type": [ "string", "null" ] }, "name": { "$ref": "#/definitions/v2/ConfigLayerSource" }, "version": { "type": "string" } }, "required": [ "config", "name", "version" ], "type": "object" }, "ConfigLayerMetadata": { "properties": { "name": { "$ref": "#/definitions/v2/ConfigLayerSource" }, "version": { "type": "string" } }, "required": [ "name", "version" ], "type": "object" }, "ConfigLayerSource": { "oneOf": [ { "description": "Managed preferences layer delivered by MDM (macOS only).", "properties": { "domain": { "type": "string" }, "key": { "type": "string" }, "type": { "enum": [ "mdm" ], "title": "MdmConfigLayerSourceType", "type": "string" } }, "required": [ "domain", "key", "type" ], "title": "MdmConfigLayerSource", "type": "object" }, { "description": "Managed config layer from a file (usually `managed_config.toml`).", "properties": { "file": { "allOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" } ], "description": "This is the path to the system config.toml file, though it is not guaranteed to exist." }, "type": { "enum": [ "system" ], "title": "SystemConfigLayerSourceType", "type": "string" } }, "required": [ "file", "type" ], "title": "SystemConfigLayerSource", "type": "object" }, { "description": "User config layer from $CODEX_HOME/config.toml. This layer is special in that it is expected to be: - writable by the user - generally outside the workspace directory", "properties": { "file": { "allOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" } ], "description": "This is the path to the user's config.toml file, though it is not guaranteed to exist." }, "type": { "enum": [ "user" ], "title": "UserConfigLayerSourceType", "type": "string" } }, "required": [ "file", "type" ], "title": "UserConfigLayerSource", "type": "object" }, { "description": "Path to a .codex/ folder within a project. There could be multiple of these between `cwd` and the project/repo root.", "properties": { "dotCodexFolder": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "type": { "enum": [ "project" ], "title": "ProjectConfigLayerSourceType", "type": "string" } }, "required": [ "dotCodexFolder", "type" ], "title": "ProjectConfigLayerSource", "type": "object" }, { "description": "Session-layer overrides supplied via `-c`/`--config`.", "properties": { "type": { "enum": [ "sessionFlags" ], "title": "SessionFlagsConfigLayerSourceType", "type": "string" } }, "required": [ "type" ], "title": "SessionFlagsConfigLayerSource", "type": "object" }, { "description": "`managed_config.toml` was designed to be a config that was loaded as the last layer on top of everything else. This scheme did not quite work out as intended, but we keep this variant as a \"best effort\" while we phase out `managed_config.toml` in favor of `requirements.toml`.", "properties": { "file": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "type": { "enum": [ "legacyManagedConfigTomlFromFile" ], "title": "LegacyManagedConfigTomlFromFileConfigLayerSourceType", "type": "string" } }, "required": [ "file", "type" ], "title": "LegacyManagedConfigTomlFromFileConfigLayerSource", "type": "object" }, { "properties": { "type": { "enum": [ "legacyManagedConfigTomlFromMdm" ], "title": "LegacyManagedConfigTomlFromMdmConfigLayerSourceType", "type": "string" } }, "required": [ "type" ], "title": "LegacyManagedConfigTomlFromMdmConfigLayerSource", "type": "object" } ] }, "ConfigReadParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "cwd": { "description": "Optional working directory to resolve project config layers. If specified, return the effective config as seen from that directory (i.e., including any project layers between `cwd` and the project/repo root).", "type": [ "string", "null" ] }, "includeLayers": { "default": false, "type": "boolean" } }, "title": "ConfigReadParams", "type": "object" }, "ConfigReadResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "config": { "$ref": "#/definitions/v2/Config" }, "layers": { "items": { "$ref": "#/definitions/v2/ConfigLayer" }, "type": [ "array", "null" ] }, "origins": { "additionalProperties": { "$ref": "#/definitions/v2/ConfigLayerMetadata" }, "type": "object" } }, "required": [ "config", "origins" ], "title": "ConfigReadResponse", "type": "object" }, "ConfigRequirements": { "properties": { "allowedApprovalPolicies": { "items": { "$ref": "#/definitions/v2/AskForApproval" }, "type": [ "array", "null" ] }, "allowedSandboxModes": { "items": { "$ref": "#/definitions/v2/SandboxMode" }, "type": [ "array", "null" ] }, "allowedWebSearchModes": { "items": { "$ref": "#/definitions/v2/WebSearchMode" }, "type": [ "array", "null" ] }, "enforceResidency": { "anyOf": [ { "$ref": "#/definitions/v2/ResidencyRequirement" }, { "type": "null" } ] } }, "type": "object" }, "ConfigRequirementsReadResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "requirements": { "anyOf": [ { "$ref": "#/definitions/v2/ConfigRequirements" }, { "type": "null" } ], "description": "Null if no requirements are configured (e.g. no requirements.toml/MDM entries)." } }, "title": "ConfigRequirementsReadResponse", "type": "object" }, "ConfigValueWriteParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "expectedVersion": { "type": [ "string", "null" ] }, "filePath": { "description": "Path to the config file to write; defaults to the user's `config.toml` when omitted.", "type": [ "string", "null" ] }, "keyPath": { "type": "string" }, "mergeStrategy": { "$ref": "#/definitions/v2/MergeStrategy" }, "value": true }, "required": [ "keyPath", "mergeStrategy", "value" ], "title": "ConfigValueWriteParams", "type": "object" }, "ConfigWarningNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "details": { "description": "Optional extra guidance or error details.", "type": [ "string", "null" ] }, "path": { "description": "Optional path to the config file that triggered the warning.", "type": [ "string", "null" ] }, "range": { "anyOf": [ { "$ref": "#/definitions/v2/TextRange" }, { "type": "null" } ], "description": "Optional range for the error location inside the config file." }, "summary": { "description": "Concise summary of the warning.", "type": "string" } }, "required": [ "summary" ], "title": "ConfigWarningNotification", "type": "object" }, "ConfigWriteResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "filePath": { "allOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" } ], "description": "Canonical path to the config file that was written." }, "overriddenMetadata": { "anyOf": [ { "$ref": "#/definitions/v2/OverriddenMetadata" }, { "type": "null" } ] }, "status": { "$ref": "#/definitions/v2/WriteStatus" }, "version": { "type": "string" } }, "required": [ "filePath", "status", "version" ], "title": "ConfigWriteResponse", "type": "object" }, "ContentItem": { "oneOf": [ { "properties": { "text": { "type": "string" }, "type": { "enum": [ "input_text" ], "title": "InputTextContentItemType", "type": "string" } }, "required": [ "text", "type" ], "title": "InputTextContentItem", "type": "object" }, { "properties": { "image_url": { "type": "string" }, "type": { "enum": [ "input_image" ], "title": "InputImageContentItemType", "type": "string" } }, "required": [ "image_url", "type" ], "title": "InputImageContentItem", "type": "object" }, { "properties": { "text": { "type": "string" }, "type": { "enum": [ "output_text" ], "title": "OutputTextContentItemType", "type": "string" } }, "required": [ "text", "type" ], "title": "OutputTextContentItem", "type": "object" } ] }, "ContextCompactedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Deprecated: Use `ContextCompaction` item type instead.", "properties": { "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "threadId", "turnId" ], "title": "ContextCompactedNotification", "type": "object" }, "CreditsSnapshot": { "properties": { "balance": { "type": [ "string", "null" ] }, "hasCredits": { "type": "boolean" }, "unlimited": { "type": "boolean" } }, "required": [ "hasCredits", "unlimited" ], "type": "object" }, "DeprecationNoticeNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "details": { "description": "Optional extra guidance, such as migration steps or rationale.", "type": [ "string", "null" ] }, "summary": { "description": "Concise summary of what is deprecated.", "type": "string" } }, "required": [ "summary" ], "title": "DeprecationNoticeNotification", "type": "object" }, "DynamicToolSpec": { "properties": { "description": { "type": "string" }, "inputSchema": true, "name": { "type": "string" } }, "required": [ "description", "inputSchema", "name" ], "type": "object" }, "ErrorNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "error": { "$ref": "#/definitions/v2/TurnError" }, "threadId": { "type": "string" }, "turnId": { "type": "string" }, "willRetry": { "type": "boolean" } }, "required": [ "error", "threadId", "turnId", "willRetry" ], "title": "ErrorNotification", "type": "object" }, "ExperimentalFeature": { "properties": { "announcement": { "description": "Announcement copy shown to users when the feature is introduced. Null when this feature is not in beta.", "type": [ "string", "null" ] }, "defaultEnabled": { "description": "Whether this feature is enabled by default.", "type": "boolean" }, "description": { "description": "Short summary describing what the feature does. Null when this feature is not in beta.", "type": [ "string", "null" ] }, "displayName": { "description": "User-facing display name shown in the experimental features UI. Null when this feature is not in beta.", "type": [ "string", "null" ] }, "enabled": { "description": "Whether this feature is currently enabled in the loaded config.", "type": "boolean" }, "name": { "description": "Stable key used in config.toml and CLI flag toggles.", "type": "string" }, "stage": { "allOf": [ { "$ref": "#/definitions/v2/ExperimentalFeatureStage" } ], "description": "Lifecycle stage of this feature flag." } }, "required": [ "defaultEnabled", "enabled", "name", "stage" ], "type": "object" }, "ExperimentalFeatureListParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "cursor": { "description": "Opaque pagination cursor returned by a previous call.", "type": [ "string", "null" ] }, "limit": { "description": "Optional page size; defaults to a reasonable server-side value.", "format": "uint32", "minimum": 0.0, "type": [ "integer", "null" ] } }, "title": "ExperimentalFeatureListParams", "type": "object" }, "ExperimentalFeatureListResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "data": { "items": { "$ref": "#/definitions/v2/ExperimentalFeature" }, "type": "array" }, "nextCursor": { "description": "Opaque cursor to pass to the next call to continue after the last item. If None, there are no more items to return.", "type": [ "string", "null" ] } }, "required": [ "data" ], "title": "ExperimentalFeatureListResponse", "type": "object" }, "ExperimentalFeatureStage": { "oneOf": [ { "description": "Feature is available for user testing and feedback.", "enum": [ "beta" ], "type": "string" }, { "description": "Feature is still being built and not ready for broad use.", "enum": [ "underDevelopment" ], "type": "string" }, { "description": "Feature is production-ready.", "enum": [ "stable" ], "type": "string" }, { "description": "Feature is deprecated and should be avoided.", "enum": [ "deprecated" ], "type": "string" }, { "description": "Feature flag is retained only for backwards compatibility.", "enum": [ "removed" ], "type": "string" } ] }, "FeedbackUploadParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "classification": { "type": "string" }, "extraLogFiles": { "items": { "type": "string" }, "type": [ "array", "null" ] }, "includeLogs": { "type": "boolean" }, "reason": { "type": [ "string", "null" ] }, "threadId": { "type": [ "string", "null" ] } }, "required": [ "classification", "includeLogs" ], "title": "FeedbackUploadParams", "type": "object" }, "FeedbackUploadResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "threadId": { "type": "string" } }, "required": [ "threadId" ], "title": "FeedbackUploadResponse", "type": "object" }, "FileChangeOutputDeltaNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "delta": { "type": "string" }, "itemId": { "type": "string" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "delta", "itemId", "threadId", "turnId" ], "title": "FileChangeOutputDeltaNotification", "type": "object" }, "FileUpdateChange": { "properties": { "diff": { "type": "string" }, "kind": { "$ref": "#/definitions/v2/PatchChangeKind" }, "path": { "type": "string" } }, "required": [ "diff", "kind", "path" ], "type": "object" }, "ForcedLoginMethod": { "enum": [ "chatgpt", "api" ], "type": "string" }, "FunctionCallOutputBody": { "anyOf": [ { "type": "string" }, { "items": { "$ref": "#/definitions/v2/FunctionCallOutputContentItem" }, "type": "array" } ] }, "FunctionCallOutputContentItem": { "description": "Responses API compatible content items that can be returned by a tool call. This is a subset of ContentItem with the types we support as function call outputs.", "oneOf": [ { "properties": { "text": { "type": "string" }, "type": { "enum": [ "input_text" ], "title": "InputTextFunctionCallOutputContentItemType", "type": "string" } }, "required": [ "text", "type" ], "title": "InputTextFunctionCallOutputContentItem", "type": "object" }, { "properties": { "image_url": { "type": "string" }, "type": { "enum": [ "input_image" ], "title": "InputImageFunctionCallOutputContentItemType", "type": "string" } }, "required": [ "image_url", "type" ], "title": "InputImageFunctionCallOutputContentItem", "type": "object" } ] }, "FunctionCallOutputPayload": { "description": "The payload we send back to OpenAI when reporting a tool call result.\n\n`body` serializes directly as the wire value for `function_call_output.output`. `success` remains internal metadata for downstream handling.", "properties": { "body": { "$ref": "#/definitions/v2/FunctionCallOutputBody" }, "success": { "type": [ "boolean", "null" ] } }, "required": [ "body" ], "type": "object" }, "GetAccountParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "refreshToken": { "default": false, "description": "When `true`, requests a proactive token refresh before returning.\n\nIn managed auth mode this triggers the normal refresh-token flow. In external auth mode this flag is ignored. Clients should refresh tokens themselves and call `account/login/start` with `chatgptAuthTokens`.", "type": "boolean" } }, "title": "GetAccountParams", "type": "object" }, "GetAccountRateLimitsResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "rateLimits": { "allOf": [ { "$ref": "#/definitions/v2/RateLimitSnapshot" } ], "description": "Backward-compatible single-bucket view; mirrors the historical payload." }, "rateLimitsByLimitId": { "additionalProperties": { "$ref": "#/definitions/v2/RateLimitSnapshot" }, "description": "Multi-bucket view keyed by metered `limit_id` (for example, `codex`).", "type": [ "object", "null" ] } }, "required": [ "rateLimits" ], "title": "GetAccountRateLimitsResponse", "type": "object" }, "GetAccountResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "account": { "anyOf": [ { "$ref": "#/definitions/v2/Account" }, { "type": "null" } ] }, "requiresOpenaiAuth": { "type": "boolean" } }, "required": [ "requiresOpenaiAuth" ], "title": "GetAccountResponse", "type": "object" }, "GhostCommit": { "description": "Details of a ghost commit created from a repository state.", "properties": { "id": { "type": "string" }, "parent": { "type": [ "string", "null" ] }, "preexisting_untracked_dirs": { "items": { "type": "string" }, "type": "array" }, "preexisting_untracked_files": { "items": { "type": "string" }, "type": "array" } }, "required": [ "id", "preexisting_untracked_dirs", "preexisting_untracked_files" ], "type": "object" }, "GitInfo": { "properties": { "branch": { "type": [ "string", "null" ] }, "originUrl": { "type": [ "string", "null" ] }, "sha": { "type": [ "string", "null" ] } }, "type": "object" }, "HazelnutScope": { "enum": [ "example", "workspace-shared", "all-shared", "personal" ], "type": "string" }, "InputModality": { "description": "Canonical user-input modality tags advertised by a model.", "oneOf": [ { "description": "Plain text turns and tool payloads.", "enum": [ "text" ], "type": "string" }, { "description": "Image attachments included in user turns.", "enum": [ "image" ], "type": "string" } ] }, "ItemCompletedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "item": { "$ref": "#/definitions/v2/ThreadItem" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "item", "threadId", "turnId" ], "title": "ItemCompletedNotification", "type": "object" }, "ItemStartedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "item": { "$ref": "#/definitions/v2/ThreadItem" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "item", "threadId", "turnId" ], "title": "ItemStartedNotification", "type": "object" }, "ListMcpServerStatusParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "cursor": { "description": "Opaque pagination cursor returned by a previous call.", "type": [ "string", "null" ] }, "limit": { "description": "Optional page size; defaults to a server-defined value.", "format": "uint32", "minimum": 0.0, "type": [ "integer", "null" ] } }, "title": "ListMcpServerStatusParams", "type": "object" }, "ListMcpServerStatusResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "data": { "items": { "$ref": "#/definitions/v2/McpServerStatus" }, "type": "array" }, "nextCursor": { "description": "Opaque cursor to pass to the next call to continue after the last item. If None, there are no more items to return.", "type": [ "string", "null" ] } }, "required": [ "data" ], "title": "ListMcpServerStatusResponse", "type": "object" }, "LocalShellAction": { "oneOf": [ { "properties": { "command": { "items": { "type": "string" }, "type": "array" }, "env": { "additionalProperties": { "type": "string" }, "type": [ "object", "null" ] }, "timeout_ms": { "format": "uint64", "minimum": 0.0, "type": [ "integer", "null" ] }, "type": { "enum": [ "exec" ], "title": "ExecLocalShellActionType", "type": "string" }, "user": { "type": [ "string", "null" ] }, "working_directory": { "type": [ "string", "null" ] } }, "required": [ "command", "type" ], "title": "ExecLocalShellAction", "type": "object" } ] }, "LocalShellStatus": { "enum": [ "completed", "in_progress", "incomplete" ], "type": "string" }, "LoginAccountParams": { "$schema": "http://json-schema.org/draft-07/schema#", "oneOf": [ { "properties": { "apiKey": { "type": "string" }, "type": { "enum": [ "apiKey" ], "title": "ApiKeyv2::LoginAccountParamsType", "type": "string" } }, "required": [ "apiKey", "type" ], "title": "ApiKeyv2::LoginAccountParams", "type": "object" }, { "properties": { "type": { "enum": [ "chatgpt" ], "title": "Chatgptv2::LoginAccountParamsType", "type": "string" } }, "required": [ "type" ], "title": "Chatgptv2::LoginAccountParams", "type": "object" }, { "description": "[UNSTABLE] FOR OPENAI INTERNAL USE ONLY - DO NOT USE. The access token must contain the same scopes that Codex-managed ChatGPT auth tokens have.", "properties": { "accessToken": { "description": "Access token (JWT) supplied by the client. This token is used for backend API requests and email extraction.", "type": "string" }, "chatgptAccountId": { "description": "Workspace/account identifier supplied by the client.", "type": "string" }, "chatgptPlanType": { "description": "Optional plan type supplied by the client.\n\nWhen `null`, Codex attempts to derive the plan type from access-token claims. If unavailable, the plan defaults to `unknown`.", "type": [ "string", "null" ] }, "type": { "enum": [ "chatgptAuthTokens" ], "title": "ChatgptAuthTokensv2::LoginAccountParamsType", "type": "string" } }, "required": [ "accessToken", "chatgptAccountId", "type" ], "title": "ChatgptAuthTokensv2::LoginAccountParams", "type": "object" } ], "title": "LoginAccountParams" }, "LoginAccountResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "oneOf": [ { "properties": { "type": { "enum": [ "apiKey" ], "title": "ApiKeyv2::LoginAccountResponseType", "type": "string" } }, "required": [ "type" ], "title": "ApiKeyv2::LoginAccountResponse", "type": "object" }, { "properties": { "authUrl": { "description": "URL the client should open in a browser to initiate the OAuth flow.", "type": "string" }, "loginId": { "type": "string" }, "type": { "enum": [ "chatgpt" ], "title": "Chatgptv2::LoginAccountResponseType", "type": "string" } }, "required": [ "authUrl", "loginId", "type" ], "title": "Chatgptv2::LoginAccountResponse", "type": "object" }, { "properties": { "type": { "enum": [ "chatgptAuthTokens" ], "title": "ChatgptAuthTokensv2::LoginAccountResponseType", "type": "string" } }, "required": [ "type" ], "title": "ChatgptAuthTokensv2::LoginAccountResponse", "type": "object" } ], "title": "LoginAccountResponse" }, "LogoutAccountResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "title": "LogoutAccountResponse", "type": "object" }, "McpAuthStatus": { "enum": [ "unsupported", "notLoggedIn", "bearerToken", "oAuth" ], "type": "string" }, "McpServerOauthLoginCompletedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "error": { "type": [ "string", "null" ] }, "name": { "type": "string" }, "success": { "type": "boolean" } }, "required": [ "name", "success" ], "title": "McpServerOauthLoginCompletedNotification", "type": "object" }, "McpServerOauthLoginParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "name": { "type": "string" }, "scopes": { "items": { "type": "string" }, "type": [ "array", "null" ] }, "timeoutSecs": { "format": "int64", "type": [ "integer", "null" ] } }, "required": [ "name" ], "title": "McpServerOauthLoginParams", "type": "object" }, "McpServerOauthLoginResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "authorizationUrl": { "type": "string" } }, "required": [ "authorizationUrl" ], "title": "McpServerOauthLoginResponse", "type": "object" }, "McpServerRefreshResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "title": "McpServerRefreshResponse", "type": "object" }, "McpServerStatus": { "properties": { "authStatus": { "$ref": "#/definitions/v2/McpAuthStatus" }, "name": { "type": "string" }, "resourceTemplates": { "items": { "$ref": "#/definitions/v2/ResourceTemplate" }, "type": "array" }, "resources": { "items": { "$ref": "#/definitions/v2/Resource" }, "type": "array" }, "tools": { "additionalProperties": { "$ref": "#/definitions/v2/Tool" }, "type": "object" } }, "required": [ "authStatus", "name", "resourceTemplates", "resources", "tools" ], "type": "object" }, "McpToolCallError": { "properties": { "message": { "type": "string" } }, "required": [ "message" ], "type": "object" }, "McpToolCallProgressNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "itemId": { "type": "string" }, "message": { "type": "string" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "itemId", "message", "threadId", "turnId" ], "title": "McpToolCallProgressNotification", "type": "object" }, "McpToolCallResult": { "properties": { "content": { "items": true, "type": "array" }, "structuredContent": true }, "required": [ "content" ], "type": "object" }, "McpToolCallStatus": { "enum": [ "inProgress", "completed", "failed" ], "type": "string" }, "MergeStrategy": { "enum": [ "replace", "upsert" ], "type": "string" }, "MessagePhase": { "description": "Classifies an assistant message as interim commentary or final answer text.\n\nProviders do not emit this consistently, so callers must treat `None` as \"phase unknown\" and keep compatibility behavior for legacy models.", "oneOf": [ { "description": "Mid-turn assistant text (for example preamble/progress narration).\n\nAdditional tool calls or assistant output may follow before turn completion.", "enum": [ "commentary" ], "type": "string" }, { "description": "The assistant's terminal answer text for the current turn.", "enum": [ "final_answer" ], "type": "string" } ] }, "ModeKind": { "description": "Initial collaboration mode to use when the TUI starts.", "enum": [ "plan", "default" ], "type": "string" }, "Model": { "properties": { "defaultReasoningEffort": { "$ref": "#/definitions/v2/ReasoningEffort" }, "description": { "type": "string" }, "displayName": { "type": "string" }, "hidden": { "type": "boolean" }, "id": { "type": "string" }, "inputModalities": { "default": [ "text", "image" ], "items": { "$ref": "#/definitions/v2/InputModality" }, "type": "array" }, "isDefault": { "type": "boolean" }, "model": { "type": "string" }, "supportedReasoningEfforts": { "items": { "$ref": "#/definitions/v2/ReasoningEffortOption" }, "type": "array" }, "supportsPersonality": { "default": false, "type": "boolean" }, "upgrade": { "type": [ "string", "null" ] } }, "required": [ "defaultReasoningEffort", "description", "displayName", "hidden", "id", "isDefault", "model", "supportedReasoningEfforts" ], "type": "object" }, "ModelListParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "cursor": { "description": "Opaque pagination cursor returned by a previous call.", "type": [ "string", "null" ] }, "includeHidden": { "description": "When true, include models that are hidden from the default picker list.", "type": [ "boolean", "null" ] }, "limit": { "description": "Optional page size; defaults to a reasonable server-side value.", "format": "uint32", "minimum": 0.0, "type": [ "integer", "null" ] } }, "title": "ModelListParams", "type": "object" }, "ModelListResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "data": { "items": { "$ref": "#/definitions/v2/Model" }, "type": "array" }, "nextCursor": { "description": "Opaque cursor to pass to the next call to continue after the last item. If None, there are no more items to return.", "type": [ "string", "null" ] } }, "required": [ "data" ], "title": "ModelListResponse", "type": "object" }, "ModelRerouteReason": { "enum": [ "highRiskCyberActivity" ], "type": "string" }, "ModelReroutedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "fromModel": { "type": "string" }, "reason": { "$ref": "#/definitions/v2/ModelRerouteReason" }, "threadId": { "type": "string" }, "toModel": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "fromModel", "reason", "threadId", "toModel", "turnId" ], "title": "ModelReroutedNotification", "type": "object" }, "NetworkAccess": { "enum": [ "restricted", "enabled" ], "type": "string" }, "NetworkRequirements": { "properties": { "allowLocalBinding": { "type": [ "boolean", "null" ] }, "allowUnixSockets": { "items": { "type": "string" }, "type": [ "array", "null" ] }, "allowUpstreamProxy": { "type": [ "boolean", "null" ] }, "allowedDomains": { "items": { "type": "string" }, "type": [ "array", "null" ] }, "dangerouslyAllowAllUnixSockets": { "type": [ "boolean", "null" ] }, "dangerouslyAllowNonLoopbackAdmin": { "type": [ "boolean", "null" ] }, "dangerouslyAllowNonLoopbackProxy": { "type": [ "boolean", "null" ] }, "deniedDomains": { "items": { "type": "string" }, "type": [ "array", "null" ] }, "enabled": { "type": [ "boolean", "null" ] }, "httpPort": { "format": "uint16", "minimum": 0.0, "type": [ "integer", "null" ] }, "socksPort": { "format": "uint16", "minimum": 0.0, "type": [ "integer", "null" ] } }, "type": "object" }, "OverriddenMetadata": { "properties": { "effectiveValue": true, "message": { "type": "string" }, "overridingLayer": { "$ref": "#/definitions/v2/ConfigLayerMetadata" } }, "required": [ "effectiveValue", "message", "overridingLayer" ], "type": "object" }, "PatchApplyStatus": { "enum": [ "inProgress", "completed", "failed", "declined" ], "type": "string" }, "PatchChangeKind": { "oneOf": [ { "properties": { "type": { "enum": [ "add" ], "title": "AddPatchChangeKindType", "type": "string" } }, "required": [ "type" ], "title": "AddPatchChangeKind", "type": "object" }, { "properties": { "type": { "enum": [ "delete" ], "title": "DeletePatchChangeKindType", "type": "string" } }, "required": [ "type" ], "title": "DeletePatchChangeKind", "type": "object" }, { "properties": { "move_path": { "type": [ "string", "null" ] }, "type": { "enum": [ "update" ], "title": "UpdatePatchChangeKindType", "type": "string" } }, "required": [ "type" ], "title": "UpdatePatchChangeKind", "type": "object" } ] }, "Personality": { "enum": [ "none", "friendly", "pragmatic" ], "type": "string" }, "PlanDeltaNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "EXPERIMENTAL - proposed plan streaming deltas for plan items. Clients should not assume concatenated deltas match the completed plan item content.", "properties": { "delta": { "type": "string" }, "itemId": { "type": "string" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "delta", "itemId", "threadId", "turnId" ], "title": "PlanDeltaNotification", "type": "object" }, "PlanType": { "enum": [ "free", "go", "plus", "pro", "team", "business", "enterprise", "edu", "unknown" ], "type": "string" }, "ProductSurface": { "enum": [ "chatgpt", "codex", "api", "atlas" ], "type": "string" }, "ProfileV2": { "additionalProperties": true, "properties": { "approval_policy": { "anyOf": [ { "$ref": "#/definitions/v2/AskForApproval" }, { "type": "null" } ] }, "chatgpt_base_url": { "type": [ "string", "null" ] }, "model": { "type": [ "string", "null" ] }, "model_provider": { "type": [ "string", "null" ] }, "model_reasoning_effort": { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningEffort" }, { "type": "null" } ] }, "model_reasoning_summary": { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningSummary" }, { "type": "null" } ] }, "model_verbosity": { "anyOf": [ { "$ref": "#/definitions/v2/Verbosity" }, { "type": "null" } ] }, "web_search": { "anyOf": [ { "$ref": "#/definitions/v2/WebSearchMode" }, { "type": "null" } ] } }, "type": "object" }, "RateLimitSnapshot": { "properties": { "credits": { "anyOf": [ { "$ref": "#/definitions/v2/CreditsSnapshot" }, { "type": "null" } ] }, "limitId": { "type": [ "string", "null" ] }, "limitName": { "type": [ "string", "null" ] }, "planType": { "anyOf": [ { "$ref": "#/definitions/v2/PlanType" }, { "type": "null" } ] }, "primary": { "anyOf": [ { "$ref": "#/definitions/v2/RateLimitWindow" }, { "type": "null" } ] }, "secondary": { "anyOf": [ { "$ref": "#/definitions/v2/RateLimitWindow" }, { "type": "null" } ] } }, "type": "object" }, "RateLimitWindow": { "properties": { "resetsAt": { "format": "int64", "type": [ "integer", "null" ] }, "usedPercent": { "format": "int32", "type": "integer" }, "windowDurationMins": { "format": "int64", "type": [ "integer", "null" ] } }, "required": [ "usedPercent" ], "type": "object" }, "RawResponseItemCompletedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "item": { "$ref": "#/definitions/v2/ResponseItem" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "item", "threadId", "turnId" ], "title": "RawResponseItemCompletedNotification", "type": "object" }, "ReadOnlyAccess": { "oneOf": [ { "properties": { "includePlatformDefaults": { "default": true, "type": "boolean" }, "readableRoots": { "default": [], "items": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "type": "array" }, "type": { "enum": [ "restricted" ], "title": "RestrictedReadOnlyAccessType", "type": "string" } }, "required": [ "type" ], "title": "RestrictedReadOnlyAccess", "type": "object" }, { "properties": { "type": { "enum": [ "fullAccess" ], "title": "FullAccessReadOnlyAccessType", "type": "string" } }, "required": [ "type" ], "title": "FullAccessReadOnlyAccess", "type": "object" } ] }, "ReasoningEffort": { "description": "See https://platform.openai.com/docs/guides/reasoning?api-mode=responses#get-started-with-reasoning", "enum": [ "none", "minimal", "low", "medium", "high", "xhigh" ], "type": "string" }, "ReasoningEffortOption": { "properties": { "description": { "type": "string" }, "reasoningEffort": { "$ref": "#/definitions/v2/ReasoningEffort" } }, "required": [ "description", "reasoningEffort" ], "type": "object" }, "ReasoningItemContent": { "oneOf": [ { "properties": { "text": { "type": "string" }, "type": { "enum": [ "reasoning_text" ], "title": "ReasoningTextReasoningItemContentType", "type": "string" } }, "required": [ "text", "type" ], "title": "ReasoningTextReasoningItemContent", "type": "object" }, { "properties": { "text": { "type": "string" }, "type": { "enum": [ "text" ], "title": "TextReasoningItemContentType", "type": "string" } }, "required": [ "text", "type" ], "title": "TextReasoningItemContent", "type": "object" } ] }, "ReasoningItemReasoningSummary": { "oneOf": [ { "properties": { "text": { "type": "string" }, "type": { "enum": [ "summary_text" ], "title": "SummaryTextReasoningItemReasoningSummaryType", "type": "string" } }, "required": [ "text", "type" ], "title": "SummaryTextReasoningItemReasoningSummary", "type": "object" } ] }, "ReasoningSummary": { "description": "A summary of the reasoning performed by the model. This can be useful for debugging and understanding the model's reasoning process. See https://platform.openai.com/docs/guides/reasoning?api-mode=responses#reasoning-summaries", "oneOf": [ { "enum": [ "auto", "concise", "detailed" ], "type": "string" }, { "description": "Option to disable reasoning summaries.", "enum": [ "none" ], "type": "string" } ] }, "ReasoningSummaryPartAddedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "itemId": { "type": "string" }, "summaryIndex": { "format": "int64", "type": "integer" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "itemId", "summaryIndex", "threadId", "turnId" ], "title": "ReasoningSummaryPartAddedNotification", "type": "object" }, "ReasoningSummaryTextDeltaNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "delta": { "type": "string" }, "itemId": { "type": "string" }, "summaryIndex": { "format": "int64", "type": "integer" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "delta", "itemId", "summaryIndex", "threadId", "turnId" ], "title": "ReasoningSummaryTextDeltaNotification", "type": "object" }, "ReasoningTextDeltaNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "contentIndex": { "format": "int64", "type": "integer" }, "delta": { "type": "string" }, "itemId": { "type": "string" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "contentIndex", "delta", "itemId", "threadId", "turnId" ], "title": "ReasoningTextDeltaNotification", "type": "object" }, "RemoteSkillSummary": { "properties": { "description": { "type": "string" }, "id": { "type": "string" }, "name": { "type": "string" } }, "required": [ "description", "id", "name" ], "type": "object" }, "ResidencyRequirement": { "enum": [ "us" ], "type": "string" }, "Resource": { "description": "A known resource that the server is capable of reading.", "properties": { "_meta": true, "annotations": true, "description": { "type": [ "string", "null" ] }, "icons": { "items": true, "type": [ "array", "null" ] }, "mimeType": { "type": [ "string", "null" ] }, "name": { "type": "string" }, "size": { "format": "int64", "type": [ "integer", "null" ] }, "title": { "type": [ "string", "null" ] }, "uri": { "type": "string" } }, "required": [ "name", "uri" ], "type": "object" }, "ResourceTemplate": { "description": "A template description for resources available on the server.", "properties": { "annotations": true, "description": { "type": [ "string", "null" ] }, "mimeType": { "type": [ "string", "null" ] }, "name": { "type": "string" }, "title": { "type": [ "string", "null" ] }, "uriTemplate": { "type": "string" } }, "required": [ "name", "uriTemplate" ], "type": "object" }, "ResponseItem": { "oneOf": [ { "properties": { "content": { "items": { "$ref": "#/definitions/v2/ContentItem" }, "type": "array" }, "end_turn": { "type": [ "boolean", "null" ] }, "id": { "type": [ "string", "null" ], "writeOnly": true }, "phase": { "anyOf": [ { "$ref": "#/definitions/v2/MessagePhase" }, { "type": "null" } ] }, "role": { "type": "string" }, "type": { "enum": [ "message" ], "title": "MessageResponseItemType", "type": "string" } }, "required": [ "content", "role", "type" ], "title": "MessageResponseItem", "type": "object" }, { "properties": { "content": { "default": null, "items": { "$ref": "#/definitions/v2/ReasoningItemContent" }, "type": [ "array", "null" ] }, "encrypted_content": { "type": [ "string", "null" ] }, "id": { "type": "string", "writeOnly": true }, "summary": { "items": { "$ref": "#/definitions/v2/ReasoningItemReasoningSummary" }, "type": "array" }, "type": { "enum": [ "reasoning" ], "title": "ReasoningResponseItemType", "type": "string" } }, "required": [ "id", "summary", "type" ], "title": "ReasoningResponseItem", "type": "object" }, { "properties": { "action": { "$ref": "#/definitions/v2/LocalShellAction" }, "call_id": { "description": "Set when using the Responses API.", "type": [ "string", "null" ] }, "id": { "description": "Legacy id field retained for compatibility with older payloads.", "type": [ "string", "null" ], "writeOnly": true }, "status": { "$ref": "#/definitions/v2/LocalShellStatus" }, "type": { "enum": [ "local_shell_call" ], "title": "LocalShellCallResponseItemType", "type": "string" } }, "required": [ "action", "status", "type" ], "title": "LocalShellCallResponseItem", "type": "object" }, { "properties": { "arguments": { "type": "string" }, "call_id": { "type": "string" }, "id": { "type": [ "string", "null" ], "writeOnly": true }, "name": { "type": "string" }, "type": { "enum": [ "function_call" ], "title": "FunctionCallResponseItemType", "type": "string" } }, "required": [ "arguments", "call_id", "name", "type" ], "title": "FunctionCallResponseItem", "type": "object" }, { "properties": { "call_id": { "type": "string" }, "output": { "$ref": "#/definitions/v2/FunctionCallOutputPayload" }, "type": { "enum": [ "function_call_output" ], "title": "FunctionCallOutputResponseItemType", "type": "string" } }, "required": [ "call_id", "output", "type" ], "title": "FunctionCallOutputResponseItem", "type": "object" }, { "properties": { "call_id": { "type": "string" }, "id": { "type": [ "string", "null" ], "writeOnly": true }, "input": { "type": "string" }, "name": { "type": "string" }, "status": { "type": [ "string", "null" ] }, "type": { "enum": [ "custom_tool_call" ], "title": "CustomToolCallResponseItemType", "type": "string" } }, "required": [ "call_id", "input", "name", "type" ], "title": "CustomToolCallResponseItem", "type": "object" }, { "properties": { "call_id": { "type": "string" }, "output": { "type": "string" }, "type": { "enum": [ "custom_tool_call_output" ], "title": "CustomToolCallOutputResponseItemType", "type": "string" } }, "required": [ "call_id", "output", "type" ], "title": "CustomToolCallOutputResponseItem", "type": "object" }, { "properties": { "action": { "anyOf": [ { "$ref": "#/definitions/v2/WebSearchAction" }, { "type": "null" } ] }, "id": { "type": [ "string", "null" ], "writeOnly": true }, "status": { "type": [ "string", "null" ] }, "type": { "enum": [ "web_search_call" ], "title": "WebSearchCallResponseItemType", "type": "string" } }, "required": [ "type" ], "title": "WebSearchCallResponseItem", "type": "object" }, { "properties": { "ghost_commit": { "$ref": "#/definitions/v2/GhostCommit" }, "type": { "enum": [ "ghost_snapshot" ], "title": "GhostSnapshotResponseItemType", "type": "string" } }, "required": [ "ghost_commit", "type" ], "title": "GhostSnapshotResponseItem", "type": "object" }, { "properties": { "encrypted_content": { "type": "string" }, "type": { "enum": [ "compaction" ], "title": "CompactionResponseItemType", "type": "string" } }, "required": [ "encrypted_content", "type" ], "title": "CompactionResponseItem", "type": "object" }, { "properties": { "type": { "enum": [ "other" ], "title": "OtherResponseItemType", "type": "string" } }, "required": [ "type" ], "title": "OtherResponseItem", "type": "object" } ] }, "ReviewDelivery": { "enum": [ "inline", "detached" ], "type": "string" }, "ReviewStartParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "delivery": { "anyOf": [ { "$ref": "#/definitions/v2/ReviewDelivery" }, { "type": "null" } ], "default": null, "description": "Where to run the review: inline (default) on the current thread or detached on a new thread (returned in `reviewThreadId`)." }, "target": { "$ref": "#/definitions/v2/ReviewTarget" }, "threadId": { "type": "string" } }, "required": [ "target", "threadId" ], "title": "ReviewStartParams", "type": "object" }, "ReviewStartResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "reviewThreadId": { "description": "Identifies the thread where the review runs.\n\nFor inline reviews, this is the original thread id. For detached reviews, this is the id of the new review thread.", "type": "string" }, "turn": { "$ref": "#/definitions/v2/Turn" } }, "required": [ "reviewThreadId", "turn" ], "title": "ReviewStartResponse", "type": "object" }, "ReviewTarget": { "oneOf": [ { "description": "Review the working tree: staged, unstaged, and untracked files.", "properties": { "type": { "enum": [ "uncommittedChanges" ], "title": "UncommittedChangesReviewTargetType", "type": "string" } }, "required": [ "type" ], "title": "UncommittedChangesReviewTarget", "type": "object" }, { "description": "Review changes between the current branch and the given base branch.", "properties": { "branch": { "type": "string" }, "type": { "enum": [ "baseBranch" ], "title": "BaseBranchReviewTargetType", "type": "string" } }, "required": [ "branch", "type" ], "title": "BaseBranchReviewTarget", "type": "object" }, { "description": "Review the changes introduced by a specific commit.", "properties": { "sha": { "type": "string" }, "title": { "description": "Optional human-readable label (e.g., commit subject) for UIs.", "type": [ "string", "null" ] }, "type": { "enum": [ "commit" ], "title": "CommitReviewTargetType", "type": "string" } }, "required": [ "sha", "type" ], "title": "CommitReviewTarget", "type": "object" }, { "description": "Arbitrary instructions, equivalent to the old free-form prompt.", "properties": { "instructions": { "type": "string" }, "type": { "enum": [ "custom" ], "title": "CustomReviewTargetType", "type": "string" } }, "required": [ "instructions", "type" ], "title": "CustomReviewTarget", "type": "object" } ] }, "SandboxMode": { "enum": [ "read-only", "workspace-write", "danger-full-access" ], "type": "string" }, "SandboxPolicy": { "oneOf": [ { "properties": { "type": { "enum": [ "dangerFullAccess" ], "title": "DangerFullAccessSandboxPolicyType", "type": "string" } }, "required": [ "type" ], "title": "DangerFullAccessSandboxPolicy", "type": "object" }, { "properties": { "access": { "allOf": [ { "$ref": "#/definitions/v2/ReadOnlyAccess" } ], "default": { "type": "fullAccess" } }, "type": { "enum": [ "readOnly" ], "title": "ReadOnlySandboxPolicyType", "type": "string" } }, "required": [ "type" ], "title": "ReadOnlySandboxPolicy", "type": "object" }, { "properties": { "networkAccess": { "allOf": [ { "$ref": "#/definitions/v2/NetworkAccess" } ], "default": "restricted" }, "type": { "enum": [ "externalSandbox" ], "title": "ExternalSandboxSandboxPolicyType", "type": "string" } }, "required": [ "type" ], "title": "ExternalSandboxSandboxPolicy", "type": "object" }, { "properties": { "excludeSlashTmp": { "default": false, "type": "boolean" }, "excludeTmpdirEnvVar": { "default": false, "type": "boolean" }, "networkAccess": { "default": false, "type": "boolean" }, "readOnlyAccess": { "allOf": [ { "$ref": "#/definitions/v2/ReadOnlyAccess" } ], "default": { "type": "fullAccess" } }, "type": { "enum": [ "workspaceWrite" ], "title": "WorkspaceWriteSandboxPolicyType", "type": "string" }, "writableRoots": { "default": [], "items": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "type": "array" } }, "required": [ "type" ], "title": "WorkspaceWriteSandboxPolicy", "type": "object" } ] }, "SandboxWorkspaceWrite": { "properties": { "exclude_slash_tmp": { "default": false, "type": "boolean" }, "exclude_tmpdir_env_var": { "default": false, "type": "boolean" }, "network_access": { "default": false, "type": "boolean" }, "writable_roots": { "default": [], "items": { "type": "string" }, "type": "array" } }, "type": "object" }, "SessionSource": { "oneOf": [ { "enum": [ "cli", "vscode", "exec", "appServer", "unknown" ], "type": "string" }, { "additionalProperties": false, "properties": { "subAgent": { "$ref": "#/definitions/v2/SubAgentSource" } }, "required": [ "subAgent" ], "title": "SubAgentSessionSource", "type": "object" } ] }, "Settings": { "description": "Settings for a collaboration mode.", "properties": { "developer_instructions": { "type": [ "string", "null" ] }, "model": { "type": "string" }, "reasoning_effort": { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningEffort" }, { "type": "null" } ] } }, "required": [ "model" ], "type": "object" }, "SkillDependencies": { "properties": { "tools": { "items": { "$ref": "#/definitions/v2/SkillToolDependency" }, "type": "array" } }, "required": [ "tools" ], "type": "object" }, "SkillErrorInfo": { "properties": { "message": { "type": "string" }, "path": { "type": "string" } }, "required": [ "message", "path" ], "type": "object" }, "SkillInterface": { "properties": { "brandColor": { "type": [ "string", "null" ] }, "defaultPrompt": { "type": [ "string", "null" ] }, "displayName": { "type": [ "string", "null" ] }, "iconLarge": { "type": [ "string", "null" ] }, "iconSmall": { "type": [ "string", "null" ] }, "shortDescription": { "type": [ "string", "null" ] } }, "type": "object" }, "SkillMetadata": { "properties": { "dependencies": { "anyOf": [ { "$ref": "#/definitions/v2/SkillDependencies" }, { "type": "null" } ] }, "description": { "type": "string" }, "enabled": { "type": "boolean" }, "interface": { "anyOf": [ { "$ref": "#/definitions/v2/SkillInterface" }, { "type": "null" } ] }, "name": { "type": "string" }, "path": { "type": "string" }, "scope": { "$ref": "#/definitions/v2/SkillScope" }, "shortDescription": { "description": "Legacy short_description from SKILL.md. Prefer SKILL.json interface.short_description.", "type": [ "string", "null" ] } }, "required": [ "description", "enabled", "name", "path", "scope" ], "type": "object" }, "SkillScope": { "enum": [ "user", "repo", "system", "admin" ], "type": "string" }, "SkillToolDependency": { "properties": { "command": { "type": [ "string", "null" ] }, "description": { "type": [ "string", "null" ] }, "transport": { "type": [ "string", "null" ] }, "type": { "type": "string" }, "url": { "type": [ "string", "null" ] }, "value": { "type": "string" } }, "required": [ "type", "value" ], "type": "object" }, "SkillsConfigWriteParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "enabled": { "type": "boolean" }, "path": { "type": "string" } }, "required": [ "enabled", "path" ], "title": "SkillsConfigWriteParams", "type": "object" }, "SkillsConfigWriteResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "effectiveEnabled": { "type": "boolean" } }, "required": [ "effectiveEnabled" ], "title": "SkillsConfigWriteResponse", "type": "object" }, "SkillsListEntry": { "properties": { "cwd": { "type": "string" }, "errors": { "items": { "$ref": "#/definitions/v2/SkillErrorInfo" }, "type": "array" }, "skills": { "items": { "$ref": "#/definitions/v2/SkillMetadata" }, "type": "array" } }, "required": [ "cwd", "errors", "skills" ], "type": "object" }, "SkillsListExtraRootsForCwd": { "properties": { "cwd": { "type": "string" }, "extraUserRoots": { "items": { "type": "string" }, "type": "array" } }, "required": [ "cwd", "extraUserRoots" ], "type": "object" }, "SkillsListParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "cwds": { "description": "When empty, defaults to the current session working directory.", "items": { "type": "string" }, "type": "array" }, "forceReload": { "description": "When true, bypass the skills cache and re-scan skills from disk.", "type": "boolean" }, "perCwdExtraUserRoots": { "default": null, "description": "Optional per-cwd extra roots to scan as user-scoped skills.", "items": { "$ref": "#/definitions/v2/SkillsListExtraRootsForCwd" }, "type": [ "array", "null" ] } }, "title": "SkillsListParams", "type": "object" }, "SkillsListResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "data": { "items": { "$ref": "#/definitions/v2/SkillsListEntry" }, "type": "array" } }, "required": [ "data" ], "title": "SkillsListResponse", "type": "object" }, "SkillsRemoteReadParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "enabled": { "default": false, "type": "boolean" }, "hazelnutScope": { "allOf": [ { "$ref": "#/definitions/v2/HazelnutScope" } ], "default": "example" }, "productSurface": { "allOf": [ { "$ref": "#/definitions/v2/ProductSurface" } ], "default": "codex" } }, "title": "SkillsRemoteReadParams", "type": "object" }, "SkillsRemoteReadResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "data": { "items": { "$ref": "#/definitions/v2/RemoteSkillSummary" }, "type": "array" } }, "required": [ "data" ], "title": "SkillsRemoteReadResponse", "type": "object" }, "SkillsRemoteWriteParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "hazelnutId": { "type": "string" } }, "required": [ "hazelnutId" ], "title": "SkillsRemoteWriteParams", "type": "object" }, "SkillsRemoteWriteResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "id": { "type": "string" }, "path": { "type": "string" } }, "required": [ "id", "path" ], "title": "SkillsRemoteWriteResponse", "type": "object" }, "SubAgentSource": { "oneOf": [ { "enum": [ "review", "compact", "memory_consolidation" ], "type": "string" }, { "additionalProperties": false, "properties": { "thread_spawn": { "properties": { "agent_nickname": { "default": null, "type": [ "string", "null" ] }, "agent_role": { "default": null, "type": [ "string", "null" ] }, "depth": { "format": "int32", "type": "integer" }, "parent_thread_id": { "$ref": "#/definitions/v2/ThreadId" } }, "required": [ "depth", "parent_thread_id" ], "type": "object" } }, "required": [ "thread_spawn" ], "title": "ThreadSpawnSubAgentSource", "type": "object" }, { "additionalProperties": false, "properties": { "other": { "type": "string" } }, "required": [ "other" ], "title": "OtherSubAgentSource", "type": "object" } ] }, "TerminalInteractionNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "itemId": { "type": "string" }, "processId": { "type": "string" }, "stdin": { "type": "string" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "itemId", "processId", "stdin", "threadId", "turnId" ], "title": "TerminalInteractionNotification", "type": "object" }, "TextElement": { "properties": { "byteRange": { "allOf": [ { "$ref": "#/definitions/v2/ByteRange" } ], "description": "Byte range in the parent `text` buffer that this element occupies." }, "placeholder": { "description": "Optional human-readable placeholder for the element, displayed in the UI.", "type": [ "string", "null" ] } }, "required": [ "byteRange" ], "type": "object" }, "TextPosition": { "properties": { "column": { "description": "1-based column number (in Unicode scalar values).", "format": "uint", "minimum": 0.0, "type": "integer" }, "line": { "description": "1-based line number.", "format": "uint", "minimum": 0.0, "type": "integer" } }, "required": [ "column", "line" ], "type": "object" }, "TextRange": { "properties": { "end": { "$ref": "#/definitions/v2/TextPosition" }, "start": { "$ref": "#/definitions/v2/TextPosition" } }, "required": [ "end", "start" ], "type": "object" }, "Thread": { "properties": { "agentNickname": { "description": "Optional random unique nickname assigned to an AgentControl-spawned sub-agent.", "type": [ "string", "null" ] }, "agentRole": { "description": "Optional role (agent_role) assigned to an AgentControl-spawned sub-agent.", "type": [ "string", "null" ] }, "cliVersion": { "description": "Version of the CLI that created the thread.", "type": "string" }, "createdAt": { "description": "Unix timestamp (in seconds) when the thread was created.", "format": "int64", "type": "integer" }, "cwd": { "description": "Working directory captured for the thread.", "type": "string" }, "gitInfo": { "anyOf": [ { "$ref": "#/definitions/v2/GitInfo" }, { "type": "null" } ], "description": "Optional Git metadata captured when the thread was created." }, "id": { "type": "string" }, "modelProvider": { "description": "Model provider used for this thread (for example, 'openai').", "type": "string" }, "path": { "description": "[UNSTABLE] Path to the thread on disk.", "type": [ "string", "null" ] }, "preview": { "description": "Usually the first user message in the thread, if available.", "type": "string" }, "source": { "allOf": [ { "$ref": "#/definitions/v2/SessionSource" } ], "description": "Origin of the thread (CLI, VSCode, codex exec, codex app-server, etc.)." }, "status": { "allOf": [ { "$ref": "#/definitions/v2/ThreadStatus" } ], "description": "Current runtime status for the thread." }, "turns": { "description": "Only populated on `thread/resume`, `thread/rollback`, `thread/fork`, and `thread/read` (when `includeTurns` is true) responses. For all other responses and notifications returning a Thread, the turns field will be an empty list.", "items": { "$ref": "#/definitions/v2/Turn" }, "type": "array" }, "updatedAt": { "description": "Unix timestamp (in seconds) when the thread was last updated.", "format": "int64", "type": "integer" } }, "required": [ "cliVersion", "createdAt", "cwd", "id", "modelProvider", "preview", "source", "status", "turns", "updatedAt" ], "type": "object" }, "ThreadActiveFlag": { "enum": [ "waitingOnApproval", "waitingOnUserInput" ], "type": "string" }, "ThreadArchiveParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "threadId": { "type": "string" } }, "required": [ "threadId" ], "title": "ThreadArchiveParams", "type": "object" }, "ThreadArchiveResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "title": "ThreadArchiveResponse", "type": "object" }, "ThreadArchivedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "threadId": { "type": "string" } }, "required": [ "threadId" ], "title": "ThreadArchivedNotification", "type": "object" }, "ThreadCompactStartParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "threadId": { "type": "string" } }, "required": [ "threadId" ], "title": "ThreadCompactStartParams", "type": "object" }, "ThreadCompactStartResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "title": "ThreadCompactStartResponse", "type": "object" }, "ThreadForkParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "There are two ways to fork a thread: 1. By thread_id: load the thread from disk by thread_id and fork it into a new thread. 2. By path: load the thread from disk by path and fork it into a new thread.\n\nIf using path, the thread_id param will be ignored.\n\nPrefer using thread_id whenever possible.", "properties": { "approvalPolicy": { "anyOf": [ { "$ref": "#/definitions/v2/AskForApproval" }, { "type": "null" } ] }, "baseInstructions": { "type": [ "string", "null" ] }, "config": { "additionalProperties": true, "type": [ "object", "null" ] }, "cwd": { "type": [ "string", "null" ] }, "developerInstructions": { "type": [ "string", "null" ] }, "model": { "description": "Configuration overrides for the forked thread, if any.", "type": [ "string", "null" ] }, "modelProvider": { "type": [ "string", "null" ] }, "sandbox": { "anyOf": [ { "$ref": "#/definitions/v2/SandboxMode" }, { "type": "null" } ] }, "threadId": { "type": "string" } }, "required": [ "threadId" ], "title": "ThreadForkParams", "type": "object" }, "ThreadForkResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "approvalPolicy": { "$ref": "#/definitions/v2/AskForApproval" }, "cwd": { "type": "string" }, "model": { "type": "string" }, "modelProvider": { "type": "string" }, "reasoningEffort": { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningEffort" }, { "type": "null" } ] }, "sandbox": { "$ref": "#/definitions/v2/SandboxPolicy" }, "thread": { "$ref": "#/definitions/v2/Thread" } }, "required": [ "approvalPolicy", "cwd", "model", "modelProvider", "sandbox", "thread" ], "title": "ThreadForkResponse", "type": "object" }, "ThreadId": { "type": "string" }, "ThreadItem": { "oneOf": [ { "properties": { "content": { "items": { "$ref": "#/definitions/v2/UserInput" }, "type": "array" }, "id": { "type": "string" }, "type": { "enum": [ "userMessage" ], "title": "UserMessageThreadItemType", "type": "string" } }, "required": [ "content", "id", "type" ], "title": "UserMessageThreadItem", "type": "object" }, { "properties": { "id": { "type": "string" }, "phase": { "anyOf": [ { "$ref": "#/definitions/v2/MessagePhase" }, { "type": "null" } ], "default": null }, "text": { "type": "string" }, "type": { "enum": [ "agentMessage" ], "title": "AgentMessageThreadItemType", "type": "string" } }, "required": [ "id", "text", "type" ], "title": "AgentMessageThreadItem", "type": "object" }, { "description": "EXPERIMENTAL - proposed plan item content. The completed plan item is authoritative and may not match the concatenation of `PlanDelta` text.", "properties": { "id": { "type": "string" }, "text": { "type": "string" }, "type": { "enum": [ "plan" ], "title": "PlanThreadItemType", "type": "string" } }, "required": [ "id", "text", "type" ], "title": "PlanThreadItem", "type": "object" }, { "properties": { "content": { "default": [], "items": { "type": "string" }, "type": "array" }, "id": { "type": "string" }, "summary": { "default": [], "items": { "type": "string" }, "type": "array" }, "type": { "enum": [ "reasoning" ], "title": "ReasoningThreadItemType", "type": "string" } }, "required": [ "id", "type" ], "title": "ReasoningThreadItem", "type": "object" }, { "properties": { "aggregatedOutput": { "description": "The command's output, aggregated from stdout and stderr.", "type": [ "string", "null" ] }, "command": { "description": "The command to be executed.", "type": "string" }, "commandActions": { "description": "A best-effort parsing of the command to understand the action(s) it will perform. This returns a list of CommandAction objects because a single shell command may be composed of many commands piped together.", "items": { "$ref": "#/definitions/v2/CommandAction" }, "type": "array" }, "cwd": { "description": "The command's working directory.", "type": "string" }, "durationMs": { "description": "The duration of the command execution in milliseconds.", "format": "int64", "type": [ "integer", "null" ] }, "exitCode": { "description": "The command's exit code.", "format": "int32", "type": [ "integer", "null" ] }, "id": { "type": "string" }, "processId": { "description": "Identifier for the underlying PTY process (when available).", "type": [ "string", "null" ] }, "status": { "$ref": "#/definitions/v2/CommandExecutionStatus" }, "type": { "enum": [ "commandExecution" ], "title": "CommandExecutionThreadItemType", "type": "string" } }, "required": [ "command", "commandActions", "cwd", "id", "status", "type" ], "title": "CommandExecutionThreadItem", "type": "object" }, { "properties": { "changes": { "items": { "$ref": "#/definitions/v2/FileUpdateChange" }, "type": "array" }, "id": { "type": "string" }, "status": { "$ref": "#/definitions/v2/PatchApplyStatus" }, "type": { "enum": [ "fileChange" ], "title": "FileChangeThreadItemType", "type": "string" } }, "required": [ "changes", "id", "status", "type" ], "title": "FileChangeThreadItem", "type": "object" }, { "properties": { "arguments": true, "durationMs": { "description": "The duration of the MCP tool call in milliseconds.", "format": "int64", "type": [ "integer", "null" ] }, "error": { "anyOf": [ { "$ref": "#/definitions/v2/McpToolCallError" }, { "type": "null" } ] }, "id": { "type": "string" }, "result": { "anyOf": [ { "$ref": "#/definitions/v2/McpToolCallResult" }, { "type": "null" } ] }, "server": { "type": "string" }, "status": { "$ref": "#/definitions/v2/McpToolCallStatus" }, "tool": { "type": "string" }, "type": { "enum": [ "mcpToolCall" ], "title": "McpToolCallThreadItemType", "type": "string" } }, "required": [ "arguments", "id", "server", "status", "tool", "type" ], "title": "McpToolCallThreadItem", "type": "object" }, { "properties": { "agentsStates": { "additionalProperties": { "$ref": "#/definitions/v2/CollabAgentState" }, "description": "Last known status of the target agents, when available.", "type": "object" }, "id": { "description": "Unique identifier for this collab tool call.", "type": "string" }, "prompt": { "description": "Prompt text sent as part of the collab tool call, when available.", "type": [ "string", "null" ] }, "receiverThreadIds": { "description": "Thread ID of the receiving agent, when applicable. In case of spawn operation, this corresponds to the newly spawned agent.", "items": { "type": "string" }, "type": "array" }, "senderThreadId": { "description": "Thread ID of the agent issuing the collab request.", "type": "string" }, "status": { "allOf": [ { "$ref": "#/definitions/v2/CollabAgentToolCallStatus" } ], "description": "Current status of the collab tool call." }, "tool": { "allOf": [ { "$ref": "#/definitions/v2/CollabAgentTool" } ], "description": "Name of the collab tool that was invoked." }, "type": { "enum": [ "collabAgentToolCall" ], "title": "CollabAgentToolCallThreadItemType", "type": "string" } }, "required": [ "agentsStates", "id", "receiverThreadIds", "senderThreadId", "status", "tool", "type" ], "title": "CollabAgentToolCallThreadItem", "type": "object" }, { "properties": { "action": { "anyOf": [ { "$ref": "#/definitions/v2/WebSearchAction" }, { "type": "null" } ] }, "id": { "type": "string" }, "query": { "type": "string" }, "type": { "enum": [ "webSearch" ], "title": "WebSearchThreadItemType", "type": "string" } }, "required": [ "id", "query", "type" ], "title": "WebSearchThreadItem", "type": "object" }, { "properties": { "id": { "type": "string" }, "path": { "type": "string" }, "type": { "enum": [ "imageView" ], "title": "ImageViewThreadItemType", "type": "string" } }, "required": [ "id", "path", "type" ], "title": "ImageViewThreadItem", "type": "object" }, { "properties": { "id": { "type": "string" }, "review": { "type": "string" }, "type": { "enum": [ "enteredReviewMode" ], "title": "EnteredReviewModeThreadItemType", "type": "string" } }, "required": [ "id", "review", "type" ], "title": "EnteredReviewModeThreadItem", "type": "object" }, { "properties": { "id": { "type": "string" }, "review": { "type": "string" }, "type": { "enum": [ "exitedReviewMode" ], "title": "ExitedReviewModeThreadItemType", "type": "string" } }, "required": [ "id", "review", "type" ], "title": "ExitedReviewModeThreadItem", "type": "object" }, { "properties": { "id": { "type": "string" }, "type": { "enum": [ "contextCompaction" ], "title": "ContextCompactionThreadItemType", "type": "string" } }, "required": [ "id", "type" ], "title": "ContextCompactionThreadItem", "type": "object" } ] }, "ThreadListParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "archived": { "description": "Optional archived filter; when set to true, only archived threads are returned. If false or null, only non-archived threads are returned.", "type": [ "boolean", "null" ] }, "cursor": { "description": "Opaque pagination cursor returned by a previous call.", "type": [ "string", "null" ] }, "cwd": { "description": "Optional cwd filter; when set, only threads whose session cwd exactly matches this path are returned.", "type": [ "string", "null" ] }, "limit": { "description": "Optional page size; defaults to a reasonable server-side value.", "format": "uint32", "minimum": 0.0, "type": [ "integer", "null" ] }, "modelProviders": { "description": "Optional provider filter; when set, only sessions recorded under these providers are returned. When present but empty, includes all providers.", "items": { "type": "string" }, "type": [ "array", "null" ] }, "sortKey": { "anyOf": [ { "$ref": "#/definitions/v2/ThreadSortKey" }, { "type": "null" } ], "description": "Optional sort key; defaults to created_at." }, "sourceKinds": { "description": "Optional source filter; when set, only sessions from these source kinds are returned. When omitted or empty, defaults to interactive sources.", "items": { "$ref": "#/definitions/v2/ThreadSourceKind" }, "type": [ "array", "null" ] } }, "title": "ThreadListParams", "type": "object" }, "ThreadListResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "data": { "items": { "$ref": "#/definitions/v2/Thread" }, "type": "array" }, "nextCursor": { "description": "Opaque cursor to pass to the next call to continue after the last item. if None, there are no more items to return.", "type": [ "string", "null" ] } }, "required": [ "data" ], "title": "ThreadListResponse", "type": "object" }, "ThreadLoadedListParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "cursor": { "description": "Opaque pagination cursor returned by a previous call.", "type": [ "string", "null" ] }, "limit": { "description": "Optional page size; defaults to no limit.", "format": "uint32", "minimum": 0.0, "type": [ "integer", "null" ] } }, "title": "ThreadLoadedListParams", "type": "object" }, "ThreadLoadedListResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "data": { "description": "Thread ids for sessions currently loaded in memory.", "items": { "type": "string" }, "type": "array" }, "nextCursor": { "description": "Opaque cursor to pass to the next call to continue after the last item. if None, there are no more items to return.", "type": [ "string", "null" ] } }, "required": [ "data" ], "title": "ThreadLoadedListResponse", "type": "object" }, "ThreadNameUpdatedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "threadId": { "type": "string" }, "threadName": { "type": [ "string", "null" ] } }, "required": [ "threadId" ], "title": "ThreadNameUpdatedNotification", "type": "object" }, "ThreadReadParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "includeTurns": { "default": false, "description": "When true, include turns and their items from rollout history.", "type": "boolean" }, "threadId": { "type": "string" } }, "required": [ "threadId" ], "title": "ThreadReadParams", "type": "object" }, "ThreadReadResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "thread": { "$ref": "#/definitions/v2/Thread" } }, "required": [ "thread" ], "title": "ThreadReadResponse", "type": "object" }, "ThreadResumeParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "There are three ways to resume a thread: 1. By thread_id: load the thread from disk by thread_id and resume it. 2. By history: instantiate the thread from memory and resume it. 3. By path: load the thread from disk by path and resume it.\n\nThe precedence is: history > path > thread_id. If using history or path, the thread_id param will be ignored.\n\nPrefer using thread_id whenever possible.", "properties": { "approvalPolicy": { "anyOf": [ { "$ref": "#/definitions/v2/AskForApproval" }, { "type": "null" } ] }, "baseInstructions": { "type": [ "string", "null" ] }, "config": { "additionalProperties": true, "type": [ "object", "null" ] }, "cwd": { "type": [ "string", "null" ] }, "developerInstructions": { "type": [ "string", "null" ] }, "model": { "description": "Configuration overrides for the resumed thread, if any.", "type": [ "string", "null" ] }, "modelProvider": { "type": [ "string", "null" ] }, "personality": { "anyOf": [ { "$ref": "#/definitions/v2/Personality" }, { "type": "null" } ] }, "sandbox": { "anyOf": [ { "$ref": "#/definitions/v2/SandboxMode" }, { "type": "null" } ] }, "threadId": { "type": "string" } }, "required": [ "threadId" ], "title": "ThreadResumeParams", "type": "object" }, "ThreadResumeResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "approvalPolicy": { "$ref": "#/definitions/v2/AskForApproval" }, "cwd": { "type": "string" }, "model": { "type": "string" }, "modelProvider": { "type": "string" }, "reasoningEffort": { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningEffort" }, { "type": "null" } ] }, "sandbox": { "$ref": "#/definitions/v2/SandboxPolicy" }, "thread": { "$ref": "#/definitions/v2/Thread" } }, "required": [ "approvalPolicy", "cwd", "model", "modelProvider", "sandbox", "thread" ], "title": "ThreadResumeResponse", "type": "object" }, "ThreadRollbackParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "numTurns": { "description": "The number of turns to drop from the end of the thread. Must be >= 1.\n\nThis only modifies the thread's history and does not revert local file changes that have been made by the agent. Clients are responsible for reverting these changes.", "format": "uint32", "minimum": 0.0, "type": "integer" }, "threadId": { "type": "string" } }, "required": [ "numTurns", "threadId" ], "title": "ThreadRollbackParams", "type": "object" }, "ThreadRollbackResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "thread": { "allOf": [ { "$ref": "#/definitions/v2/Thread" } ], "description": "The updated thread after applying the rollback, with `turns` populated.\n\nThe ThreadItems stored in each Turn are lossy since we explicitly do not persist all agent interactions, such as command executions. This is the same behavior as `thread/resume`." } }, "required": [ "thread" ], "title": "ThreadRollbackResponse", "type": "object" }, "ThreadSetNameParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "name": { "type": "string" }, "threadId": { "type": "string" } }, "required": [ "name", "threadId" ], "title": "ThreadSetNameParams", "type": "object" }, "ThreadSetNameResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "title": "ThreadSetNameResponse", "type": "object" }, "ThreadSortKey": { "enum": [ "created_at", "updated_at" ], "type": "string" }, "ThreadSourceKind": { "enum": [ "cli", "vscode", "exec", "appServer", "subAgent", "subAgentReview", "subAgentCompact", "subAgentThreadSpawn", "subAgentOther", "unknown" ], "type": "string" }, "ThreadStartParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "approvalPolicy": { "anyOf": [ { "$ref": "#/definitions/v2/AskForApproval" }, { "type": "null" } ] }, "baseInstructions": { "type": [ "string", "null" ] }, "config": { "additionalProperties": true, "type": [ "object", "null" ] }, "cwd": { "type": [ "string", "null" ] }, "developerInstructions": { "type": [ "string", "null" ] }, "ephemeral": { "type": [ "boolean", "null" ] }, "model": { "type": [ "string", "null" ] }, "modelProvider": { "type": [ "string", "null" ] }, "personality": { "anyOf": [ { "$ref": "#/definitions/v2/Personality" }, { "type": "null" } ] }, "sandbox": { "anyOf": [ { "$ref": "#/definitions/v2/SandboxMode" }, { "type": "null" } ] } }, "title": "ThreadStartParams", "type": "object" }, "ThreadStartResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "approvalPolicy": { "$ref": "#/definitions/v2/AskForApproval" }, "cwd": { "type": "string" }, "model": { "type": "string" }, "modelProvider": { "type": "string" }, "reasoningEffort": { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningEffort" }, { "type": "null" } ] }, "sandbox": { "$ref": "#/definitions/v2/SandboxPolicy" }, "thread": { "$ref": "#/definitions/v2/Thread" } }, "required": [ "approvalPolicy", "cwd", "model", "modelProvider", "sandbox", "thread" ], "title": "ThreadStartResponse", "type": "object" }, "ThreadStartedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "thread": { "$ref": "#/definitions/v2/Thread" } }, "required": [ "thread" ], "title": "ThreadStartedNotification", "type": "object" }, "ThreadStatus": { "oneOf": [ { "properties": { "type": { "enum": [ "notLoaded" ], "title": "NotLoadedThreadStatusType", "type": "string" } }, "required": [ "type" ], "title": "NotLoadedThreadStatus", "type": "object" }, { "properties": { "type": { "enum": [ "idle" ], "title": "IdleThreadStatusType", "type": "string" } }, "required": [ "type" ], "title": "IdleThreadStatus", "type": "object" }, { "properties": { "type": { "enum": [ "systemError" ], "title": "SystemErrorThreadStatusType", "type": "string" } }, "required": [ "type" ], "title": "SystemErrorThreadStatus", "type": "object" }, { "properties": { "activeFlags": { "items": { "$ref": "#/definitions/v2/ThreadActiveFlag" }, "type": "array" }, "type": { "enum": [ "active" ], "title": "ActiveThreadStatusType", "type": "string" } }, "required": [ "activeFlags", "type" ], "title": "ActiveThreadStatus", "type": "object" } ] }, "ThreadStatusChangedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "status": { "$ref": "#/definitions/v2/ThreadStatus" }, "threadId": { "type": "string" } }, "required": [ "status", "threadId" ], "title": "ThreadStatusChangedNotification", "type": "object" }, "ThreadTokenUsage": { "properties": { "last": { "$ref": "#/definitions/v2/TokenUsageBreakdown" }, "modelContextWindow": { "format": "int64", "type": [ "integer", "null" ] }, "total": { "$ref": "#/definitions/v2/TokenUsageBreakdown" } }, "required": [ "last", "total" ], "type": "object" }, "ThreadTokenUsageUpdatedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "threadId": { "type": "string" }, "tokenUsage": { "$ref": "#/definitions/v2/ThreadTokenUsage" }, "turnId": { "type": "string" } }, "required": [ "threadId", "tokenUsage", "turnId" ], "title": "ThreadTokenUsageUpdatedNotification", "type": "object" }, "ThreadUnarchiveParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "threadId": { "type": "string" } }, "required": [ "threadId" ], "title": "ThreadUnarchiveParams", "type": "object" }, "ThreadUnarchiveResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "thread": { "$ref": "#/definitions/v2/Thread" } }, "required": [ "thread" ], "title": "ThreadUnarchiveResponse", "type": "object" }, "ThreadUnarchivedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "threadId": { "type": "string" } }, "required": [ "threadId" ], "title": "ThreadUnarchivedNotification", "type": "object" }, "TokenUsageBreakdown": { "properties": { "cachedInputTokens": { "format": "int64", "type": "integer" }, "inputTokens": { "format": "int64", "type": "integer" }, "outputTokens": { "format": "int64", "type": "integer" }, "reasoningOutputTokens": { "format": "int64", "type": "integer" }, "totalTokens": { "format": "int64", "type": "integer" } }, "required": [ "cachedInputTokens", "inputTokens", "outputTokens", "reasoningOutputTokens", "totalTokens" ], "type": "object" }, "Tool": { "description": "Definition for a tool the client can call.", "properties": { "_meta": true, "annotations": true, "description": { "type": [ "string", "null" ] }, "icons": { "items": true, "type": [ "array", "null" ] }, "inputSchema": true, "name": { "type": "string" }, "outputSchema": true, "title": { "type": [ "string", "null" ] } }, "required": [ "inputSchema", "name" ], "type": "object" }, "ToolsV2": { "properties": { "view_image": { "type": [ "boolean", "null" ] }, "web_search": { "type": [ "boolean", "null" ] } }, "type": "object" }, "Turn": { "properties": { "error": { "anyOf": [ { "$ref": "#/definitions/v2/TurnError" }, { "type": "null" } ], "description": "Only populated when the Turn's status is failed." }, "id": { "type": "string" }, "items": { "description": "Only populated on a `thread/resume` or `thread/fork` response. For all other responses and notifications returning a Turn, the items field will be an empty list.", "items": { "$ref": "#/definitions/v2/ThreadItem" }, "type": "array" }, "status": { "$ref": "#/definitions/v2/TurnStatus" } }, "required": [ "id", "items", "status" ], "type": "object" }, "TurnCompletedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "threadId": { "type": "string" }, "turn": { "$ref": "#/definitions/v2/Turn" } }, "required": [ "threadId", "turn" ], "title": "TurnCompletedNotification", "type": "object" }, "TurnDiffUpdatedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Notification that the turn-level unified diff has changed. Contains the latest aggregated diff across all file changes in the turn.", "properties": { "diff": { "type": "string" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "diff", "threadId", "turnId" ], "title": "TurnDiffUpdatedNotification", "type": "object" }, "TurnError": { "properties": { "additionalDetails": { "default": null, "type": [ "string", "null" ] }, "codexErrorInfo": { "anyOf": [ { "$ref": "#/definitions/v2/CodexErrorInfo" }, { "type": "null" } ] }, "message": { "type": "string" } }, "required": [ "message" ], "type": "object" }, "TurnInterruptParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "threadId", "turnId" ], "title": "TurnInterruptParams", "type": "object" }, "TurnInterruptResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "title": "TurnInterruptResponse", "type": "object" }, "TurnPlanStep": { "properties": { "status": { "$ref": "#/definitions/v2/TurnPlanStepStatus" }, "step": { "type": "string" } }, "required": [ "status", "step" ], "type": "object" }, "TurnPlanStepStatus": { "enum": [ "pending", "inProgress", "completed" ], "type": "string" }, "TurnPlanUpdatedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "explanation": { "type": [ "string", "null" ] }, "plan": { "items": { "$ref": "#/definitions/v2/TurnPlanStep" }, "type": "array" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "plan", "threadId", "turnId" ], "title": "TurnPlanUpdatedNotification", "type": "object" }, "TurnStartParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "approvalPolicy": { "anyOf": [ { "$ref": "#/definitions/v2/AskForApproval" }, { "type": "null" } ], "description": "Override the approval policy for this turn and subsequent turns." }, "cwd": { "description": "Override the working directory for this turn and subsequent turns.", "type": [ "string", "null" ] }, "effort": { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningEffort" }, { "type": "null" } ], "description": "Override the reasoning effort for this turn and subsequent turns." }, "input": { "items": { "$ref": "#/definitions/v2/UserInput" }, "type": "array" }, "model": { "description": "Override the model for this turn and subsequent turns.", "type": [ "string", "null" ] }, "outputSchema": { "description": "Optional JSON Schema used to constrain the final assistant message for this turn." }, "personality": { "anyOf": [ { "$ref": "#/definitions/v2/Personality" }, { "type": "null" } ], "description": "Override the personality for this turn and subsequent turns." }, "sandboxPolicy": { "anyOf": [ { "$ref": "#/definitions/v2/SandboxPolicy" }, { "type": "null" } ], "description": "Override the sandbox policy for this turn and subsequent turns." }, "summary": { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningSummary" }, { "type": "null" } ], "description": "Override the reasoning summary for this turn and subsequent turns." }, "threadId": { "type": "string" } }, "required": [ "input", "threadId" ], "title": "TurnStartParams", "type": "object" }, "TurnStartResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "turn": { "$ref": "#/definitions/v2/Turn" } }, "required": [ "turn" ], "title": "TurnStartResponse", "type": "object" }, "TurnStartedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "threadId": { "type": "string" }, "turn": { "$ref": "#/definitions/v2/Turn" } }, "required": [ "threadId", "turn" ], "title": "TurnStartedNotification", "type": "object" }, "TurnStatus": { "enum": [ "completed", "interrupted", "failed", "inProgress" ], "type": "string" }, "TurnSteerParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "expectedTurnId": { "description": "Required active turn id precondition. The request fails when it does not match the currently active turn.", "type": "string" }, "input": { "items": { "$ref": "#/definitions/v2/UserInput" }, "type": "array" }, "threadId": { "type": "string" } }, "required": [ "expectedTurnId", "input", "threadId" ], "title": "TurnSteerParams", "type": "object" }, "TurnSteerResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "turnId": { "type": "string" } }, "required": [ "turnId" ], "title": "TurnSteerResponse", "type": "object" }, "UserInput": { "oneOf": [ { "properties": { "text": { "type": "string" }, "text_elements": { "default": [], "description": "UI-defined spans within `text` used to render or persist special elements.", "items": { "$ref": "#/definitions/v2/TextElement" }, "type": "array" }, "type": { "enum": [ "text" ], "title": "TextUserInputType", "type": "string" } }, "required": [ "text", "type" ], "title": "TextUserInput", "type": "object" }, { "properties": { "type": { "enum": [ "image" ], "title": "ImageUserInputType", "type": "string" }, "url": { "type": "string" } }, "required": [ "type", "url" ], "title": "ImageUserInput", "type": "object" }, { "properties": { "path": { "type": "string" }, "type": { "enum": [ "localImage" ], "title": "LocalImageUserInputType", "type": "string" } }, "required": [ "path", "type" ], "title": "LocalImageUserInput", "type": "object" }, { "properties": { "name": { "type": "string" }, "path": { "type": "string" }, "type": { "enum": [ "skill" ], "title": "SkillUserInputType", "type": "string" } }, "required": [ "name", "path", "type" ], "title": "SkillUserInput", "type": "object" }, { "properties": { "name": { "type": "string" }, "path": { "type": "string" }, "type": { "enum": [ "mention" ], "title": "MentionUserInputType", "type": "string" } }, "required": [ "name", "path", "type" ], "title": "MentionUserInput", "type": "object" } ] }, "Verbosity": { "description": "Controls output length/detail on GPT-5 models via the Responses API. Serialized with lowercase values to match the OpenAI API.", "enum": [ "low", "medium", "high" ], "type": "string" }, "WebSearchAction": { "oneOf": [ { "properties": { "queries": { "items": { "type": "string" }, "type": [ "array", "null" ] }, "query": { "type": [ "string", "null" ] }, "type": { "enum": [ "search" ], "title": "SearchWebSearchActionType", "type": "string" } }, "required": [ "type" ], "title": "SearchWebSearchAction", "type": "object" }, { "properties": { "type": { "enum": [ "open_page" ], "title": "OpenPageWebSearchActionType", "type": "string" }, "url": { "type": [ "string", "null" ] } }, "required": [ "type" ], "title": "OpenPageWebSearchAction", "type": "object" }, { "properties": { "pattern": { "type": [ "string", "null" ] }, "type": { "enum": [ "find_in_page" ], "title": "FindInPageWebSearchActionType", "type": "string" }, "url": { "type": [ "string", "null" ] } }, "required": [ "type" ], "title": "FindInPageWebSearchAction", "type": "object" }, { "properties": { "type": { "enum": [ "other" ], "title": "OtherWebSearchActionType", "type": "string" } }, "required": [ "type" ], "title": "OtherWebSearchAction", "type": "object" } ] }, "WebSearchMode": { "enum": [ "disabled", "cached", "live" ], "type": "string" }, "WindowsSandboxSetupCompletedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "error": { "type": [ "string", "null" ] }, "mode": { "$ref": "#/definitions/v2/WindowsSandboxSetupMode" }, "success": { "type": "boolean" } }, "required": [ "mode", "success" ], "title": "WindowsSandboxSetupCompletedNotification", "type": "object" }, "WindowsSandboxSetupMode": { "enum": [ "elevated", "unelevated" ], "type": "string" }, "WindowsSandboxSetupStartParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "mode": { "$ref": "#/definitions/v2/WindowsSandboxSetupMode" } }, "required": [ "mode" ], "title": "WindowsSandboxSetupStartParams", "type": "object" }, "WindowsSandboxSetupStartResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "started": { "type": "boolean" } }, "required": [ "started" ], "title": "WindowsSandboxSetupStartResponse", "type": "object" }, "WindowsWorldWritableWarningNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "extraCount": { "format": "uint", "minimum": 0.0, "type": "integer" }, "failedScan": { "type": "boolean" }, "samplePaths": { "items": { "type": "string" }, "type": "array" } }, "required": [ "extraCount", "failedScan", "samplePaths" ], "title": "WindowsWorldWritableWarningNotification", "type": "object" }, "WriteStatus": { "enum": [ "ok", "okOverridden" ], "type": "string" } } }, "title": "CodexAppServerProtocol", "type": "object" }