{ "$schema": "http://json-schema.org/draft-07/schema#", "definitions": { "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" }, "AdditionalFileSystemPermissions": { "properties": { "read": { "items": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "type": [ "array", "null" ] }, "write": { "items": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "type": [ "array", "null" ] } }, "type": "object" }, "AdditionalMacOsPermissions": { "properties": { "accessibility": { "type": "boolean" }, "automations": { "$ref": "#/definitions/MacOsAutomationPermission" }, "calendar": { "type": "boolean" }, "contacts": { "$ref": "#/definitions/MacOsContactsPermission" }, "launchServices": { "type": "boolean" }, "preferences": { "$ref": "#/definitions/MacOsPreferencesPermission" }, "reminders": { "type": "boolean" } }, "required": [ "accessibility", "automations", "calendar", "contacts", "launchServices", "preferences", "reminders" ], "type": "object" }, "AdditionalNetworkPermissions": { "properties": { "enabled": { "type": [ "boolean", "null" ] } }, "type": "object" }, "AdditionalPermissionProfile": { "properties": { "fileSystem": { "anyOf": [ { "$ref": "#/definitions/AdditionalFileSystemPermissions" }, { "type": "null" } ] }, "macos": { "anyOf": [ { "$ref": "#/definitions/AdditionalMacOsPermissions" }, { "type": "null" } ] }, "network": { "anyOf": [ { "$ref": "#/definitions/AdditionalNetworkPermissions" }, { "type": "null" } ] } }, "type": "object" }, "ApplyPatchApprovalParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "callId": { "description": "Use to correlate this with [codex_protocol::protocol::PatchApplyBeginEvent] and [codex_protocol::protocol::PatchApplyEndEvent].", "type": "string" }, "conversationId": { "$ref": "#/definitions/v2/ThreadId" }, "fileChanges": { "additionalProperties": { "$ref": "#/definitions/FileChange" }, "type": "object" }, "grantRoot": { "description": "When set, the agent is asking the user to allow writes under this root for the remainder of the session (unclear if this is honored today).", "type": [ "string", "null" ] }, "reason": { "description": "Optional explanatory reason (e.g. request for extra write access).", "type": [ "string", "null" ] } }, "required": [ "callId", "conversationId", "fileChanges" ], "title": "ApplyPatchApprovalParams", "type": "object" }, "ApplyPatchApprovalResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "decision": { "$ref": "#/definitions/ReviewDecision" } }, "required": [ "decision" ], "title": "ApplyPatchApprovalResponse", "type": "object" }, "ChatgptAuthTokensRefreshParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "previousAccountId": { "description": "Workspace/account identifier that Codex was previously using.\n\nClients that manage multiple accounts/workspaces can use this as a hint to refresh the token for the correct workspace.\n\nThis may be `null` when the prior auth state did not include a workspace identifier (`chatgpt_account_id`).", "type": [ "string", "null" ] }, "reason": { "$ref": "#/definitions/ChatgptAuthTokensRefreshReason" } }, "required": [ "reason" ], "title": "ChatgptAuthTokensRefreshParams", "type": "object" }, "ChatgptAuthTokensRefreshReason": { "oneOf": [ { "description": "Codex attempted a backend request and received `401 Unauthorized`.", "enum": [ "unauthorized" ], "type": "string" } ] }, "ChatgptAuthTokensRefreshResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "accessToken": { "type": "string" }, "chatgptAccountId": { "type": "string" }, "chatgptPlanType": { "type": [ "string", "null" ] } }, "required": [ "accessToken", "chatgptAccountId" ], "title": "ChatgptAuthTokensRefreshResponse", "type": "object" }, "ClientInfo": { "properties": { "name": { "type": "string" }, "title": { "type": [ "string", "null" ] }, "version": { "type": "string" } }, "required": [ "name", "version" ], "type": "object" }, "ClientNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "oneOf": [ { "properties": { "method": { "enum": [ "initialized" ], "title": "InitializedNotificationMethod", "type": "string" } }, "required": [ "method" ], "title": "InitializedNotification", "type": "object" } ], "title": "ClientNotification" }, "ClientRequest": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Request from the client to the server.", "oneOf": [ { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "initialize" ], "title": "InitializeRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/InitializeParams" } }, "required": [ "id", "method", "params" ], "title": "InitializeRequest", "type": "object" }, { "description": "NEW APIs", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "thread/start" ], "title": "Thread/startRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadStartParams" } }, "required": [ "id", "method", "params" ], "title": "Thread/startRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "thread/resume" ], "title": "Thread/resumeRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadResumeParams" } }, "required": [ "id", "method", "params" ], "title": "Thread/resumeRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "thread/fork" ], "title": "Thread/forkRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadForkParams" } }, "required": [ "id", "method", "params" ], "title": "Thread/forkRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "thread/archive" ], "title": "Thread/archiveRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadArchiveParams" } }, "required": [ "id", "method", "params" ], "title": "Thread/archiveRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "thread/unsubscribe" ], "title": "Thread/unsubscribeRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadUnsubscribeParams" } }, "required": [ "id", "method", "params" ], "title": "Thread/unsubscribeRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "thread/name/set" ], "title": "Thread/name/setRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadSetNameParams" } }, "required": [ "id", "method", "params" ], "title": "Thread/name/setRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "thread/metadata/update" ], "title": "Thread/metadata/updateRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadMetadataUpdateParams" } }, "required": [ "id", "method", "params" ], "title": "Thread/metadata/updateRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "thread/unarchive" ], "title": "Thread/unarchiveRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadUnarchiveParams" } }, "required": [ "id", "method", "params" ], "title": "Thread/unarchiveRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "thread/compact/start" ], "title": "Thread/compact/startRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadCompactStartParams" } }, "required": [ "id", "method", "params" ], "title": "Thread/compact/startRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "thread/shellCommand" ], "title": "Thread/shellCommandRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadShellCommandParams" } }, "required": [ "id", "method", "params" ], "title": "Thread/shellCommandRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "thread/rollback" ], "title": "Thread/rollbackRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadRollbackParams" } }, "required": [ "id", "method", "params" ], "title": "Thread/rollbackRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "thread/list" ], "title": "Thread/listRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadListParams" } }, "required": [ "id", "method", "params" ], "title": "Thread/listRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "thread/loaded/list" ], "title": "Thread/loaded/listRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadLoadedListParams" } }, "required": [ "id", "method", "params" ], "title": "Thread/loaded/listRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "thread/read" ], "title": "Thread/readRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadReadParams" } }, "required": [ "id", "method", "params" ], "title": "Thread/readRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "skills/list" ], "title": "Skills/listRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/SkillsListParams" } }, "required": [ "id", "method", "params" ], "title": "Skills/listRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "plugin/list" ], "title": "Plugin/listRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/PluginListParams" } }, "required": [ "id", "method", "params" ], "title": "Plugin/listRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "plugin/read" ], "title": "Plugin/readRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/PluginReadParams" } }, "required": [ "id", "method", "params" ], "title": "Plugin/readRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "app/list" ], "title": "App/listRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/AppsListParams" } }, "required": [ "id", "method", "params" ], "title": "App/listRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "fs/readFile" ], "title": "Fs/readFileRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/FsReadFileParams" } }, "required": [ "id", "method", "params" ], "title": "Fs/readFileRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "fs/writeFile" ], "title": "Fs/writeFileRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/FsWriteFileParams" } }, "required": [ "id", "method", "params" ], "title": "Fs/writeFileRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "fs/createDirectory" ], "title": "Fs/createDirectoryRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/FsCreateDirectoryParams" } }, "required": [ "id", "method", "params" ], "title": "Fs/createDirectoryRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "fs/getMetadata" ], "title": "Fs/getMetadataRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/FsGetMetadataParams" } }, "required": [ "id", "method", "params" ], "title": "Fs/getMetadataRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "fs/readDirectory" ], "title": "Fs/readDirectoryRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/FsReadDirectoryParams" } }, "required": [ "id", "method", "params" ], "title": "Fs/readDirectoryRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "fs/remove" ], "title": "Fs/removeRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/FsRemoveParams" } }, "required": [ "id", "method", "params" ], "title": "Fs/removeRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "fs/copy" ], "title": "Fs/copyRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/FsCopyParams" } }, "required": [ "id", "method", "params" ], "title": "Fs/copyRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "fs/watch" ], "title": "Fs/watchRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/FsWatchParams" } }, "required": [ "id", "method", "params" ], "title": "Fs/watchRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "fs/unwatch" ], "title": "Fs/unwatchRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/FsUnwatchParams" } }, "required": [ "id", "method", "params" ], "title": "Fs/unwatchRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "skills/config/write" ], "title": "Skills/config/writeRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/SkillsConfigWriteParams" } }, "required": [ "id", "method", "params" ], "title": "Skills/config/writeRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "plugin/install" ], "title": "Plugin/installRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/PluginInstallParams" } }, "required": [ "id", "method", "params" ], "title": "Plugin/installRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "plugin/uninstall" ], "title": "Plugin/uninstallRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/PluginUninstallParams" } }, "required": [ "id", "method", "params" ], "title": "Plugin/uninstallRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "turn/start" ], "title": "Turn/startRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/TurnStartParams" } }, "required": [ "id", "method", "params" ], "title": "Turn/startRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "turn/steer" ], "title": "Turn/steerRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/TurnSteerParams" } }, "required": [ "id", "method", "params" ], "title": "Turn/steerRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "turn/interrupt" ], "title": "Turn/interruptRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/TurnInterruptParams" } }, "required": [ "id", "method", "params" ], "title": "Turn/interruptRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "review/start" ], "title": "Review/startRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ReviewStartParams" } }, "required": [ "id", "method", "params" ], "title": "Review/startRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "model/list" ], "title": "Model/listRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ModelListParams" } }, "required": [ "id", "method", "params" ], "title": "Model/listRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "experimentalFeature/list" ], "title": "ExperimentalFeature/listRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ExperimentalFeatureListParams" } }, "required": [ "id", "method", "params" ], "title": "ExperimentalFeature/listRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "experimentalFeature/enablement/set" ], "title": "ExperimentalFeature/enablement/setRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ExperimentalFeatureEnablementSetParams" } }, "required": [ "id", "method", "params" ], "title": "ExperimentalFeature/enablement/setRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "mcpServer/oauth/login" ], "title": "McpServer/oauth/loginRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/McpServerOauthLoginParams" } }, "required": [ "id", "method", "params" ], "title": "McpServer/oauth/loginRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "config/mcpServer/reload" ], "title": "Config/mcpServer/reloadRequestMethod", "type": "string" }, "params": { "type": "null" } }, "required": [ "id", "method" ], "title": "Config/mcpServer/reloadRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "mcpServerStatus/list" ], "title": "McpServerStatus/listRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ListMcpServerStatusParams" } }, "required": [ "id", "method", "params" ], "title": "McpServerStatus/listRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "windowsSandbox/setupStart" ], "title": "WindowsSandbox/setupStartRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/WindowsSandboxSetupStartParams" } }, "required": [ "id", "method", "params" ], "title": "WindowsSandbox/setupStartRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "account/login/start" ], "title": "Account/login/startRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/LoginAccountParams" } }, "required": [ "id", "method", "params" ], "title": "Account/login/startRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "account/login/cancel" ], "title": "Account/login/cancelRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/CancelLoginAccountParams" } }, "required": [ "id", "method", "params" ], "title": "Account/login/cancelRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "account/logout" ], "title": "Account/logoutRequestMethod", "type": "string" }, "params": { "type": "null" } }, "required": [ "id", "method" ], "title": "Account/logoutRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "account/rateLimits/read" ], "title": "Account/rateLimits/readRequestMethod", "type": "string" }, "params": { "type": "null" } }, "required": [ "id", "method" ], "title": "Account/rateLimits/readRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "feedback/upload" ], "title": "Feedback/uploadRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/FeedbackUploadParams" } }, "required": [ "id", "method", "params" ], "title": "Feedback/uploadRequest", "type": "object" }, { "description": "Execute a standalone command (argv vector) under the server's sandbox.", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "command/exec" ], "title": "Command/execRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/CommandExecParams" } }, "required": [ "id", "method", "params" ], "title": "Command/execRequest", "type": "object" }, { "description": "Write stdin bytes to a running `command/exec` session or close stdin.", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "command/exec/write" ], "title": "Command/exec/writeRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/CommandExecWriteParams" } }, "required": [ "id", "method", "params" ], "title": "Command/exec/writeRequest", "type": "object" }, { "description": "Terminate a running `command/exec` session by client-supplied `processId`.", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "command/exec/terminate" ], "title": "Command/exec/terminateRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/CommandExecTerminateParams" } }, "required": [ "id", "method", "params" ], "title": "Command/exec/terminateRequest", "type": "object" }, { "description": "Resize a running PTY-backed `command/exec` session by client-supplied `processId`.", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "command/exec/resize" ], "title": "Command/exec/resizeRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/CommandExecResizeParams" } }, "required": [ "id", "method", "params" ], "title": "Command/exec/resizeRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "config/read" ], "title": "Config/readRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ConfigReadParams" } }, "required": [ "id", "method", "params" ], "title": "Config/readRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "externalAgentConfig/detect" ], "title": "ExternalAgentConfig/detectRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ExternalAgentConfigDetectParams" } }, "required": [ "id", "method", "params" ], "title": "ExternalAgentConfig/detectRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "externalAgentConfig/import" ], "title": "ExternalAgentConfig/importRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ExternalAgentConfigImportParams" } }, "required": [ "id", "method", "params" ], "title": "ExternalAgentConfig/importRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "config/value/write" ], "title": "Config/value/writeRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ConfigValueWriteParams" } }, "required": [ "id", "method", "params" ], "title": "Config/value/writeRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "config/batchWrite" ], "title": "Config/batchWriteRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ConfigBatchWriteParams" } }, "required": [ "id", "method", "params" ], "title": "Config/batchWriteRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "configRequirements/read" ], "title": "ConfigRequirements/readRequestMethod", "type": "string" }, "params": { "type": "null" } }, "required": [ "id", "method" ], "title": "ConfigRequirements/readRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "account/read" ], "title": "Account/readRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/GetAccountParams" } }, "required": [ "id", "method", "params" ], "title": "Account/readRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "fuzzyFileSearch" ], "title": "FuzzyFileSearchRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/FuzzyFileSearchParams" } }, "required": [ "id", "method", "params" ], "title": "FuzzyFileSearchRequest", "type": "object" } ], "title": "ClientRequest" }, "CommandExecutionApprovalDecision": { "oneOf": [ { "description": "User approved the command.", "enum": [ "accept" ], "type": "string" }, { "description": "User approved the command and future prompts in the same session-scoped approval cache should run without prompting.", "enum": [ "acceptForSession" ], "type": "string" }, { "additionalProperties": false, "description": "User approved the command, and wants to apply the proposed execpolicy amendment so future matching commands can run without prompting.", "properties": { "acceptWithExecpolicyAmendment": { "properties": { "execpolicy_amendment": { "items": { "type": "string" }, "type": "array" } }, "required": [ "execpolicy_amendment" ], "type": "object" } }, "required": [ "acceptWithExecpolicyAmendment" ], "title": "AcceptWithExecpolicyAmendmentCommandExecutionApprovalDecision", "type": "object" }, { "additionalProperties": false, "description": "User chose a persistent network policy rule (allow/deny) for this host.", "properties": { "applyNetworkPolicyAmendment": { "properties": { "network_policy_amendment": { "$ref": "#/definitions/NetworkPolicyAmendment" } }, "required": [ "network_policy_amendment" ], "type": "object" } }, "required": [ "applyNetworkPolicyAmendment" ], "title": "ApplyNetworkPolicyAmendmentCommandExecutionApprovalDecision", "type": "object" }, { "description": "User denied the command. The agent will continue the turn.", "enum": [ "decline" ], "type": "string" }, { "description": "User denied the command. The turn will also be immediately interrupted.", "enum": [ "cancel" ], "type": "string" } ] }, "CommandExecutionRequestApprovalParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "approvalId": { "description": "Unique identifier for this specific approval callback.\n\nFor regular shell/unified_exec approvals, this is null.\n\nFor zsh-exec-bridge subcommand approvals, multiple callbacks can belong to one parent `itemId`, so `approvalId` is a distinct opaque callback id (a UUID) used to disambiguate routing.", "type": [ "string", "null" ] }, "command": { "description": "The command to be executed.", "type": [ "string", "null" ] }, "commandActions": { "description": "Best-effort parsed command actions for friendly display.", "items": { "$ref": "#/definitions/v2/CommandAction" }, "type": [ "array", "null" ] }, "cwd": { "description": "The command's working directory.", "type": [ "string", "null" ] }, "itemId": { "type": "string" }, "networkApprovalContext": { "anyOf": [ { "$ref": "#/definitions/NetworkApprovalContext" }, { "type": "null" } ], "description": "Optional context for a managed-network approval prompt." }, "proposedExecpolicyAmendment": { "description": "Optional proposed execpolicy amendment to allow similar commands without prompting.", "items": { "type": "string" }, "type": [ "array", "null" ] }, "proposedNetworkPolicyAmendments": { "description": "Optional proposed network policy amendments (allow/deny host) for future requests.", "items": { "$ref": "#/definitions/NetworkPolicyAmendment" }, "type": [ "array", "null" ] }, "reason": { "description": "Optional explanatory reason (e.g. request for network access).", "type": [ "string", "null" ] }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "itemId", "threadId", "turnId" ], "title": "CommandExecutionRequestApprovalParams", "type": "object" }, "CommandExecutionRequestApprovalResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "decision": { "$ref": "#/definitions/CommandExecutionApprovalDecision" } }, "required": [ "decision" ], "title": "CommandExecutionRequestApprovalResponse", "type": "object" }, "CommandExecutionRequestApprovalSkillMetadata": { "properties": { "pathToSkillsMd": { "type": "string" } }, "required": [ "pathToSkillsMd" ], "type": "object" }, "DynamicToolCallParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "arguments": true, "callId": { "type": "string" }, "threadId": { "type": "string" }, "tool": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "arguments", "callId", "threadId", "tool", "turnId" ], "title": "DynamicToolCallParams", "type": "object" }, "DynamicToolCallResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "contentItems": { "items": { "$ref": "#/definitions/v2/DynamicToolCallOutputContentItem" }, "type": "array" }, "success": { "type": "boolean" } }, "required": [ "contentItems", "success" ], "title": "DynamicToolCallResponse", "type": "object" }, "ExecCommandApprovalParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "approvalId": { "description": "Identifier for this specific approval callback.", "type": [ "string", "null" ] }, "callId": { "description": "Use to correlate this with [codex_protocol::protocol::ExecCommandBeginEvent] and [codex_protocol::protocol::ExecCommandEndEvent].", "type": "string" }, "command": { "items": { "type": "string" }, "type": "array" }, "conversationId": { "$ref": "#/definitions/v2/ThreadId" }, "cwd": { "type": "string" }, "parsedCmd": { "items": { "$ref": "#/definitions/ParsedCommand" }, "type": "array" }, "reason": { "type": [ "string", "null" ] } }, "required": [ "callId", "command", "conversationId", "cwd", "parsedCmd" ], "title": "ExecCommandApprovalParams", "type": "object" }, "ExecCommandApprovalResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "decision": { "$ref": "#/definitions/ReviewDecision" } }, "required": [ "decision" ], "title": "ExecCommandApprovalResponse", "type": "object" }, "FileChange": { "oneOf": [ { "properties": { "content": { "type": "string" }, "type": { "enum": [ "add" ], "title": "AddFileChangeType", "type": "string" } }, "required": [ "content", "type" ], "title": "AddFileChange", "type": "object" }, { "properties": { "content": { "type": "string" }, "type": { "enum": [ "delete" ], "title": "DeleteFileChangeType", "type": "string" } }, "required": [ "content", "type" ], "title": "DeleteFileChange", "type": "object" }, { "properties": { "move_path": { "type": [ "string", "null" ] }, "type": { "enum": [ "update" ], "title": "UpdateFileChangeType", "type": "string" }, "unified_diff": { "type": "string" } }, "required": [ "type", "unified_diff" ], "title": "UpdateFileChange", "type": "object" } ] }, "FileChangeApprovalDecision": { "oneOf": [ { "description": "User approved the file changes.", "enum": [ "accept" ], "type": "string" }, { "description": "User approved the file changes and future changes to the same files should run without prompting.", "enum": [ "acceptForSession" ], "type": "string" }, { "description": "User denied the file changes. The agent will continue the turn.", "enum": [ "decline" ], "type": "string" }, { "description": "User denied the file changes. The turn will also be immediately interrupted.", "enum": [ "cancel" ], "type": "string" } ] }, "FileChangeRequestApprovalParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "grantRoot": { "description": "[UNSTABLE] When set, the agent is asking the user to allow writes under this root for the remainder of the session (unclear if this is honored today).", "type": [ "string", "null" ] }, "itemId": { "type": "string" }, "reason": { "description": "Optional explanatory reason (e.g. request for extra write access).", "type": [ "string", "null" ] }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "itemId", "threadId", "turnId" ], "title": "FileChangeRequestApprovalParams", "type": "object" }, "FileChangeRequestApprovalResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "decision": { "$ref": "#/definitions/FileChangeApprovalDecision" } }, "required": [ "decision" ], "title": "FileChangeRequestApprovalResponse", "type": "object" }, "FuzzyFileSearchMatchType": { "enum": [ "file", "directory" ], "type": "string" }, "FuzzyFileSearchParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "cancellationToken": { "type": [ "string", "null" ] }, "query": { "type": "string" }, "roots": { "items": { "type": "string" }, "type": "array" } }, "required": [ "query", "roots" ], "title": "FuzzyFileSearchParams", "type": "object" }, "FuzzyFileSearchResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "files": { "items": { "$ref": "#/definitions/FuzzyFileSearchResult" }, "type": "array" } }, "required": [ "files" ], "title": "FuzzyFileSearchResponse", "type": "object" }, "FuzzyFileSearchResult": { "description": "Superset of [`codex_file_search::FileMatch`]", "properties": { "file_name": { "type": "string" }, "indices": { "items": { "format": "uint32", "minimum": 0.0, "type": "integer" }, "type": [ "array", "null" ] }, "match_type": { "$ref": "#/definitions/FuzzyFileSearchMatchType" }, "path": { "type": "string" }, "root": { "type": "string" }, "score": { "format": "uint32", "minimum": 0.0, "type": "integer" } }, "required": [ "file_name", "match_type", "path", "root", "score" ], "type": "object" }, "FuzzyFileSearchSessionCompletedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "sessionId": { "type": "string" } }, "required": [ "sessionId" ], "title": "FuzzyFileSearchSessionCompletedNotification", "type": "object" }, "FuzzyFileSearchSessionUpdatedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "files": { "items": { "$ref": "#/definitions/FuzzyFileSearchResult" }, "type": "array" }, "query": { "type": "string" }, "sessionId": { "type": "string" } }, "required": [ "files", "query", "sessionId" ], "title": "FuzzyFileSearchSessionUpdatedNotification", "type": "object" }, "GrantedPermissionProfile": { "properties": { "fileSystem": { "anyOf": [ { "$ref": "#/definitions/AdditionalFileSystemPermissions" }, { "type": "null" } ] }, "network": { "anyOf": [ { "$ref": "#/definitions/AdditionalNetworkPermissions" }, { "type": "null" } ] } }, "type": "object" }, "InitializeCapabilities": { "description": "Client-declared capabilities negotiated during initialize.", "properties": { "experimentalApi": { "default": false, "description": "Opt into receiving experimental API methods and fields.", "type": "boolean" }, "optOutNotificationMethods": { "description": "Exact notification method names that should be suppressed for this connection (for example `thread/started`).", "items": { "type": "string" }, "type": [ "array", "null" ] } }, "type": "object" }, "InitializeParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "capabilities": { "anyOf": [ { "$ref": "#/definitions/InitializeCapabilities" }, { "type": "null" } ] }, "clientInfo": { "$ref": "#/definitions/ClientInfo" } }, "required": [ "clientInfo" ], "title": "InitializeParams", "type": "object" }, "InitializeResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "codexHome": { "allOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" } ], "description": "Absolute path to the server's $CODEX_HOME directory." }, "platformFamily": { "description": "Platform family for the running app-server target, for example `\"unix\"` or `\"windows\"`.", "type": "string" }, "platformOs": { "description": "Operating system for the running app-server target, for example `\"macos\"`, `\"linux\"`, or `\"windows\"`.", "type": "string" }, "userAgent": { "type": "string" } }, "required": [ "codexHome", "platformFamily", "platformOs", "userAgent" ], "title": "InitializeResponse", "type": "object" }, "JSONRPCError": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "A response to a request that indicates an error occurred.", "properties": { "error": { "$ref": "#/definitions/JSONRPCErrorError" }, "id": { "$ref": "#/definitions/v2/RequestId" } }, "required": [ "error", "id" ], "title": "JSONRPCError", "type": "object" }, "JSONRPCErrorError": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "code": { "format": "int64", "type": "integer" }, "data": true, "message": { "type": "string" } }, "required": [ "code", "message" ], "title": "JSONRPCErrorError", "type": "object" }, "JSONRPCMessage": { "$schema": "http://json-schema.org/draft-07/schema#", "anyOf": [ { "$ref": "#/definitions/JSONRPCRequest" }, { "$ref": "#/definitions/JSONRPCNotification" }, { "$ref": "#/definitions/JSONRPCResponse" }, { "$ref": "#/definitions/JSONRPCError" } ], "description": "Refers to any valid JSON-RPC object that can be decoded off the wire, or encoded to be sent.", "title": "JSONRPCMessage" }, "JSONRPCNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "A notification which does not expect a response.", "properties": { "method": { "type": "string" }, "params": true }, "required": [ "method" ], "title": "JSONRPCNotification", "type": "object" }, "JSONRPCRequest": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "A request that expects a response.", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "type": "string" }, "params": true, "trace": { "anyOf": [ { "$ref": "#/definitions/W3cTraceContext" }, { "type": "null" } ], "description": "Optional W3C Trace Context for distributed tracing." } }, "required": [ "id", "method" ], "title": "JSONRPCRequest", "type": "object" }, "JSONRPCResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "A successful (non-error) response to a request.", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "result": true }, "required": [ "id", "result" ], "title": "JSONRPCResponse", "type": "object" }, "MacOsAutomationPermission": { "oneOf": [ { "enum": [ "none", "all" ], "type": "string" }, { "additionalProperties": false, "properties": { "bundle_ids": { "items": { "type": "string" }, "type": "array" } }, "required": [ "bundle_ids" ], "title": "BundleIdsMacOsAutomationPermission", "type": "object" } ] }, "MacOsContactsPermission": { "enum": [ "none", "read_only", "read_write" ], "type": "string" }, "MacOsPreferencesPermission": { "enum": [ "none", "read_only", "read_write" ], "type": "string" }, "McpElicitationArrayType": { "enum": [ "array" ], "type": "string" }, "McpElicitationBooleanSchema": { "additionalProperties": false, "properties": { "default": { "type": [ "boolean", "null" ] }, "description": { "type": [ "string", "null" ] }, "title": { "type": [ "string", "null" ] }, "type": { "$ref": "#/definitions/McpElicitationBooleanType" } }, "required": [ "type" ], "type": "object" }, "McpElicitationBooleanType": { "enum": [ "boolean" ], "type": "string" }, "McpElicitationConstOption": { "additionalProperties": false, "properties": { "const": { "type": "string" }, "title": { "type": "string" } }, "required": [ "const", "title" ], "type": "object" }, "McpElicitationEnumSchema": { "anyOf": [ { "$ref": "#/definitions/McpElicitationSingleSelectEnumSchema" }, { "$ref": "#/definitions/McpElicitationMultiSelectEnumSchema" }, { "$ref": "#/definitions/McpElicitationLegacyTitledEnumSchema" } ] }, "McpElicitationLegacyTitledEnumSchema": { "additionalProperties": false, "properties": { "default": { "type": [ "string", "null" ] }, "description": { "type": [ "string", "null" ] }, "enum": { "items": { "type": "string" }, "type": "array" }, "enumNames": { "items": { "type": "string" }, "type": [ "array", "null" ] }, "title": { "type": [ "string", "null" ] }, "type": { "$ref": "#/definitions/McpElicitationStringType" } }, "required": [ "enum", "type" ], "type": "object" }, "McpElicitationMultiSelectEnumSchema": { "anyOf": [ { "$ref": "#/definitions/McpElicitationUntitledMultiSelectEnumSchema" }, { "$ref": "#/definitions/McpElicitationTitledMultiSelectEnumSchema" } ] }, "McpElicitationNumberSchema": { "additionalProperties": false, "properties": { "default": { "format": "double", "type": [ "number", "null" ] }, "description": { "type": [ "string", "null" ] }, "maximum": { "format": "double", "type": [ "number", "null" ] }, "minimum": { "format": "double", "type": [ "number", "null" ] }, "title": { "type": [ "string", "null" ] }, "type": { "$ref": "#/definitions/McpElicitationNumberType" } }, "required": [ "type" ], "type": "object" }, "McpElicitationNumberType": { "enum": [ "number", "integer" ], "type": "string" }, "McpElicitationObjectType": { "enum": [ "object" ], "type": "string" }, "McpElicitationPrimitiveSchema": { "anyOf": [ { "$ref": "#/definitions/McpElicitationEnumSchema" }, { "$ref": "#/definitions/McpElicitationStringSchema" }, { "$ref": "#/definitions/McpElicitationNumberSchema" }, { "$ref": "#/definitions/McpElicitationBooleanSchema" } ] }, "McpElicitationSchema": { "additionalProperties": false, "description": "Typed form schema for MCP `elicitation/create` requests.\n\nThis matches the `requestedSchema` shape from the MCP 2025-11-25 `ElicitRequestFormParams` schema.", "properties": { "$schema": { "type": [ "string", "null" ] }, "properties": { "additionalProperties": { "$ref": "#/definitions/McpElicitationPrimitiveSchema" }, "type": "object" }, "required": { "items": { "type": "string" }, "type": [ "array", "null" ] }, "type": { "$ref": "#/definitions/McpElicitationObjectType" } }, "required": [ "properties", "type" ], "type": "object" }, "McpElicitationSingleSelectEnumSchema": { "anyOf": [ { "$ref": "#/definitions/McpElicitationUntitledSingleSelectEnumSchema" }, { "$ref": "#/definitions/McpElicitationTitledSingleSelectEnumSchema" } ] }, "McpElicitationStringFormat": { "enum": [ "email", "uri", "date", "date-time" ], "type": "string" }, "McpElicitationStringSchema": { "additionalProperties": false, "properties": { "default": { "type": [ "string", "null" ] }, "description": { "type": [ "string", "null" ] }, "format": { "anyOf": [ { "$ref": "#/definitions/McpElicitationStringFormat" }, { "type": "null" } ] }, "maxLength": { "format": "uint32", "minimum": 0.0, "type": [ "integer", "null" ] }, "minLength": { "format": "uint32", "minimum": 0.0, "type": [ "integer", "null" ] }, "title": { "type": [ "string", "null" ] }, "type": { "$ref": "#/definitions/McpElicitationStringType" } }, "required": [ "type" ], "type": "object" }, "McpElicitationStringType": { "enum": [ "string" ], "type": "string" }, "McpElicitationTitledEnumItems": { "additionalProperties": false, "properties": { "anyOf": { "items": { "$ref": "#/definitions/McpElicitationConstOption" }, "type": "array" } }, "required": [ "anyOf" ], "type": "object" }, "McpElicitationTitledMultiSelectEnumSchema": { "additionalProperties": false, "properties": { "default": { "items": { "type": "string" }, "type": [ "array", "null" ] }, "description": { "type": [ "string", "null" ] }, "items": { "$ref": "#/definitions/McpElicitationTitledEnumItems" }, "maxItems": { "format": "uint64", "minimum": 0.0, "type": [ "integer", "null" ] }, "minItems": { "format": "uint64", "minimum": 0.0, "type": [ "integer", "null" ] }, "title": { "type": [ "string", "null" ] }, "type": { "$ref": "#/definitions/McpElicitationArrayType" } }, "required": [ "items", "type" ], "type": "object" }, "McpElicitationTitledSingleSelectEnumSchema": { "additionalProperties": false, "properties": { "default": { "type": [ "string", "null" ] }, "description": { "type": [ "string", "null" ] }, "oneOf": { "items": { "$ref": "#/definitions/McpElicitationConstOption" }, "type": "array" }, "title": { "type": [ "string", "null" ] }, "type": { "$ref": "#/definitions/McpElicitationStringType" } }, "required": [ "oneOf", "type" ], "type": "object" }, "McpElicitationUntitledEnumItems": { "additionalProperties": false, "properties": { "enum": { "items": { "type": "string" }, "type": "array" }, "type": { "$ref": "#/definitions/McpElicitationStringType" } }, "required": [ "enum", "type" ], "type": "object" }, "McpElicitationUntitledMultiSelectEnumSchema": { "additionalProperties": false, "properties": { "default": { "items": { "type": "string" }, "type": [ "array", "null" ] }, "description": { "type": [ "string", "null" ] }, "items": { "$ref": "#/definitions/McpElicitationUntitledEnumItems" }, "maxItems": { "format": "uint64", "minimum": 0.0, "type": [ "integer", "null" ] }, "minItems": { "format": "uint64", "minimum": 0.0, "type": [ "integer", "null" ] }, "title": { "type": [ "string", "null" ] }, "type": { "$ref": "#/definitions/McpElicitationArrayType" } }, "required": [ "items", "type" ], "type": "object" }, "McpElicitationUntitledSingleSelectEnumSchema": { "additionalProperties": false, "properties": { "default": { "type": [ "string", "null" ] }, "description": { "type": [ "string", "null" ] }, "enum": { "items": { "type": "string" }, "type": "array" }, "title": { "type": [ "string", "null" ] }, "type": { "$ref": "#/definitions/McpElicitationStringType" } }, "required": [ "enum", "type" ], "type": "object" }, "McpServerElicitationAction": { "enum": [ "accept", "decline", "cancel" ], "type": "string" }, "McpServerElicitationRequestParams": { "$schema": "http://json-schema.org/draft-07/schema#", "oneOf": [ { "properties": { "_meta": true, "message": { "type": "string" }, "mode": { "enum": [ "form" ], "type": "string" }, "requestedSchema": { "$ref": "#/definitions/McpElicitationSchema" } }, "required": [ "message", "mode", "requestedSchema" ], "type": "object" }, { "properties": { "_meta": true, "elicitationId": { "type": "string" }, "message": { "type": "string" }, "mode": { "enum": [ "url" ], "type": "string" }, "url": { "type": "string" } }, "required": [ "elicitationId", "message", "mode", "url" ], "type": "object" } ], "properties": { "serverName": { "type": "string" }, "threadId": { "type": "string" }, "turnId": { "description": "Active Codex turn when this elicitation was observed, if app-server could correlate one.\n\nThis is nullable because MCP models elicitation as a standalone server-to-client request identified by the MCP server request id. It may be triggered during a turn, but turn context is app-server correlation rather than part of the protocol identity of the elicitation itself.", "type": [ "string", "null" ] } }, "required": [ "serverName", "threadId" ], "title": "McpServerElicitationRequestParams", "type": "object" }, "McpServerElicitationRequestResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "_meta": { "description": "Optional client metadata for form-mode action handling." }, "action": { "$ref": "#/definitions/McpServerElicitationAction" }, "content": { "description": "Structured user input for accepted elicitations, mirroring RMCP `CreateElicitationResult`.\n\nThis is nullable because decline/cancel responses have no content." } }, "required": [ "action" ], "title": "McpServerElicitationRequestResponse", "type": "object" }, "NetworkApprovalContext": { "properties": { "host": { "type": "string" }, "protocol": { "$ref": "#/definitions/NetworkApprovalProtocol" } }, "required": [ "host", "protocol" ], "type": "object" }, "NetworkApprovalProtocol": { "enum": [ "http", "https", "socks5Tcp", "socks5Udp" ], "type": "string" }, "NetworkPolicyAmendment": { "properties": { "action": { "$ref": "#/definitions/NetworkPolicyRuleAction" }, "host": { "type": "string" } }, "required": [ "action", "host" ], "type": "object" }, "NetworkPolicyRuleAction": { "enum": [ "allow", "deny" ], "type": "string" }, "ParsedCommand": { "oneOf": [ { "properties": { "cmd": { "type": "string" }, "name": { "type": "string" }, "path": { "description": "(Best effort) Path to the file being read by the command. When possible, this is an absolute path, though when relative, it should be resolved against the `cwd`` that will be used to run the command to derive the absolute path.", "type": "string" }, "type": { "enum": [ "read" ], "title": "ReadParsedCommandType", "type": "string" } }, "required": [ "cmd", "name", "path", "type" ], "title": "ReadParsedCommand", "type": "object" }, { "properties": { "cmd": { "type": "string" }, "path": { "type": [ "string", "null" ] }, "type": { "enum": [ "list_files" ], "title": "ListFilesParsedCommandType", "type": "string" } }, "required": [ "cmd", "type" ], "title": "ListFilesParsedCommand", "type": "object" }, { "properties": { "cmd": { "type": "string" }, "path": { "type": [ "string", "null" ] }, "query": { "type": [ "string", "null" ] }, "type": { "enum": [ "search" ], "title": "SearchParsedCommandType", "type": "string" } }, "required": [ "cmd", "type" ], "title": "SearchParsedCommand", "type": "object" }, { "properties": { "cmd": { "type": "string" }, "type": { "enum": [ "unknown" ], "title": "UnknownParsedCommandType", "type": "string" } }, "required": [ "cmd", "type" ], "title": "UnknownParsedCommand", "type": "object" } ] }, "PermissionGrantScope": { "enum": [ "turn", "session" ], "type": "string" }, "PermissionsRequestApprovalParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "itemId": { "type": "string" }, "permissions": { "$ref": "#/definitions/RequestPermissionProfile" }, "reason": { "type": [ "string", "null" ] }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "itemId", "permissions", "threadId", "turnId" ], "title": "PermissionsRequestApprovalParams", "type": "object" }, "PermissionsRequestApprovalResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "permissions": { "$ref": "#/definitions/GrantedPermissionProfile" }, "scope": { "allOf": [ { "$ref": "#/definitions/PermissionGrantScope" } ], "default": "turn" } }, "required": [ "permissions" ], "title": "PermissionsRequestApprovalResponse", "type": "object" }, "RequestId": { "$schema": "http://json-schema.org/draft-07/schema#", "anyOf": [ { "type": "string" }, { "format": "int64", "type": "integer" } ], "title": "RequestId" }, "RequestPermissionProfile": { "additionalProperties": false, "properties": { "fileSystem": { "anyOf": [ { "$ref": "#/definitions/AdditionalFileSystemPermissions" }, { "type": "null" } ] }, "network": { "anyOf": [ { "$ref": "#/definitions/AdditionalNetworkPermissions" }, { "type": "null" } ] } }, "type": "object" }, "ReviewDecision": { "description": "User's decision in response to an ExecApprovalRequest.", "oneOf": [ { "description": "User has approved this command and the agent should execute it.", "enum": [ "approved" ], "type": "string" }, { "additionalProperties": false, "description": "User has approved this command and wants to apply the proposed execpolicy amendment so future matching commands are permitted.", "properties": { "approved_execpolicy_amendment": { "properties": { "proposed_execpolicy_amendment": { "items": { "type": "string" }, "type": "array" } }, "required": [ "proposed_execpolicy_amendment" ], "type": "object" } }, "required": [ "approved_execpolicy_amendment" ], "title": "ApprovedExecpolicyAmendmentReviewDecision", "type": "object" }, { "description": "User has approved this request and wants future prompts in the same session-scoped approval cache to be automatically approved for the remainder of the session.", "enum": [ "approved_for_session" ], "type": "string" }, { "additionalProperties": false, "description": "User chose to persist a network policy rule (allow/deny) for future requests to the same host.", "properties": { "network_policy_amendment": { "properties": { "network_policy_amendment": { "$ref": "#/definitions/NetworkPolicyAmendment" } }, "required": [ "network_policy_amendment" ], "type": "object" } }, "required": [ "network_policy_amendment" ], "title": "NetworkPolicyAmendmentReviewDecision", "type": "object" }, { "description": "User has denied this command and the agent should not execute it, but it should continue the session and try something else.", "enum": [ "denied" ], "type": "string" }, { "description": "User has denied this command and the agent should not do anything until the user's next command.", "enum": [ "abort" ], "type": "string" } ] }, "ServerNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Notification sent from the server to the client.", "oneOf": [ { "description": "NEW NOTIFICATIONS", "properties": { "method": { "enum": [ "error" ], "title": "ErrorNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ErrorNotification" } }, "required": [ "method", "params" ], "title": "ErrorNotification", "type": "object" }, { "properties": { "method": { "enum": [ "thread/started" ], "title": "Thread/startedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadStartedNotification" } }, "required": [ "method", "params" ], "title": "Thread/startedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "thread/status/changed" ], "title": "Thread/status/changedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadStatusChangedNotification" } }, "required": [ "method", "params" ], "title": "Thread/status/changedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "thread/archived" ], "title": "Thread/archivedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadArchivedNotification" } }, "required": [ "method", "params" ], "title": "Thread/archivedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "thread/unarchived" ], "title": "Thread/unarchivedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadUnarchivedNotification" } }, "required": [ "method", "params" ], "title": "Thread/unarchivedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "thread/closed" ], "title": "Thread/closedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadClosedNotification" } }, "required": [ "method", "params" ], "title": "Thread/closedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "skills/changed" ], "title": "Skills/changedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/SkillsChangedNotification" } }, "required": [ "method", "params" ], "title": "Skills/changedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "thread/name/updated" ], "title": "Thread/name/updatedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadNameUpdatedNotification" } }, "required": [ "method", "params" ], "title": "Thread/name/updatedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "thread/tokenUsage/updated" ], "title": "Thread/tokenUsage/updatedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadTokenUsageUpdatedNotification" } }, "required": [ "method", "params" ], "title": "Thread/tokenUsage/updatedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "turn/started" ], "title": "Turn/startedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/TurnStartedNotification" } }, "required": [ "method", "params" ], "title": "Turn/startedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "hook/started" ], "title": "Hook/startedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/HookStartedNotification" } }, "required": [ "method", "params" ], "title": "Hook/startedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "turn/completed" ], "title": "Turn/completedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/TurnCompletedNotification" } }, "required": [ "method", "params" ], "title": "Turn/completedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "hook/completed" ], "title": "Hook/completedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/HookCompletedNotification" } }, "required": [ "method", "params" ], "title": "Hook/completedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "turn/diff/updated" ], "title": "Turn/diff/updatedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/TurnDiffUpdatedNotification" } }, "required": [ "method", "params" ], "title": "Turn/diff/updatedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "turn/plan/updated" ], "title": "Turn/plan/updatedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/TurnPlanUpdatedNotification" } }, "required": [ "method", "params" ], "title": "Turn/plan/updatedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "item/started" ], "title": "Item/startedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ItemStartedNotification" } }, "required": [ "method", "params" ], "title": "Item/startedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "item/autoApprovalReview/started" ], "title": "Item/autoApprovalReview/startedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ItemGuardianApprovalReviewStartedNotification" } }, "required": [ "method", "params" ], "title": "Item/autoApprovalReview/startedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "item/autoApprovalReview/completed" ], "title": "Item/autoApprovalReview/completedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ItemGuardianApprovalReviewCompletedNotification" } }, "required": [ "method", "params" ], "title": "Item/autoApprovalReview/completedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "item/completed" ], "title": "Item/completedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ItemCompletedNotification" } }, "required": [ "method", "params" ], "title": "Item/completedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "item/agentMessage/delta" ], "title": "Item/agentMessage/deltaNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/AgentMessageDeltaNotification" } }, "required": [ "method", "params" ], "title": "Item/agentMessage/deltaNotification", "type": "object" }, { "description": "EXPERIMENTAL - proposed plan streaming deltas for plan items.", "properties": { "method": { "enum": [ "item/plan/delta" ], "title": "Item/plan/deltaNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/PlanDeltaNotification" } }, "required": [ "method", "params" ], "title": "Item/plan/deltaNotification", "type": "object" }, { "description": "Stream base64-encoded stdout/stderr chunks for a running `command/exec` session.", "properties": { "method": { "enum": [ "command/exec/outputDelta" ], "title": "Command/exec/outputDeltaNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/CommandExecOutputDeltaNotification" } }, "required": [ "method", "params" ], "title": "Command/exec/outputDeltaNotification", "type": "object" }, { "properties": { "method": { "enum": [ "item/commandExecution/outputDelta" ], "title": "Item/commandExecution/outputDeltaNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/CommandExecutionOutputDeltaNotification" } }, "required": [ "method", "params" ], "title": "Item/commandExecution/outputDeltaNotification", "type": "object" }, { "properties": { "method": { "enum": [ "item/commandExecution/terminalInteraction" ], "title": "Item/commandExecution/terminalInteractionNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/TerminalInteractionNotification" } }, "required": [ "method", "params" ], "title": "Item/commandExecution/terminalInteractionNotification", "type": "object" }, { "properties": { "method": { "enum": [ "item/fileChange/outputDelta" ], "title": "Item/fileChange/outputDeltaNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/FileChangeOutputDeltaNotification" } }, "required": [ "method", "params" ], "title": "Item/fileChange/outputDeltaNotification", "type": "object" }, { "properties": { "method": { "enum": [ "serverRequest/resolved" ], "title": "ServerRequest/resolvedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ServerRequestResolvedNotification" } }, "required": [ "method", "params" ], "title": "ServerRequest/resolvedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "item/mcpToolCall/progress" ], "title": "Item/mcpToolCall/progressNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/McpToolCallProgressNotification" } }, "required": [ "method", "params" ], "title": "Item/mcpToolCall/progressNotification", "type": "object" }, { "properties": { "method": { "enum": [ "mcpServer/oauthLogin/completed" ], "title": "McpServer/oauthLogin/completedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/McpServerOauthLoginCompletedNotification" } }, "required": [ "method", "params" ], "title": "McpServer/oauthLogin/completedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "mcpServer/startupStatus/updated" ], "title": "McpServer/startupStatus/updatedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/McpServerStatusUpdatedNotification" } }, "required": [ "method", "params" ], "title": "McpServer/startupStatus/updatedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "account/updated" ], "title": "Account/updatedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/AccountUpdatedNotification" } }, "required": [ "method", "params" ], "title": "Account/updatedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "account/rateLimits/updated" ], "title": "Account/rateLimits/updatedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/AccountRateLimitsUpdatedNotification" } }, "required": [ "method", "params" ], "title": "Account/rateLimits/updatedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "app/list/updated" ], "title": "App/list/updatedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/AppListUpdatedNotification" } }, "required": [ "method", "params" ], "title": "App/list/updatedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "fs/changed" ], "title": "Fs/changedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/FsChangedNotification" } }, "required": [ "method", "params" ], "title": "Fs/changedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "item/reasoning/summaryTextDelta" ], "title": "Item/reasoning/summaryTextDeltaNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ReasoningSummaryTextDeltaNotification" } }, "required": [ "method", "params" ], "title": "Item/reasoning/summaryTextDeltaNotification", "type": "object" }, { "properties": { "method": { "enum": [ "item/reasoning/summaryPartAdded" ], "title": "Item/reasoning/summaryPartAddedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ReasoningSummaryPartAddedNotification" } }, "required": [ "method", "params" ], "title": "Item/reasoning/summaryPartAddedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "item/reasoning/textDelta" ], "title": "Item/reasoning/textDeltaNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ReasoningTextDeltaNotification" } }, "required": [ "method", "params" ], "title": "Item/reasoning/textDeltaNotification", "type": "object" }, { "description": "Deprecated: Use `ContextCompaction` item type instead.", "properties": { "method": { "enum": [ "thread/compacted" ], "title": "Thread/compactedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ContextCompactedNotification" } }, "required": [ "method", "params" ], "title": "Thread/compactedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "model/rerouted" ], "title": "Model/reroutedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ModelReroutedNotification" } }, "required": [ "method", "params" ], "title": "Model/reroutedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "deprecationNotice" ], "title": "DeprecationNoticeNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/DeprecationNoticeNotification" } }, "required": [ "method", "params" ], "title": "DeprecationNoticeNotification", "type": "object" }, { "properties": { "method": { "enum": [ "configWarning" ], "title": "ConfigWarningNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ConfigWarningNotification" } }, "required": [ "method", "params" ], "title": "ConfigWarningNotification", "type": "object" }, { "properties": { "method": { "enum": [ "fuzzyFileSearch/sessionUpdated" ], "title": "FuzzyFileSearch/sessionUpdatedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/FuzzyFileSearchSessionUpdatedNotification" } }, "required": [ "method", "params" ], "title": "FuzzyFileSearch/sessionUpdatedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "fuzzyFileSearch/sessionCompleted" ], "title": "FuzzyFileSearch/sessionCompletedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/FuzzyFileSearchSessionCompletedNotification" } }, "required": [ "method", "params" ], "title": "FuzzyFileSearch/sessionCompletedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "thread/realtime/started" ], "title": "Thread/realtime/startedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadRealtimeStartedNotification" } }, "required": [ "method", "params" ], "title": "Thread/realtime/startedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "thread/realtime/itemAdded" ], "title": "Thread/realtime/itemAddedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadRealtimeItemAddedNotification" } }, "required": [ "method", "params" ], "title": "Thread/realtime/itemAddedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "thread/realtime/transcriptUpdated" ], "title": "Thread/realtime/transcriptUpdatedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadRealtimeTranscriptUpdatedNotification" } }, "required": [ "method", "params" ], "title": "Thread/realtime/transcriptUpdatedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "thread/realtime/outputAudio/delta" ], "title": "Thread/realtime/outputAudio/deltaNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadRealtimeOutputAudioDeltaNotification" } }, "required": [ "method", "params" ], "title": "Thread/realtime/outputAudio/deltaNotification", "type": "object" }, { "properties": { "method": { "enum": [ "thread/realtime/error" ], "title": "Thread/realtime/errorNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadRealtimeErrorNotification" } }, "required": [ "method", "params" ], "title": "Thread/realtime/errorNotification", "type": "object" }, { "properties": { "method": { "enum": [ "thread/realtime/closed" ], "title": "Thread/realtime/closedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/ThreadRealtimeClosedNotification" } }, "required": [ "method", "params" ], "title": "Thread/realtime/closedNotification", "type": "object" }, { "description": "Notifies the user of world-writable directories on Windows, which cannot be protected by the sandbox.", "properties": { "method": { "enum": [ "windows/worldWritableWarning" ], "title": "Windows/worldWritableWarningNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/WindowsWorldWritableWarningNotification" } }, "required": [ "method", "params" ], "title": "Windows/worldWritableWarningNotification", "type": "object" }, { "properties": { "method": { "enum": [ "windowsSandbox/setupCompleted" ], "title": "WindowsSandbox/setupCompletedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/WindowsSandboxSetupCompletedNotification" } }, "required": [ "method", "params" ], "title": "WindowsSandbox/setupCompletedNotification", "type": "object" }, { "properties": { "method": { "enum": [ "account/login/completed" ], "title": "Account/login/completedNotificationMethod", "type": "string" }, "params": { "$ref": "#/definitions/v2/AccountLoginCompletedNotification" } }, "required": [ "method", "params" ], "title": "Account/login/completedNotification", "type": "object" } ], "title": "ServerNotification" }, "ServerRequest": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Request initiated from the server and sent to the client.", "oneOf": [ { "description": "NEW APIs Sent when approval is requested for a specific command execution. This request is used for Turns started via turn/start.", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "item/commandExecution/requestApproval" ], "title": "Item/commandExecution/requestApprovalRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/CommandExecutionRequestApprovalParams" } }, "required": [ "id", "method", "params" ], "title": "Item/commandExecution/requestApprovalRequest", "type": "object" }, { "description": "Sent when approval is requested for a specific file change. This request is used for Turns started via turn/start.", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "item/fileChange/requestApproval" ], "title": "Item/fileChange/requestApprovalRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/FileChangeRequestApprovalParams" } }, "required": [ "id", "method", "params" ], "title": "Item/fileChange/requestApprovalRequest", "type": "object" }, { "description": "EXPERIMENTAL - Request input from the user for a tool call.", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "item/tool/requestUserInput" ], "title": "Item/tool/requestUserInputRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/ToolRequestUserInputParams" } }, "required": [ "id", "method", "params" ], "title": "Item/tool/requestUserInputRequest", "type": "object" }, { "description": "Request input for an MCP server elicitation.", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "mcpServer/elicitation/request" ], "title": "McpServer/elicitation/requestRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/McpServerElicitationRequestParams" } }, "required": [ "id", "method", "params" ], "title": "McpServer/elicitation/requestRequest", "type": "object" }, { "description": "Request approval for additional permissions from the user.", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "item/permissions/requestApproval" ], "title": "Item/permissions/requestApprovalRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/PermissionsRequestApprovalParams" } }, "required": [ "id", "method", "params" ], "title": "Item/permissions/requestApprovalRequest", "type": "object" }, { "description": "Execute a dynamic tool call on the client.", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "item/tool/call" ], "title": "Item/tool/callRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/DynamicToolCallParams" } }, "required": [ "id", "method", "params" ], "title": "Item/tool/callRequest", "type": "object" }, { "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "account/chatgptAuthTokens/refresh" ], "title": "Account/chatgptAuthTokens/refreshRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/ChatgptAuthTokensRefreshParams" } }, "required": [ "id", "method", "params" ], "title": "Account/chatgptAuthTokens/refreshRequest", "type": "object" }, { "description": "DEPRECATED APIs below Request to approve a patch. This request is used for Turns started via the legacy APIs (i.e. SendUserTurn, SendUserMessage).", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "applyPatchApproval" ], "title": "ApplyPatchApprovalRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/ApplyPatchApprovalParams" } }, "required": [ "id", "method", "params" ], "title": "ApplyPatchApprovalRequest", "type": "object" }, { "description": "Request to exec a command. This request is used for Turns started via the legacy APIs (i.e. SendUserTurn, SendUserMessage).", "properties": { "id": { "$ref": "#/definitions/v2/RequestId" }, "method": { "enum": [ "execCommandApproval" ], "title": "ExecCommandApprovalRequestMethod", "type": "string" }, "params": { "$ref": "#/definitions/ExecCommandApprovalParams" } }, "required": [ "id", "method", "params" ], "title": "ExecCommandApprovalRequest", "type": "object" } ], "title": "ServerRequest" }, "ToolRequestUserInputAnswer": { "description": "EXPERIMENTAL. Captures a user's answer to a request_user_input question.", "properties": { "answers": { "items": { "type": "string" }, "type": "array" } }, "required": [ "answers" ], "type": "object" }, "ToolRequestUserInputOption": { "description": "EXPERIMENTAL. Defines a single selectable option for request_user_input.", "properties": { "description": { "type": "string" }, "label": { "type": "string" } }, "required": [ "description", "label" ], "type": "object" }, "ToolRequestUserInputParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "EXPERIMENTAL. Params sent with a request_user_input event.", "properties": { "itemId": { "type": "string" }, "questions": { "items": { "$ref": "#/definitions/ToolRequestUserInputQuestion" }, "type": "array" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "itemId", "questions", "threadId", "turnId" ], "title": "ToolRequestUserInputParams", "type": "object" }, "ToolRequestUserInputQuestion": { "description": "EXPERIMENTAL. Represents one request_user_input question and its required options.", "properties": { "header": { "type": "string" }, "id": { "type": "string" }, "isOther": { "default": false, "type": "boolean" }, "isSecret": { "default": false, "type": "boolean" }, "options": { "items": { "$ref": "#/definitions/ToolRequestUserInputOption" }, "type": [ "array", "null" ] }, "question": { "type": "string" } }, "required": [ "header", "id", "question" ], "type": "object" }, "ToolRequestUserInputResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "EXPERIMENTAL. Response payload mapping question ids to answers.", "properties": { "answers": { "additionalProperties": { "$ref": "#/definitions/ToolRequestUserInputAnswer" }, "type": "object" } }, "required": [ "answers" ], "title": "ToolRequestUserInputResponse", "type": "object" }, "W3cTraceContext": { "properties": { "traceparent": { "type": [ "string", "null" ] }, "tracestate": { "type": [ "string", "null" ] } }, "type": "object" }, "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" } ] }, "planType": { "anyOf": [ { "$ref": "#/definitions/v2/PlanType" }, { "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" }, "AgentPath": { "type": "string" }, "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" }, "pluginDisplayNames": { "default": [], "items": { "type": "string" }, "type": "array" } }, "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" }, "AppSummary": { "description": "EXPERIMENTAL - app metadata summary for plugin responses.", "properties": { "description": { "type": [ "string", "null" ] }, "id": { "type": "string" }, "installUrl": { "type": [ "string", "null" ] }, "name": { "type": "string" }, "needsAuth": { "type": "boolean" } }, "required": [ "id", "name", "needsAuth" ], "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" }, "ApprovalsReviewer": { "description": "Configures who approval requests are routed to for review. Examples include sandbox escapes, blocked network access, MCP approval prompts, and ARC escalations. Defaults to `user`. `guardian_subagent` uses a carefully prompted subagent to gather relevant context and apply a risk-based decision framework before approving or denying the request.", "enum": [ "user", "guardian_subagent" ], "type": "string" }, "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": { "granular": { "properties": { "mcp_elicitations": { "type": "boolean" }, "request_permissions": { "default": false, "type": "boolean" }, "rules": { "type": "boolean" }, "sandbox_approval": { "type": "boolean" }, "skill_approval": { "default": false, "type": "boolean" } }, "required": [ "mcp_elicitations", "rules", "sandbox_approval" ], "type": "object" } }, "required": [ "granular" ], "title": "GranularAskForApproval", "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" }, { "additionalProperties": false, "description": "Returned when `turn/start` or `turn/steer` is submitted while the current active turn cannot accept same-turn steering, for example `/review` or manual `/compact`.", "properties": { "activeTurnNotSteerable": { "properties": { "turnKind": { "$ref": "#/definitions/v2/NonSteerableTurnKind" } }, "required": [ "turnKind" ], "type": "object" } }, "required": [ "activeTurnNotSteerable" ], "title": "ActiveTurnNotSteerableCodexErrorInfo", "type": "object" } ] }, "CollabAgentState": { "properties": { "message": { "type": [ "string", "null" ] }, "status": { "$ref": "#/definitions/v2/CollabAgentStatus" } }, "required": [ "status" ], "type": "object" }, "CollabAgentStatus": { "enum": [ "pendingInit", "running", "interrupted", "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": "EXPERIMENTAL - collaboration mode preset metadata for clients.", "properties": { "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" } ] }, "CommandExecOutputDeltaNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Base64-encoded output chunk emitted for a streaming `command/exec` request.\n\nThese notifications are connection-scoped. If the originating connection closes, the server terminates the process.", "properties": { "capReached": { "description": "`true` on the final streamed chunk for a stream when `outputBytesCap` truncated later output on that stream.", "type": "boolean" }, "deltaBase64": { "description": "Base64-encoded output bytes.", "type": "string" }, "processId": { "description": "Client-supplied, connection-scoped `processId` from the original `command/exec` request.", "type": "string" }, "stream": { "allOf": [ { "$ref": "#/definitions/v2/CommandExecOutputStream" } ], "description": "Output stream for this chunk." } }, "required": [ "capReached", "deltaBase64", "processId", "stream" ], "title": "CommandExecOutputDeltaNotification", "type": "object" }, "CommandExecOutputStream": { "description": "Stream label for `command/exec/outputDelta` notifications.", "oneOf": [ { "description": "stdout stream. PTY mode multiplexes terminal output here.", "enum": [ "stdout" ], "type": "string" }, { "description": "stderr stream.", "enum": [ "stderr" ], "type": "string" } ] }, "CommandExecParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Run a standalone command (argv vector) in the server sandbox without creating a thread or turn.\n\nThe final `command/exec` response is deferred until the process exits and is sent only after all `command/exec/outputDelta` notifications for that connection have been emitted.", "properties": { "command": { "description": "Command argv vector. Empty arrays are rejected.", "items": { "type": "string" }, "type": "array" }, "cwd": { "description": "Optional working directory. Defaults to the server cwd.", "type": [ "string", "null" ] }, "disableOutputCap": { "description": "Disable stdout/stderr capture truncation for this request.\n\nCannot be combined with `outputBytesCap`.", "type": "boolean" }, "disableTimeout": { "description": "Disable the timeout entirely for this request.\n\nCannot be combined with `timeoutMs`.", "type": "boolean" }, "env": { "additionalProperties": { "type": [ "string", "null" ] }, "description": "Optional environment overrides merged into the server-computed environment.\n\nMatching names override inherited values. Set a key to `null` to unset an inherited variable.", "type": [ "object", "null" ] }, "outputBytesCap": { "description": "Optional per-stream stdout/stderr capture cap in bytes.\n\nWhen omitted, the server default applies. Cannot be combined with `disableOutputCap`.", "format": "uint", "minimum": 0.0, "type": [ "integer", "null" ] }, "processId": { "description": "Optional client-supplied, connection-scoped process id.\n\nRequired for `tty`, `streamStdin`, `streamStdoutStderr`, and follow-up `command/exec/write`, `command/exec/resize`, and `command/exec/terminate` calls. When omitted, buffered execution gets an internal id that is not exposed to the client.", "type": [ "string", "null" ] }, "sandboxPolicy": { "anyOf": [ { "$ref": "#/definitions/v2/SandboxPolicy" }, { "type": "null" } ], "description": "Optional sandbox policy for this command.\n\nUses the same shape as thread/turn execution sandbox configuration and defaults to the user's configured policy when omitted." }, "size": { "anyOf": [ { "$ref": "#/definitions/v2/CommandExecTerminalSize" }, { "type": "null" } ], "description": "Optional initial PTY size in character cells. Only valid when `tty` is true." }, "streamStdin": { "description": "Allow follow-up `command/exec/write` requests to write stdin bytes.\n\nRequires a client-supplied `processId`.", "type": "boolean" }, "streamStdoutStderr": { "description": "Stream stdout/stderr via `command/exec/outputDelta` notifications.\n\nStreamed bytes are not duplicated into the final response and require a client-supplied `processId`.", "type": "boolean" }, "timeoutMs": { "description": "Optional timeout in milliseconds.\n\nWhen omitted, the server default applies. Cannot be combined with `disableTimeout`.", "format": "int64", "type": [ "integer", "null" ] }, "tty": { "description": "Enable PTY mode.\n\nThis implies `streamStdin` and `streamStdoutStderr`.", "type": "boolean" } }, "required": [ "command" ], "title": "CommandExecParams", "type": "object" }, "CommandExecResizeParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Resize a running PTY-backed `command/exec` session.", "properties": { "processId": { "description": "Client-supplied, connection-scoped `processId` from the original `command/exec` request.", "type": "string" }, "size": { "allOf": [ { "$ref": "#/definitions/v2/CommandExecTerminalSize" } ], "description": "New PTY size in character cells." } }, "required": [ "processId", "size" ], "title": "CommandExecResizeParams", "type": "object" }, "CommandExecResizeResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Empty success response for `command/exec/resize`.", "title": "CommandExecResizeResponse", "type": "object" }, "CommandExecResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Final buffered result for `command/exec`.", "properties": { "exitCode": { "description": "Process exit code.", "format": "int32", "type": "integer" }, "stderr": { "description": "Buffered stderr capture.\n\nEmpty when stderr was streamed via `command/exec/outputDelta`.", "type": "string" }, "stdout": { "description": "Buffered stdout capture.\n\nEmpty when stdout was streamed via `command/exec/outputDelta`.", "type": "string" } }, "required": [ "exitCode", "stderr", "stdout" ], "title": "CommandExecResponse", "type": "object" }, "CommandExecTerminalSize": { "description": "PTY size in character cells for `command/exec` PTY sessions.", "properties": { "cols": { "description": "Terminal width in character cells.", "format": "uint16", "minimum": 0.0, "type": "integer" }, "rows": { "description": "Terminal height in character cells.", "format": "uint16", "minimum": 0.0, "type": "integer" } }, "required": [ "cols", "rows" ], "type": "object" }, "CommandExecTerminateParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Terminate a running `command/exec` session.", "properties": { "processId": { "description": "Client-supplied, connection-scoped `processId` from the original `command/exec` request.", "type": "string" } }, "required": [ "processId" ], "title": "CommandExecTerminateParams", "type": "object" }, "CommandExecTerminateResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Empty success response for `command/exec/terminate`.", "title": "CommandExecTerminateResponse", "type": "object" }, "CommandExecWriteParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Write stdin bytes to a running `command/exec` session, close stdin, or both.", "properties": { "closeStdin": { "description": "Close stdin after writing `deltaBase64`, if present.", "type": "boolean" }, "deltaBase64": { "description": "Optional base64-encoded stdin bytes to write.", "type": [ "string", "null" ] }, "processId": { "description": "Client-supplied, connection-scoped `processId` from the original `command/exec` request.", "type": "string" } }, "required": [ "processId" ], "title": "CommandExecWriteParams", "type": "object" }, "CommandExecWriteResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Empty success response for `command/exec/write`.", "title": "CommandExecWriteResponse", "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" }, "CommandExecutionSource": { "enum": [ "agent", "userShell", "unifiedExecStartup", "unifiedExecInteraction" ], "type": "string" }, "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" } ] }, "approvals_reviewer": { "anyOf": [ { "$ref": "#/definitions/v2/ApprovalsReviewer" }, { "type": "null" } ], "description": "[UNSTABLE] Optional default for where approval requests are routed for review." }, "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" } ] }, "service_tier": { "anyOf": [ { "$ref": "#/definitions/v2/ServiceTier" }, { "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" ] }, "reloadUserConfig": { "description": "When true, hot-reload the updated user config into all loaded threads after writing.", "type": "boolean" } }, "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" } ] }, "featureRequirements": { "additionalProperties": { "type": "boolean" }, "type": [ "object", "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" }, "DynamicToolCallOutputContentItem": { "oneOf": [ { "properties": { "text": { "type": "string" }, "type": { "enum": [ "inputText" ], "title": "InputTextDynamicToolCallOutputContentItemType", "type": "string" } }, "required": [ "text", "type" ], "title": "InputTextDynamicToolCallOutputContentItem", "type": "object" }, { "properties": { "imageUrl": { "type": "string" }, "type": { "enum": [ "inputImage" ], "title": "InputImageDynamicToolCallOutputContentItemType", "type": "string" } }, "required": [ "imageUrl", "type" ], "title": "InputImageDynamicToolCallOutputContentItem", "type": "object" } ] }, "DynamicToolCallStatus": { "enum": [ "inProgress", "completed", "failed" ], "type": "string" }, "DynamicToolSpec": { "properties": { "deferLoading": { "type": "boolean" }, "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" }, "ExperimentalFeatureEnablementSetParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "enablement": { "additionalProperties": { "type": "boolean" }, "description": "Process-wide runtime feature enablement keyed by canonical feature name.\n\nOnly named features are updated. Omitted features are left unchanged. Send an empty map for a no-op.", "type": "object" } }, "required": [ "enablement" ], "title": "ExperimentalFeatureEnablementSetParams", "type": "object" }, "ExperimentalFeatureEnablementSetResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "enablement": { "additionalProperties": { "type": "boolean" }, "description": "Feature enablement entries updated by this request.", "type": "object" } }, "required": [ "enablement" ], "title": "ExperimentalFeatureEnablementSetResponse", "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" } ] }, "ExternalAgentConfigDetectParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "cwds": { "description": "Zero or more working directories to include for repo-scoped detection.", "items": { "type": "string" }, "type": [ "array", "null" ] }, "includeHome": { "description": "If true, include detection under the user's home (~/.claude, ~/.codex, etc.).", "type": "boolean" } }, "title": "ExternalAgentConfigDetectParams", "type": "object" }, "ExternalAgentConfigDetectResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "items": { "items": { "$ref": "#/definitions/v2/ExternalAgentConfigMigrationItem" }, "type": "array" } }, "required": [ "items" ], "title": "ExternalAgentConfigDetectResponse", "type": "object" }, "ExternalAgentConfigImportParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "migrationItems": { "items": { "$ref": "#/definitions/v2/ExternalAgentConfigMigrationItem" }, "type": "array" } }, "required": [ "migrationItems" ], "title": "ExternalAgentConfigImportParams", "type": "object" }, "ExternalAgentConfigImportResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "title": "ExternalAgentConfigImportResponse", "type": "object" }, "ExternalAgentConfigMigrationItem": { "properties": { "cwd": { "description": "Null or empty means home-scoped migration; non-empty means repo-scoped migration.", "type": [ "string", "null" ] }, "description": { "type": "string" }, "itemType": { "$ref": "#/definitions/v2/ExternalAgentConfigMigrationItemType" } }, "required": [ "description", "itemType" ], "type": "object" }, "ExternalAgentConfigMigrationItemType": { "enum": [ "AGENTS_MD", "CONFIG", "SKILLS", "MCP_SERVER_CONFIG" ], "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" }, "FsChangedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Filesystem watch notification emitted for `fs/watch` subscribers.", "properties": { "changedPaths": { "description": "File or directory paths associated with this event.", "items": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "type": "array" }, "watchId": { "description": "Watch identifier returned by `fs/watch`.", "type": "string" } }, "required": [ "changedPaths", "watchId" ], "title": "FsChangedNotification", "type": "object" }, "FsCopyParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Copy a file or directory tree on the host filesystem.", "properties": { "destinationPath": { "allOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" } ], "description": "Absolute destination path." }, "recursive": { "description": "Required for directory copies; ignored for file copies.", "type": "boolean" }, "sourcePath": { "allOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" } ], "description": "Absolute source path." } }, "required": [ "destinationPath", "sourcePath" ], "title": "FsCopyParams", "type": "object" }, "FsCopyResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Successful response for `fs/copy`.", "title": "FsCopyResponse", "type": "object" }, "FsCreateDirectoryParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Create a directory on the host filesystem.", "properties": { "path": { "allOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" } ], "description": "Absolute directory path to create." }, "recursive": { "description": "Whether parent directories should also be created. Defaults to `true`.", "type": [ "boolean", "null" ] } }, "required": [ "path" ], "title": "FsCreateDirectoryParams", "type": "object" }, "FsCreateDirectoryResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Successful response for `fs/createDirectory`.", "title": "FsCreateDirectoryResponse", "type": "object" }, "FsGetMetadataParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Request metadata for an absolute path.", "properties": { "path": { "allOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" } ], "description": "Absolute path to inspect." } }, "required": [ "path" ], "title": "FsGetMetadataParams", "type": "object" }, "FsGetMetadataResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Metadata returned by `fs/getMetadata`.", "properties": { "createdAtMs": { "description": "File creation time in Unix milliseconds when available, otherwise `0`.", "format": "int64", "type": "integer" }, "isDirectory": { "description": "Whether the path currently resolves to a directory.", "type": "boolean" }, "isFile": { "description": "Whether the path currently resolves to a regular file.", "type": "boolean" }, "modifiedAtMs": { "description": "File modification time in Unix milliseconds when available, otherwise `0`.", "format": "int64", "type": "integer" } }, "required": [ "createdAtMs", "isDirectory", "isFile", "modifiedAtMs" ], "title": "FsGetMetadataResponse", "type": "object" }, "FsReadDirectoryEntry": { "description": "A directory entry returned by `fs/readDirectory`.", "properties": { "fileName": { "description": "Direct child entry name only, not an absolute or relative path.", "type": "string" }, "isDirectory": { "description": "Whether this entry resolves to a directory.", "type": "boolean" }, "isFile": { "description": "Whether this entry resolves to a regular file.", "type": "boolean" } }, "required": [ "fileName", "isDirectory", "isFile" ], "type": "object" }, "FsReadDirectoryParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "List direct child names for a directory.", "properties": { "path": { "allOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" } ], "description": "Absolute directory path to read." } }, "required": [ "path" ], "title": "FsReadDirectoryParams", "type": "object" }, "FsReadDirectoryResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Directory entries returned by `fs/readDirectory`.", "properties": { "entries": { "description": "Direct child entries in the requested directory.", "items": { "$ref": "#/definitions/v2/FsReadDirectoryEntry" }, "type": "array" } }, "required": [ "entries" ], "title": "FsReadDirectoryResponse", "type": "object" }, "FsReadFileParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Read a file from the host filesystem.", "properties": { "path": { "allOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" } ], "description": "Absolute path to read." } }, "required": [ "path" ], "title": "FsReadFileParams", "type": "object" }, "FsReadFileResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Base64-encoded file contents returned by `fs/readFile`.", "properties": { "dataBase64": { "description": "File contents encoded as base64.", "type": "string" } }, "required": [ "dataBase64" ], "title": "FsReadFileResponse", "type": "object" }, "FsRemoveParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Remove a file or directory tree from the host filesystem.", "properties": { "force": { "description": "Whether missing paths should be ignored. Defaults to `true`.", "type": [ "boolean", "null" ] }, "path": { "allOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" } ], "description": "Absolute path to remove." }, "recursive": { "description": "Whether directory removal should recurse. Defaults to `true`.", "type": [ "boolean", "null" ] } }, "required": [ "path" ], "title": "FsRemoveParams", "type": "object" }, "FsRemoveResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Successful response for `fs/remove`.", "title": "FsRemoveResponse", "type": "object" }, "FsUnwatchParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Stop filesystem watch notifications for a prior `fs/watch`.", "properties": { "watchId": { "description": "Watch identifier returned by `fs/watch`.", "type": "string" } }, "required": [ "watchId" ], "title": "FsUnwatchParams", "type": "object" }, "FsUnwatchResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Successful response for `fs/unwatch`.", "title": "FsUnwatchResponse", "type": "object" }, "FsWatchParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Start filesystem watch notifications for an absolute path.", "properties": { "path": { "allOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" } ], "description": "Absolute file or directory path to watch." } }, "required": [ "path" ], "title": "FsWatchParams", "type": "object" }, "FsWatchResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Created watch handle returned by `fs/watch`.", "properties": { "path": { "allOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" } ], "description": "Canonicalized path associated with the watch." }, "watchId": { "description": "Connection-scoped watch identifier used for `fs/unwatch` and `fs/changed`.", "type": "string" } }, "required": [ "path", "watchId" ], "title": "FsWatchResponse", "type": "object" }, "FsWriteFileParams": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Write a file on the host filesystem.", "properties": { "dataBase64": { "description": "File contents encoded as base64.", "type": "string" }, "path": { "allOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" } ], "description": "Absolute path to write." } }, "required": [ "dataBase64", "path" ], "title": "FsWriteFileParams", "type": "object" }, "FsWriteFileResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Successful response for `fs/writeFile`.", "title": "FsWriteFileResponse", "type": "object" }, "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": { "detail": { "anyOf": [ { "$ref": "#/definitions/v2/ImageDetail" }, { "type": "null" } ] }, "image_url": { "type": "string" }, "type": { "enum": [ "input_image" ], "title": "InputImageFunctionCallOutputContentItemType", "type": "string" } }, "required": [ "image_url", "type" ], "title": "InputImageFunctionCallOutputContentItem", "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" }, "GuardianApprovalReview": { "description": "[UNSTABLE] Temporary guardian approval review payload used by `item/autoApprovalReview/*` notifications. This shape is expected to change soon.", "properties": { "rationale": { "type": [ "string", "null" ] }, "riskLevel": { "anyOf": [ { "$ref": "#/definitions/v2/GuardianRiskLevel" }, { "type": "null" } ] }, "riskScore": { "format": "uint8", "minimum": 0.0, "type": [ "integer", "null" ] }, "status": { "$ref": "#/definitions/v2/GuardianApprovalReviewStatus" } }, "required": [ "status" ], "type": "object" }, "GuardianApprovalReviewStatus": { "description": "[UNSTABLE] Lifecycle state for a guardian approval review.", "enum": [ "inProgress", "approved", "denied", "aborted" ], "type": "string" }, "GuardianRiskLevel": { "description": "[UNSTABLE] Risk level assigned by guardian approval review.", "enum": [ "low", "medium", "high" ], "type": "string" }, "HookCompletedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "run": { "$ref": "#/definitions/v2/HookRunSummary" }, "threadId": { "type": "string" }, "turnId": { "type": [ "string", "null" ] } }, "required": [ "run", "threadId" ], "title": "HookCompletedNotification", "type": "object" }, "HookEventName": { "enum": [ "preToolUse", "sessionStart", "userPromptSubmit", "stop" ], "type": "string" }, "HookExecutionMode": { "enum": [ "sync", "async" ], "type": "string" }, "HookHandlerType": { "enum": [ "command", "prompt", "agent" ], "type": "string" }, "HookOutputEntry": { "properties": { "kind": { "$ref": "#/definitions/v2/HookOutputEntryKind" }, "text": { "type": "string" } }, "required": [ "kind", "text" ], "type": "object" }, "HookOutputEntryKind": { "enum": [ "warning", "stop", "feedback", "context", "error" ], "type": "string" }, "HookPromptFragment": { "properties": { "hookRunId": { "type": "string" }, "text": { "type": "string" } }, "required": [ "hookRunId", "text" ], "type": "object" }, "HookRunStatus": { "enum": [ "running", "completed", "failed", "blocked", "stopped" ], "type": "string" }, "HookRunSummary": { "properties": { "completedAt": { "format": "int64", "type": [ "integer", "null" ] }, "displayOrder": { "format": "int64", "type": "integer" }, "durationMs": { "format": "int64", "type": [ "integer", "null" ] }, "entries": { "items": { "$ref": "#/definitions/v2/HookOutputEntry" }, "type": "array" }, "eventName": { "$ref": "#/definitions/v2/HookEventName" }, "executionMode": { "$ref": "#/definitions/v2/HookExecutionMode" }, "handlerType": { "$ref": "#/definitions/v2/HookHandlerType" }, "id": { "type": "string" }, "scope": { "$ref": "#/definitions/v2/HookScope" }, "sourcePath": { "type": "string" }, "startedAt": { "format": "int64", "type": "integer" }, "status": { "$ref": "#/definitions/v2/HookRunStatus" }, "statusMessage": { "type": [ "string", "null" ] } }, "required": [ "displayOrder", "entries", "eventName", "executionMode", "handlerType", "id", "scope", "sourcePath", "startedAt", "status" ], "type": "object" }, "HookScope": { "enum": [ "thread", "turn" ], "type": "string" }, "HookStartedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "run": { "$ref": "#/definitions/v2/HookRunSummary" }, "threadId": { "type": "string" }, "turnId": { "type": [ "string", "null" ] } }, "required": [ "run", "threadId" ], "title": "HookStartedNotification", "type": "object" }, "ImageDetail": { "enum": [ "auto", "low", "high", "original" ], "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" }, "ItemGuardianApprovalReviewCompletedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "[UNSTABLE] Temporary notification payload for guardian automatic approval review. This shape is expected to change soon.\n\nTODO(ccunningham): Attach guardian review state to the reviewed tool item's lifecycle instead of sending separate standalone review notifications so the app-server API can persist and replay review state via `thread/read`.", "properties": { "action": true, "review": { "$ref": "#/definitions/v2/GuardianApprovalReview" }, "targetItemId": { "type": "string" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "review", "targetItemId", "threadId", "turnId" ], "title": "ItemGuardianApprovalReviewCompletedNotification", "type": "object" }, "ItemGuardianApprovalReviewStartedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "[UNSTABLE] Temporary notification payload for guardian automatic approval review. This shape is expected to change soon.\n\nTODO(ccunningham): Attach guardian review state to the reviewed tool item's lifecycle instead of sending separate standalone review notifications so the app-server API can persist and replay review state via `thread/read`.", "properties": { "action": true, "review": { "$ref": "#/definitions/v2/GuardianApprovalReview" }, "targetItemId": { "type": "string" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "review", "targetItemId", "threadId", "turnId" ], "title": "ItemGuardianApprovalReviewStartedNotification", "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" }, "MarketplaceInterface": { "properties": { "displayName": { "type": [ "string", "null" ] } }, "type": "object" }, "MarketplaceLoadErrorInfo": { "properties": { "marketplacePath": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "message": { "type": "string" } }, "required": [ "marketplacePath", "message" ], "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" }, "McpServerStartupState": { "enum": [ "starting", "ready", "failed", "cancelled" ], "type": "string" }, "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" }, "McpServerStatusUpdatedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "error": { "type": [ "string", "null" ] }, "name": { "type": "string" }, "status": { "$ref": "#/definitions/v2/McpServerStartupState" } }, "required": [ "name", "status" ], "title": "McpServerStatusUpdatedNotification", "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" }, "MemoryCitation": { "properties": { "entries": { "items": { "$ref": "#/definitions/v2/MemoryCitationEntry" }, "type": "array" }, "threadIds": { "items": { "type": "string" }, "type": "array" } }, "required": [ "entries", "threadIds" ], "type": "object" }, "MemoryCitationEntry": { "properties": { "lineEnd": { "format": "uint32", "minimum": 0.0, "type": "integer" }, "lineStart": { "format": "uint32", "minimum": 0.0, "type": "integer" }, "note": { "type": "string" }, "path": { "type": "string" } }, "required": [ "lineEnd", "lineStart", "note", "path" ], "type": "object" }, "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": { "availabilityNux": { "anyOf": [ { "$ref": "#/definitions/v2/ModelAvailabilityNux" }, { "type": "null" } ] }, "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" ] }, "upgradeInfo": { "anyOf": [ { "$ref": "#/definitions/v2/ModelUpgradeInfo" }, { "type": "null" } ] } }, "required": [ "defaultReasoningEffort", "description", "displayName", "hidden", "id", "isDefault", "model", "supportedReasoningEfforts" ], "type": "object" }, "ModelAvailabilityNux": { "properties": { "message": { "type": "string" } }, "required": [ "message" ], "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" }, "ModelUpgradeInfo": { "properties": { "migrationMarkdown": { "type": [ "string", "null" ] }, "model": { "type": "string" }, "modelLink": { "type": [ "string", "null" ] }, "upgradeCopy": { "type": [ "string", "null" ] } }, "required": [ "model" ], "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" ] }, "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" }, "NonSteerableTurnKind": { "enum": [ "review", "compact" ], "type": "string" }, "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" }, "PluginAuthPolicy": { "enum": [ "ON_INSTALL", "ON_USE" ], "type": "string" }, "PluginDetail": { "properties": { "apps": { "items": { "$ref": "#/definitions/v2/AppSummary" }, "type": "array" }, "description": { "type": [ "string", "null" ] }, "marketplaceName": { "type": "string" }, "marketplacePath": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "mcpServers": { "items": { "type": "string" }, "type": "array" }, "skills": { "items": { "$ref": "#/definitions/v2/SkillSummary" }, "type": "array" }, "summary": { "$ref": "#/definitions/v2/PluginSummary" } }, "required": [ "apps", "marketplaceName", "marketplacePath", "mcpServers", "skills", "summary" ], "type": "object" }, "PluginInstallParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "forceRemoteSync": { "description": "When true, apply the remote plugin change before the local install flow.", "type": "boolean" }, "marketplacePath": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "pluginName": { "type": "string" } }, "required": [ "marketplacePath", "pluginName" ], "title": "PluginInstallParams", "type": "object" }, "PluginInstallPolicy": { "enum": [ "NOT_AVAILABLE", "AVAILABLE", "INSTALLED_BY_DEFAULT" ], "type": "string" }, "PluginInstallResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "appsNeedingAuth": { "items": { "$ref": "#/definitions/v2/AppSummary" }, "type": "array" }, "authPolicy": { "$ref": "#/definitions/v2/PluginAuthPolicy" } }, "required": [ "appsNeedingAuth", "authPolicy" ], "title": "PluginInstallResponse", "type": "object" }, "PluginInterface": { "properties": { "brandColor": { "type": [ "string", "null" ] }, "capabilities": { "items": { "type": "string" }, "type": "array" }, "category": { "type": [ "string", "null" ] }, "composerIcon": { "anyOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" }, { "type": "null" } ] }, "defaultPrompt": { "description": "Starter prompts for the plugin. Capped at 3 entries with a maximum of 128 characters per entry.", "items": { "type": "string" }, "type": [ "array", "null" ] }, "developerName": { "type": [ "string", "null" ] }, "displayName": { "type": [ "string", "null" ] }, "logo": { "anyOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" }, { "type": "null" } ] }, "longDescription": { "type": [ "string", "null" ] }, "privacyPolicyUrl": { "type": [ "string", "null" ] }, "screenshots": { "items": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "type": "array" }, "shortDescription": { "type": [ "string", "null" ] }, "termsOfServiceUrl": { "type": [ "string", "null" ] }, "websiteUrl": { "type": [ "string", "null" ] } }, "required": [ "capabilities", "screenshots" ], "type": "object" }, "PluginListParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "cwds": { "description": "Optional working directories used to discover repo marketplaces. When omitted, only home-scoped marketplaces and the official curated marketplace are considered.", "items": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "type": [ "array", "null" ] }, "forceRemoteSync": { "description": "When true, reconcile the official curated marketplace against the remote plugin state before listing marketplaces.", "type": "boolean" } }, "title": "PluginListParams", "type": "object" }, "PluginListResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "featuredPluginIds": { "default": [], "items": { "type": "string" }, "type": "array" }, "marketplaceLoadErrors": { "default": [], "items": { "$ref": "#/definitions/v2/MarketplaceLoadErrorInfo" }, "type": "array" }, "marketplaces": { "items": { "$ref": "#/definitions/v2/PluginMarketplaceEntry" }, "type": "array" }, "remoteSyncError": { "type": [ "string", "null" ] } }, "required": [ "marketplaces" ], "title": "PluginListResponse", "type": "object" }, "PluginMarketplaceEntry": { "properties": { "interface": { "anyOf": [ { "$ref": "#/definitions/v2/MarketplaceInterface" }, { "type": "null" } ] }, "name": { "type": "string" }, "path": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "plugins": { "items": { "$ref": "#/definitions/v2/PluginSummary" }, "type": "array" } }, "required": [ "name", "path", "plugins" ], "type": "object" }, "PluginReadParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "marketplacePath": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "pluginName": { "type": "string" } }, "required": [ "marketplacePath", "pluginName" ], "title": "PluginReadParams", "type": "object" }, "PluginReadResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "plugin": { "$ref": "#/definitions/v2/PluginDetail" } }, "required": [ "plugin" ], "title": "PluginReadResponse", "type": "object" }, "PluginSource": { "oneOf": [ { "properties": { "path": { "$ref": "#/definitions/v2/AbsolutePathBuf" }, "type": { "enum": [ "local" ], "title": "LocalPluginSourceType", "type": "string" } }, "required": [ "path", "type" ], "title": "LocalPluginSource", "type": "object" } ] }, "PluginSummary": { "properties": { "authPolicy": { "$ref": "#/definitions/v2/PluginAuthPolicy" }, "enabled": { "type": "boolean" }, "id": { "type": "string" }, "installPolicy": { "$ref": "#/definitions/v2/PluginInstallPolicy" }, "installed": { "type": "boolean" }, "interface": { "anyOf": [ { "$ref": "#/definitions/v2/PluginInterface" }, { "type": "null" } ] }, "name": { "type": "string" }, "source": { "$ref": "#/definitions/v2/PluginSource" } }, "required": [ "authPolicy", "enabled", "id", "installPolicy", "installed", "name", "source" ], "type": "object" }, "PluginUninstallParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "forceRemoteSync": { "description": "When true, apply the remote plugin change before the local uninstall flow.", "type": "boolean" }, "pluginId": { "type": "string" } }, "required": [ "pluginId" ], "title": "PluginUninstallParams", "type": "object" }, "PluginUninstallResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "title": "PluginUninstallResponse", "type": "object" }, "ProfileV2": { "additionalProperties": true, "properties": { "approval_policy": { "anyOf": [ { "$ref": "#/definitions/v2/AskForApproval" }, { "type": "null" } ] }, "approvals_reviewer": { "anyOf": [ { "$ref": "#/definitions/v2/ApprovalsReviewer" }, { "type": "null" } ], "description": "[UNSTABLE] Optional profile-level override for where approval requests are routed for review. If omitted, the enclosing config default is used." }, "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" } ] }, "service_tier": { "anyOf": [ { "$ref": "#/definitions/v2/ServiceTier" }, { "type": "null" } ] }, "tools": { "anyOf": [ { "$ref": "#/definitions/v2/ToolsV2" }, { "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" } ] }, "RealtimeConversationVersion": { "enum": [ "v1", "v2" ], "type": "string" }, "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" }, "RequestId": { "anyOf": [ { "type": "string" }, { "format": "int64", "type": "integer" } ] }, "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" ] }, "summary": { "items": { "$ref": "#/definitions/v2/ReasoningItemReasoningSummary" }, "type": "array" }, "type": { "enum": [ "reasoning" ], "title": "ReasoningResponseItemType", "type": "string" } }, "required": [ "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" }, "namespace": { "type": [ "string", "null" ] }, "type": { "enum": [ "function_call" ], "title": "FunctionCallResponseItemType", "type": "string" } }, "required": [ "arguments", "call_id", "name", "type" ], "title": "FunctionCallResponseItem", "type": "object" }, { "properties": { "arguments": true, "call_id": { "type": [ "string", "null" ] }, "execution": { "type": "string" }, "id": { "type": [ "string", "null" ], "writeOnly": true }, "status": { "type": [ "string", "null" ] }, "type": { "enum": [ "tool_search_call" ], "title": "ToolSearchCallResponseItemType", "type": "string" } }, "required": [ "arguments", "execution", "type" ], "title": "ToolSearchCallResponseItem", "type": "object" }, { "properties": { "call_id": { "type": "string" }, "output": { "$ref": "#/definitions/v2/FunctionCallOutputBody" }, "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" }, "name": { "type": [ "string", "null" ] }, "output": { "$ref": "#/definitions/v2/FunctionCallOutputBody" }, "type": { "enum": [ "custom_tool_call_output" ], "title": "CustomToolCallOutputResponseItemType", "type": "string" } }, "required": [ "call_id", "output", "type" ], "title": "CustomToolCallOutputResponseItem", "type": "object" }, { "properties": { "call_id": { "type": [ "string", "null" ] }, "execution": { "type": "string" }, "status": { "type": "string" }, "tools": { "items": true, "type": "array" }, "type": { "enum": [ "tool_search_output" ], "title": "ToolSearchOutputResponseItemType", "type": "string" } }, "required": [ "execution", "status", "tools", "type" ], "title": "ToolSearchOutputResponseItem", "type": "object" }, { "properties": { "action": { "anyOf": [ { "$ref": "#/definitions/v2/ResponsesApiWebSearchAction" }, { "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": { "id": { "type": "string" }, "result": { "type": "string" }, "revised_prompt": { "type": [ "string", "null" ] }, "status": { "type": "string" }, "type": { "enum": [ "image_generation_call" ], "title": "ImageGenerationCallResponseItemType", "type": "string" } }, "required": [ "id", "result", "status", "type" ], "title": "ImageGenerationCallResponseItem", "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" } ] }, "ResponsesApiWebSearchAction": { "oneOf": [ { "properties": { "queries": { "items": { "type": "string" }, "type": [ "array", "null" ] }, "query": { "type": [ "string", "null" ] }, "type": { "enum": [ "search" ], "title": "SearchResponsesApiWebSearchActionType", "type": "string" } }, "required": [ "type" ], "title": "SearchResponsesApiWebSearchAction", "type": "object" }, { "properties": { "type": { "enum": [ "open_page" ], "title": "OpenPageResponsesApiWebSearchActionType", "type": "string" }, "url": { "type": [ "string", "null" ] } }, "required": [ "type" ], "title": "OpenPageResponsesApiWebSearchAction", "type": "object" }, { "properties": { "pattern": { "type": [ "string", "null" ] }, "type": { "enum": [ "find_in_page" ], "title": "FindInPageResponsesApiWebSearchActionType", "type": "string" }, "url": { "type": [ "string", "null" ] } }, "required": [ "type" ], "title": "FindInPageResponsesApiWebSearchAction", "type": "object" }, { "properties": { "type": { "enum": [ "other" ], "title": "OtherResponsesApiWebSearchActionType", "type": "string" } }, "required": [ "type" ], "title": "OtherResponsesApiWebSearchAction", "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" } }, "networkAccess": { "default": false, "type": "boolean" }, "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" }, "ServerRequestResolvedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "requestId": { "$ref": "#/definitions/v2/RequestId" }, "threadId": { "type": "string" } }, "required": [ "requestId", "threadId" ], "title": "ServerRequestResolvedNotification", "type": "object" }, "ServiceTier": { "enum": [ "fast", "flex" ], "type": "string" }, "SessionSource": { "oneOf": [ { "enum": [ "cli", "vscode", "exec", "appServer", "unknown" ], "type": "string" }, { "additionalProperties": false, "properties": { "custom": { "type": "string" } }, "required": [ "custom" ], "title": "CustomSessionSource", "type": "object" }, { "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" }, "SkillSummary": { "properties": { "description": { "type": "string" }, "enabled": { "type": "boolean" }, "interface": { "anyOf": [ { "$ref": "#/definitions/v2/SkillInterface" }, { "type": "null" } ] }, "name": { "type": "string" }, "path": { "type": "string" }, "shortDescription": { "type": [ "string", "null" ] } }, "required": [ "description", "enabled", "name", "path" ], "type": "object" }, "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" }, "SkillsChangedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Notification emitted when watched local skill files change.\n\nTreat this as an invalidation signal and re-run `skills/list` with the client's current parameters when refreshed skill metadata is needed.", "title": "SkillsChangedNotification", "type": "object" }, "SkillsConfigWriteParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "enabled": { "type": "boolean" }, "name": { "description": "Name-based selector.", "type": [ "string", "null" ] }, "path": { "anyOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" }, { "type": "null" } ], "description": "Path-based selector." } }, "required": [ "enabled" ], "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" }, "SubAgentSource": { "oneOf": [ { "enum": [ "review", "compact", "memory_consolidation" ], "type": "string" }, { "additionalProperties": false, "properties": { "thread_spawn": { "properties": { "agent_nickname": { "default": null, "type": [ "string", "null" ] }, "agent_path": { "anyOf": [ { "$ref": "#/definitions/v2/AgentPath" }, { "type": "null" } ], "default": 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" }, "ephemeral": { "description": "Whether the thread is ephemeral and should not be materialized on disk.", "type": "boolean" }, "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" }, "name": { "description": "Optional user-facing thread title.", "type": [ "string", "null" ] }, "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", "ephemeral", "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" }, "ThreadClosedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "threadId": { "type": "string" } }, "required": [ "threadId" ], "title": "ThreadClosedNotification", "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" } ] }, "approvalsReviewer": { "anyOf": [ { "$ref": "#/definitions/v2/ApprovalsReviewer" }, { "type": "null" } ], "description": "Override where approval requests are routed for review on this thread and subsequent turns." }, "baseInstructions": { "type": [ "string", "null" ] }, "config": { "additionalProperties": true, "type": [ "object", "null" ] }, "cwd": { "type": [ "string", "null" ] }, "developerInstructions": { "type": [ "string", "null" ] }, "ephemeral": { "type": "boolean" }, "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" } ] }, "serviceTier": { "anyOf": [ { "anyOf": [ { "$ref": "#/definitions/v2/ServiceTier" }, { "type": "null" } ] }, { "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" }, "approvalsReviewer": { "allOf": [ { "$ref": "#/definitions/v2/ApprovalsReviewer" } ], "description": "Reviewer currently used for approval requests on this thread." }, "cwd": { "type": "string" }, "model": { "type": "string" }, "modelProvider": { "type": "string" }, "reasoningEffort": { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningEffort" }, { "type": "null" } ] }, "sandbox": { "$ref": "#/definitions/v2/SandboxPolicy" }, "serviceTier": { "anyOf": [ { "$ref": "#/definitions/v2/ServiceTier" }, { "type": "null" } ] }, "thread": { "$ref": "#/definitions/v2/Thread" } }, "required": [ "approvalPolicy", "approvalsReviewer", "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": { "fragments": { "items": { "$ref": "#/definitions/v2/HookPromptFragment" }, "type": "array" }, "id": { "type": "string" }, "type": { "enum": [ "hookPrompt" ], "title": "HookPromptThreadItemType", "type": "string" } }, "required": [ "fragments", "id", "type" ], "title": "HookPromptThreadItem", "type": "object" }, { "properties": { "id": { "type": "string" }, "memoryCitation": { "anyOf": [ { "$ref": "#/definitions/v2/MemoryCitation" }, { "type": "null" } ], "default": null }, "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" ] }, "source": { "allOf": [ { "$ref": "#/definitions/v2/CommandExecutionSource" } ], "default": "agent" }, "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": { "arguments": true, "contentItems": { "items": { "$ref": "#/definitions/v2/DynamicToolCallOutputContentItem" }, "type": [ "array", "null" ] }, "durationMs": { "description": "The duration of the dynamic tool call in milliseconds.", "format": "int64", "type": [ "integer", "null" ] }, "id": { "type": "string" }, "status": { "$ref": "#/definitions/v2/DynamicToolCallStatus" }, "success": { "type": [ "boolean", "null" ] }, "tool": { "type": "string" }, "type": { "enum": [ "dynamicToolCall" ], "title": "DynamicToolCallThreadItemType", "type": "string" } }, "required": [ "arguments", "id", "status", "tool", "type" ], "title": "DynamicToolCallThreadItem", "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" }, "model": { "description": "Model requested for the spawned agent, when applicable.", "type": [ "string", "null" ] }, "prompt": { "description": "Prompt text sent as part of the collab tool call, when available.", "type": [ "string", "null" ] }, "reasoningEffort": { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningEffort" }, { "type": "null" } ], "description": "Reasoning effort requested for the spawned agent, when applicable." }, "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" }, "result": { "type": "string" }, "revisedPrompt": { "type": [ "string", "null" ] }, "savedPath": { "type": [ "string", "null" ] }, "status": { "type": "string" }, "type": { "enum": [ "imageGeneration" ], "title": "ImageGenerationThreadItemType", "type": "string" } }, "required": [ "id", "result", "status", "type" ], "title": "ImageGenerationThreadItem", "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" ] }, "searchTerm": { "description": "Optional substring filter for the extracted thread title.", "type": [ "string", "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" }, "ThreadMetadataGitInfoUpdateParams": { "properties": { "branch": { "description": "Omit to leave the stored branch unchanged, set to `null` to clear it, or provide a non-empty string to replace it.", "type": [ "string", "null" ] }, "originUrl": { "description": "Omit to leave the stored origin URL unchanged, set to `null` to clear it, or provide a non-empty string to replace it.", "type": [ "string", "null" ] }, "sha": { "description": "Omit to leave the stored commit unchanged, set to `null` to clear it, or provide a non-empty string to replace it.", "type": [ "string", "null" ] } }, "type": "object" }, "ThreadMetadataUpdateParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "gitInfo": { "anyOf": [ { "$ref": "#/definitions/v2/ThreadMetadataGitInfoUpdateParams" }, { "type": "null" } ], "description": "Patch the stored Git metadata for this thread. Omit a field to leave it unchanged, set it to `null` to clear it, or provide a string to replace the stored value." }, "threadId": { "type": "string" } }, "required": [ "threadId" ], "title": "ThreadMetadataUpdateParams", "type": "object" }, "ThreadMetadataUpdateResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "thread": { "$ref": "#/definitions/v2/Thread" } }, "required": [ "thread" ], "title": "ThreadMetadataUpdateResponse", "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" }, "ThreadRealtimeAudioChunk": { "description": "EXPERIMENTAL - thread realtime audio chunk.", "properties": { "data": { "type": "string" }, "itemId": { "type": [ "string", "null" ] }, "numChannels": { "format": "uint16", "minimum": 0.0, "type": "integer" }, "sampleRate": { "format": "uint32", "minimum": 0.0, "type": "integer" }, "samplesPerChannel": { "format": "uint32", "minimum": 0.0, "type": [ "integer", "null" ] } }, "required": [ "data", "numChannels", "sampleRate" ], "type": "object" }, "ThreadRealtimeClosedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "EXPERIMENTAL - emitted when thread realtime transport closes.", "properties": { "reason": { "type": [ "string", "null" ] }, "threadId": { "type": "string" } }, "required": [ "threadId" ], "title": "ThreadRealtimeClosedNotification", "type": "object" }, "ThreadRealtimeErrorNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "EXPERIMENTAL - emitted when thread realtime encounters an error.", "properties": { "message": { "type": "string" }, "threadId": { "type": "string" } }, "required": [ "message", "threadId" ], "title": "ThreadRealtimeErrorNotification", "type": "object" }, "ThreadRealtimeItemAddedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "EXPERIMENTAL - raw non-audio thread realtime item emitted by the backend.", "properties": { "item": true, "threadId": { "type": "string" } }, "required": [ "item", "threadId" ], "title": "ThreadRealtimeItemAddedNotification", "type": "object" }, "ThreadRealtimeOutputAudioDeltaNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "EXPERIMENTAL - streamed output audio emitted by thread realtime.", "properties": { "audio": { "$ref": "#/definitions/v2/ThreadRealtimeAudioChunk" }, "threadId": { "type": "string" } }, "required": [ "audio", "threadId" ], "title": "ThreadRealtimeOutputAudioDeltaNotification", "type": "object" }, "ThreadRealtimeStartedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "EXPERIMENTAL - emitted when thread realtime startup is accepted.", "properties": { "sessionId": { "type": [ "string", "null" ] }, "threadId": { "type": "string" }, "version": { "$ref": "#/definitions/v2/RealtimeConversationVersion" } }, "required": [ "threadId", "version" ], "title": "ThreadRealtimeStartedNotification", "type": "object" }, "ThreadRealtimeTranscriptUpdatedNotification": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "EXPERIMENTAL - flat transcript delta emitted whenever realtime transcript text changes.", "properties": { "role": { "type": "string" }, "text": { "type": "string" }, "threadId": { "type": "string" } }, "required": [ "role", "text", "threadId" ], "title": "ThreadRealtimeTranscriptUpdatedNotification", "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" } ] }, "approvalsReviewer": { "anyOf": [ { "$ref": "#/definitions/v2/ApprovalsReviewer" }, { "type": "null" } ], "description": "Override where approval requests are routed for review on this thread and subsequent turns." }, "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" } ] }, "serviceTier": { "anyOf": [ { "anyOf": [ { "$ref": "#/definitions/v2/ServiceTier" }, { "type": "null" } ] }, { "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" }, "approvalsReviewer": { "allOf": [ { "$ref": "#/definitions/v2/ApprovalsReviewer" } ], "description": "Reviewer currently used for approval requests on this thread." }, "cwd": { "type": "string" }, "model": { "type": "string" }, "modelProvider": { "type": "string" }, "reasoningEffort": { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningEffort" }, { "type": "null" } ] }, "sandbox": { "$ref": "#/definitions/v2/SandboxPolicy" }, "serviceTier": { "anyOf": [ { "$ref": "#/definitions/v2/ServiceTier" }, { "type": "null" } ] }, "thread": { "$ref": "#/definitions/v2/Thread" } }, "required": [ "approvalPolicy", "approvalsReviewer", "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" }, "ThreadShellCommandParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "command": { "description": "Shell command string evaluated by the thread's configured shell. Unlike `command/exec`, this intentionally preserves shell syntax such as pipes, redirects, and quoting. This runs unsandboxed with full access rather than inheriting the thread sandbox policy.", "type": "string" }, "threadId": { "type": "string" } }, "required": [ "command", "threadId" ], "title": "ThreadShellCommandParams", "type": "object" }, "ThreadShellCommandResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "title": "ThreadShellCommandResponse", "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" } ] }, "approvalsReviewer": { "anyOf": [ { "$ref": "#/definitions/v2/ApprovalsReviewer" }, { "type": "null" } ], "description": "Override where approval requests are routed for review on this thread and subsequent turns." }, "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" } ] }, "serviceName": { "type": [ "string", "null" ] }, "serviceTier": { "anyOf": [ { "anyOf": [ { "$ref": "#/definitions/v2/ServiceTier" }, { "type": "null" } ] }, { "type": "null" } ] } }, "title": "ThreadStartParams", "type": "object" }, "ThreadStartResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "approvalPolicy": { "$ref": "#/definitions/v2/AskForApproval" }, "approvalsReviewer": { "allOf": [ { "$ref": "#/definitions/v2/ApprovalsReviewer" } ], "description": "Reviewer currently used for approval requests on this thread." }, "cwd": { "type": "string" }, "model": { "type": "string" }, "modelProvider": { "type": "string" }, "reasoningEffort": { "anyOf": [ { "$ref": "#/definitions/v2/ReasoningEffort" }, { "type": "null" } ] }, "sandbox": { "$ref": "#/definitions/v2/SandboxPolicy" }, "serviceTier": { "anyOf": [ { "$ref": "#/definitions/v2/ServiceTier" }, { "type": "null" } ] }, "thread": { "$ref": "#/definitions/v2/Thread" } }, "required": [ "approvalPolicy", "approvalsReviewer", "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" }, "ThreadUnsubscribeParams": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "threadId": { "type": "string" } }, "required": [ "threadId" ], "title": "ThreadUnsubscribeParams", "type": "object" }, "ThreadUnsubscribeResponse": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "status": { "$ref": "#/definitions/v2/ThreadUnsubscribeStatus" } }, "required": [ "status" ], "title": "ThreadUnsubscribeResponse", "type": "object" }, "ThreadUnsubscribeStatus": { "enum": [ "notLoaded", "notSubscribed", "unsubscribed" ], "type": "string" }, "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": { "anyOf": [ { "$ref": "#/definitions/v2/WebSearchToolConfig" }, { "type": "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." }, "approvalsReviewer": { "anyOf": [ { "$ref": "#/definitions/v2/ApprovalsReviewer" }, { "type": "null" } ], "description": "Override where approval requests are routed for review on 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." }, "serviceTier": { "anyOf": [ { "anyOf": [ { "$ref": "#/definitions/v2/ServiceTier" }, { "type": "null" } ] }, { "type": "null" } ], "description": "Override the service tier 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": [ "openPage" ], "title": "OpenPageWebSearchActionType", "type": "string" }, "url": { "type": [ "string", "null" ] } }, "required": [ "type" ], "title": "OpenPageWebSearchAction", "type": "object" }, { "properties": { "pattern": { "type": [ "string", "null" ] }, "type": { "enum": [ "findInPage" ], "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" } ] }, "WebSearchContextSize": { "enum": [ "low", "medium", "high" ], "type": "string" }, "WebSearchLocation": { "additionalProperties": false, "properties": { "city": { "type": [ "string", "null" ] }, "country": { "type": [ "string", "null" ] }, "region": { "type": [ "string", "null" ] }, "timezone": { "type": [ "string", "null" ] } }, "type": "object" }, "WebSearchMode": { "enum": [ "disabled", "cached", "live" ], "type": "string" }, "WebSearchToolConfig": { "additionalProperties": false, "properties": { "allowed_domains": { "items": { "type": "string" }, "type": [ "array", "null" ] }, "context_size": { "anyOf": [ { "$ref": "#/definitions/v2/WebSearchContextSize" }, { "type": "null" } ] }, "location": { "anyOf": [ { "$ref": "#/definitions/v2/WebSearchLocation" }, { "type": "null" } ] } }, "type": "object" }, "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": { "cwd": { "anyOf": [ { "$ref": "#/definitions/v2/AbsolutePathBuf" }, { "type": "null" } ] }, "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" }