sandbox-agent/resources/agent-schemas/artifacts/json-schema/codex.json
2026-01-26 23:20:33 -08:00

17956 lines
No EOL
448 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://sandbox-agent/schemas/codex.json",
"title": "Codex SDK Schema",
"definitions": {
"FileChange": {
"oneOf": [
{
"type": "object",
"required": [
"content",
"type"
],
"properties": {
"content": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"add"
],
"title": "AddFileChangeType"
}
},
"title": "AddFileChange"
},
{
"type": "object",
"required": [
"content",
"type"
],
"properties": {
"content": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"delete"
],
"title": "DeleteFileChangeType"
}
},
"title": "DeleteFileChange"
},
{
"type": "object",
"required": [
"type",
"unified_diff"
],
"properties": {
"move_path": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"update"
],
"title": "UpdateFileChangeType"
},
"unified_diff": {
"type": "string"
}
},
"title": "UpdateFileChange"
}
]
},
"ThreadId": {
"type": "string"
},
"ReviewDecision": {
"description": "User's decision in response to an ExecApprovalRequest.",
"oneOf": [
{
"description": "User has approved this command and the agent should execute it.",
"type": "string",
"enum": [
"approved"
]
},
{
"description": "User has approved this command and wants to apply the proposed execpolicy amendment so future matching commands are permitted.",
"type": "object",
"required": [
"approved_execpolicy_amendment"
],
"properties": {
"approved_execpolicy_amendment": {
"type": "object",
"required": [
"proposed_execpolicy_amendment"
],
"properties": {
"proposed_execpolicy_amendment": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"additionalProperties": false,
"title": "ApprovedExecpolicyAmendmentReviewDecision"
},
{
"description": "User has approved this command and wants to automatically approve any future identical instances (`command` and `cwd` match exactly) for the remainder of the session.",
"type": "string",
"enum": [
"approved_for_session"
]
},
{
"description": "User has denied this command and the agent should not execute it, but it should continue the session and try something else.",
"type": "string",
"enum": [
"denied"
]
},
{
"description": "User has denied this command and the agent should not do anything until the user's next command.",
"type": "string",
"enum": [
"abort"
]
}
]
},
"ClientNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ClientNotification",
"oneOf": [
{
"type": "object",
"required": [
"method"
],
"properties": {
"method": {
"type": "string",
"enum": [
"initialized"
],
"title": "InitializedNotificationMethod"
}
},
"title": "InitializedNotification"
}
]
},
"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"
},
"AddConversationListenerParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "AddConversationListenerParams",
"type": "object",
"required": [
"conversationId"
],
"properties": {
"conversationId": {
"$ref": "#/definitions/ThreadId"
},
"experimentalRawEvents": {
"default": false,
"type": "boolean"
}
}
},
"ArchiveConversationParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ArchiveConversationParams",
"type": "object",
"required": [
"conversationId",
"rolloutPath"
],
"properties": {
"conversationId": {
"$ref": "#/definitions/ThreadId"
},
"rolloutPath": {
"type": "string"
}
}
},
"AskForApproval": {
"description": "Determines the conditions under which the user is consulted to approve running the command proposed by Codex.",
"oneOf": [
{
"description": "Under this policy, only \"known safe\" commands—as determined by `is_safe_command()`—that **only read files** are autoapproved. Everything else will ask the user to approve.",
"type": "string",
"enum": [
"untrusted"
]
},
{
"description": "*All* commands are autoapproved, but they are expected to run inside a sandbox where network access is disabled and writes are confined to a specific set of paths. If the command fails, it will be escalated to the user to approve execution without a sandbox.",
"type": "string",
"enum": [
"on-failure"
]
},
{
"description": "The model decides when to ask the user for approval.",
"type": "string",
"enum": [
"on-request"
]
},
{
"description": "Never ask the user to approve commands. Failures are immediately returned to the model, and never escalated to the user for approval.",
"type": "string",
"enum": [
"never"
]
}
]
},
"AskForApproval2": {
"description": "Determines the conditions under which the user is consulted to approve running the command proposed by Codex.",
"oneOf": [
{
"description": "Under this policy, only \"known safe\" commands—as determined by `is_safe_command()`—that **only read files** are autoapproved. Everything else will ask the user to approve.",
"type": "string",
"enum": [
"untrusted"
]
},
{
"description": "*All* commands are autoapproved, but they are expected to run inside a sandbox where network access is disabled and writes are confined to a specific set of paths. If the command fails, it will be escalated to the user to approve execution without a sandbox.",
"type": "string",
"enum": [
"on-failure"
]
},
{
"description": "The model decides when to ask the user for approval.",
"type": "string",
"enum": [
"on-request"
]
},
{
"description": "Never ask the user to approve commands. Failures are immediately returned to the model, and never escalated to the user for approval.",
"type": "string",
"enum": [
"never"
]
}
]
},
"ByteRange": {
"type": "object",
"required": [
"end",
"start"
],
"properties": {
"end": {
"description": "End byte offset (exclusive) within the UTF-8 text buffer.",
"type": "integer",
"format": "uint",
"minimum": 0
},
"start": {
"description": "Start byte offset (inclusive) within the UTF-8 text buffer.",
"type": "integer",
"format": "uint",
"minimum": 0
}
}
},
"CancelLoginAccountParams": {
"type": "object",
"required": [
"loginId"
],
"properties": {
"loginId": {
"type": "string"
}
}
},
"CancelLoginChatGptParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CancelLoginChatGptParams",
"type": "object",
"required": [
"loginId"
],
"properties": {
"loginId": {
"type": "string"
}
}
},
"ClientInfo": {
"type": "object",
"required": [
"name",
"version"
],
"properties": {
"name": {
"type": "string"
},
"title": {
"type": [
"string",
"null"
]
},
"version": {
"type": "string"
}
}
},
"CollaborationMode": {
"description": "Collaboration mode for a Codex session.",
"oneOf": [
{
"description": "Settings for a collaboration mode.",
"type": "object",
"required": [
"mode",
"model"
],
"properties": {
"developer_instructions": {
"type": [
"string",
"null"
]
},
"mode": {
"type": "string",
"enum": [
"plan"
]
},
"model": {
"type": "string"
},
"reasoning_effort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
}
}
},
{
"description": "Settings for a collaboration mode.",
"type": "object",
"required": [
"mode",
"model"
],
"properties": {
"developer_instructions": {
"type": [
"string",
"null"
]
},
"mode": {
"type": "string",
"enum": [
"pairprogramming"
]
},
"model": {
"type": "string"
},
"reasoning_effort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
}
}
},
{
"description": "Settings for a collaboration mode.",
"type": "object",
"required": [
"mode",
"model"
],
"properties": {
"developer_instructions": {
"type": [
"string",
"null"
]
},
"mode": {
"type": "string",
"enum": [
"execute"
]
},
"model": {
"type": "string"
},
"reasoning_effort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
}
}
},
{
"description": "Settings for a collaboration mode.",
"type": "object",
"required": [
"mode",
"model"
],
"properties": {
"developer_instructions": {
"type": [
"string",
"null"
]
},
"mode": {
"type": "string",
"enum": [
"custom"
]
},
"model": {
"type": "string"
},
"reasoning_effort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
}
}
}
]
},
"CollaborationModeListParams": {
"description": "EXPERIMENTAL - list collaboration mode presets.",
"type": "object"
},
"CommandExecParams": {
"type": "object",
"required": [
"command"
],
"properties": {
"command": {
"type": "array",
"items": {
"type": "string"
}
},
"cwd": {
"type": [
"string",
"null"
]
},
"sandboxPolicy": {
"anyOf": [
{
"$ref": "#/definitions/SandboxPolicy"
},
{
"type": "null"
}
]
},
"timeoutMs": {
"type": [
"integer",
"null"
],
"format": "int64"
}
}
},
"ConfigBatchWriteParams": {
"type": "object",
"required": [
"edits"
],
"properties": {
"edits": {
"type": "array",
"items": {
"$ref": "#/definitions/ConfigEdit"
}
},
"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"
]
}
}
},
"ConfigEdit": {
"type": "object",
"required": [
"keyPath",
"mergeStrategy",
"value"
],
"properties": {
"keyPath": {
"type": "string"
},
"mergeStrategy": {
"$ref": "#/definitions/MergeStrategy"
},
"value": true
}
},
"ConfigReadParams": {
"type": "object",
"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"
}
}
},
"ConfigValueWriteParams": {
"type": "object",
"required": [
"keyPath",
"mergeStrategy",
"value"
],
"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/MergeStrategy"
},
"value": true
}
},
"ContentItem": {
"oneOf": [
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"input_text"
],
"title": "InputTextContentItemType"
}
},
"title": "InputTextContentItem"
},
{
"type": "object",
"required": [
"image_url",
"type"
],
"properties": {
"image_url": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"input_image"
],
"title": "InputImageContentItemType"
}
},
"title": "InputImageContentItem"
},
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"output_text"
],
"title": "OutputTextContentItemType"
}
},
"title": "OutputTextContentItem"
}
]
},
"ExecOneOffCommandParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExecOneOffCommandParams",
"type": "object",
"required": [
"command"
],
"properties": {
"command": {
"type": "array",
"items": {
"type": "string"
}
},
"cwd": {
"type": [
"string",
"null"
]
},
"sandboxPolicy": {
"anyOf": [
{
"$ref": "#/definitions/SandboxPolicy"
},
{
"type": "null"
}
]
},
"timeoutMs": {
"type": [
"integer",
"null"
],
"format": "uint64",
"minimum": 0
}
}
},
"FeedbackUploadParams": {
"type": "object",
"required": [
"classification",
"includeLogs"
],
"properties": {
"classification": {
"type": "string"
},
"includeLogs": {
"type": "boolean"
},
"reason": {
"type": [
"string",
"null"
]
},
"threadId": {
"type": [
"string",
"null"
]
}
}
},
"ForkConversationParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ForkConversationParams",
"type": "object",
"properties": {
"conversationId": {
"anyOf": [
{
"$ref": "#/definitions/ThreadId"
},
{
"type": "null"
}
]
},
"overrides": {
"anyOf": [
{
"$ref": "#/definitions/NewConversationParams"
},
{
"type": "null"
}
]
},
"path": {
"type": [
"string",
"null"
]
}
}
},
"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": [
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"input_text"
],
"title": "InputTextFunctionCallOutputContentItemType"
}
},
"title": "InputTextFunctionCallOutputContentItem"
},
{
"type": "object",
"required": [
"image_url",
"type"
],
"properties": {
"image_url": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"input_image"
],
"title": "InputImageFunctionCallOutputContentItemType"
}
},
"title": "InputImageFunctionCallOutputContentItem"
}
]
},
"FunctionCallOutputPayload": {
"description": "The payload we send back to OpenAI when reporting a tool call result.\n\n`content` preserves the historical plain-string payload so downstream integrations (tests, logging, etc.) can keep treating tool output as `String`. When an MCP server returns richer data we additionally populate `content_items` with the structured form that the Responses/Chat Completions APIs understand.",
"type": "object",
"required": [
"content"
],
"properties": {
"content": {
"type": "string"
},
"content_items": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/FunctionCallOutputContentItem"
}
},
"success": {
"type": [
"boolean",
"null"
]
}
}
},
"FuzzyFileSearchParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FuzzyFileSearchParams",
"type": "object",
"required": [
"query",
"roots"
],
"properties": {
"cancellationToken": {
"type": [
"string",
"null"
]
},
"query": {
"type": "string"
},
"roots": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"GetAccountParams": {
"type": "object",
"properties": {
"refreshToken": {
"default": false,
"type": "boolean"
}
}
},
"GetAuthStatusParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GetAuthStatusParams",
"type": "object",
"properties": {
"includeToken": {
"type": [
"boolean",
"null"
]
},
"refreshToken": {
"type": [
"boolean",
"null"
]
}
}
},
"GetConversationSummaryParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GetConversationSummaryParams",
"anyOf": [
{
"type": "object",
"required": [
"rolloutPath"
],
"properties": {
"rolloutPath": {
"type": "string"
}
},
"title": "RolloutPathv1::GetConversationSummaryParams"
},
{
"type": "object",
"required": [
"conversationId"
],
"properties": {
"conversationId": {
"$ref": "#/definitions/ThreadId"
}
},
"title": "ConversationIdv1::GetConversationSummaryParams"
}
]
},
"GhostCommit": {
"description": "Details of a ghost commit created from a repository state.",
"type": "object",
"required": [
"id",
"preexisting_untracked_dirs",
"preexisting_untracked_files"
],
"properties": {
"id": {
"type": "string"
},
"parent": {
"type": [
"string",
"null"
]
},
"preexisting_untracked_dirs": {
"type": "array",
"items": {
"type": "string"
}
},
"preexisting_untracked_files": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"GitDiffToRemoteParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GitDiffToRemoteParams",
"type": "object",
"required": [
"cwd"
],
"properties": {
"cwd": {
"type": "string"
}
}
},
"InitializeParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "InitializeParams",
"type": "object",
"required": [
"clientInfo"
],
"properties": {
"clientInfo": {
"$ref": "#/definitions/ClientInfo"
}
}
},
"InputItem": {
"oneOf": [
{
"type": "object",
"required": [
"data",
"type"
],
"properties": {
"data": {
"type": "object",
"required": [
"text"
],
"properties": {
"text": {
"type": "string"
},
"text_elements": {
"description": "UI-defined spans within `text` used to render or persist special elements.",
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/V1TextElement"
}
}
}
},
"type": {
"type": "string",
"enum": [
"text"
],
"title": "TextInputItemType"
}
},
"title": "TextInputItem"
},
{
"type": "object",
"required": [
"data",
"type"
],
"properties": {
"data": {
"type": "object",
"required": [
"image_url"
],
"properties": {
"image_url": {
"type": "string"
}
}
},
"type": {
"type": "string",
"enum": [
"image"
],
"title": "ImageInputItemType"
}
},
"title": "ImageInputItem"
},
{
"type": "object",
"required": [
"data",
"type"
],
"properties": {
"data": {
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"type": "string"
}
}
},
"type": {
"type": "string",
"enum": [
"localImage"
],
"title": "LocalImageInputItemType"
}
},
"title": "LocalImageInputItem"
}
]
},
"InterruptConversationParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "InterruptConversationParams",
"type": "object",
"required": [
"conversationId"
],
"properties": {
"conversationId": {
"$ref": "#/definitions/ThreadId"
}
}
},
"ListConversationsParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ListConversationsParams",
"type": "object",
"properties": {
"cursor": {
"type": [
"string",
"null"
]
},
"modelProviders": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"pageSize": {
"type": [
"integer",
"null"
],
"format": "uint",
"minimum": 0
}
}
},
"ListMcpServerStatusParams": {
"type": "object",
"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.",
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0
}
}
},
"LocalShellAction": {
"oneOf": [
{
"type": "object",
"required": [
"command",
"type"
],
"properties": {
"command": {
"type": "array",
"items": {
"type": "string"
}
},
"env": {
"type": [
"object",
"null"
],
"additionalProperties": {
"type": "string"
}
},
"timeout_ms": {
"type": [
"integer",
"null"
],
"format": "uint64",
"minimum": 0
},
"type": {
"type": "string",
"enum": [
"exec"
],
"title": "ExecLocalShellActionType"
},
"user": {
"type": [
"string",
"null"
]
},
"working_directory": {
"type": [
"string",
"null"
]
}
},
"title": "ExecLocalShellAction"
}
]
},
"LocalShellStatus": {
"type": "string",
"enum": [
"completed",
"in_progress",
"incomplete"
]
},
"LoginAccountParams": {
"oneOf": [
{
"type": "object",
"required": [
"apiKey",
"type"
],
"properties": {
"apiKey": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"apiKey"
],
"title": "ApiKeyLoginAccountParamsType"
}
},
"title": "ApiKeyLoginAccountParams"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"chatgpt"
],
"title": "ChatgptLoginAccountParamsType"
}
},
"title": "ChatgptLoginAccountParams"
}
]
},
"LoginApiKeyParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "LoginApiKeyParams",
"type": "object",
"required": [
"apiKey"
],
"properties": {
"apiKey": {
"type": "string"
}
}
},
"McpServerOauthLoginParams": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"scopes": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"timeoutSecs": {
"type": [
"integer",
"null"
],
"format": "int64"
}
}
},
"MergeStrategy": {
"type": "string",
"enum": [
"replace",
"upsert"
]
},
"ModelListParams": {
"type": "object",
"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.",
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0
}
}
},
"NetworkAccess": {
"description": "Represents whether outbound network access is available to the agent.",
"type": "string",
"enum": [
"restricted",
"enabled"
]
},
"NetworkAccess2": {
"description": "Represents whether outbound network access is available to the agent.",
"type": "string",
"enum": [
"restricted",
"enabled"
]
},
"NewConversationParams": {
"type": "object",
"properties": {
"approvalPolicy": {
"anyOf": [
{
"$ref": "#/definitions/AskForApproval"
},
{
"type": "null"
}
]
},
"baseInstructions": {
"type": [
"string",
"null"
]
},
"compactPrompt": {
"type": [
"string",
"null"
]
},
"config": {
"type": [
"object",
"null"
],
"additionalProperties": true
},
"cwd": {
"type": [
"string",
"null"
]
},
"developerInstructions": {
"type": [
"string",
"null"
]
},
"includeApplyPatchTool": {
"type": [
"boolean",
"null"
]
},
"model": {
"type": [
"string",
"null"
]
},
"modelProvider": {
"type": [
"string",
"null"
]
},
"profile": {
"type": [
"string",
"null"
]
},
"sandbox": {
"anyOf": [
{
"$ref": "#/definitions/SandboxMode"
},
{
"type": "null"
}
]
}
}
},
"ReasoningEffort": {
"description": "See https://platform.openai.com/docs/guides/reasoning?api-mode=responses#get-started-with-reasoning",
"type": "string",
"enum": [
"none",
"minimal",
"low",
"medium",
"high",
"xhigh"
]
},
"ReasoningItemContent": {
"oneOf": [
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"reasoning_text"
],
"title": "ReasoningTextReasoningItemContentType"
}
},
"title": "ReasoningTextReasoningItemContent"
},
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"text"
],
"title": "TextReasoningItemContentType"
}
},
"title": "TextReasoningItemContent"
}
]
},
"ReasoningItemReasoningSummary": {
"oneOf": [
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"summary_text"
],
"title": "SummaryTextReasoningItemReasoningSummaryType"
}
},
"title": "SummaryTextReasoningItemReasoningSummary"
}
]
},
"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": [
{
"type": "string",
"enum": [
"auto",
"concise",
"detailed"
]
},
{
"description": "Option to disable reasoning summaries.",
"type": "string",
"enum": [
"none"
]
}
]
},
"RemoveConversationListenerParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "RemoveConversationListenerParams",
"type": "object",
"required": [
"subscriptionId"
],
"properties": {
"subscriptionId": {
"type": "string"
}
}
},
"RequestId": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer",
"format": "int64"
}
]
},
"ResponseItem": {
"oneOf": [
{
"type": "object",
"required": [
"content",
"role",
"type"
],
"properties": {
"content": {
"type": "array",
"items": {
"$ref": "#/definitions/ContentItem"
}
},
"end_turn": {
"type": [
"boolean",
"null"
]
},
"id": {
"writeOnly": true,
"type": [
"string",
"null"
]
},
"role": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"message"
],
"title": "MessageResponseItemType"
}
},
"title": "MessageResponseItem"
},
{
"type": "object",
"required": [
"id",
"summary",
"type"
],
"properties": {
"content": {
"default": null,
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/ReasoningItemContent"
}
},
"encrypted_content": {
"type": [
"string",
"null"
]
},
"id": {
"writeOnly": true,
"type": "string"
},
"summary": {
"type": "array",
"items": {
"$ref": "#/definitions/ReasoningItemReasoningSummary"
}
},
"type": {
"type": "string",
"enum": [
"reasoning"
],
"title": "ReasoningResponseItemType"
}
},
"title": "ReasoningResponseItem"
},
{
"type": "object",
"required": [
"action",
"status",
"type"
],
"properties": {
"action": {
"$ref": "#/definitions/LocalShellAction"
},
"call_id": {
"description": "Set when using the Responses API.",
"type": [
"string",
"null"
]
},
"id": {
"description": "Set when using the chat completions API.",
"writeOnly": true,
"type": [
"string",
"null"
]
},
"status": {
"$ref": "#/definitions/LocalShellStatus"
},
"type": {
"type": "string",
"enum": [
"local_shell_call"
],
"title": "LocalShellCallResponseItemType"
}
},
"title": "LocalShellCallResponseItem"
},
{
"type": "object",
"required": [
"arguments",
"call_id",
"name",
"type"
],
"properties": {
"arguments": {
"type": "string"
},
"call_id": {
"type": "string"
},
"id": {
"writeOnly": true,
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"function_call"
],
"title": "FunctionCallResponseItemType"
}
},
"title": "FunctionCallResponseItem"
},
{
"type": "object",
"required": [
"call_id",
"output",
"type"
],
"properties": {
"call_id": {
"type": "string"
},
"output": {
"$ref": "#/definitions/FunctionCallOutputPayload"
},
"type": {
"type": "string",
"enum": [
"function_call_output"
],
"title": "FunctionCallOutputResponseItemType"
}
},
"title": "FunctionCallOutputResponseItem"
},
{
"type": "object",
"required": [
"call_id",
"input",
"name",
"type"
],
"properties": {
"call_id": {
"type": "string"
},
"id": {
"writeOnly": true,
"type": [
"string",
"null"
]
},
"input": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"custom_tool_call"
],
"title": "CustomToolCallResponseItemType"
}
},
"title": "CustomToolCallResponseItem"
},
{
"type": "object",
"required": [
"call_id",
"output",
"type"
],
"properties": {
"call_id": {
"type": "string"
},
"output": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"custom_tool_call_output"
],
"title": "CustomToolCallOutputResponseItemType"
}
},
"title": "CustomToolCallOutputResponseItem"
},
{
"type": "object",
"required": [
"action",
"type"
],
"properties": {
"action": {
"$ref": "#/definitions/WebSearchAction"
},
"id": {
"writeOnly": true,
"type": [
"string",
"null"
]
},
"status": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"web_search_call"
],
"title": "WebSearchCallResponseItemType"
}
},
"title": "WebSearchCallResponseItem"
},
{
"type": "object",
"required": [
"ghost_commit",
"type"
],
"properties": {
"ghost_commit": {
"$ref": "#/definitions/GhostCommit"
},
"type": {
"type": "string",
"enum": [
"ghost_snapshot"
],
"title": "GhostSnapshotResponseItemType"
}
},
"title": "GhostSnapshotResponseItem"
},
{
"type": "object",
"required": [
"encrypted_content",
"type"
],
"properties": {
"encrypted_content": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"compaction"
],
"title": "CompactionResponseItemType"
}
},
"title": "CompactionResponseItem"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"other"
],
"title": "OtherResponseItemType"
}
},
"title": "OtherResponseItem"
}
]
},
"ResumeConversationParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ResumeConversationParams",
"type": "object",
"properties": {
"conversationId": {
"anyOf": [
{
"$ref": "#/definitions/ThreadId"
},
{
"type": "null"
}
]
},
"history": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/ResponseItem"
}
},
"overrides": {
"anyOf": [
{
"$ref": "#/definitions/NewConversationParams"
},
{
"type": "null"
}
]
},
"path": {
"type": [
"string",
"null"
]
}
}
},
"ReviewDelivery": {
"type": "string",
"enum": [
"inline",
"detached"
]
},
"ReviewStartParams": {
"type": "object",
"required": [
"target",
"threadId"
],
"properties": {
"delivery": {
"description": "Where to run the review: inline (default) on the current thread or detached on a new thread (returned in `reviewThreadId`).",
"default": null,
"anyOf": [
{
"$ref": "#/definitions/ReviewDelivery"
},
{
"type": "null"
}
]
},
"target": {
"$ref": "#/definitions/ReviewTarget"
},
"threadId": {
"type": "string"
}
}
},
"ReviewTarget": {
"oneOf": [
{
"description": "Review the working tree: staged, unstaged, and untracked files.",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"uncommittedChanges"
],
"title": "UncommittedChangesReviewTargetType"
}
},
"title": "UncommittedChangesReviewTarget"
},
{
"description": "Review changes between the current branch and the given base branch.",
"type": "object",
"required": [
"branch",
"type"
],
"properties": {
"branch": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"baseBranch"
],
"title": "BaseBranchReviewTargetType"
}
},
"title": "BaseBranchReviewTarget"
},
{
"description": "Review the changes introduced by a specific commit.",
"type": "object",
"required": [
"sha",
"type"
],
"properties": {
"sha": {
"type": "string"
},
"title": {
"description": "Optional human-readable label (e.g., commit subject) for UIs.",
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"commit"
],
"title": "CommitReviewTargetType"
}
},
"title": "CommitReviewTarget"
},
{
"description": "Arbitrary instructions provided by the user.",
"type": "object",
"required": [
"instructions",
"type"
],
"properties": {
"instructions": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"custom"
],
"title": "CustomReviewTargetType"
}
},
"title": "CustomReviewTarget"
}
]
},
"SandboxMode": {
"type": "string",
"enum": [
"read-only",
"workspace-write",
"danger-full-access"
]
},
"SandboxMode2": {
"type": "string",
"enum": [
"read-only",
"workspace-write",
"danger-full-access"
]
},
"SandboxPolicy": {
"description": "Determines execution restrictions for model shell commands.",
"oneOf": [
{
"description": "No restrictions whatsoever. Use with caution.",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"danger-full-access"
],
"title": "DangerFullAccessSandboxPolicyType"
}
},
"title": "DangerFullAccessSandboxPolicy"
},
{
"description": "Read-only access to the entire file-system.",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"read-only"
],
"title": "ReadOnlySandboxPolicyType"
}
},
"title": "ReadOnlySandboxPolicy"
},
{
"description": "Indicates the process is already in an external sandbox. Allows full disk access while honoring the provided network setting.",
"type": "object",
"required": [
"type"
],
"properties": {
"network_access": {
"description": "Whether the external sandbox permits outbound network traffic.",
"default": "restricted",
"allOf": [
{
"$ref": "#/definitions/NetworkAccess"
}
]
},
"type": {
"type": "string",
"enum": [
"external-sandbox"
],
"title": "ExternalSandboxSandboxPolicyType"
}
},
"title": "ExternalSandboxSandboxPolicy"
},
{
"description": "Same as `ReadOnly` but additionally grants write access to the current working directory (\"workspace\").",
"type": "object",
"required": [
"type"
],
"properties": {
"exclude_slash_tmp": {
"description": "When set to `true`, will NOT include the `/tmp` among the default writable roots on UNIX. Defaults to `false`.",
"default": false,
"type": "boolean"
},
"exclude_tmpdir_env_var": {
"description": "When set to `true`, will NOT include the per-user `TMPDIR` environment variable among the default writable roots. Defaults to `false`.",
"default": false,
"type": "boolean"
},
"network_access": {
"description": "When set to `true`, outbound network access is allowed. `false` by default.",
"default": false,
"type": "boolean"
},
"type": {
"type": "string",
"enum": [
"workspace-write"
],
"title": "WorkspaceWriteSandboxPolicyType"
},
"writable_roots": {
"description": "Additional folders (beyond cwd and possibly TMPDIR) that should be writable from within the sandbox.",
"type": "array",
"items": {
"$ref": "#/definitions/AbsolutePathBuf"
}
}
},
"title": "WorkspaceWriteSandboxPolicy"
}
]
},
"SandboxPolicy2": {
"description": "Determines execution restrictions for model shell commands.",
"oneOf": [
{
"description": "No restrictions whatsoever. Use with caution.",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"danger-full-access"
],
"title": "DangerFullAccessSandboxPolicy2Type"
}
},
"title": "DangerFullAccessSandboxPolicy2"
},
{
"description": "Read-only access to the entire file-system.",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"read-only"
],
"title": "ReadOnlySandboxPolicy2Type"
}
},
"title": "ReadOnlySandboxPolicy2"
},
{
"description": "Indicates the process is already in an external sandbox. Allows full disk access while honoring the provided network setting.",
"type": "object",
"required": [
"type"
],
"properties": {
"network_access": {
"description": "Whether the external sandbox permits outbound network traffic.",
"default": "restricted",
"allOf": [
{
"$ref": "#/definitions/NetworkAccess2"
}
]
},
"type": {
"type": "string",
"enum": [
"external-sandbox"
],
"title": "ExternalSandboxSandboxPolicy2Type"
}
},
"title": "ExternalSandboxSandboxPolicy2"
},
{
"description": "Same as `ReadOnly` but additionally grants write access to the current working directory (\"workspace\").",
"type": "object",
"required": [
"type"
],
"properties": {
"exclude_slash_tmp": {
"description": "When set to `true`, will NOT include the `/tmp` among the default writable roots on UNIX. Defaults to `false`.",
"default": false,
"type": "boolean"
},
"exclude_tmpdir_env_var": {
"description": "When set to `true`, will NOT include the per-user `TMPDIR` environment variable among the default writable roots. Defaults to `false`.",
"default": false,
"type": "boolean"
},
"network_access": {
"description": "When set to `true`, outbound network access is allowed. `false` by default.",
"default": false,
"type": "boolean"
},
"type": {
"type": "string",
"enum": [
"workspace-write"
],
"title": "WorkspaceWriteSandboxPolicy2Type"
},
"writable_roots": {
"description": "Additional folders (beyond cwd and possibly TMPDIR) that should be writable from within the sandbox.",
"type": "array",
"items": {
"$ref": "#/definitions/AbsolutePathBuf"
}
}
},
"title": "WorkspaceWriteSandboxPolicy2"
}
]
},
"SendUserMessageParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SendUserMessageParams",
"type": "object",
"required": [
"conversationId",
"items"
],
"properties": {
"conversationId": {
"$ref": "#/definitions/ThreadId"
},
"items": {
"type": "array",
"items": {
"$ref": "#/definitions/InputItem"
}
}
}
},
"SendUserTurnParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SendUserTurnParams",
"type": "object",
"required": [
"approvalPolicy",
"conversationId",
"cwd",
"items",
"model",
"sandboxPolicy",
"summary"
],
"properties": {
"approvalPolicy": {
"$ref": "#/definitions/AskForApproval"
},
"conversationId": {
"$ref": "#/definitions/ThreadId"
},
"cwd": {
"type": "string"
},
"effort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
},
"items": {
"type": "array",
"items": {
"$ref": "#/definitions/InputItem"
}
},
"model": {
"type": "string"
},
"outputSchema": {
"description": "Optional JSON Schema used to constrain the final assistant message for this turn."
},
"sandboxPolicy": {
"$ref": "#/definitions/SandboxPolicy"
},
"summary": {
"$ref": "#/definitions/ReasoningSummary"
}
}
},
"SetDefaultModelParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SetDefaultModelParams",
"type": "object",
"properties": {
"model": {
"type": [
"string",
"null"
]
},
"reasoningEffort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
}
}
},
"SkillsConfigWriteParams": {
"type": "object",
"required": [
"enabled",
"path"
],
"properties": {
"enabled": {
"type": "boolean"
},
"path": {
"type": "string"
}
}
},
"SkillsListParams": {
"type": "object",
"properties": {
"cwds": {
"description": "When empty, defaults to the current session working directory.",
"type": "array",
"items": {
"type": "string"
}
},
"forceReload": {
"description": "When true, bypass the skills cache and re-scan skills from disk.",
"type": "boolean"
}
}
},
"TextElement": {
"type": "object",
"required": [
"byte_range"
],
"properties": {
"byte_range": {
"description": "Byte range in the parent `text` buffer that this element occupies.",
"allOf": [
{
"$ref": "#/definitions/ByteRange"
}
]
},
"placeholder": {
"description": "Optional human-readable placeholder for the element, displayed in the UI.",
"type": [
"string",
"null"
]
}
}
},
"ThreadArchiveParams": {
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"type": "string"
}
}
},
"ThreadForkParams": {
"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.",
"type": "object",
"required": [
"threadId"
],
"properties": {
"approvalPolicy": {
"anyOf": [
{
"$ref": "#/definitions/AskForApproval"
},
{
"type": "null"
}
]
},
"baseInstructions": {
"type": [
"string",
"null"
]
},
"config": {
"type": [
"object",
"null"
],
"additionalProperties": true
},
"cwd": {
"type": [
"string",
"null"
]
},
"developerInstructions": {
"type": [
"string",
"null"
]
},
"model": {
"description": "Configuration overrides for the forked thread, if any.",
"type": [
"string",
"null"
]
},
"modelProvider": {
"type": [
"string",
"null"
]
},
"path": {
"description": "[UNSTABLE] Specify the rollout path to fork from. If specified, the thread_id param will be ignored.",
"type": [
"string",
"null"
]
},
"sandbox": {
"anyOf": [
{
"$ref": "#/definitions/SandboxMode"
},
{
"type": "null"
}
]
},
"threadId": {
"type": "string"
}
}
},
"ThreadListParams": {
"type": "object",
"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"
]
},
"limit": {
"description": "Optional page size; defaults to a reasonable server-side value.",
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0
},
"modelProviders": {
"description": "Optional provider filter; when set, only sessions recorded under these providers are returned. When present but empty, includes all providers.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"sortKey": {
"description": "Optional sort key; defaults to created_at.",
"anyOf": [
{
"$ref": "#/definitions/ThreadSortKey"
},
{
"type": "null"
}
]
}
}
},
"ThreadLoadedListParams": {
"type": "object",
"properties": {
"cursor": {
"description": "Opaque pagination cursor returned by a previous call.",
"type": [
"string",
"null"
]
},
"limit": {
"description": "Optional page size; defaults to no limit.",
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0
}
}
},
"ThreadReadParams": {
"type": "object",
"required": [
"threadId"
],
"properties": {
"includeTurns": {
"description": "When true, include turns and their items from rollout history.",
"default": false,
"type": "boolean"
},
"threadId": {
"type": "string"
}
}
},
"ThreadResumeParams": {
"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.",
"type": "object",
"required": [
"threadId"
],
"properties": {
"approvalPolicy": {
"anyOf": [
{
"$ref": "#/definitions/AskForApproval"
},
{
"type": "null"
}
]
},
"baseInstructions": {
"type": [
"string",
"null"
]
},
"config": {
"type": [
"object",
"null"
],
"additionalProperties": true
},
"cwd": {
"type": [
"string",
"null"
]
},
"developerInstructions": {
"type": [
"string",
"null"
]
},
"history": {
"description": "[UNSTABLE] FOR CODEX CLOUD - DO NOT USE. If specified, the thread will be resumed with the provided history instead of loaded from disk.",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/ResponseItem"
}
},
"model": {
"description": "Configuration overrides for the resumed thread, if any.",
"type": [
"string",
"null"
]
},
"modelProvider": {
"type": [
"string",
"null"
]
},
"path": {
"description": "[UNSTABLE] Specify the rollout path to resume from. If specified, the thread_id param will be ignored.",
"type": [
"string",
"null"
]
},
"sandbox": {
"anyOf": [
{
"$ref": "#/definitions/SandboxMode"
},
{
"type": "null"
}
]
},
"threadId": {
"type": "string"
}
}
},
"ThreadRollbackParams": {
"type": "object",
"required": [
"numTurns",
"threadId"
],
"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.",
"type": "integer",
"format": "uint32",
"minimum": 0
},
"threadId": {
"type": "string"
}
}
},
"ThreadSortKey": {
"type": "string",
"enum": [
"created_at",
"updated_at"
]
},
"ThreadStartParams": {
"type": "object",
"properties": {
"approvalPolicy": {
"anyOf": [
{
"$ref": "#/definitions/AskForApproval"
},
{
"type": "null"
}
]
},
"baseInstructions": {
"type": [
"string",
"null"
]
},
"config": {
"type": [
"object",
"null"
],
"additionalProperties": true
},
"cwd": {
"type": [
"string",
"null"
]
},
"developerInstructions": {
"type": [
"string",
"null"
]
},
"experimentalRawEvents": {
"description": "If true, opt into emitting raw response items on the event stream.\n\nThis is for internal use only (e.g. Codex Cloud). (TODO): Figure out a better way to categorize internal / experimental events & protocols.",
"default": false,
"type": "boolean"
},
"model": {
"type": [
"string",
"null"
]
},
"modelProvider": {
"type": [
"string",
"null"
]
},
"sandbox": {
"anyOf": [
{
"$ref": "#/definitions/SandboxMode"
},
{
"type": "null"
}
]
}
}
},
"TurnInterruptParams": {
"type": "object",
"required": [
"threadId",
"turnId"
],
"properties": {
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"TurnStartParams": {
"type": "object",
"required": [
"input",
"threadId"
],
"properties": {
"approvalPolicy": {
"description": "Override the approval policy for this turn and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/AskForApproval"
},
{
"type": "null"
}
]
},
"collaborationMode": {
"description": "EXPERIMENTAL - set a pre-set collaboration mode. Takes precedence over model, reasoning_effort, and developer instructions if set.",
"anyOf": [
{
"$ref": "#/definitions/CollaborationMode"
},
{
"type": "null"
}
]
},
"cwd": {
"description": "Override the working directory for this turn and subsequent turns.",
"type": [
"string",
"null"
]
},
"effort": {
"description": "Override the reasoning effort for this turn and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
},
"input": {
"type": "array",
"items": {
"$ref": "#/definitions/UserInput"
}
},
"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."
},
"sandboxPolicy": {
"description": "Override the sandbox policy for this turn and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/SandboxPolicy"
},
{
"type": "null"
}
]
},
"summary": {
"description": "Override the reasoning summary for this turn and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/ReasoningSummary"
},
{
"type": "null"
}
]
},
"threadId": {
"type": "string"
}
}
},
"UserInput": {
"description": "User input",
"oneOf": [
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"text_elements": {
"description": "UI-defined spans within `text` that should be treated as special elements. These are byte ranges into the UTF-8 `text` buffer and are used to render or persist rich input markers (e.g., image placeholders) across history and resume without mutating the literal text.",
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/TextElement"
}
},
"type": {
"type": "string",
"enum": [
"text"
],
"title": "TextUserInputType"
}
},
"title": "TextUserInput"
},
{
"description": "Preencoded data: URI image.",
"type": "object",
"required": [
"image_url",
"type"
],
"properties": {
"image_url": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"image"
],
"title": "ImageUserInputType"
}
},
"title": "ImageUserInput"
},
{
"description": "Local image path provided by the user. This will be converted to an `Image` variant (base64 data URL) during request serialization.",
"type": "object",
"required": [
"path",
"type"
],
"properties": {
"path": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"local_image"
],
"title": "LocalImageUserInputType"
}
},
"title": "LocalImageUserInput"
},
{
"description": "Skill selected by the user (name + path to SKILL.md).",
"type": "object",
"required": [
"name",
"path",
"type"
],
"properties": {
"name": {
"type": "string"
},
"path": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"skill"
],
"title": "SkillUserInputType"
}
},
"title": "SkillUserInput"
}
]
},
"V1ByteRange": {
"type": "object",
"required": [
"end",
"start"
],
"properties": {
"end": {
"description": "End byte offset (exclusive) within the UTF-8 text buffer.",
"type": "integer",
"format": "uint",
"minimum": 0
},
"start": {
"description": "Start byte offset (inclusive) within the UTF-8 text buffer.",
"type": "integer",
"format": "uint",
"minimum": 0
}
}
},
"V1TextElement": {
"type": "object",
"required": [
"byteRange"
],
"properties": {
"byteRange": {
"description": "Byte range in the parent `text` buffer that this element occupies.",
"allOf": [
{
"$ref": "#/definitions/V1ByteRange"
}
]
},
"placeholder": {
"description": "Optional human-readable placeholder for the element, displayed in the UI.",
"type": [
"string",
"null"
]
}
}
},
"WebSearchAction": {
"oneOf": [
{
"type": "object",
"required": [
"type"
],
"properties": {
"query": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"search"
],
"title": "SearchWebSearchActionType"
}
},
"title": "SearchWebSearchAction"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"open_page"
],
"title": "OpenPageWebSearchActionType"
},
"url": {
"type": [
"string",
"null"
]
}
},
"title": "OpenPageWebSearchAction"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"pattern": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"find_in_page"
],
"title": "FindInPageWebSearchActionType"
},
"url": {
"type": [
"string",
"null"
]
}
},
"title": "FindInPageWebSearchAction"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"other"
],
"title": "OtherWebSearchActionType"
}
},
"title": "OtherWebSearchAction"
}
]
},
"CommandAction": {
"oneOf": [
{
"type": "object",
"required": [
"command",
"name",
"path",
"type"
],
"properties": {
"command": {
"type": "string"
},
"name": {
"type": "string"
},
"path": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"read"
],
"title": "ReadCommandActionType"
}
},
"title": "ReadCommandAction"
},
{
"type": "object",
"required": [
"command",
"type"
],
"properties": {
"command": {
"type": "string"
},
"path": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"listFiles"
],
"title": "ListFilesCommandActionType"
}
},
"title": "ListFilesCommandAction"
},
{
"type": "object",
"required": [
"command",
"type"
],
"properties": {
"command": {
"type": "string"
},
"path": {
"type": [
"string",
"null"
]
},
"query": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"search"
],
"title": "SearchCommandActionType"
}
},
"title": "SearchCommandAction"
},
{
"type": "object",
"required": [
"command",
"type"
],
"properties": {
"command": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"unknown"
],
"title": "UnknownCommandActionType"
}
},
"title": "UnknownCommandAction"
}
]
},
"CommandExecutionApprovalDecision": {
"oneOf": [
{
"description": "User approved the command.",
"type": "string",
"enum": [
"accept"
]
},
{
"description": "User approved the command and future identical commands should run without prompting.",
"type": "string",
"enum": [
"acceptForSession"
]
},
{
"description": "User approved the command, and wants to apply the proposed execpolicy amendment so future matching commands can run without prompting.",
"type": "object",
"required": [
"acceptWithExecpolicyAmendment"
],
"properties": {
"acceptWithExecpolicyAmendment": {
"type": "object",
"required": [
"execpolicy_amendment"
],
"properties": {
"execpolicy_amendment": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"additionalProperties": false,
"title": "AcceptWithExecpolicyAmendmentCommandExecutionApprovalDecision"
},
{
"description": "User denied the command. The agent will continue the turn.",
"type": "string",
"enum": [
"decline"
]
},
{
"description": "User denied the command. The turn will also be immediately interrupted.",
"type": "string",
"enum": [
"cancel"
]
}
]
},
"AgentMessageContent": {
"oneOf": [
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"Text"
],
"title": "TextAgentMessageContentType"
}
},
"title": "TextAgentMessageContent"
}
]
},
"AgentStatus": {
"description": "Agent lifecycle status, derived from emitted events.",
"oneOf": [
{
"description": "Agent is waiting for initialization.",
"type": "string",
"enum": [
"pending_init"
]
},
{
"description": "Agent is currently running.",
"type": "string",
"enum": [
"running"
]
},
{
"description": "Agent is done. Contains the final assistant message.",
"type": "object",
"required": [
"completed"
],
"properties": {
"completed": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": false,
"title": "CompletedAgentStatus"
},
{
"description": "Agent encountered an error.",
"type": "object",
"required": [
"errored"
],
"properties": {
"errored": {
"type": "string"
}
},
"additionalProperties": false,
"title": "ErroredAgentStatus"
},
{
"description": "Agent has been shutdown.",
"type": "string",
"enum": [
"shutdown"
]
},
{
"description": "Agent is not found.",
"type": "string",
"enum": [
"not_found"
]
}
]
},
"Annotations": {
"description": "Optional annotations for the client. The client can use annotations to inform how objects are used or displayed",
"type": "object",
"properties": {
"audience": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/Role"
}
},
"lastModified": {
"type": [
"string",
"null"
]
},
"priority": {
"type": [
"number",
"null"
],
"format": "double"
}
}
},
"AudioContent": {
"description": "Audio provided to or from an LLM.",
"type": "object",
"required": [
"data",
"mimeType",
"type"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/Annotations"
},
{
"type": "null"
}
]
},
"data": {
"type": "string"
},
"mimeType": {
"type": "string"
},
"type": {
"type": "string"
}
}
},
"BlobResourceContents": {
"type": "object",
"required": [
"blob",
"uri"
],
"properties": {
"blob": {
"type": "string"
},
"mimeType": {
"type": [
"string",
"null"
]
},
"uri": {
"type": "string"
}
}
},
"CallToolResult": {
"description": "The server's response to a tool call.",
"type": "object",
"required": [
"content"
],
"properties": {
"content": {
"type": "array",
"items": {
"$ref": "#/definitions/ContentBlock"
}
},
"isError": {
"type": [
"boolean",
"null"
]
},
"structuredContent": true
}
},
"CodexErrorInfo": {
"description": "Codex errors that we expose to clients.",
"oneOf": [
{
"type": "string",
"enum": [
"context_window_exceeded",
"usage_limit_exceeded",
"internal_server_error",
"unauthorized",
"bad_request",
"sandbox_error",
"thread_rollback_failed",
"other"
]
},
{
"type": "object",
"required": [
"http_connection_failed"
],
"properties": {
"http_connection_failed": {
"type": "object",
"properties": {
"http_status_code": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0
}
}
}
},
"additionalProperties": false,
"title": "HttpConnectionFailedCodexErrorInfo"
},
{
"description": "Failed to connect to the response SSE stream.",
"type": "object",
"required": [
"response_stream_connection_failed"
],
"properties": {
"response_stream_connection_failed": {
"type": "object",
"properties": {
"http_status_code": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0
}
}
}
},
"additionalProperties": false,
"title": "ResponseStreamConnectionFailedCodexErrorInfo"
},
{
"description": "The response SSE stream disconnected in the middle of a turnbefore completion.",
"type": "object",
"required": [
"response_stream_disconnected"
],
"properties": {
"response_stream_disconnected": {
"type": "object",
"properties": {
"http_status_code": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0
}
}
}
},
"additionalProperties": false,
"title": "ResponseStreamDisconnectedCodexErrorInfo"
},
{
"description": "Reached the retry limit for responses.",
"type": "object",
"required": [
"response_too_many_failed_attempts"
],
"properties": {
"response_too_many_failed_attempts": {
"type": "object",
"properties": {
"http_status_code": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0
}
}
}
},
"additionalProperties": false,
"title": "ResponseTooManyFailedAttemptsCodexErrorInfo"
}
]
},
"ContentBlock": {
"anyOf": [
{
"$ref": "#/definitions/TextContent"
},
{
"$ref": "#/definitions/ImageContent"
},
{
"$ref": "#/definitions/AudioContent"
},
{
"$ref": "#/definitions/ResourceLink"
},
{
"$ref": "#/definitions/EmbeddedResource"
}
]
},
"CreditsSnapshot": {
"type": "object",
"required": [
"has_credits",
"unlimited"
],
"properties": {
"balance": {
"type": [
"string",
"null"
]
},
"has_credits": {
"type": "boolean"
},
"unlimited": {
"type": "boolean"
}
}
},
"CustomPrompt": {
"type": "object",
"required": [
"content",
"name",
"path"
],
"properties": {
"argument_hint": {
"type": [
"string",
"null"
]
},
"content": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"path": {
"type": "string"
}
}
},
"Duration": {
"type": "object",
"required": [
"nanos",
"secs"
],
"properties": {
"nanos": {
"type": "integer",
"format": "uint32",
"minimum": 0
},
"secs": {
"type": "integer",
"format": "uint64",
"minimum": 0
}
}
},
"EmbeddedResource": {
"description": "The contents of a resource, embedded into a prompt or tool call result.\n\nIt is up to the client how best to render embedded resources for the benefit of the LLM and/or the user.",
"type": "object",
"required": [
"resource",
"type"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/Annotations"
},
{
"type": "null"
}
]
},
"resource": {
"$ref": "#/definitions/EmbeddedResourceResource"
},
"type": {
"type": "string"
}
}
},
"EmbeddedResourceResource": {
"anyOf": [
{
"$ref": "#/definitions/TextResourceContents"
},
{
"$ref": "#/definitions/BlobResourceContents"
}
]
},
"EventMsg": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "EventMsg",
"description": "Response event from the agent NOTE: Make sure none of these values have optional types, as it will mess up the extension code-gen.",
"oneOf": [
{
"description": "Error while executing a submission",
"type": "object",
"required": [
"message",
"type"
],
"properties": {
"codex_error_info": {
"default": null,
"anyOf": [
{
"$ref": "#/definitions/CodexErrorInfo"
},
{
"type": "null"
}
]
},
"message": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"error"
],
"title": "ErrorEventMsgType"
}
},
"title": "ErrorEventMsg"
},
{
"description": "Warning issued while processing a submission. Unlike `Error`, this indicates the turn continued but the user should still be notified.",
"type": "object",
"required": [
"message",
"type"
],
"properties": {
"message": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"warning"
],
"title": "WarningEventMsgType"
}
},
"title": "WarningEventMsg"
},
{
"description": "Conversation history was compacted (either automatically or manually).",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"context_compacted"
],
"title": "ContextCompactedEventMsgType"
}
},
"title": "ContextCompactedEventMsg"
},
{
"description": "Conversation history was rolled back by dropping the last N user turns.",
"type": "object",
"required": [
"num_turns",
"type"
],
"properties": {
"num_turns": {
"description": "Number of user turns that were removed from context.",
"type": "integer",
"format": "uint32",
"minimum": 0
},
"type": {
"type": "string",
"enum": [
"thread_rolled_back"
],
"title": "ThreadRolledBackEventMsgType"
}
},
"title": "ThreadRolledBackEventMsg"
},
{
"description": "Agent has started a turn. v1 wire format uses `task_started`; accept `turn_started` for v2 interop.",
"type": "object",
"required": [
"type"
],
"properties": {
"model_context_window": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"type": {
"type": "string",
"enum": [
"task_started"
],
"title": "TaskStartedEventMsgType"
}
},
"title": "TaskStartedEventMsg"
},
{
"description": "Agent has completed all actions. v1 wire format uses `task_complete`; accept `turn_complete` for v2 interop.",
"type": "object",
"required": [
"type"
],
"properties": {
"last_agent_message": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"task_complete"
],
"title": "TaskCompleteEventMsgType"
}
},
"title": "TaskCompleteEventMsg"
},
{
"description": "Usage update for the current session, including totals and last turn. Optional means unknown — UIs should not display when `None`.",
"type": "object",
"required": [
"type"
],
"properties": {
"info": {
"anyOf": [
{
"$ref": "#/definitions/TokenUsageInfo"
},
{
"type": "null"
}
]
},
"rate_limits": {
"anyOf": [
{
"$ref": "#/definitions/RateLimitSnapshot"
},
{
"type": "null"
}
]
},
"type": {
"type": "string",
"enum": [
"token_count"
],
"title": "TokenCountEventMsgType"
}
},
"title": "TokenCountEventMsg"
},
{
"description": "Agent text output message",
"type": "object",
"required": [
"message",
"type"
],
"properties": {
"message": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"agent_message"
],
"title": "AgentMessageEventMsgType"
}
},
"title": "AgentMessageEventMsg"
},
{
"description": "User/system input message (what was sent to the model)",
"type": "object",
"required": [
"message",
"type"
],
"properties": {
"images": {
"description": "Image URLs sourced from `UserInput::Image`. These are safe to replay in legacy UI history events and correspond to images sent to the model.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"local_images": {
"description": "Local file paths sourced from `UserInput::LocalImage`. These are kept so the UI can reattach images when editing history, and should not be sent to the model or treated as API-ready URLs.",
"default": [],
"type": "array",
"items": {
"type": "string"
}
},
"message": {
"type": "string"
},
"text_elements": {
"description": "UI-defined spans within `message` used to render or persist special elements.",
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/TextElement"
}
},
"type": {
"type": "string",
"enum": [
"user_message"
],
"title": "UserMessageEventMsgType"
}
},
"title": "UserMessageEventMsg"
},
{
"description": "Agent text output delta message",
"type": "object",
"required": [
"delta",
"type"
],
"properties": {
"delta": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"agent_message_delta"
],
"title": "AgentMessageDeltaEventMsgType"
}
},
"title": "AgentMessageDeltaEventMsg"
},
{
"description": "Reasoning event from agent.",
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"agent_reasoning"
],
"title": "AgentReasoningEventMsgType"
}
},
"title": "AgentReasoningEventMsg"
},
{
"description": "Agent reasoning delta event from agent.",
"type": "object",
"required": [
"delta",
"type"
],
"properties": {
"delta": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"agent_reasoning_delta"
],
"title": "AgentReasoningDeltaEventMsgType"
}
},
"title": "AgentReasoningDeltaEventMsg"
},
{
"description": "Raw chain-of-thought from agent.",
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"agent_reasoning_raw_content"
],
"title": "AgentReasoningRawContentEventMsgType"
}
},
"title": "AgentReasoningRawContentEventMsg"
},
{
"description": "Agent reasoning content delta event from agent.",
"type": "object",
"required": [
"delta",
"type"
],
"properties": {
"delta": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"agent_reasoning_raw_content_delta"
],
"title": "AgentReasoningRawContentDeltaEventMsgType"
}
},
"title": "AgentReasoningRawContentDeltaEventMsg"
},
{
"description": "Signaled when the model begins a new reasoning summary section (e.g., a new titled block).",
"type": "object",
"required": [
"type"
],
"properties": {
"item_id": {
"default": "",
"type": "string"
},
"summary_index": {
"default": 0,
"type": "integer",
"format": "int64"
},
"type": {
"type": "string",
"enum": [
"agent_reasoning_section_break"
],
"title": "AgentReasoningSectionBreakEventMsgType"
}
},
"title": "AgentReasoningSectionBreakEventMsg"
},
{
"description": "Ack the client's configure message.",
"type": "object",
"required": [
"approval_policy",
"cwd",
"history_entry_count",
"history_log_id",
"model",
"model_provider_id",
"rollout_path",
"sandbox_policy",
"session_id",
"type"
],
"properties": {
"approval_policy": {
"description": "When to escalate for approval for execution",
"allOf": [
{
"$ref": "#/definitions/AskForApproval"
}
]
},
"cwd": {
"description": "Working directory that should be treated as the *root* of the session.",
"type": "string"
},
"forked_from_id": {
"anyOf": [
{
"$ref": "#/definitions/ThreadId"
},
{
"type": "null"
}
]
},
"history_entry_count": {
"description": "Current number of entries in the history log.",
"type": "integer",
"format": "uint",
"minimum": 0
},
"history_log_id": {
"description": "Identifier of the history log file (inode on Unix, 0 otherwise).",
"type": "integer",
"format": "uint64",
"minimum": 0
},
"initial_messages": {
"description": "Optional initial messages (as events) for resumed sessions. When present, UIs can use these to seed the history.",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/EventMsg"
}
},
"model": {
"description": "Tell the client what model is being queried.",
"type": "string"
},
"model_provider_id": {
"type": "string"
},
"reasoning_effort": {
"description": "The effort the model is putting into reasoning about the user's request.",
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
},
"rollout_path": {
"type": "string"
},
"sandbox_policy": {
"description": "How to sandbox commands executed in the system",
"allOf": [
{
"$ref": "#/definitions/SandboxPolicy"
}
]
},
"session_id": {
"description": "Name left as session_id instead of thread_id for backwards compatibility.",
"allOf": [
{
"$ref": "#/definitions/ThreadId"
}
]
},
"type": {
"type": "string",
"enum": [
"session_configured"
],
"title": "SessionConfiguredEventMsgType"
}
},
"title": "SessionConfiguredEventMsg"
},
{
"description": "Incremental MCP startup progress updates.",
"type": "object",
"required": [
"server",
"status",
"type"
],
"properties": {
"server": {
"description": "Server name being started.",
"type": "string"
},
"status": {
"description": "Current startup status.",
"allOf": [
{
"$ref": "#/definitions/McpStartupStatus"
}
]
},
"type": {
"type": "string",
"enum": [
"mcp_startup_update"
],
"title": "McpStartupUpdateEventMsgType"
}
},
"title": "McpStartupUpdateEventMsg"
},
{
"description": "Aggregate MCP startup completion summary.",
"type": "object",
"required": [
"cancelled",
"failed",
"ready",
"type"
],
"properties": {
"cancelled": {
"type": "array",
"items": {
"type": "string"
}
},
"failed": {
"type": "array",
"items": {
"$ref": "#/definitions/McpStartupFailure"
}
},
"ready": {
"type": "array",
"items": {
"type": "string"
}
},
"type": {
"type": "string",
"enum": [
"mcp_startup_complete"
],
"title": "McpStartupCompleteEventMsgType"
}
},
"title": "McpStartupCompleteEventMsg"
},
{
"type": "object",
"required": [
"call_id",
"invocation",
"type"
],
"properties": {
"call_id": {
"description": "Identifier so this can be paired with the McpToolCallEnd event.",
"type": "string"
},
"invocation": {
"$ref": "#/definitions/McpInvocation"
},
"type": {
"type": "string",
"enum": [
"mcp_tool_call_begin"
],
"title": "McpToolCallBeginEventMsgType"
}
},
"title": "McpToolCallBeginEventMsg"
},
{
"type": "object",
"required": [
"call_id",
"duration",
"invocation",
"result",
"type"
],
"properties": {
"call_id": {
"description": "Identifier for the corresponding McpToolCallBegin that finished.",
"type": "string"
},
"duration": {
"$ref": "#/definitions/Duration"
},
"invocation": {
"$ref": "#/definitions/McpInvocation"
},
"result": {
"description": "Result of the tool call. Note this could be an error.",
"allOf": [
{
"$ref": "#/definitions/Result_of_CallToolResult_or_String"
}
]
},
"type": {
"type": "string",
"enum": [
"mcp_tool_call_end"
],
"title": "McpToolCallEndEventMsgType"
}
},
"title": "McpToolCallEndEventMsg"
},
{
"type": "object",
"required": [
"call_id",
"type"
],
"properties": {
"call_id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"web_search_begin"
],
"title": "WebSearchBeginEventMsgType"
}
},
"title": "WebSearchBeginEventMsg"
},
{
"type": "object",
"required": [
"call_id",
"query",
"type"
],
"properties": {
"call_id": {
"type": "string"
},
"query": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"web_search_end"
],
"title": "WebSearchEndEventMsgType"
}
},
"title": "WebSearchEndEventMsg"
},
{
"description": "Notification that the server is about to execute a command.",
"type": "object",
"required": [
"call_id",
"command",
"cwd",
"parsed_cmd",
"turn_id",
"type"
],
"properties": {
"call_id": {
"description": "Identifier so this can be paired with the ExecCommandEnd event.",
"type": "string"
},
"command": {
"description": "The command to be executed.",
"type": "array",
"items": {
"type": "string"
}
},
"cwd": {
"description": "The command's working directory if not the default cwd for the agent.",
"type": "string"
},
"interaction_input": {
"description": "Raw input sent to a unified exec session (if this is an interaction event).",
"type": [
"string",
"null"
]
},
"parsed_cmd": {
"type": "array",
"items": {
"$ref": "#/definitions/ParsedCommand"
}
},
"process_id": {
"description": "Identifier for the underlying PTY process (when available).",
"type": [
"string",
"null"
]
},
"source": {
"description": "Where the command originated. Defaults to Agent for backward compatibility.",
"default": "agent",
"allOf": [
{
"$ref": "#/definitions/ExecCommandSource"
}
]
},
"turn_id": {
"description": "Turn ID that this command belongs to.",
"type": "string"
},
"type": {
"type": "string",
"enum": [
"exec_command_begin"
],
"title": "ExecCommandBeginEventMsgType"
}
},
"title": "ExecCommandBeginEventMsg"
},
{
"description": "Incremental chunk of output from a running command.",
"type": "object",
"required": [
"call_id",
"chunk",
"stream",
"type"
],
"properties": {
"call_id": {
"description": "Identifier for the ExecCommandBegin that produced this chunk.",
"type": "string"
},
"chunk": {
"description": "Raw bytes from the stream (may not be valid UTF-8).",
"type": "string"
},
"stream": {
"description": "Which stream produced this chunk.",
"allOf": [
{
"$ref": "#/definitions/ExecOutputStream"
}
]
},
"type": {
"type": "string",
"enum": [
"exec_command_output_delta"
],
"title": "ExecCommandOutputDeltaEventMsgType"
}
},
"title": "ExecCommandOutputDeltaEventMsg"
},
{
"description": "Terminal interaction for an in-progress command (stdin sent and stdout observed).",
"type": "object",
"required": [
"call_id",
"process_id",
"stdin",
"type"
],
"properties": {
"call_id": {
"description": "Identifier for the ExecCommandBegin that produced this chunk.",
"type": "string"
},
"process_id": {
"description": "Process id associated with the running command.",
"type": "string"
},
"stdin": {
"description": "Stdin sent to the running session.",
"type": "string"
},
"type": {
"type": "string",
"enum": [
"terminal_interaction"
],
"title": "TerminalInteractionEventMsgType"
}
},
"title": "TerminalInteractionEventMsg"
},
{
"type": "object",
"required": [
"call_id",
"command",
"cwd",
"duration",
"exit_code",
"formatted_output",
"parsed_cmd",
"stderr",
"stdout",
"turn_id",
"type"
],
"properties": {
"aggregated_output": {
"description": "Captured aggregated output",
"default": "",
"type": "string"
},
"call_id": {
"description": "Identifier for the ExecCommandBegin that finished.",
"type": "string"
},
"command": {
"description": "The command that was executed.",
"type": "array",
"items": {
"type": "string"
}
},
"cwd": {
"description": "The command's working directory if not the default cwd for the agent.",
"type": "string"
},
"duration": {
"description": "The duration of the command execution.",
"allOf": [
{
"$ref": "#/definitions/Duration"
}
]
},
"exit_code": {
"description": "The command's exit code.",
"type": "integer",
"format": "int32"
},
"formatted_output": {
"description": "Formatted output from the command, as seen by the model.",
"type": "string"
},
"interaction_input": {
"description": "Raw input sent to a unified exec session (if this is an interaction event).",
"type": [
"string",
"null"
]
},
"parsed_cmd": {
"type": "array",
"items": {
"$ref": "#/definitions/ParsedCommand"
}
},
"process_id": {
"description": "Identifier for the underlying PTY process (when available).",
"type": [
"string",
"null"
]
},
"source": {
"description": "Where the command originated. Defaults to Agent for backward compatibility.",
"default": "agent",
"allOf": [
{
"$ref": "#/definitions/ExecCommandSource"
}
]
},
"stderr": {
"description": "Captured stderr",
"type": "string"
},
"stdout": {
"description": "Captured stdout",
"type": "string"
},
"turn_id": {
"description": "Turn ID that this command belongs to.",
"type": "string"
},
"type": {
"type": "string",
"enum": [
"exec_command_end"
],
"title": "ExecCommandEndEventMsgType"
}
},
"title": "ExecCommandEndEventMsg"
},
{
"description": "Notification that the agent attached a local image via the view_image tool.",
"type": "object",
"required": [
"call_id",
"path",
"type"
],
"properties": {
"call_id": {
"description": "Identifier for the originating tool call.",
"type": "string"
},
"path": {
"description": "Local filesystem path provided to the tool.",
"type": "string"
},
"type": {
"type": "string",
"enum": [
"view_image_tool_call"
],
"title": "ViewImageToolCallEventMsgType"
}
},
"title": "ViewImageToolCallEventMsg"
},
{
"type": "object",
"required": [
"call_id",
"command",
"cwd",
"parsed_cmd",
"type"
],
"properties": {
"call_id": {
"description": "Identifier for the associated exec call, if available.",
"type": "string"
},
"command": {
"description": "The command to be executed.",
"type": "array",
"items": {
"type": "string"
}
},
"cwd": {
"description": "The command's working directory.",
"type": "string"
},
"parsed_cmd": {
"type": "array",
"items": {
"$ref": "#/definitions/ParsedCommand"
}
},
"proposed_execpolicy_amendment": {
"description": "Proposed execpolicy amendment that can be applied to allow future runs.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"reason": {
"description": "Optional human-readable reason for the approval (e.g. retry without sandbox).",
"type": [
"string",
"null"
]
},
"turn_id": {
"description": "Turn ID that this command belongs to. Uses `#[serde(default)]` for backwards compatibility.",
"default": "",
"type": "string"
},
"type": {
"type": "string",
"enum": [
"exec_approval_request"
],
"title": "ExecApprovalRequestEventMsgType"
}
},
"title": "ExecApprovalRequestEventMsg"
},
{
"type": "object",
"required": [
"call_id",
"questions",
"type"
],
"properties": {
"call_id": {
"description": "Responses API call id for the associated tool call, if available.",
"type": "string"
},
"questions": {
"type": "array",
"items": {
"$ref": "#/definitions/RequestUserInputQuestion"
}
},
"turn_id": {
"description": "Turn ID that this request belongs to. Uses `#[serde(default)]` for backwards compatibility.",
"default": "",
"type": "string"
},
"type": {
"type": "string",
"enum": [
"request_user_input"
],
"title": "RequestUserInputEventMsgType"
}
},
"title": "RequestUserInputEventMsg"
},
{
"type": "object",
"required": [
"id",
"message",
"server_name",
"type"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"message": {
"type": "string"
},
"server_name": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"elicitation_request"
],
"title": "ElicitationRequestEventMsgType"
}
},
"title": "ElicitationRequestEventMsg"
},
{
"type": "object",
"required": [
"call_id",
"changes",
"type"
],
"properties": {
"call_id": {
"description": "Responses API call id for the associated patch apply call, if available.",
"type": "string"
},
"changes": {
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/FileChange"
}
},
"grant_root": {
"description": "When set, the agent is asking the user to allow writes under this root for the remainder of the session.",
"type": [
"string",
"null"
]
},
"reason": {
"description": "Optional explanatory reason (e.g. request for extra write access).",
"type": [
"string",
"null"
]
},
"turn_id": {
"description": "Turn ID that this patch belongs to. Uses `#[serde(default)]` for backwards compatibility with older senders.",
"default": "",
"type": "string"
},
"type": {
"type": "string",
"enum": [
"apply_patch_approval_request"
],
"title": "ApplyPatchApprovalRequestEventMsgType"
}
},
"title": "ApplyPatchApprovalRequestEventMsg"
},
{
"description": "Notification advising the user that something they are using has been deprecated and should be phased out.",
"type": "object",
"required": [
"summary",
"type"
],
"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"
},
"type": {
"type": "string",
"enum": [
"deprecation_notice"
],
"title": "DeprecationNoticeEventMsgType"
}
},
"title": "DeprecationNoticeEventMsg"
},
{
"type": "object",
"required": [
"message",
"type"
],
"properties": {
"message": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"background_event"
],
"title": "BackgroundEventEventMsgType"
}
},
"title": "BackgroundEventEventMsg"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"message": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"undo_started"
],
"title": "UndoStartedEventMsgType"
}
},
"title": "UndoStartedEventMsg"
},
{
"type": "object",
"required": [
"success",
"type"
],
"properties": {
"message": {
"type": [
"string",
"null"
]
},
"success": {
"type": "boolean"
},
"type": {
"type": "string",
"enum": [
"undo_completed"
],
"title": "UndoCompletedEventMsgType"
}
},
"title": "UndoCompletedEventMsg"
},
{
"description": "Notification that a model stream experienced an error or disconnect and the system is handling it (e.g., retrying with backoff).",
"type": "object",
"required": [
"message",
"type"
],
"properties": {
"additional_details": {
"description": "Optional details about the underlying stream failure (often the same human-readable message that is surfaced as the terminal error if retries are exhausted).",
"default": null,
"type": [
"string",
"null"
]
},
"codex_error_info": {
"default": null,
"anyOf": [
{
"$ref": "#/definitions/CodexErrorInfo"
},
{
"type": "null"
}
]
},
"message": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"stream_error"
],
"title": "StreamErrorEventMsgType"
}
},
"title": "StreamErrorEventMsg"
},
{
"description": "Notification that the agent is about to apply a code patch. Mirrors `ExecCommandBegin` so frontends can show progress indicators.",
"type": "object",
"required": [
"auto_approved",
"call_id",
"changes",
"type"
],
"properties": {
"auto_approved": {
"description": "If true, there was no ApplyPatchApprovalRequest for this patch.",
"type": "boolean"
},
"call_id": {
"description": "Identifier so this can be paired with the PatchApplyEnd event.",
"type": "string"
},
"changes": {
"description": "The changes to be applied.",
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/FileChange"
}
},
"turn_id": {
"description": "Turn ID that this patch belongs to. Uses `#[serde(default)]` for backwards compatibility.",
"default": "",
"type": "string"
},
"type": {
"type": "string",
"enum": [
"patch_apply_begin"
],
"title": "PatchApplyBeginEventMsgType"
}
},
"title": "PatchApplyBeginEventMsg"
},
{
"description": "Notification that a patch application has finished.",
"type": "object",
"required": [
"call_id",
"stderr",
"stdout",
"success",
"type"
],
"properties": {
"call_id": {
"description": "Identifier for the PatchApplyBegin that finished.",
"type": "string"
},
"changes": {
"description": "The changes that were applied (mirrors PatchApplyBeginEvent::changes).",
"default": {},
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/FileChange"
}
},
"stderr": {
"description": "Captured stderr (parser errors, IO failures, etc.).",
"type": "string"
},
"stdout": {
"description": "Captured stdout (summary printed by apply_patch).",
"type": "string"
},
"success": {
"description": "Whether the patch was applied successfully.",
"type": "boolean"
},
"turn_id": {
"description": "Turn ID that this patch belongs to. Uses `#[serde(default)]` for backwards compatibility.",
"default": "",
"type": "string"
},
"type": {
"type": "string",
"enum": [
"patch_apply_end"
],
"title": "PatchApplyEndEventMsgType"
}
},
"title": "PatchApplyEndEventMsg"
},
{
"type": "object",
"required": [
"type",
"unified_diff"
],
"properties": {
"type": {
"type": "string",
"enum": [
"turn_diff"
],
"title": "TurnDiffEventMsgType"
},
"unified_diff": {
"type": "string"
}
},
"title": "TurnDiffEventMsg"
},
{
"description": "Response to GetHistoryEntryRequest.",
"type": "object",
"required": [
"log_id",
"offset",
"type"
],
"properties": {
"entry": {
"description": "The entry at the requested offset, if available and parseable.",
"anyOf": [
{
"$ref": "#/definitions/HistoryEntry"
},
{
"type": "null"
}
]
},
"log_id": {
"type": "integer",
"format": "uint64",
"minimum": 0
},
"offset": {
"type": "integer",
"format": "uint",
"minimum": 0
},
"type": {
"type": "string",
"enum": [
"get_history_entry_response"
],
"title": "GetHistoryEntryResponseEventMsgType"
}
},
"title": "GetHistoryEntryResponseEventMsg"
},
{
"description": "List of MCP tools available to the agent.",
"type": "object",
"required": [
"auth_statuses",
"resource_templates",
"resources",
"tools",
"type"
],
"properties": {
"auth_statuses": {
"description": "Authentication status for each configured MCP server.",
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/McpAuthStatus"
}
},
"resource_templates": {
"description": "Known resource templates grouped by server name.",
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"$ref": "#/definitions/ResourceTemplate"
}
}
},
"resources": {
"description": "Known resources grouped by server name.",
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"$ref": "#/definitions/Resource"
}
}
},
"tools": {
"description": "Fully qualified tool name -> tool definition.",
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/Tool"
}
},
"type": {
"type": "string",
"enum": [
"mcp_list_tools_response"
],
"title": "McpListToolsResponseEventMsgType"
}
},
"title": "McpListToolsResponseEventMsg"
},
{
"description": "List of custom prompts available to the agent.",
"type": "object",
"required": [
"custom_prompts",
"type"
],
"properties": {
"custom_prompts": {
"type": "array",
"items": {
"$ref": "#/definitions/CustomPrompt"
}
},
"type": {
"type": "string",
"enum": [
"list_custom_prompts_response"
],
"title": "ListCustomPromptsResponseEventMsgType"
}
},
"title": "ListCustomPromptsResponseEventMsg"
},
{
"description": "List of skills available to the agent.",
"type": "object",
"required": [
"skills",
"type"
],
"properties": {
"skills": {
"type": "array",
"items": {
"$ref": "#/definitions/SkillsListEntry"
}
},
"type": {
"type": "string",
"enum": [
"list_skills_response"
],
"title": "ListSkillsResponseEventMsgType"
}
},
"title": "ListSkillsResponseEventMsg"
},
{
"description": "Notification that skill data may have been updated and clients may want to reload.",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"skills_update_available"
],
"title": "SkillsUpdateAvailableEventMsgType"
}
},
"title": "SkillsUpdateAvailableEventMsg"
},
{
"type": "object",
"required": [
"plan",
"type"
],
"properties": {
"explanation": {
"default": null,
"type": [
"string",
"null"
]
},
"plan": {
"type": "array",
"items": {
"$ref": "#/definitions/PlanItemArg"
}
},
"type": {
"type": "string",
"enum": [
"plan_update"
],
"title": "PlanUpdateEventMsgType"
}
},
"title": "PlanUpdateEventMsg"
},
{
"type": "object",
"required": [
"reason",
"type"
],
"properties": {
"reason": {
"$ref": "#/definitions/TurnAbortReason"
},
"type": {
"type": "string",
"enum": [
"turn_aborted"
],
"title": "TurnAbortedEventMsgType"
}
},
"title": "TurnAbortedEventMsg"
},
{
"description": "Notification that the agent is shutting down.",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"shutdown_complete"
],
"title": "ShutdownCompleteEventMsgType"
}
},
"title": "ShutdownCompleteEventMsg"
},
{
"description": "Entered review mode.",
"type": "object",
"required": [
"target",
"type"
],
"properties": {
"target": {
"$ref": "#/definitions/ReviewTarget"
},
"type": {
"type": "string",
"enum": [
"entered_review_mode"
],
"title": "EnteredReviewModeEventMsgType"
},
"user_facing_hint": {
"type": [
"string",
"null"
]
}
},
"title": "EnteredReviewModeEventMsg"
},
{
"description": "Exited review mode with an optional final result to apply.",
"type": "object",
"required": [
"type"
],
"properties": {
"review_output": {
"anyOf": [
{
"$ref": "#/definitions/ReviewOutputEvent"
},
{
"type": "null"
}
]
},
"type": {
"type": "string",
"enum": [
"exited_review_mode"
],
"title": "ExitedReviewModeEventMsgType"
}
},
"title": "ExitedReviewModeEventMsg"
},
{
"type": "object",
"required": [
"item",
"type"
],
"properties": {
"item": {
"$ref": "#/definitions/ResponseItem"
},
"type": {
"type": "string",
"enum": [
"raw_response_item"
],
"title": "RawResponseItemEventMsgType"
}
},
"title": "RawResponseItemEventMsg"
},
{
"type": "object",
"required": [
"item",
"thread_id",
"turn_id",
"type"
],
"properties": {
"item": {
"$ref": "#/definitions/TurnItem"
},
"thread_id": {
"$ref": "#/definitions/ThreadId"
},
"turn_id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"item_started"
],
"title": "ItemStartedEventMsgType"
}
},
"title": "ItemStartedEventMsg"
},
{
"type": "object",
"required": [
"item",
"thread_id",
"turn_id",
"type"
],
"properties": {
"item": {
"$ref": "#/definitions/TurnItem"
},
"thread_id": {
"$ref": "#/definitions/ThreadId"
},
"turn_id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"item_completed"
],
"title": "ItemCompletedEventMsgType"
}
},
"title": "ItemCompletedEventMsg"
},
{
"type": "object",
"required": [
"delta",
"item_id",
"thread_id",
"turn_id",
"type"
],
"properties": {
"delta": {
"type": "string"
},
"item_id": {
"type": "string"
},
"thread_id": {
"type": "string"
},
"turn_id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"agent_message_content_delta"
],
"title": "AgentMessageContentDeltaEventMsgType"
}
},
"title": "AgentMessageContentDeltaEventMsg"
},
{
"type": "object",
"required": [
"delta",
"item_id",
"thread_id",
"turn_id",
"type"
],
"properties": {
"delta": {
"type": "string"
},
"item_id": {
"type": "string"
},
"summary_index": {
"default": 0,
"type": "integer",
"format": "int64"
},
"thread_id": {
"type": "string"
},
"turn_id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"reasoning_content_delta"
],
"title": "ReasoningContentDeltaEventMsgType"
}
},
"title": "ReasoningContentDeltaEventMsg"
},
{
"type": "object",
"required": [
"delta",
"item_id",
"thread_id",
"turn_id",
"type"
],
"properties": {
"content_index": {
"default": 0,
"type": "integer",
"format": "int64"
},
"delta": {
"type": "string"
},
"item_id": {
"type": "string"
},
"thread_id": {
"type": "string"
},
"turn_id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"reasoning_raw_content_delta"
],
"title": "ReasoningRawContentDeltaEventMsgType"
}
},
"title": "ReasoningRawContentDeltaEventMsg"
},
{
"description": "Collab interaction: agent spawn begin.",
"type": "object",
"required": [
"call_id",
"prompt",
"sender_thread_id",
"type"
],
"properties": {
"call_id": {
"description": "Identifier for the collab tool call.",
"type": "string"
},
"prompt": {
"description": "Initial prompt sent to the agent. Can be empty to prevent CoT leaking at the beginning.",
"type": "string"
},
"sender_thread_id": {
"description": "Thread ID of the sender.",
"allOf": [
{
"$ref": "#/definitions/ThreadId"
}
]
},
"type": {
"type": "string",
"enum": [
"collab_agent_spawn_begin"
],
"title": "CollabAgentSpawnBeginEventMsgType"
}
},
"title": "CollabAgentSpawnBeginEventMsg"
},
{
"description": "Collab interaction: agent spawn end.",
"type": "object",
"required": [
"call_id",
"prompt",
"sender_thread_id",
"status",
"type"
],
"properties": {
"call_id": {
"description": "Identifier for the collab tool call.",
"type": "string"
},
"new_thread_id": {
"description": "Thread ID of the newly spawned agent, if it was created.",
"anyOf": [
{
"$ref": "#/definitions/ThreadId"
},
{
"type": "null"
}
]
},
"prompt": {
"description": "Initial prompt sent to the agent. Can be empty to prevent CoT leaking at the beginning.",
"type": "string"
},
"sender_thread_id": {
"description": "Thread ID of the sender.",
"allOf": [
{
"$ref": "#/definitions/ThreadId"
}
]
},
"status": {
"description": "Last known status of the new agent reported to the sender agent.",
"allOf": [
{
"$ref": "#/definitions/AgentStatus"
}
]
},
"type": {
"type": "string",
"enum": [
"collab_agent_spawn_end"
],
"title": "CollabAgentSpawnEndEventMsgType"
}
},
"title": "CollabAgentSpawnEndEventMsg"
},
{
"description": "Collab interaction: agent interaction begin.",
"type": "object",
"required": [
"call_id",
"prompt",
"receiver_thread_id",
"sender_thread_id",
"type"
],
"properties": {
"call_id": {
"description": "Identifier for the collab tool call.",
"type": "string"
},
"prompt": {
"description": "Prompt sent from the sender to the receiver. Can be empty to prevent CoT leaking at the beginning.",
"type": "string"
},
"receiver_thread_id": {
"description": "Thread ID of the receiver.",
"allOf": [
{
"$ref": "#/definitions/ThreadId"
}
]
},
"sender_thread_id": {
"description": "Thread ID of the sender.",
"allOf": [
{
"$ref": "#/definitions/ThreadId"
}
]
},
"type": {
"type": "string",
"enum": [
"collab_agent_interaction_begin"
],
"title": "CollabAgentInteractionBeginEventMsgType"
}
},
"title": "CollabAgentInteractionBeginEventMsg"
},
{
"description": "Collab interaction: agent interaction end.",
"type": "object",
"required": [
"call_id",
"prompt",
"receiver_thread_id",
"sender_thread_id",
"status",
"type"
],
"properties": {
"call_id": {
"description": "Identifier for the collab tool call.",
"type": "string"
},
"prompt": {
"description": "Prompt sent from the sender to the receiver. Can be empty to prevent CoT leaking at the beginning.",
"type": "string"
},
"receiver_thread_id": {
"description": "Thread ID of the receiver.",
"allOf": [
{
"$ref": "#/definitions/ThreadId"
}
]
},
"sender_thread_id": {
"description": "Thread ID of the sender.",
"allOf": [
{
"$ref": "#/definitions/ThreadId"
}
]
},
"status": {
"description": "Last known status of the receiver agent reported to the sender agent.",
"allOf": [
{
"$ref": "#/definitions/AgentStatus"
}
]
},
"type": {
"type": "string",
"enum": [
"collab_agent_interaction_end"
],
"title": "CollabAgentInteractionEndEventMsgType"
}
},
"title": "CollabAgentInteractionEndEventMsg"
},
{
"description": "Collab interaction: waiting begin.",
"type": "object",
"required": [
"call_id",
"receiver_thread_ids",
"sender_thread_id",
"type"
],
"properties": {
"call_id": {
"description": "ID of the waiting call.",
"type": "string"
},
"receiver_thread_ids": {
"description": "Thread ID of the receivers.",
"type": "array",
"items": {
"$ref": "#/definitions/ThreadId"
}
},
"sender_thread_id": {
"description": "Thread ID of the sender.",
"allOf": [
{
"$ref": "#/definitions/ThreadId"
}
]
},
"type": {
"type": "string",
"enum": [
"collab_waiting_begin"
],
"title": "CollabWaitingBeginEventMsgType"
}
},
"title": "CollabWaitingBeginEventMsg"
},
{
"description": "Collab interaction: waiting end.",
"type": "object",
"required": [
"call_id",
"sender_thread_id",
"statuses",
"type"
],
"properties": {
"call_id": {
"description": "ID of the waiting call.",
"type": "string"
},
"sender_thread_id": {
"description": "Thread ID of the sender.",
"allOf": [
{
"$ref": "#/definitions/ThreadId"
}
]
},
"statuses": {
"description": "Last known status of the receiver agents reported to the sender agent.",
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/AgentStatus"
}
},
"type": {
"type": "string",
"enum": [
"collab_waiting_end"
],
"title": "CollabWaitingEndEventMsgType"
}
},
"title": "CollabWaitingEndEventMsg"
},
{
"description": "Collab interaction: close begin.",
"type": "object",
"required": [
"call_id",
"receiver_thread_id",
"sender_thread_id",
"type"
],
"properties": {
"call_id": {
"description": "Identifier for the collab tool call.",
"type": "string"
},
"receiver_thread_id": {
"description": "Thread ID of the receiver.",
"allOf": [
{
"$ref": "#/definitions/ThreadId"
}
]
},
"sender_thread_id": {
"description": "Thread ID of the sender.",
"allOf": [
{
"$ref": "#/definitions/ThreadId"
}
]
},
"type": {
"type": "string",
"enum": [
"collab_close_begin"
],
"title": "CollabCloseBeginEventMsgType"
}
},
"title": "CollabCloseBeginEventMsg"
},
{
"description": "Collab interaction: close end.",
"type": "object",
"required": [
"call_id",
"receiver_thread_id",
"sender_thread_id",
"status",
"type"
],
"properties": {
"call_id": {
"description": "Identifier for the collab tool call.",
"type": "string"
},
"receiver_thread_id": {
"description": "Thread ID of the receiver.",
"allOf": [
{
"$ref": "#/definitions/ThreadId"
}
]
},
"sender_thread_id": {
"description": "Thread ID of the sender.",
"allOf": [
{
"$ref": "#/definitions/ThreadId"
}
]
},
"status": {
"description": "Last known status of the receiver agent reported to the sender agent before the close.",
"allOf": [
{
"$ref": "#/definitions/AgentStatus"
}
]
},
"type": {
"type": "string",
"enum": [
"collab_close_end"
],
"title": "CollabCloseEndEventMsgType"
}
},
"title": "CollabCloseEndEventMsg"
}
]
},
"ExecCommandSource": {
"type": "string",
"enum": [
"agent",
"user_shell",
"unified_exec_startup",
"unified_exec_interaction"
]
},
"ExecOutputStream": {
"type": "string",
"enum": [
"stdout",
"stderr"
]
},
"HistoryEntry": {
"type": "object",
"required": [
"conversation_id",
"text",
"ts"
],
"properties": {
"conversation_id": {
"type": "string"
},
"text": {
"type": "string"
},
"ts": {
"type": "integer",
"format": "uint64",
"minimum": 0
}
}
},
"ImageContent": {
"description": "An image provided to or from an LLM.",
"type": "object",
"required": [
"data",
"mimeType",
"type"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/Annotations"
},
{
"type": "null"
}
]
},
"data": {
"type": "string"
},
"mimeType": {
"type": "string"
},
"type": {
"type": "string"
}
}
},
"McpAuthStatus": {
"type": "string",
"enum": [
"unsupported",
"not_logged_in",
"bearer_token",
"o_auth"
]
},
"McpInvocation": {
"type": "object",
"required": [
"server",
"tool"
],
"properties": {
"arguments": {
"description": "Arguments to the tool call."
},
"server": {
"description": "Name of the MCP server as defined in the config.",
"type": "string"
},
"tool": {
"description": "Name of the tool as given by the MCP server.",
"type": "string"
}
}
},
"McpStartupFailure": {
"type": "object",
"required": [
"error",
"server"
],
"properties": {
"error": {
"type": "string"
},
"server": {
"type": "string"
}
}
},
"McpStartupStatus": {
"oneOf": [
{
"type": "object",
"required": [
"state"
],
"properties": {
"state": {
"type": "string",
"enum": [
"starting"
]
}
},
"title": "StateMcpStartupStatus"
},
{
"type": "object",
"required": [
"state"
],
"properties": {
"state": {
"type": "string",
"enum": [
"ready"
]
}
},
"title": "StateMcpStartupStatus2"
},
{
"type": "object",
"required": [
"error",
"state"
],
"properties": {
"error": {
"type": "string"
},
"state": {
"type": "string",
"enum": [
"failed"
]
}
}
},
{
"type": "object",
"required": [
"state"
],
"properties": {
"state": {
"type": "string",
"enum": [
"cancelled"
]
}
},
"title": "StateMcpStartupStatus3"
}
]
},
"ParsedCommand": {
"oneOf": [
{
"type": "object",
"required": [
"cmd",
"name",
"path",
"type"
],
"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": {
"type": "string",
"enum": [
"read"
],
"title": "ReadParsedCommandType"
}
},
"title": "ReadParsedCommand"
},
{
"type": "object",
"required": [
"cmd",
"type"
],
"properties": {
"cmd": {
"type": "string"
},
"path": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"list_files"
],
"title": "ListFilesParsedCommandType"
}
},
"title": "ListFilesParsedCommand"
},
{
"type": "object",
"required": [
"cmd",
"type"
],
"properties": {
"cmd": {
"type": "string"
},
"path": {
"type": [
"string",
"null"
]
},
"query": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"search"
],
"title": "SearchParsedCommandType"
}
},
"title": "SearchParsedCommand"
},
{
"type": "object",
"required": [
"cmd",
"type"
],
"properties": {
"cmd": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"unknown"
],
"title": "UnknownParsedCommandType"
}
},
"title": "UnknownParsedCommand"
}
]
},
"PlanItemArg": {
"type": "object",
"required": [
"status",
"step"
],
"properties": {
"status": {
"$ref": "#/definitions/StepStatus"
},
"step": {
"type": "string"
}
},
"additionalProperties": false
},
"PlanType": {
"type": "string",
"enum": [
"free",
"plus",
"pro",
"team",
"business",
"enterprise",
"edu",
"unknown"
]
},
"RateLimitSnapshot": {
"type": "object",
"properties": {
"credits": {
"anyOf": [
{
"$ref": "#/definitions/CreditsSnapshot"
},
{
"type": "null"
}
]
},
"plan_type": {
"anyOf": [
{
"$ref": "#/definitions/PlanType"
},
{
"type": "null"
}
]
},
"primary": {
"anyOf": [
{
"$ref": "#/definitions/RateLimitWindow"
},
{
"type": "null"
}
]
},
"secondary": {
"anyOf": [
{
"$ref": "#/definitions/RateLimitWindow"
},
{
"type": "null"
}
]
}
}
},
"RateLimitWindow": {
"type": "object",
"required": [
"used_percent"
],
"properties": {
"resets_at": {
"description": "Unix timestamp (seconds since epoch) when the window resets.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"used_percent": {
"description": "Percentage (0-100) of the window that has been consumed.",
"type": "number",
"format": "double"
},
"window_minutes": {
"description": "Rolling window duration, in minutes.",
"type": [
"integer",
"null"
],
"format": "int64"
}
}
},
"RequestUserInputQuestion": {
"type": "object",
"required": [
"header",
"id",
"question"
],
"properties": {
"header": {
"type": "string"
},
"id": {
"type": "string"
},
"options": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/RequestUserInputQuestionOption"
}
},
"question": {
"type": "string"
}
}
},
"RequestUserInputQuestionOption": {
"type": "object",
"required": [
"description",
"label"
],
"properties": {
"description": {
"type": "string"
},
"label": {
"type": "string"
}
}
},
"Resource": {
"description": "A known resource that the server is capable of reading.",
"type": "object",
"required": [
"name",
"uri"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/Annotations"
},
{
"type": "null"
}
]
},
"description": {
"type": [
"string",
"null"
]
},
"mimeType": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"size": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"title": {
"type": [
"string",
"null"
]
},
"uri": {
"type": "string"
}
}
},
"ResourceLink": {
"description": "A resource that the server is capable of reading, included in a prompt or tool call result.\n\nNote: resource links returned by tools are not guaranteed to appear in the results of `resources/list` requests.",
"type": "object",
"required": [
"name",
"type",
"uri"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/Annotations"
},
{
"type": "null"
}
]
},
"description": {
"type": [
"string",
"null"
]
},
"mimeType": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"size": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"title": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string"
},
"uri": {
"type": "string"
}
}
},
"ResourceTemplate": {
"description": "A template description for resources available on the server.",
"type": "object",
"required": [
"name",
"uriTemplate"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/Annotations"
},
{
"type": "null"
}
]
},
"description": {
"type": [
"string",
"null"
]
},
"mimeType": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"title": {
"type": [
"string",
"null"
]
},
"uriTemplate": {
"type": "string"
}
}
},
"Result_of_CallToolResult_or_String": {
"oneOf": [
{
"type": "object",
"required": [
"Ok"
],
"properties": {
"Ok": {
"$ref": "#/definitions/CallToolResult"
}
},
"title": "OkResult_of_CallToolResult_or_String"
},
{
"type": "object",
"required": [
"Err"
],
"properties": {
"Err": {
"type": "string"
}
},
"title": "ErrResult_of_CallToolResult_or_String"
}
]
},
"ReviewCodeLocation": {
"description": "Location of the code related to a review finding.",
"type": "object",
"required": [
"absolute_file_path",
"line_range"
],
"properties": {
"absolute_file_path": {
"type": "string"
},
"line_range": {
"$ref": "#/definitions/ReviewLineRange"
}
}
},
"ReviewFinding": {
"description": "A single review finding describing an observed issue or recommendation.",
"type": "object",
"required": [
"body",
"code_location",
"confidence_score",
"priority",
"title"
],
"properties": {
"body": {
"type": "string"
},
"code_location": {
"$ref": "#/definitions/ReviewCodeLocation"
},
"confidence_score": {
"type": "number",
"format": "float"
},
"priority": {
"type": "integer",
"format": "int32"
},
"title": {
"type": "string"
}
}
},
"ReviewLineRange": {
"description": "Inclusive line range in a file associated with the finding.",
"type": "object",
"required": [
"end",
"start"
],
"properties": {
"end": {
"type": "integer",
"format": "uint32",
"minimum": 0
},
"start": {
"type": "integer",
"format": "uint32",
"minimum": 0
}
}
},
"ReviewOutputEvent": {
"description": "Structured review result produced by a child review session.",
"type": "object",
"required": [
"findings",
"overall_confidence_score",
"overall_correctness",
"overall_explanation"
],
"properties": {
"findings": {
"type": "array",
"items": {
"$ref": "#/definitions/ReviewFinding"
}
},
"overall_confidence_score": {
"type": "number",
"format": "float"
},
"overall_correctness": {
"type": "string"
},
"overall_explanation": {
"type": "string"
}
}
},
"Role": {
"description": "The sender or recipient of messages and data in a conversation.",
"type": "string",
"enum": [
"assistant",
"user"
]
},
"SkillErrorInfo": {
"type": "object",
"required": [
"message",
"path"
],
"properties": {
"message": {
"type": "string"
},
"path": {
"type": "string"
}
}
},
"SkillInterface": {
"type": "object",
"properties": {
"brand_color": {
"type": [
"string",
"null"
]
},
"default_prompt": {
"type": [
"string",
"null"
]
},
"display_name": {
"type": [
"string",
"null"
]
},
"icon_large": {
"type": [
"string",
"null"
]
},
"icon_small": {
"type": [
"string",
"null"
]
},
"short_description": {
"type": [
"string",
"null"
]
}
}
},
"SkillMetadata": {
"type": "object",
"required": [
"description",
"enabled",
"name",
"path",
"scope"
],
"properties": {
"description": {
"type": "string"
},
"enabled": {
"type": "boolean"
},
"interface": {
"anyOf": [
{
"$ref": "#/definitions/SkillInterface"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
},
"path": {
"type": "string"
},
"scope": {
"$ref": "#/definitions/SkillScope"
},
"short_description": {
"description": "Legacy short_description from SKILL.md. Prefer SKILL.toml interface.short_description.",
"type": [
"string",
"null"
]
}
}
},
"SkillScope": {
"type": "string",
"enum": [
"user",
"repo",
"system",
"admin"
]
},
"SkillsListEntry": {
"type": "object",
"required": [
"cwd",
"errors",
"skills"
],
"properties": {
"cwd": {
"type": "string"
},
"errors": {
"type": "array",
"items": {
"$ref": "#/definitions/SkillErrorInfo"
}
},
"skills": {
"type": "array",
"items": {
"$ref": "#/definitions/SkillMetadata"
}
}
}
},
"StepStatus": {
"type": "string",
"enum": [
"pending",
"in_progress",
"completed"
]
},
"TextContent": {
"description": "Text provided to or from an LLM.",
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/Annotations"
},
{
"type": "null"
}
]
},
"text": {
"type": "string"
},
"type": {
"type": "string"
}
}
},
"TextResourceContents": {
"type": "object",
"required": [
"text",
"uri"
],
"properties": {
"mimeType": {
"type": [
"string",
"null"
]
},
"text": {
"type": "string"
},
"uri": {
"type": "string"
}
}
},
"TokenUsage": {
"type": "object",
"required": [
"cached_input_tokens",
"input_tokens",
"output_tokens",
"reasoning_output_tokens",
"total_tokens"
],
"properties": {
"cached_input_tokens": {
"type": "integer",
"format": "int64"
},
"input_tokens": {
"type": "integer",
"format": "int64"
},
"output_tokens": {
"type": "integer",
"format": "int64"
},
"reasoning_output_tokens": {
"type": "integer",
"format": "int64"
},
"total_tokens": {
"type": "integer",
"format": "int64"
}
}
},
"TokenUsageInfo": {
"type": "object",
"required": [
"last_token_usage",
"total_token_usage"
],
"properties": {
"last_token_usage": {
"$ref": "#/definitions/TokenUsage"
},
"model_context_window": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"total_token_usage": {
"$ref": "#/definitions/TokenUsage"
}
}
},
"Tool": {
"description": "Definition for a tool the client can call.",
"type": "object",
"required": [
"inputSchema",
"name"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/ToolAnnotations"
},
{
"type": "null"
}
]
},
"description": {
"type": [
"string",
"null"
]
},
"inputSchema": {
"$ref": "#/definitions/ToolInputSchema"
},
"name": {
"type": "string"
},
"outputSchema": {
"anyOf": [
{
"$ref": "#/definitions/ToolOutputSchema"
},
{
"type": "null"
}
]
},
"title": {
"type": [
"string",
"null"
]
}
}
},
"ToolAnnotations": {
"description": "Additional properties describing a Tool to clients.\n\nNOTE: all properties in ToolAnnotations are **hints**. They are not guaranteed to provide a faithful description of tool behavior (including descriptive properties like `title`).\n\nClients should never make tool use decisions based on ToolAnnotations received from untrusted servers.",
"type": "object",
"properties": {
"destructiveHint": {
"type": [
"boolean",
"null"
]
},
"idempotentHint": {
"type": [
"boolean",
"null"
]
},
"openWorldHint": {
"type": [
"boolean",
"null"
]
},
"readOnlyHint": {
"type": [
"boolean",
"null"
]
},
"title": {
"type": [
"string",
"null"
]
}
}
},
"ToolInputSchema": {
"description": "A JSON Schema object defining the expected parameters for the tool.",
"type": "object",
"properties": {
"properties": true,
"required": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"type": {
"default": "object",
"type": "string"
}
}
},
"ToolOutputSchema": {
"description": "An optional JSON Schema object defining the structure of the tool's output returned in the structuredContent field of a CallToolResult.",
"type": "object",
"properties": {
"properties": true,
"required": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"type": {
"default": "object",
"type": "string"
}
}
},
"TurnAbortReason": {
"type": "string",
"enum": [
"interrupted",
"replaced",
"review_ended"
]
},
"TurnItem": {
"oneOf": [
{
"type": "object",
"required": [
"content",
"id",
"type"
],
"properties": {
"content": {
"type": "array",
"items": {
"$ref": "#/definitions/UserInput"
}
},
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"UserMessage"
],
"title": "UserMessageTurnItemType"
}
},
"title": "UserMessageTurnItem"
},
{
"type": "object",
"required": [
"content",
"id",
"type"
],
"properties": {
"content": {
"type": "array",
"items": {
"$ref": "#/definitions/AgentMessageContent"
}
},
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"AgentMessage"
],
"title": "AgentMessageTurnItemType"
}
},
"title": "AgentMessageTurnItem"
},
{
"type": "object",
"required": [
"id",
"summary_text",
"type"
],
"properties": {
"id": {
"type": "string"
},
"raw_content": {
"default": [],
"type": "array",
"items": {
"type": "string"
}
},
"summary_text": {
"type": "array",
"items": {
"type": "string"
}
},
"type": {
"type": "string",
"enum": [
"Reasoning"
],
"title": "ReasoningTurnItemType"
}
},
"title": "ReasoningTurnItem"
},
{
"type": "object",
"required": [
"id",
"query",
"type"
],
"properties": {
"id": {
"type": "string"
},
"query": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"WebSearch"
],
"title": "WebSearchTurnItemType"
}
},
"title": "WebSearchTurnItem"
}
]
},
"FileChangeRequestApprovalParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FileChangeRequestApprovalParams",
"type": "object",
"required": [
"itemId",
"threadId",
"turnId"
],
"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"
}
}
},
"FileChangeApprovalDecision": {
"oneOf": [
{
"description": "User approved the file changes.",
"type": "string",
"enum": [
"accept"
]
},
{
"description": "User approved the file changes and future changes to the same files should run without prompting.",
"type": "string",
"enum": [
"acceptForSession"
]
},
{
"description": "User denied the file changes. The agent will continue the turn.",
"type": "string",
"enum": [
"decline"
]
},
{
"description": "User denied the file changes. The turn will also be immediately interrupted.",
"type": "string",
"enum": [
"cancel"
]
}
]
},
"FuzzyFileSearchResult": {
"description": "Superset of [`codex_file_search::FileMatch`]",
"type": "object",
"required": [
"file_name",
"path",
"root",
"score"
],
"properties": {
"file_name": {
"type": "string"
},
"indices": {
"type": [
"array",
"null"
],
"items": {
"type": "integer",
"format": "uint32",
"minimum": 0
}
},
"path": {
"type": "string"
},
"root": {
"type": "string"
},
"score": {
"type": "integer",
"format": "uint32",
"minimum": 0
}
}
},
"JSONRPCErrorError": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "JSONRPCErrorError",
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int64"
},
"data": true,
"message": {
"type": "string"
}
}
},
"JSONRPCError": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "JSONRPCError",
"description": "A response to a request that indicates an error occurred.",
"type": "object",
"required": [
"error",
"id"
],
"properties": {
"error": {
"$ref": "#/definitions/JSONRPCErrorError"
},
"id": {
"$ref": "#/definitions/RequestId"
}
}
},
"JSONRPCNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "JSONRPCNotification",
"description": "A notification which does not expect a response.",
"type": "object",
"required": [
"method"
],
"properties": {
"method": {
"type": "string"
},
"params": true
}
},
"JSONRPCRequest": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "JSONRPCRequest",
"description": "A request that expects a response.",
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string"
},
"params": true
}
},
"JSONRPCResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "JSONRPCResponse",
"description": "A successful (non-error) response to a request.",
"type": "object",
"required": [
"id",
"result"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"result": true
}
},
"AccountLoginCompletedNotification": {
"type": "object",
"required": [
"success"
],
"properties": {
"error": {
"type": [
"string",
"null"
]
},
"loginId": {
"type": [
"string",
"null"
]
},
"success": {
"type": "boolean"
}
}
},
"AccountRateLimitsUpdatedNotification": {
"type": "object",
"required": [
"rateLimits"
],
"properties": {
"rateLimits": {
"$ref": "#/definitions/RateLimitSnapshot"
}
}
},
"AccountUpdatedNotification": {
"type": "object",
"properties": {
"authMode": {
"anyOf": [
{
"$ref": "#/definitions/AuthMode"
},
{
"type": "null"
}
]
}
}
},
"AgentMessageDeltaNotification": {
"type": "object",
"required": [
"delta",
"itemId",
"threadId",
"turnId"
],
"properties": {
"delta": {
"type": "string"
},
"itemId": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"AuthMode": {
"type": "string",
"enum": [
"apikey",
"chatgpt"
]
},
"AuthStatusChangeNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "AuthStatusChangeNotification",
"description": "Deprecated notification. Use AccountUpdatedNotification instead.",
"type": "object",
"properties": {
"authMethod": {
"anyOf": [
{
"$ref": "#/definitions/AuthMode"
},
{
"type": "null"
}
]
}
}
},
"ByteRange2": {
"type": "object",
"required": [
"end",
"start"
],
"properties": {
"end": {
"description": "End byte offset (exclusive) within the UTF-8 text buffer.",
"type": "integer",
"format": "uint",
"minimum": 0
},
"start": {
"description": "Start byte offset (inclusive) within the UTF-8 text buffer.",
"type": "integer",
"format": "uint",
"minimum": 0
}
}
},
"CodexErrorInfo2": {
"description": "Codex errors that we expose to clients.",
"oneOf": [
{
"type": "string",
"enum": [
"context_window_exceeded",
"usage_limit_exceeded",
"internal_server_error",
"unauthorized",
"bad_request",
"sandbox_error",
"thread_rollback_failed",
"other"
]
},
{
"type": "object",
"required": [
"http_connection_failed"
],
"properties": {
"http_connection_failed": {
"type": "object",
"properties": {
"http_status_code": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0
}
}
}
},
"additionalProperties": false,
"title": "HttpConnectionFailedCodexErrorInfo2"
},
{
"description": "Failed to connect to the response SSE stream.",
"type": "object",
"required": [
"response_stream_connection_failed"
],
"properties": {
"response_stream_connection_failed": {
"type": "object",
"properties": {
"http_status_code": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0
}
}
}
},
"additionalProperties": false,
"title": "ResponseStreamConnectionFailedCodexErrorInfo2"
},
{
"description": "The response SSE stream disconnected in the middle of a turnbefore completion.",
"type": "object",
"required": [
"response_stream_disconnected"
],
"properties": {
"response_stream_disconnected": {
"type": "object",
"properties": {
"http_status_code": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0
}
}
}
},
"additionalProperties": false,
"title": "ResponseStreamDisconnectedCodexErrorInfo2"
},
{
"description": "Reached the retry limit for responses.",
"type": "object",
"required": [
"response_too_many_failed_attempts"
],
"properties": {
"response_too_many_failed_attempts": {
"type": "object",
"properties": {
"http_status_code": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0
}
}
}
},
"additionalProperties": false,
"title": "ResponseTooManyFailedAttemptsCodexErrorInfo2"
}
]
},
"CollabAgentState": {
"type": "object",
"required": [
"status"
],
"properties": {
"message": {
"type": [
"string",
"null"
]
},
"status": {
"$ref": "#/definitions/CollabAgentStatus"
}
}
},
"CollabAgentStatus": {
"type": "string",
"enum": [
"pendingInit",
"running",
"completed",
"errored",
"shutdown",
"notFound"
]
},
"CollabAgentTool": {
"type": "string",
"enum": [
"spawnAgent",
"sendInput",
"wait",
"closeAgent"
]
},
"CollabAgentToolCallStatus": {
"type": "string",
"enum": [
"inProgress",
"completed",
"failed"
]
},
"CommandExecutionOutputDeltaNotification": {
"type": "object",
"required": [
"delta",
"itemId",
"threadId",
"turnId"
],
"properties": {
"delta": {
"type": "string"
},
"itemId": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"CommandExecutionStatus": {
"type": "string",
"enum": [
"inProgress",
"completed",
"failed",
"declined"
]
},
"ConfigWarningNotification": {
"type": "object",
"required": [
"summary"
],
"properties": {
"details": {
"description": "Optional extra guidance or error details.",
"type": [
"string",
"null"
]
},
"summary": {
"description": "Concise summary of the warning.",
"type": "string"
}
}
},
"ContextCompactedNotification": {
"type": "object",
"required": [
"threadId",
"turnId"
],
"properties": {
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"CreditsSnapshot2": {
"type": "object",
"required": [
"has_credits",
"unlimited"
],
"properties": {
"balance": {
"type": [
"string",
"null"
]
},
"has_credits": {
"type": "boolean"
},
"unlimited": {
"type": "boolean"
}
}
},
"DeprecationNoticeNotification": {
"type": "object",
"required": [
"summary"
],
"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"
}
}
},
"ErrorNotification": {
"type": "object",
"required": [
"error",
"threadId",
"turnId",
"willRetry"
],
"properties": {
"error": {
"$ref": "#/definitions/TurnError"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
},
"willRetry": {
"type": "boolean"
}
}
},
"FileChangeOutputDeltaNotification": {
"type": "object",
"required": [
"delta",
"itemId",
"threadId",
"turnId"
],
"properties": {
"delta": {
"type": "string"
},
"itemId": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"FileUpdateChange": {
"type": "object",
"required": [
"diff",
"kind",
"path"
],
"properties": {
"diff": {
"type": "string"
},
"kind": {
"$ref": "#/definitions/PatchChangeKind"
},
"path": {
"type": "string"
}
}
},
"GitInfo": {
"type": "object",
"properties": {
"branch": {
"type": [
"string",
"null"
]
},
"originUrl": {
"type": [
"string",
"null"
]
},
"sha": {
"type": [
"string",
"null"
]
}
}
},
"ItemCompletedNotification": {
"type": "object",
"required": [
"item",
"threadId",
"turnId"
],
"properties": {
"item": {
"$ref": "#/definitions/ThreadItem"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ItemStartedNotification": {
"type": "object",
"required": [
"item",
"threadId",
"turnId"
],
"properties": {
"item": {
"$ref": "#/definitions/ThreadItem"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"LoginChatGptCompleteNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "LoginChatGptCompleteNotification",
"description": "Deprecated in favor of AccountLoginCompletedNotification.",
"type": "object",
"required": [
"loginId",
"success"
],
"properties": {
"error": {
"type": [
"string",
"null"
]
},
"loginId": {
"type": "string"
},
"success": {
"type": "boolean"
}
}
},
"McpServerOauthLoginCompletedNotification": {
"type": "object",
"required": [
"name",
"success"
],
"properties": {
"error": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"success": {
"type": "boolean"
}
}
},
"McpToolCallError": {
"type": "object",
"required": [
"message"
],
"properties": {
"message": {
"type": "string"
}
}
},
"McpToolCallProgressNotification": {
"type": "object",
"required": [
"itemId",
"message",
"threadId",
"turnId"
],
"properties": {
"itemId": {
"type": "string"
},
"message": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"McpToolCallResult": {
"type": "object",
"required": [
"content"
],
"properties": {
"content": {
"type": "array",
"items": {
"$ref": "#/definitions/ContentBlock"
}
},
"structuredContent": true
}
},
"McpToolCallStatus": {
"type": "string",
"enum": [
"inProgress",
"completed",
"failed"
]
},
"PatchApplyStatus": {
"type": "string",
"enum": [
"inProgress",
"completed",
"failed",
"declined"
]
},
"PatchChangeKind": {
"oneOf": [
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"add"
],
"title": "AddPatchChangeKindType"
}
},
"title": "AddPatchChangeKind"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"delete"
],
"title": "DeletePatchChangeKindType"
}
},
"title": "DeletePatchChangeKind"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"move_path": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"update"
],
"title": "UpdatePatchChangeKindType"
}
},
"title": "UpdatePatchChangeKind"
}
]
},
"RateLimitSnapshot2": {
"type": "object",
"properties": {
"credits": {
"anyOf": [
{
"$ref": "#/definitions/CreditsSnapshot2"
},
{
"type": "null"
}
]
},
"plan_type": {
"anyOf": [
{
"$ref": "#/definitions/PlanType"
},
{
"type": "null"
}
]
},
"primary": {
"anyOf": [
{
"$ref": "#/definitions/RateLimitWindow2"
},
{
"type": "null"
}
]
},
"secondary": {
"anyOf": [
{
"$ref": "#/definitions/RateLimitWindow2"
},
{
"type": "null"
}
]
}
}
},
"RateLimitWindow2": {
"type": "object",
"required": [
"used_percent"
],
"properties": {
"resets_at": {
"description": "Unix timestamp (seconds since epoch) when the window resets.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"used_percent": {
"description": "Percentage (0-100) of the window that has been consumed.",
"type": "number",
"format": "double"
},
"window_minutes": {
"description": "Rolling window duration, in minutes.",
"type": [
"integer",
"null"
],
"format": "int64"
}
}
},
"RawResponseItemCompletedNotification": {
"type": "object",
"required": [
"item",
"threadId",
"turnId"
],
"properties": {
"item": {
"$ref": "#/definitions/ResponseItem"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ReasoningSummaryPartAddedNotification": {
"type": "object",
"required": [
"itemId",
"summaryIndex",
"threadId",
"turnId"
],
"properties": {
"itemId": {
"type": "string"
},
"summaryIndex": {
"type": "integer",
"format": "int64"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ReasoningSummaryTextDeltaNotification": {
"type": "object",
"required": [
"delta",
"itemId",
"summaryIndex",
"threadId",
"turnId"
],
"properties": {
"delta": {
"type": "string"
},
"itemId": {
"type": "string"
},
"summaryIndex": {
"type": "integer",
"format": "int64"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ReasoningTextDeltaNotification": {
"type": "object",
"required": [
"contentIndex",
"delta",
"itemId",
"threadId",
"turnId"
],
"properties": {
"contentIndex": {
"type": "integer",
"format": "int64"
},
"delta": {
"type": "string"
},
"itemId": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"SessionConfiguredNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SessionConfiguredNotification",
"type": "object",
"required": [
"historyEntryCount",
"historyLogId",
"model",
"rolloutPath",
"sessionId"
],
"properties": {
"historyEntryCount": {
"type": "integer",
"format": "uint",
"minimum": 0
},
"historyLogId": {
"type": "integer",
"format": "uint64",
"minimum": 0
},
"initialMessages": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/EventMsg"
}
},
"model": {
"type": "string"
},
"reasoningEffort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
},
"rolloutPath": {
"type": "string"
},
"sessionId": {
"$ref": "#/definitions/ThreadId"
}
}
},
"SessionSource": {
"oneOf": [
{
"type": "string",
"enum": [
"cli",
"vscode",
"exec",
"mcp",
"unknown"
]
},
{
"type": "object",
"required": [
"subagent"
],
"properties": {
"subagent": {
"$ref": "#/definitions/SubAgentSource"
}
},
"additionalProperties": false,
"title": "SubagentSessionSource"
}
]
},
"TerminalInteractionNotification": {
"type": "object",
"required": [
"itemId",
"processId",
"stdin",
"threadId",
"turnId"
],
"properties": {
"itemId": {
"type": "string"
},
"processId": {
"type": "string"
},
"stdin": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"TextElement2": {
"type": "object",
"required": [
"byte_range"
],
"properties": {
"byte_range": {
"description": "Byte range in the parent `text` buffer that this element occupies.",
"allOf": [
{
"$ref": "#/definitions/ByteRange2"
}
]
},
"placeholder": {
"description": "Optional human-readable placeholder for the element, displayed in the UI.",
"type": [
"string",
"null"
]
}
}
},
"Thread": {
"type": "object",
"required": [
"cliVersion",
"createdAt",
"cwd",
"id",
"modelProvider",
"path",
"preview",
"source",
"turns",
"updatedAt"
],
"properties": {
"cliVersion": {
"description": "Version of the CLI that created the thread.",
"type": "string"
},
"createdAt": {
"description": "Unix timestamp (in seconds) when the thread was created.",
"type": "integer",
"format": "int64"
},
"cwd": {
"description": "Working directory captured for the thread.",
"type": "string"
},
"gitInfo": {
"description": "Optional Git metadata captured when the thread was created.",
"anyOf": [
{
"$ref": "#/definitions/GitInfo"
},
{
"type": "null"
}
]
},
"id": {
"type": "string"
},
"modelProvider": {
"description": "Model provider used for this thread (for example, 'openai').",
"type": "string"
},
"path": {
"description": "[UNSTABLE] Path to the thread on disk.",
"type": "string"
},
"preview": {
"description": "Usually the first user message in the thread, if available.",
"type": "string"
},
"source": {
"description": "Origin of the thread (CLI, VSCode, codex exec, codex app-server, etc.).",
"allOf": [
{
"$ref": "#/definitions/SessionSource"
}
]
},
"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.",
"type": "array",
"items": {
"$ref": "#/definitions/Turn"
}
},
"updatedAt": {
"description": "Unix timestamp (in seconds) when the thread was last updated.",
"type": "integer",
"format": "int64"
}
}
},
"ThreadItem": {
"oneOf": [
{
"type": "object",
"required": [
"content",
"id",
"type"
],
"properties": {
"content": {
"type": "array",
"items": {
"$ref": "#/definitions/UserInput"
}
},
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"userMessage"
],
"title": "UserMessageThreadItemType"
}
},
"title": "UserMessageThreadItem"
},
{
"type": "object",
"required": [
"id",
"text",
"type"
],
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"agentMessage"
],
"title": "AgentMessageThreadItemType"
}
},
"title": "AgentMessageThreadItem"
},
{
"type": "object",
"required": [
"id",
"type"
],
"properties": {
"content": {
"default": [],
"type": "array",
"items": {
"type": "string"
}
},
"id": {
"type": "string"
},
"summary": {
"default": [],
"type": "array",
"items": {
"type": "string"
}
},
"type": {
"type": "string",
"enum": [
"reasoning"
],
"title": "ReasoningThreadItemType"
}
},
"title": "ReasoningThreadItem"
},
{
"type": "object",
"required": [
"command",
"commandActions",
"cwd",
"id",
"status",
"type"
],
"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.",
"type": "array",
"items": {
"$ref": "#/definitions/CommandAction"
}
},
"cwd": {
"description": "The command's working directory.",
"type": "string"
},
"durationMs": {
"description": "The duration of the command execution in milliseconds.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"exitCode": {
"description": "The command's exit code.",
"type": [
"integer",
"null"
],
"format": "int32"
},
"id": {
"type": "string"
},
"processId": {
"description": "Identifier for the underlying PTY process (when available).",
"type": [
"string",
"null"
]
},
"status": {
"$ref": "#/definitions/CommandExecutionStatus"
},
"type": {
"type": "string",
"enum": [
"commandExecution"
],
"title": "CommandExecutionThreadItemType"
}
},
"title": "CommandExecutionThreadItem"
},
{
"type": "object",
"required": [
"changes",
"id",
"status",
"type"
],
"properties": {
"changes": {
"type": "array",
"items": {
"$ref": "#/definitions/FileUpdateChange"
}
},
"id": {
"type": "string"
},
"status": {
"$ref": "#/definitions/PatchApplyStatus"
},
"type": {
"type": "string",
"enum": [
"fileChange"
],
"title": "FileChangeThreadItemType"
}
},
"title": "FileChangeThreadItem"
},
{
"type": "object",
"required": [
"arguments",
"id",
"server",
"status",
"tool",
"type"
],
"properties": {
"arguments": true,
"durationMs": {
"description": "The duration of the MCP tool call in milliseconds.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"error": {
"anyOf": [
{
"$ref": "#/definitions/McpToolCallError"
},
{
"type": "null"
}
]
},
"id": {
"type": "string"
},
"result": {
"anyOf": [
{
"$ref": "#/definitions/McpToolCallResult"
},
{
"type": "null"
}
]
},
"server": {
"type": "string"
},
"status": {
"$ref": "#/definitions/McpToolCallStatus"
},
"tool": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"mcpToolCall"
],
"title": "McpToolCallThreadItemType"
}
},
"title": "McpToolCallThreadItem"
},
{
"type": "object",
"required": [
"agentsStates",
"id",
"receiverThreadIds",
"senderThreadId",
"status",
"tool",
"type"
],
"properties": {
"agentsStates": {
"description": "Last known status of the target agents, when available.",
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/CollabAgentState"
}
},
"id": {
"description": "Unique identifier for this collab tool call.",
"type": "string"
},
"prompt": {
"description": "Prompt text sent as part of the collab tool call, when available.",
"type": [
"string",
"null"
]
},
"receiverThreadIds": {
"description": "Thread ID of the receiving agent, when applicable. In case of spawn operation, this corresponds to the newly spawned agent.",
"type": "array",
"items": {
"type": "string"
}
},
"senderThreadId": {
"description": "Thread ID of the agent issuing the collab request.",
"type": "string"
},
"status": {
"description": "Current status of the collab tool call.",
"allOf": [
{
"$ref": "#/definitions/CollabAgentToolCallStatus"
}
]
},
"tool": {
"description": "Name of the collab tool that was invoked.",
"allOf": [
{
"$ref": "#/definitions/CollabAgentTool"
}
]
},
"type": {
"type": "string",
"enum": [
"collabAgentToolCall"
],
"title": "CollabAgentToolCallThreadItemType"
}
},
"title": "CollabAgentToolCallThreadItem"
},
{
"type": "object",
"required": [
"id",
"query",
"type"
],
"properties": {
"id": {
"type": "string"
},
"query": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"webSearch"
],
"title": "WebSearchThreadItemType"
}
},
"title": "WebSearchThreadItem"
},
{
"type": "object",
"required": [
"id",
"path",
"type"
],
"properties": {
"id": {
"type": "string"
},
"path": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"imageView"
],
"title": "ImageViewThreadItemType"
}
},
"title": "ImageViewThreadItem"
},
{
"type": "object",
"required": [
"id",
"review",
"type"
],
"properties": {
"id": {
"type": "string"
},
"review": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"enteredReviewMode"
],
"title": "EnteredReviewModeThreadItemType"
}
},
"title": "EnteredReviewModeThreadItem"
},
{
"type": "object",
"required": [
"id",
"review",
"type"
],
"properties": {
"id": {
"type": "string"
},
"review": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"exitedReviewMode"
],
"title": "ExitedReviewModeThreadItemType"
}
},
"title": "ExitedReviewModeThreadItem"
}
]
},
"ThreadStartedNotification": {
"type": "object",
"required": [
"thread"
],
"properties": {
"thread": {
"$ref": "#/definitions/Thread"
}
}
},
"ThreadTokenUsage": {
"type": "object",
"required": [
"last",
"total"
],
"properties": {
"last": {
"$ref": "#/definitions/TokenUsageBreakdown"
},
"modelContextWindow": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"total": {
"$ref": "#/definitions/TokenUsageBreakdown"
}
}
},
"ThreadTokenUsageUpdatedNotification": {
"type": "object",
"required": [
"threadId",
"tokenUsage",
"turnId"
],
"properties": {
"threadId": {
"type": "string"
},
"tokenUsage": {
"$ref": "#/definitions/ThreadTokenUsage"
},
"turnId": {
"type": "string"
}
}
},
"TokenUsageBreakdown": {
"type": "object",
"required": [
"cachedInputTokens",
"inputTokens",
"outputTokens",
"reasoningOutputTokens",
"totalTokens"
],
"properties": {
"cachedInputTokens": {
"type": "integer",
"format": "int64"
},
"inputTokens": {
"type": "integer",
"format": "int64"
},
"outputTokens": {
"type": "integer",
"format": "int64"
},
"reasoningOutputTokens": {
"type": "integer",
"format": "int64"
},
"totalTokens": {
"type": "integer",
"format": "int64"
}
}
},
"Turn": {
"type": "object",
"required": [
"id",
"items",
"status"
],
"properties": {
"error": {
"description": "Only populated when the Turn's status is failed.",
"anyOf": [
{
"$ref": "#/definitions/TurnError"
},
{
"type": "null"
}
]
},
"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.",
"type": "array",
"items": {
"$ref": "#/definitions/ThreadItem"
}
},
"status": {
"$ref": "#/definitions/TurnStatus"
}
}
},
"TurnCompletedNotification": {
"type": "object",
"required": [
"threadId",
"turn"
],
"properties": {
"threadId": {
"type": "string"
},
"turn": {
"$ref": "#/definitions/Turn"
}
}
},
"TurnDiffUpdatedNotification": {
"description": "Notification that the turn-level unified diff has changed. Contains the latest aggregated diff across all file changes in the turn.",
"type": "object",
"required": [
"diff",
"threadId",
"turnId"
],
"properties": {
"diff": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"TurnError": {
"type": "object",
"required": [
"message"
],
"properties": {
"additionalDetails": {
"default": null,
"type": [
"string",
"null"
]
},
"codexErrorInfo": {
"anyOf": [
{
"$ref": "#/definitions/CodexErrorInfo"
},
{
"type": "null"
}
]
},
"message": {
"type": "string"
}
}
},
"TurnPlanStep": {
"type": "object",
"required": [
"status",
"step"
],
"properties": {
"status": {
"$ref": "#/definitions/TurnPlanStepStatus"
},
"step": {
"type": "string"
}
}
},
"TurnPlanStepStatus": {
"type": "string",
"enum": [
"pending",
"inProgress",
"completed"
]
},
"TurnPlanUpdatedNotification": {
"type": "object",
"required": [
"plan",
"threadId",
"turnId"
],
"properties": {
"explanation": {
"type": [
"string",
"null"
]
},
"plan": {
"type": "array",
"items": {
"$ref": "#/definitions/TurnPlanStep"
}
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"TurnStartedNotification": {
"type": "object",
"required": [
"threadId",
"turn"
],
"properties": {
"threadId": {
"type": "string"
},
"turn": {
"$ref": "#/definitions/Turn"
}
}
},
"TurnStatus": {
"type": "string",
"enum": [
"completed",
"interrupted",
"failed",
"inProgress"
]
},
"UserInput2": {
"description": "User input",
"oneOf": [
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"text_elements": {
"description": "UI-defined spans within `text` that should be treated as special elements. These are byte ranges into the UTF-8 `text` buffer and are used to render or persist rich input markers (e.g., image placeholders) across history and resume without mutating the literal text.",
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/TextElement2"
}
},
"type": {
"type": "string",
"enum": [
"text"
],
"title": "TextUserInput2Type"
}
},
"title": "TextUserInput2"
},
{
"description": "Preencoded data: URI image.",
"type": "object",
"required": [
"image_url",
"type"
],
"properties": {
"image_url": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"image"
],
"title": "ImageUserInput2Type"
}
},
"title": "ImageUserInput2"
},
{
"description": "Local image path provided by the user. This will be converted to an `Image` variant (base64 data URL) during request serialization.",
"type": "object",
"required": [
"path",
"type"
],
"properties": {
"path": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"local_image"
],
"title": "LocalImageUserInput2Type"
}
},
"title": "LocalImageUserInput2"
},
{
"description": "Skill selected by the user (name + path to SKILL.md).",
"type": "object",
"required": [
"name",
"path",
"type"
],
"properties": {
"name": {
"type": "string"
},
"path": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"skill"
],
"title": "SkillUserInput2Type"
}
},
"title": "SkillUserInput2"
}
]
},
"WindowsWorldWritableWarningNotification": {
"type": "object",
"required": [
"extraCount",
"failedScan",
"samplePaths"
],
"properties": {
"extraCount": {
"type": "integer",
"format": "uint",
"minimum": 0
},
"failedScan": {
"type": "boolean"
},
"samplePaths": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"ApplyPatchApprovalParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ApplyPatchApprovalParams",
"type": "object",
"required": [
"callId",
"conversationId",
"fileChanges"
],
"properties": {
"callId": {
"description": "Use to correlate this with [codex_core::protocol::PatchApplyBeginEvent] and [codex_core::protocol::PatchApplyEndEvent].",
"type": "string"
},
"conversationId": {
"$ref": "#/definitions/ThreadId"
},
"fileChanges": {
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/FileChange"
}
},
"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"
]
}
}
},
"CommandExecutionRequestApprovalParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecutionRequestApprovalParams",
"type": "object",
"required": [
"itemId",
"threadId",
"turnId"
],
"properties": {
"command": {
"description": "The command to be executed.",
"type": [
"string",
"null"
]
},
"commandActions": {
"description": "Best-effort parsed command actions for friendly display.",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/CommandAction"
}
},
"cwd": {
"description": "The command's working directory.",
"type": [
"string",
"null"
]
},
"itemId": {
"type": "string"
},
"proposedExecpolicyAmendment": {
"description": "Optional proposed execpolicy amendment to allow similar commands without prompting.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"reason": {
"description": "Optional explanatory reason (e.g. request for network access).",
"type": [
"string",
"null"
]
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ExecCommandApprovalParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExecCommandApprovalParams",
"type": "object",
"required": [
"callId",
"command",
"conversationId",
"cwd",
"parsedCmd"
],
"properties": {
"callId": {
"description": "Use to correlate this with [codex_core::protocol::ExecCommandBeginEvent] and [codex_core::protocol::ExecCommandEndEvent].",
"type": "string"
},
"command": {
"type": "array",
"items": {
"type": "string"
}
},
"conversationId": {
"$ref": "#/definitions/ThreadId"
},
"cwd": {
"type": "string"
},
"parsedCmd": {
"type": "array",
"items": {
"$ref": "#/definitions/ParsedCommand"
}
},
"reason": {
"type": [
"string",
"null"
]
}
}
},
"ToolRequestUserInputOption": {
"description": "EXPERIMENTAL. Defines a single selectable option for request_user_input.",
"type": "object",
"required": [
"description",
"label"
],
"properties": {
"description": {
"type": "string"
},
"label": {
"type": "string"
}
}
},
"ToolRequestUserInputParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ToolRequestUserInputParams",
"description": "EXPERIMENTAL. Params sent with a request_user_input event.",
"type": "object",
"required": [
"itemId",
"questions",
"threadId",
"turnId"
],
"properties": {
"itemId": {
"type": "string"
},
"questions": {
"type": "array",
"items": {
"$ref": "#/definitions/ToolRequestUserInputQuestion"
}
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ToolRequestUserInputQuestion": {
"description": "EXPERIMENTAL. Represents one request_user_input question and its optional options.",
"type": "object",
"required": [
"header",
"id",
"question"
],
"properties": {
"header": {
"type": "string"
},
"id": {
"type": "string"
},
"options": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/ToolRequestUserInputOption"
}
},
"question": {
"type": "string"
}
}
},
"ToolRequestUserInputAnswer": {
"description": "EXPERIMENTAL. Captures a user's answer to a request_user_input question.",
"type": "object",
"required": [
"answers"
],
"properties": {
"answers": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"JSONRPCMessage": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "JSONRPCMessage",
"description": "Refers to any valid JSON-RPC object that can be decoded off the wire, or encoded to be sent.",
"anyOf": [
{
"$ref": "#/definitions/JSONRPCRequest"
},
{
"$ref": "#/definitions/JSONRPCNotification"
},
{
"$ref": "#/definitions/JSONRPCResponse"
},
{
"$ref": "#/definitions/JSONRPCError"
}
]
},
"ClientRequest": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ClientRequest",
"description": "Request from the client to the server.",
"oneOf": [
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"initialize"
],
"title": "InitializeRequestMethod"
},
"params": {
"$ref": "#/definitions/InitializeParams"
}
},
"title": "InitializeRequest"
},
{
"description": "NEW APIs",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/start"
],
"title": "Thread/startRequestMethod"
},
"params": {
"$ref": "#/definitions/ThreadStartParams"
}
},
"title": "Thread/startRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/resume"
],
"title": "Thread/resumeRequestMethod"
},
"params": {
"$ref": "#/definitions/ThreadResumeParams"
}
},
"title": "Thread/resumeRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/fork"
],
"title": "Thread/forkRequestMethod"
},
"params": {
"$ref": "#/definitions/ThreadForkParams"
}
},
"title": "Thread/forkRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/archive"
],
"title": "Thread/archiveRequestMethod"
},
"params": {
"$ref": "#/definitions/ThreadArchiveParams"
}
},
"title": "Thread/archiveRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/rollback"
],
"title": "Thread/rollbackRequestMethod"
},
"params": {
"$ref": "#/definitions/ThreadRollbackParams"
}
},
"title": "Thread/rollbackRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/list"
],
"title": "Thread/listRequestMethod"
},
"params": {
"$ref": "#/definitions/ThreadListParams"
}
},
"title": "Thread/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/loaded/list"
],
"title": "Thread/loaded/listRequestMethod"
},
"params": {
"$ref": "#/definitions/ThreadLoadedListParams"
}
},
"title": "Thread/loaded/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/read"
],
"title": "Thread/readRequestMethod"
},
"params": {
"$ref": "#/definitions/ThreadReadParams"
}
},
"title": "Thread/readRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"skills/list"
],
"title": "Skills/listRequestMethod"
},
"params": {
"$ref": "#/definitions/SkillsListParams"
}
},
"title": "Skills/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"skills/config/write"
],
"title": "Skills/config/writeRequestMethod"
},
"params": {
"$ref": "#/definitions/SkillsConfigWriteParams"
}
},
"title": "Skills/config/writeRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"turn/start"
],
"title": "Turn/startRequestMethod"
},
"params": {
"$ref": "#/definitions/TurnStartParams"
}
},
"title": "Turn/startRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"turn/interrupt"
],
"title": "Turn/interruptRequestMethod"
},
"params": {
"$ref": "#/definitions/TurnInterruptParams"
}
},
"title": "Turn/interruptRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"review/start"
],
"title": "Review/startRequestMethod"
},
"params": {
"$ref": "#/definitions/ReviewStartParams"
}
},
"title": "Review/startRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"model/list"
],
"title": "Model/listRequestMethod"
},
"params": {
"$ref": "#/definitions/ModelListParams"
}
},
"title": "Model/listRequest"
},
{
"description": "EXPERIMENTAL - list collaboration mode presets.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"collaborationMode/list"
],
"title": "CollaborationMode/listRequestMethod"
},
"params": {
"$ref": "#/definitions/CollaborationModeListParams"
}
},
"title": "CollaborationMode/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"mcpServer/oauth/login"
],
"title": "McpServer/oauth/loginRequestMethod"
},
"params": {
"$ref": "#/definitions/McpServerOauthLoginParams"
}
},
"title": "McpServer/oauth/loginRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"config/mcpServer/reload"
],
"title": "Config/mcpServer/reloadRequestMethod"
},
"params": {
"type": "null"
}
},
"title": "Config/mcpServer/reloadRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"mcpServerStatus/list"
],
"title": "McpServerStatus/listRequestMethod"
},
"params": {
"$ref": "#/definitions/ListMcpServerStatusParams"
}
},
"title": "McpServerStatus/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"account/login/start"
],
"title": "Account/login/startRequestMethod"
},
"params": {
"$ref": "#/definitions/LoginAccountParams"
}
},
"title": "Account/login/startRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"account/login/cancel"
],
"title": "Account/login/cancelRequestMethod"
},
"params": {
"$ref": "#/definitions/CancelLoginAccountParams"
}
},
"title": "Account/login/cancelRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"account/logout"
],
"title": "Account/logoutRequestMethod"
},
"params": {
"type": "null"
}
},
"title": "Account/logoutRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"account/rateLimits/read"
],
"title": "Account/rateLimits/readRequestMethod"
},
"params": {
"type": "null"
}
},
"title": "Account/rateLimits/readRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"feedback/upload"
],
"title": "Feedback/uploadRequestMethod"
},
"params": {
"$ref": "#/definitions/FeedbackUploadParams"
}
},
"title": "Feedback/uploadRequest"
},
{
"description": "Execute a command (argv vector) under the server's sandbox.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"command/exec"
],
"title": "Command/execRequestMethod"
},
"params": {
"$ref": "#/definitions/CommandExecParams"
}
},
"title": "Command/execRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"config/read"
],
"title": "Config/readRequestMethod"
},
"params": {
"$ref": "#/definitions/ConfigReadParams"
}
},
"title": "Config/readRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"config/value/write"
],
"title": "Config/value/writeRequestMethod"
},
"params": {
"$ref": "#/definitions/ConfigValueWriteParams"
}
},
"title": "Config/value/writeRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"config/batchWrite"
],
"title": "Config/batchWriteRequestMethod"
},
"params": {
"$ref": "#/definitions/ConfigBatchWriteParams"
}
},
"title": "Config/batchWriteRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"configRequirements/read"
],
"title": "ConfigRequirements/readRequestMethod"
},
"params": {
"type": "null"
}
},
"title": "ConfigRequirements/readRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"account/read"
],
"title": "Account/readRequestMethod"
},
"params": {
"$ref": "#/definitions/GetAccountParams"
}
},
"title": "Account/readRequest"
},
{
"description": "DEPRECATED APIs below",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"newConversation"
],
"title": "NewConversationRequestMethod"
},
"params": {
"$ref": "#/definitions/NewConversationParams"
}
},
"title": "NewConversationRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"getConversationSummary"
],
"title": "GetConversationSummaryRequestMethod"
},
"params": {
"$ref": "#/definitions/GetConversationSummaryParams"
}
},
"title": "GetConversationSummaryRequest"
},
{
"description": "List recorded Codex conversations (rollouts) with optional pagination and search.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"listConversations"
],
"title": "ListConversationsRequestMethod"
},
"params": {
"$ref": "#/definitions/ListConversationsParams"
}
},
"title": "ListConversationsRequest"
},
{
"description": "Resume a recorded Codex conversation from a rollout file.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"resumeConversation"
],
"title": "ResumeConversationRequestMethod"
},
"params": {
"$ref": "#/definitions/ResumeConversationParams"
}
},
"title": "ResumeConversationRequest"
},
{
"description": "Fork a recorded Codex conversation into a new session.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"forkConversation"
],
"title": "ForkConversationRequestMethod"
},
"params": {
"$ref": "#/definitions/ForkConversationParams"
}
},
"title": "ForkConversationRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"archiveConversation"
],
"title": "ArchiveConversationRequestMethod"
},
"params": {
"$ref": "#/definitions/ArchiveConversationParams"
}
},
"title": "ArchiveConversationRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"sendUserMessage"
],
"title": "SendUserMessageRequestMethod"
},
"params": {
"$ref": "#/definitions/SendUserMessageParams"
}
},
"title": "SendUserMessageRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"sendUserTurn"
],
"title": "SendUserTurnRequestMethod"
},
"params": {
"$ref": "#/definitions/SendUserTurnParams"
}
},
"title": "SendUserTurnRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"interruptConversation"
],
"title": "InterruptConversationRequestMethod"
},
"params": {
"$ref": "#/definitions/InterruptConversationParams"
}
},
"title": "InterruptConversationRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"addConversationListener"
],
"title": "AddConversationListenerRequestMethod"
},
"params": {
"$ref": "#/definitions/AddConversationListenerParams"
}
},
"title": "AddConversationListenerRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"removeConversationListener"
],
"title": "RemoveConversationListenerRequestMethod"
},
"params": {
"$ref": "#/definitions/RemoveConversationListenerParams"
}
},
"title": "RemoveConversationListenerRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"gitDiffToRemote"
],
"title": "GitDiffToRemoteRequestMethod"
},
"params": {
"$ref": "#/definitions/GitDiffToRemoteParams"
}
},
"title": "GitDiffToRemoteRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"loginApiKey"
],
"title": "LoginApiKeyRequestMethod"
},
"params": {
"$ref": "#/definitions/LoginApiKeyParams"
}
},
"title": "LoginApiKeyRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"loginChatGpt"
],
"title": "LoginChatGptRequestMethod"
},
"params": {
"type": "null"
}
},
"title": "LoginChatGptRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"cancelLoginChatGpt"
],
"title": "CancelLoginChatGptRequestMethod"
},
"params": {
"$ref": "#/definitions/CancelLoginChatGptParams"
}
},
"title": "CancelLoginChatGptRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"logoutChatGpt"
],
"title": "LogoutChatGptRequestMethod"
},
"params": {
"type": "null"
}
},
"title": "LogoutChatGptRequest"
},
{
"description": "DEPRECATED in favor of GetAccount",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"getAuthStatus"
],
"title": "GetAuthStatusRequestMethod"
},
"params": {
"$ref": "#/definitions/GetAuthStatusParams"
}
},
"title": "GetAuthStatusRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"getUserSavedConfig"
],
"title": "GetUserSavedConfigRequestMethod"
},
"params": {
"type": "null"
}
},
"title": "GetUserSavedConfigRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"setDefaultModel"
],
"title": "SetDefaultModelRequestMethod"
},
"params": {
"$ref": "#/definitions/SetDefaultModelParams"
}
},
"title": "SetDefaultModelRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"getUserAgent"
],
"title": "GetUserAgentRequestMethod"
},
"params": {
"type": "null"
}
},
"title": "GetUserAgentRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"userInfo"
],
"title": "UserInfoRequestMethod"
},
"params": {
"type": "null"
}
},
"title": "UserInfoRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"fuzzyFileSearch"
],
"title": "FuzzyFileSearchRequestMethod"
},
"params": {
"$ref": "#/definitions/FuzzyFileSearchParams"
}
},
"title": "FuzzyFileSearchRequest"
},
{
"description": "Execute a command (argv vector) under the server's sandbox.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"execOneOffCommand"
],
"title": "ExecOneOffCommandRequestMethod"
},
"params": {
"$ref": "#/definitions/ExecOneOffCommandParams"
}
},
"title": "ExecOneOffCommandRequest"
}
]
},
"ServerRequest": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ServerRequest",
"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.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"item/commandExecution/requestApproval"
],
"title": "Item/commandExecution/requestApprovalRequestMethod"
},
"params": {
"$ref": "#/definitions/CommandExecutionRequestApprovalParams"
}
},
"title": "Item/commandExecution/requestApprovalRequest"
},
{
"description": "Sent when approval is requested for a specific file change. This request is used for Turns started via turn/start.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"item/fileChange/requestApproval"
],
"title": "Item/fileChange/requestApprovalRequestMethod"
},
"params": {
"$ref": "#/definitions/FileChangeRequestApprovalParams"
}
},
"title": "Item/fileChange/requestApprovalRequest"
},
{
"description": "EXPERIMENTAL - Request input from the user for a tool call.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"item/tool/requestUserInput"
],
"title": "Item/tool/requestUserInputRequestMethod"
},
"params": {
"$ref": "#/definitions/ToolRequestUserInputParams"
}
},
"title": "Item/tool/requestUserInputRequest"
},
{
"description": "DEPRECATED APIs below Request to approve a patch. This request is used for Turns started via the legacy APIs (i.e. SendUserTurn, SendUserMessage).",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"applyPatchApproval"
],
"title": "ApplyPatchApprovalRequestMethod"
},
"params": {
"$ref": "#/definitions/ApplyPatchApprovalParams"
}
},
"title": "ApplyPatchApprovalRequest"
},
{
"description": "Request to exec a command. This request is used for Turns started via the legacy APIs (i.e. SendUserTurn, SendUserMessage).",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"type": "string",
"enum": [
"execCommandApproval"
],
"title": "ExecCommandApprovalRequestMethod"
},
"params": {
"$ref": "#/definitions/ExecCommandApprovalParams"
}
},
"title": "ExecCommandApprovalRequest"
}
]
},
"ServerNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ServerNotification",
"description": "Notification sent from the server to the client.",
"oneOf": [
{
"description": "NEW NOTIFICATIONS",
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"error"
],
"title": "ErrorNotificationMethod"
},
"params": {
"$ref": "#/definitions/ErrorNotification"
}
},
"title": "ErrorNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/started"
],
"title": "Thread/startedNotificationMethod"
},
"params": {
"$ref": "#/definitions/ThreadStartedNotification"
}
},
"title": "Thread/startedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/tokenUsage/updated"
],
"title": "Thread/tokenUsage/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/ThreadTokenUsageUpdatedNotification"
}
},
"title": "Thread/tokenUsage/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"turn/started"
],
"title": "Turn/startedNotificationMethod"
},
"params": {
"$ref": "#/definitions/TurnStartedNotification"
}
},
"title": "Turn/startedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"turn/completed"
],
"title": "Turn/completedNotificationMethod"
},
"params": {
"$ref": "#/definitions/TurnCompletedNotification"
}
},
"title": "Turn/completedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"turn/diff/updated"
],
"title": "Turn/diff/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/TurnDiffUpdatedNotification"
}
},
"title": "Turn/diff/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"turn/plan/updated"
],
"title": "Turn/plan/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/TurnPlanUpdatedNotification"
}
},
"title": "Turn/plan/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/started"
],
"title": "Item/startedNotificationMethod"
},
"params": {
"$ref": "#/definitions/ItemStartedNotification"
}
},
"title": "Item/startedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/completed"
],
"title": "Item/completedNotificationMethod"
},
"params": {
"$ref": "#/definitions/ItemCompletedNotification"
}
},
"title": "Item/completedNotification"
},
{
"description": "This event is internal-only. Used by Codex Cloud.",
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"rawResponseItem/completed"
],
"title": "RawResponseItem/completedNotificationMethod"
},
"params": {
"$ref": "#/definitions/RawResponseItemCompletedNotification"
}
},
"title": "RawResponseItem/completedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/agentMessage/delta"
],
"title": "Item/agentMessage/deltaNotificationMethod"
},
"params": {
"$ref": "#/definitions/AgentMessageDeltaNotification"
}
},
"title": "Item/agentMessage/deltaNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/commandExecution/outputDelta"
],
"title": "Item/commandExecution/outputDeltaNotificationMethod"
},
"params": {
"$ref": "#/definitions/CommandExecutionOutputDeltaNotification"
}
},
"title": "Item/commandExecution/outputDeltaNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/commandExecution/terminalInteraction"
],
"title": "Item/commandExecution/terminalInteractionNotificationMethod"
},
"params": {
"$ref": "#/definitions/TerminalInteractionNotification"
}
},
"title": "Item/commandExecution/terminalInteractionNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/fileChange/outputDelta"
],
"title": "Item/fileChange/outputDeltaNotificationMethod"
},
"params": {
"$ref": "#/definitions/FileChangeOutputDeltaNotification"
}
},
"title": "Item/fileChange/outputDeltaNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/mcpToolCall/progress"
],
"title": "Item/mcpToolCall/progressNotificationMethod"
},
"params": {
"$ref": "#/definitions/McpToolCallProgressNotification"
}
},
"title": "Item/mcpToolCall/progressNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"mcpServer/oauthLogin/completed"
],
"title": "McpServer/oauthLogin/completedNotificationMethod"
},
"params": {
"$ref": "#/definitions/McpServerOauthLoginCompletedNotification"
}
},
"title": "McpServer/oauthLogin/completedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"account/updated"
],
"title": "Account/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/AccountUpdatedNotification"
}
},
"title": "Account/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"account/rateLimits/updated"
],
"title": "Account/rateLimits/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/AccountRateLimitsUpdatedNotification"
}
},
"title": "Account/rateLimits/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/reasoning/summaryTextDelta"
],
"title": "Item/reasoning/summaryTextDeltaNotificationMethod"
},
"params": {
"$ref": "#/definitions/ReasoningSummaryTextDeltaNotification"
}
},
"title": "Item/reasoning/summaryTextDeltaNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/reasoning/summaryPartAdded"
],
"title": "Item/reasoning/summaryPartAddedNotificationMethod"
},
"params": {
"$ref": "#/definitions/ReasoningSummaryPartAddedNotification"
}
},
"title": "Item/reasoning/summaryPartAddedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/reasoning/textDelta"
],
"title": "Item/reasoning/textDeltaNotificationMethod"
},
"params": {
"$ref": "#/definitions/ReasoningTextDeltaNotification"
}
},
"title": "Item/reasoning/textDeltaNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/compacted"
],
"title": "Thread/compactedNotificationMethod"
},
"params": {
"$ref": "#/definitions/ContextCompactedNotification"
}
},
"title": "Thread/compactedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"deprecationNotice"
],
"title": "DeprecationNoticeNotificationMethod"
},
"params": {
"$ref": "#/definitions/DeprecationNoticeNotification"
}
},
"title": "DeprecationNoticeNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"configWarning"
],
"title": "ConfigWarningNotificationMethod"
},
"params": {
"$ref": "#/definitions/ConfigWarningNotification"
}
},
"title": "ConfigWarningNotification"
},
{
"description": "Notifies the user of world-writable directories on Windows, which cannot be protected by the sandbox.",
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"windows/worldWritableWarning"
],
"title": "Windows/worldWritableWarningNotificationMethod"
},
"params": {
"$ref": "#/definitions/WindowsWorldWritableWarningNotification"
}
},
"title": "Windows/worldWritableWarningNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"account/login/completed"
],
"title": "Account/login/completedNotificationMethod"
},
"params": {
"$ref": "#/definitions/AccountLoginCompletedNotification"
}
},
"title": "Account/login/completedNotification"
},
{
"description": "DEPRECATED NOTIFICATIONS below",
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"authStatusChange"
],
"title": "AuthStatusChangeNotificationMethod"
},
"params": {
"$ref": "#/definitions/AuthStatusChangeNotification"
}
},
"title": "AuthStatusChangeNotification"
},
{
"description": "Deprecated: use `account/login/completed` instead.",
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"loginChatGptComplete"
],
"title": "LoginChatGptCompleteNotificationMethod"
},
"params": {
"$ref": "#/definitions/LoginChatGptCompleteNotification"
}
},
"title": "LoginChatGptCompleteNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"sessionConfigured"
],
"title": "SessionConfiguredNotificationMethod"
},
"params": {
"$ref": "#/definitions/SessionConfiguredNotification"
}
},
"title": "SessionConfiguredNotification"
}
]
},
"v2": {
"AskForApproval": {
"type": "string",
"enum": [
"untrusted",
"on-failure",
"on-request",
"never"
]
},
"SandboxMode": {
"type": "string",
"enum": [
"read-only",
"workspace-write",
"danger-full-access"
]
},
"ThreadStartParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadStartParams",
"type": "object",
"properties": {
"approvalPolicy": {
"anyOf": [
{
"$ref": "#/definitions/AskForApproval"
},
{
"type": "null"
}
]
},
"baseInstructions": {
"type": [
"string",
"null"
]
},
"config": {
"type": [
"object",
"null"
],
"additionalProperties": true
},
"cwd": {
"type": [
"string",
"null"
]
},
"developerInstructions": {
"type": [
"string",
"null"
]
},
"experimentalRawEvents": {
"description": "If true, opt into emitting raw response items on the event stream.\n\nThis is for internal use only (e.g. Codex Cloud). (TODO): Figure out a better way to categorize internal / experimental events & protocols.",
"default": false,
"type": "boolean"
},
"model": {
"type": [
"string",
"null"
]
},
"modelProvider": {
"type": [
"string",
"null"
]
},
"sandbox": {
"anyOf": [
{
"$ref": "#/definitions/SandboxMode"
},
{
"type": "null"
}
]
}
}
},
"ContentItem": {
"oneOf": [
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"input_text"
],
"title": "InputTextContentItemType"
}
},
"title": "InputTextContentItem"
},
{
"type": "object",
"required": [
"image_url",
"type"
],
"properties": {
"image_url": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"input_image"
],
"title": "InputImageContentItemType"
}
},
"title": "InputImageContentItem"
},
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"output_text"
],
"title": "OutputTextContentItemType"
}
},
"title": "OutputTextContentItem"
}
]
},
"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": [
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"input_text"
],
"title": "InputTextFunctionCallOutputContentItemType"
}
},
"title": "InputTextFunctionCallOutputContentItem"
},
{
"type": "object",
"required": [
"image_url",
"type"
],
"properties": {
"image_url": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"input_image"
],
"title": "InputImageFunctionCallOutputContentItemType"
}
},
"title": "InputImageFunctionCallOutputContentItem"
}
]
},
"FunctionCallOutputPayload": {
"description": "The payload we send back to OpenAI when reporting a tool call result.\n\n`content` preserves the historical plain-string payload so downstream integrations (tests, logging, etc.) can keep treating tool output as `String`. When an MCP server returns richer data we additionally populate `content_items` with the structured form that the Responses/Chat Completions APIs understand.",
"type": "object",
"required": [
"content"
],
"properties": {
"content": {
"type": "string"
},
"content_items": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/FunctionCallOutputContentItem"
}
},
"success": {
"type": [
"boolean",
"null"
]
}
}
},
"GhostCommit": {
"description": "Details of a ghost commit created from a repository state.",
"type": "object",
"required": [
"id",
"preexisting_untracked_dirs",
"preexisting_untracked_files"
],
"properties": {
"id": {
"type": "string"
},
"parent": {
"type": [
"string",
"null"
]
},
"preexisting_untracked_dirs": {
"type": "array",
"items": {
"type": "string"
}
},
"preexisting_untracked_files": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"LocalShellAction": {
"oneOf": [
{
"type": "object",
"required": [
"command",
"type"
],
"properties": {
"command": {
"type": "array",
"items": {
"type": "string"
}
},
"env": {
"type": [
"object",
"null"
],
"additionalProperties": {
"type": "string"
}
},
"timeout_ms": {
"type": [
"integer",
"null"
],
"format": "uint64",
"minimum": 0
},
"type": {
"type": "string",
"enum": [
"exec"
],
"title": "ExecLocalShellActionType"
},
"user": {
"type": [
"string",
"null"
]
},
"working_directory": {
"type": [
"string",
"null"
]
}
},
"title": "ExecLocalShellAction"
}
]
},
"LocalShellStatus": {
"type": "string",
"enum": [
"completed",
"in_progress",
"incomplete"
]
},
"ReasoningItemContent": {
"oneOf": [
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"reasoning_text"
],
"title": "ReasoningTextReasoningItemContentType"
}
},
"title": "ReasoningTextReasoningItemContent"
},
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"text"
],
"title": "TextReasoningItemContentType"
}
},
"title": "TextReasoningItemContent"
}
]
},
"ReasoningItemReasoningSummary": {
"oneOf": [
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"summary_text"
],
"title": "SummaryTextReasoningItemReasoningSummaryType"
}
},
"title": "SummaryTextReasoningItemReasoningSummary"
}
]
},
"ResponseItem": {
"oneOf": [
{
"type": "object",
"required": [
"content",
"role",
"type"
],
"properties": {
"content": {
"type": "array",
"items": {
"$ref": "#/definitions/ContentItem"
}
},
"end_turn": {
"type": [
"boolean",
"null"
]
},
"id": {
"writeOnly": true,
"type": [
"string",
"null"
]
},
"role": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"message"
],
"title": "MessageResponseItemType"
}
},
"title": "MessageResponseItem"
},
{
"type": "object",
"required": [
"id",
"summary",
"type"
],
"properties": {
"content": {
"default": null,
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/ReasoningItemContent"
}
},
"encrypted_content": {
"type": [
"string",
"null"
]
},
"id": {
"writeOnly": true,
"type": "string"
},
"summary": {
"type": "array",
"items": {
"$ref": "#/definitions/ReasoningItemReasoningSummary"
}
},
"type": {
"type": "string",
"enum": [
"reasoning"
],
"title": "ReasoningResponseItemType"
}
},
"title": "ReasoningResponseItem"
},
{
"type": "object",
"required": [
"action",
"status",
"type"
],
"properties": {
"action": {
"$ref": "#/definitions/LocalShellAction"
},
"call_id": {
"description": "Set when using the Responses API.",
"type": [
"string",
"null"
]
},
"id": {
"description": "Set when using the chat completions API.",
"writeOnly": true,
"type": [
"string",
"null"
]
},
"status": {
"$ref": "#/definitions/LocalShellStatus"
},
"type": {
"type": "string",
"enum": [
"local_shell_call"
],
"title": "LocalShellCallResponseItemType"
}
},
"title": "LocalShellCallResponseItem"
},
{
"type": "object",
"required": [
"arguments",
"call_id",
"name",
"type"
],
"properties": {
"arguments": {
"type": "string"
},
"call_id": {
"type": "string"
},
"id": {
"writeOnly": true,
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"function_call"
],
"title": "FunctionCallResponseItemType"
}
},
"title": "FunctionCallResponseItem"
},
{
"type": "object",
"required": [
"call_id",
"output",
"type"
],
"properties": {
"call_id": {
"type": "string"
},
"output": {
"$ref": "#/definitions/FunctionCallOutputPayload"
},
"type": {
"type": "string",
"enum": [
"function_call_output"
],
"title": "FunctionCallOutputResponseItemType"
}
},
"title": "FunctionCallOutputResponseItem"
},
{
"type": "object",
"required": [
"call_id",
"input",
"name",
"type"
],
"properties": {
"call_id": {
"type": "string"
},
"id": {
"writeOnly": true,
"type": [
"string",
"null"
]
},
"input": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"custom_tool_call"
],
"title": "CustomToolCallResponseItemType"
}
},
"title": "CustomToolCallResponseItem"
},
{
"type": "object",
"required": [
"call_id",
"output",
"type"
],
"properties": {
"call_id": {
"type": "string"
},
"output": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"custom_tool_call_output"
],
"title": "CustomToolCallOutputResponseItemType"
}
},
"title": "CustomToolCallOutputResponseItem"
},
{
"type": "object",
"required": [
"action",
"type"
],
"properties": {
"action": {
"$ref": "#/definitions/WebSearchAction"
},
"id": {
"writeOnly": true,
"type": [
"string",
"null"
]
},
"status": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"web_search_call"
],
"title": "WebSearchCallResponseItemType"
}
},
"title": "WebSearchCallResponseItem"
},
{
"type": "object",
"required": [
"ghost_commit",
"type"
],
"properties": {
"ghost_commit": {
"$ref": "#/definitions/GhostCommit"
},
"type": {
"type": "string",
"enum": [
"ghost_snapshot"
],
"title": "GhostSnapshotResponseItemType"
}
},
"title": "GhostSnapshotResponseItem"
},
{
"type": "object",
"required": [
"encrypted_content",
"type"
],
"properties": {
"encrypted_content": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"compaction"
],
"title": "CompactionResponseItemType"
}
},
"title": "CompactionResponseItem"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"other"
],
"title": "OtherResponseItemType"
}
},
"title": "OtherResponseItem"
}
]
},
"WebSearchAction": {
"oneOf": [
{
"type": "object",
"required": [
"type"
],
"properties": {
"query": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"search"
],
"title": "SearchWebSearchActionType"
}
},
"title": "SearchWebSearchAction"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"open_page"
],
"title": "OpenPageWebSearchActionType"
},
"url": {
"type": [
"string",
"null"
]
}
},
"title": "OpenPageWebSearchAction"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"pattern": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"find_in_page"
],
"title": "FindInPageWebSearchActionType"
},
"url": {
"type": [
"string",
"null"
]
}
},
"title": "FindInPageWebSearchAction"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"other"
],
"title": "OtherWebSearchActionType"
}
},
"title": "OtherWebSearchAction"
}
]
},
"ThreadResumeParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadResumeParams",
"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.",
"type": "object",
"required": [
"threadId"
],
"properties": {
"approvalPolicy": {
"anyOf": [
{
"$ref": "#/definitions/AskForApproval"
},
{
"type": "null"
}
]
},
"baseInstructions": {
"type": [
"string",
"null"
]
},
"config": {
"type": [
"object",
"null"
],
"additionalProperties": true
},
"cwd": {
"type": [
"string",
"null"
]
},
"developerInstructions": {
"type": [
"string",
"null"
]
},
"history": {
"description": "[UNSTABLE] FOR CODEX CLOUD - DO NOT USE. If specified, the thread will be resumed with the provided history instead of loaded from disk.",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/ResponseItem"
}
},
"model": {
"description": "Configuration overrides for the resumed thread, if any.",
"type": [
"string",
"null"
]
},
"modelProvider": {
"type": [
"string",
"null"
]
},
"path": {
"description": "[UNSTABLE] Specify the rollout path to resume from. If specified, the thread_id param will be ignored.",
"type": [
"string",
"null"
]
},
"sandbox": {
"anyOf": [
{
"$ref": "#/definitions/SandboxMode"
},
{
"type": "null"
}
]
},
"threadId": {
"type": "string"
}
}
},
"ThreadForkParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadForkParams",
"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.",
"type": "object",
"required": [
"threadId"
],
"properties": {
"approvalPolicy": {
"anyOf": [
{
"$ref": "#/definitions/AskForApproval"
},
{
"type": "null"
}
]
},
"baseInstructions": {
"type": [
"string",
"null"
]
},
"config": {
"type": [
"object",
"null"
],
"additionalProperties": true
},
"cwd": {
"type": [
"string",
"null"
]
},
"developerInstructions": {
"type": [
"string",
"null"
]
},
"model": {
"description": "Configuration overrides for the forked thread, if any.",
"type": [
"string",
"null"
]
},
"modelProvider": {
"type": [
"string",
"null"
]
},
"path": {
"description": "[UNSTABLE] Specify the rollout path to fork from. If specified, the thread_id param will be ignored.",
"type": [
"string",
"null"
]
},
"sandbox": {
"anyOf": [
{
"$ref": "#/definitions/SandboxMode"
},
{
"type": "null"
}
]
},
"threadId": {
"type": "string"
}
}
},
"ThreadArchiveParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadArchiveParams",
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"type": "string"
}
}
},
"ThreadRollbackParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadRollbackParams",
"type": "object",
"required": [
"numTurns",
"threadId"
],
"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.",
"type": "integer",
"format": "uint32",
"minimum": 0
},
"threadId": {
"type": "string"
}
}
},
"ThreadSortKey": {
"type": "string",
"enum": [
"created_at",
"updated_at"
]
},
"ThreadListParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadListParams",
"type": "object",
"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"
]
},
"limit": {
"description": "Optional page size; defaults to a reasonable server-side value.",
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0
},
"modelProviders": {
"description": "Optional provider filter; when set, only sessions recorded under these providers are returned. When present but empty, includes all providers.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"sortKey": {
"description": "Optional sort key; defaults to created_at.",
"anyOf": [
{
"$ref": "#/definitions/ThreadSortKey"
},
{
"type": "null"
}
]
}
}
},
"ThreadLoadedListParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadLoadedListParams",
"type": "object",
"properties": {
"cursor": {
"description": "Opaque pagination cursor returned by a previous call.",
"type": [
"string",
"null"
]
},
"limit": {
"description": "Optional page size; defaults to no limit.",
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0
}
}
},
"ThreadReadParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadReadParams",
"type": "object",
"required": [
"threadId"
],
"properties": {
"includeTurns": {
"description": "When true, include turns and their items from rollout history.",
"default": false,
"type": "boolean"
},
"threadId": {
"type": "string"
}
}
},
"SkillsListParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SkillsListParams",
"type": "object",
"properties": {
"cwds": {
"description": "When empty, defaults to the current session working directory.",
"type": "array",
"items": {
"type": "string"
}
},
"forceReload": {
"description": "When true, bypass the skills cache and re-scan skills from disk.",
"type": "boolean"
}
}
},
"SkillsConfigWriteParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SkillsConfigWriteParams",
"type": "object",
"required": [
"enabled",
"path"
],
"properties": {
"enabled": {
"type": "boolean"
},
"path": {
"type": "string"
}
}
},
"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"
},
"ByteRange": {
"type": "object",
"required": [
"end",
"start"
],
"properties": {
"end": {
"type": "integer",
"format": "uint",
"minimum": 0
},
"start": {
"type": "integer",
"format": "uint",
"minimum": 0
}
}
},
"CollaborationMode": {
"description": "Collaboration mode for a Codex session.",
"oneOf": [
{
"description": "Settings for a collaboration mode.",
"type": "object",
"required": [
"mode",
"model"
],
"properties": {
"developer_instructions": {
"type": [
"string",
"null"
]
},
"mode": {
"type": "string",
"enum": [
"plan"
]
},
"model": {
"type": "string"
},
"reasoning_effort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
}
}
},
{
"description": "Settings for a collaboration mode.",
"type": "object",
"required": [
"mode",
"model"
],
"properties": {
"developer_instructions": {
"type": [
"string",
"null"
]
},
"mode": {
"type": "string",
"enum": [
"pairprogramming"
]
},
"model": {
"type": "string"
},
"reasoning_effort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
}
}
},
{
"description": "Settings for a collaboration mode.",
"type": "object",
"required": [
"mode",
"model"
],
"properties": {
"developer_instructions": {
"type": [
"string",
"null"
]
},
"mode": {
"type": "string",
"enum": [
"execute"
]
},
"model": {
"type": "string"
},
"reasoning_effort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
}
}
},
{
"description": "Settings for a collaboration mode.",
"type": "object",
"required": [
"mode",
"model"
],
"properties": {
"developer_instructions": {
"type": [
"string",
"null"
]
},
"mode": {
"type": "string",
"enum": [
"custom"
]
},
"model": {
"type": "string"
},
"reasoning_effort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
}
}
}
]
},
"NetworkAccess": {
"type": "string",
"enum": [
"restricted",
"enabled"
]
},
"ReasoningEffort": {
"description": "See https://platform.openai.com/docs/guides/reasoning?api-mode=responses#get-started-with-reasoning",
"type": "string",
"enum": [
"none",
"minimal",
"low",
"medium",
"high",
"xhigh"
]
},
"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": [
{
"type": "string",
"enum": [
"auto",
"concise",
"detailed"
]
},
{
"description": "Option to disable reasoning summaries.",
"type": "string",
"enum": [
"none"
]
}
]
},
"SandboxPolicy": {
"oneOf": [
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"dangerFullAccess"
],
"title": "DangerFullAccessSandboxPolicyType"
}
},
"title": "DangerFullAccessSandboxPolicy"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"readOnly"
],
"title": "ReadOnlySandboxPolicyType"
}
},
"title": "ReadOnlySandboxPolicy"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"networkAccess": {
"default": "restricted",
"allOf": [
{
"$ref": "#/definitions/NetworkAccess"
}
]
},
"type": {
"type": "string",
"enum": [
"externalSandbox"
],
"title": "ExternalSandboxSandboxPolicyType"
}
},
"title": "ExternalSandboxSandboxPolicy"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"excludeSlashTmp": {
"default": false,
"type": "boolean"
},
"excludeTmpdirEnvVar": {
"default": false,
"type": "boolean"
},
"networkAccess": {
"default": false,
"type": "boolean"
},
"type": {
"type": "string",
"enum": [
"workspaceWrite"
],
"title": "WorkspaceWriteSandboxPolicyType"
},
"writableRoots": {
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/AbsolutePathBuf"
}
}
},
"title": "WorkspaceWriteSandboxPolicy"
}
]
},
"TextElement": {
"type": "object",
"required": [
"byteRange"
],
"properties": {
"byteRange": {
"description": "Byte range in the parent `text` buffer that this element occupies.",
"allOf": [
{
"$ref": "#/definitions/ByteRange"
}
]
},
"placeholder": {
"description": "Optional human-readable placeholder for the element, displayed in the UI.",
"type": [
"string",
"null"
]
}
}
},
"UserInput": {
"oneOf": [
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"text_elements": {
"description": "UI-defined spans within `text` used to render or persist special elements.",
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/TextElement"
}
},
"type": {
"type": "string",
"enum": [
"text"
],
"title": "TextUserInputType"
}
},
"title": "TextUserInput"
},
{
"type": "object",
"required": [
"type",
"url"
],
"properties": {
"type": {
"type": "string",
"enum": [
"image"
],
"title": "ImageUserInputType"
},
"url": {
"type": "string"
}
},
"title": "ImageUserInput"
},
{
"type": "object",
"required": [
"path",
"type"
],
"properties": {
"path": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"localImage"
],
"title": "LocalImageUserInputType"
}
},
"title": "LocalImageUserInput"
},
{
"type": "object",
"required": [
"name",
"path",
"type"
],
"properties": {
"name": {
"type": "string"
},
"path": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"skill"
],
"title": "SkillUserInputType"
}
},
"title": "SkillUserInput"
}
]
},
"TurnStartParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnStartParams",
"type": "object",
"required": [
"input",
"threadId"
],
"properties": {
"approvalPolicy": {
"description": "Override the approval policy for this turn and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/AskForApproval"
},
{
"type": "null"
}
]
},
"collaborationMode": {
"description": "EXPERIMENTAL - set a pre-set collaboration mode. Takes precedence over model, reasoning_effort, and developer instructions if set.",
"anyOf": [
{
"$ref": "#/definitions/CollaborationMode"
},
{
"type": "null"
}
]
},
"cwd": {
"description": "Override the working directory for this turn and subsequent turns.",
"type": [
"string",
"null"
]
},
"effort": {
"description": "Override the reasoning effort for this turn and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
},
"input": {
"type": "array",
"items": {
"$ref": "#/definitions/UserInput"
}
},
"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."
},
"sandboxPolicy": {
"description": "Override the sandbox policy for this turn and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/SandboxPolicy"
},
{
"type": "null"
}
]
},
"summary": {
"description": "Override the reasoning summary for this turn and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/ReasoningSummary"
},
{
"type": "null"
}
]
},
"threadId": {
"type": "string"
}
}
},
"TurnInterruptParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnInterruptParams",
"type": "object",
"required": [
"threadId",
"turnId"
],
"properties": {
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ReviewDelivery": {
"type": "string",
"enum": [
"inline",
"detached"
]
},
"ReviewTarget": {
"oneOf": [
{
"description": "Review the working tree: staged, unstaged, and untracked files.",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"uncommittedChanges"
],
"title": "UncommittedChangesReviewTargetType"
}
},
"title": "UncommittedChangesReviewTarget"
},
{
"description": "Review changes between the current branch and the given base branch.",
"type": "object",
"required": [
"branch",
"type"
],
"properties": {
"branch": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"baseBranch"
],
"title": "BaseBranchReviewTargetType"
}
},
"title": "BaseBranchReviewTarget"
},
{
"description": "Review the changes introduced by a specific commit.",
"type": "object",
"required": [
"sha",
"type"
],
"properties": {
"sha": {
"type": "string"
},
"title": {
"description": "Optional human-readable label (e.g., commit subject) for UIs.",
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"commit"
],
"title": "CommitReviewTargetType"
}
},
"title": "CommitReviewTarget"
},
{
"description": "Arbitrary instructions, equivalent to the old free-form prompt.",
"type": "object",
"required": [
"instructions",
"type"
],
"properties": {
"instructions": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"custom"
],
"title": "CustomReviewTargetType"
}
},
"title": "CustomReviewTarget"
}
]
},
"ReviewStartParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ReviewStartParams",
"type": "object",
"required": [
"target",
"threadId"
],
"properties": {
"delivery": {
"description": "Where to run the review: inline (default) on the current thread or detached on a new thread (returned in `reviewThreadId`).",
"default": null,
"anyOf": [
{
"$ref": "#/definitions/ReviewDelivery"
},
{
"type": "null"
}
]
},
"target": {
"$ref": "#/definitions/ReviewTarget"
},
"threadId": {
"type": "string"
}
}
},
"ModelListParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ModelListParams",
"type": "object",
"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.",
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0
}
}
},
"CollaborationModeListParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CollaborationModeListParams",
"description": "EXPERIMENTAL - list collaboration mode presets.",
"type": "object"
},
"McpServerOauthLoginParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "McpServerOauthLoginParams",
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"scopes": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"timeoutSecs": {
"type": [
"integer",
"null"
],
"format": "int64"
}
}
},
"ListMcpServerStatusParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ListMcpServerStatusParams",
"type": "object",
"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.",
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0
}
}
},
"LoginAccountParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "LoginAccountParams",
"oneOf": [
{
"type": "object",
"required": [
"apiKey",
"type"
],
"properties": {
"apiKey": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"apiKey"
],
"title": "ApiKeyv2::LoginAccountParamsType"
}
},
"title": "ApiKeyv2::LoginAccountParams"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"chatgpt"
],
"title": "Chatgptv2::LoginAccountParamsType"
}
},
"title": "Chatgptv2::LoginAccountParams"
}
]
},
"CancelLoginAccountParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CancelLoginAccountParams",
"type": "object",
"required": [
"loginId"
],
"properties": {
"loginId": {
"type": "string"
}
}
},
"FeedbackUploadParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FeedbackUploadParams",
"type": "object",
"required": [
"classification",
"includeLogs"
],
"properties": {
"classification": {
"type": "string"
},
"includeLogs": {
"type": "boolean"
},
"reason": {
"type": [
"string",
"null"
]
},
"threadId": {
"type": [
"string",
"null"
]
}
}
},
"CommandExecParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecParams",
"type": "object",
"required": [
"command"
],
"properties": {
"command": {
"type": "array",
"items": {
"type": "string"
}
},
"cwd": {
"type": [
"string",
"null"
]
},
"sandboxPolicy": {
"anyOf": [
{
"$ref": "#/definitions/SandboxPolicy"
},
{
"type": "null"
}
]
},
"timeoutMs": {
"type": [
"integer",
"null"
],
"format": "int64"
}
}
},
"ConfigReadParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ConfigReadParams",
"type": "object",
"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"
}
}
},
"MergeStrategy": {
"type": "string",
"enum": [
"replace",
"upsert"
]
},
"ConfigValueWriteParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ConfigValueWriteParams",
"type": "object",
"required": [
"keyPath",
"mergeStrategy",
"value"
],
"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/MergeStrategy"
},
"value": true
}
},
"ConfigEdit": {
"type": "object",
"required": [
"keyPath",
"mergeStrategy",
"value"
],
"properties": {
"keyPath": {
"type": "string"
},
"mergeStrategy": {
"$ref": "#/definitions/MergeStrategy"
},
"value": true
}
},
"ConfigBatchWriteParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ConfigBatchWriteParams",
"type": "object",
"required": [
"edits"
],
"properties": {
"edits": {
"type": "array",
"items": {
"$ref": "#/definitions/ConfigEdit"
}
},
"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"
]
}
}
},
"GetAccountParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GetAccountParams",
"type": "object",
"properties": {
"refreshToken": {
"default": false,
"type": "boolean"
}
}
},
"Annotations": {
"description": "Optional annotations for the client. The client can use annotations to inform how objects are used or displayed",
"type": "object",
"properties": {
"audience": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/Role"
}
},
"lastModified": {
"type": [
"string",
"null"
]
},
"priority": {
"type": [
"number",
"null"
],
"format": "double"
}
}
},
"AudioContent": {
"description": "Audio provided to or from an LLM.",
"type": "object",
"required": [
"data",
"mimeType",
"type"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/Annotations"
},
{
"type": "null"
}
]
},
"data": {
"type": "string"
},
"mimeType": {
"type": "string"
},
"type": {
"type": "string"
}
}
},
"BlobResourceContents": {
"type": "object",
"required": [
"blob",
"uri"
],
"properties": {
"blob": {
"type": "string"
},
"mimeType": {
"type": [
"string",
"null"
]
},
"uri": {
"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": [
{
"type": "string",
"enum": [
"contextWindowExceeded",
"usageLimitExceeded",
"internalServerError",
"unauthorized",
"badRequest",
"threadRollbackFailed",
"sandboxError",
"other"
]
},
{
"type": "object",
"required": [
"httpConnectionFailed"
],
"properties": {
"httpConnectionFailed": {
"type": "object",
"properties": {
"httpStatusCode": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0
}
}
}
},
"additionalProperties": false,
"title": "HttpConnectionFailedCodexErrorInfo"
},
{
"description": "Failed to connect to the response SSE stream.",
"type": "object",
"required": [
"responseStreamConnectionFailed"
],
"properties": {
"responseStreamConnectionFailed": {
"type": "object",
"properties": {
"httpStatusCode": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0
}
}
}
},
"additionalProperties": false,
"title": "ResponseStreamConnectionFailedCodexErrorInfo"
},
{
"description": "The response SSE stream disconnected in the middle of a turn before completion.",
"type": "object",
"required": [
"responseStreamDisconnected"
],
"properties": {
"responseStreamDisconnected": {
"type": "object",
"properties": {
"httpStatusCode": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0
}
}
}
},
"additionalProperties": false,
"title": "ResponseStreamDisconnectedCodexErrorInfo"
},
{
"description": "Reached the retry limit for responses.",
"type": "object",
"required": [
"responseTooManyFailedAttempts"
],
"properties": {
"responseTooManyFailedAttempts": {
"type": "object",
"properties": {
"httpStatusCode": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0
}
}
}
},
"additionalProperties": false,
"title": "ResponseTooManyFailedAttemptsCodexErrorInfo"
}
]
},
"CollabAgentState": {
"type": "object",
"required": [
"status"
],
"properties": {
"message": {
"type": [
"string",
"null"
]
},
"status": {
"$ref": "#/definitions/CollabAgentStatus"
}
}
},
"CollabAgentStatus": {
"type": "string",
"enum": [
"pendingInit",
"running",
"completed",
"errored",
"shutdown",
"notFound"
]
},
"CollabAgentTool": {
"type": "string",
"enum": [
"spawnAgent",
"sendInput",
"wait",
"closeAgent"
]
},
"CollabAgentToolCallStatus": {
"type": "string",
"enum": [
"inProgress",
"completed",
"failed"
]
},
"CommandAction": {
"oneOf": [
{
"type": "object",
"required": [
"command",
"name",
"path",
"type"
],
"properties": {
"command": {
"type": "string"
},
"name": {
"type": "string"
},
"path": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"read"
],
"title": "ReadCommandActionType"
}
},
"title": "ReadCommandAction"
},
{
"type": "object",
"required": [
"command",
"type"
],
"properties": {
"command": {
"type": "string"
},
"path": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"listFiles"
],
"title": "ListFilesCommandActionType"
}
},
"title": "ListFilesCommandAction"
},
{
"type": "object",
"required": [
"command",
"type"
],
"properties": {
"command": {
"type": "string"
},
"path": {
"type": [
"string",
"null"
]
},
"query": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"search"
],
"title": "SearchCommandActionType"
}
},
"title": "SearchCommandAction"
},
{
"type": "object",
"required": [
"command",
"type"
],
"properties": {
"command": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"unknown"
],
"title": "UnknownCommandActionType"
}
},
"title": "UnknownCommandAction"
}
]
},
"CommandExecutionStatus": {
"type": "string",
"enum": [
"inProgress",
"completed",
"failed",
"declined"
]
},
"ContentBlock": {
"anyOf": [
{
"$ref": "#/definitions/TextContent"
},
{
"$ref": "#/definitions/ImageContent"
},
{
"$ref": "#/definitions/AudioContent"
},
{
"$ref": "#/definitions/ResourceLink"
},
{
"$ref": "#/definitions/EmbeddedResource"
}
]
},
"EmbeddedResource": {
"description": "The contents of a resource, embedded into a prompt or tool call result.\n\nIt is up to the client how best to render embedded resources for the benefit of the LLM and/or the user.",
"type": "object",
"required": [
"resource",
"type"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/Annotations"
},
{
"type": "null"
}
]
},
"resource": {
"$ref": "#/definitions/EmbeddedResourceResource"
},
"type": {
"type": "string"
}
}
},
"EmbeddedResourceResource": {
"anyOf": [
{
"$ref": "#/definitions/TextResourceContents"
},
{
"$ref": "#/definitions/BlobResourceContents"
}
]
},
"FileUpdateChange": {
"type": "object",
"required": [
"diff",
"kind",
"path"
],
"properties": {
"diff": {
"type": "string"
},
"kind": {
"$ref": "#/definitions/PatchChangeKind"
},
"path": {
"type": "string"
}
}
},
"GitInfo": {
"type": "object",
"properties": {
"branch": {
"type": [
"string",
"null"
]
},
"originUrl": {
"type": [
"string",
"null"
]
},
"sha": {
"type": [
"string",
"null"
]
}
}
},
"ImageContent": {
"description": "An image provided to or from an LLM.",
"type": "object",
"required": [
"data",
"mimeType",
"type"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/Annotations"
},
{
"type": "null"
}
]
},
"data": {
"type": "string"
},
"mimeType": {
"type": "string"
},
"type": {
"type": "string"
}
}
},
"McpToolCallError": {
"type": "object",
"required": [
"message"
],
"properties": {
"message": {
"type": "string"
}
}
},
"McpToolCallResult": {
"type": "object",
"required": [
"content"
],
"properties": {
"content": {
"type": "array",
"items": {
"$ref": "#/definitions/ContentBlock"
}
},
"structuredContent": true
}
},
"McpToolCallStatus": {
"type": "string",
"enum": [
"inProgress",
"completed",
"failed"
]
},
"PatchApplyStatus": {
"type": "string",
"enum": [
"inProgress",
"completed",
"failed",
"declined"
]
},
"PatchChangeKind": {
"oneOf": [
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"add"
],
"title": "AddPatchChangeKindType"
}
},
"title": "AddPatchChangeKind"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"delete"
],
"title": "DeletePatchChangeKindType"
}
},
"title": "DeletePatchChangeKind"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"move_path": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"update"
],
"title": "UpdatePatchChangeKindType"
}
},
"title": "UpdatePatchChangeKind"
}
]
},
"ResourceLink": {
"description": "A resource that the server is capable of reading, included in a prompt or tool call result.\n\nNote: resource links returned by tools are not guaranteed to appear in the results of `resources/list` requests.",
"type": "object",
"required": [
"name",
"type",
"uri"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/Annotations"
},
{
"type": "null"
}
]
},
"description": {
"type": [
"string",
"null"
]
},
"mimeType": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"size": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"title": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string"
},
"uri": {
"type": "string"
}
}
},
"Role": {
"description": "The sender or recipient of messages and data in a conversation.",
"type": "string",
"enum": [
"assistant",
"user"
]
},
"SessionSource": {
"type": "string",
"enum": [
"cli",
"vscode",
"exec",
"appServer",
"unknown"
]
},
"TextContent": {
"description": "Text provided to or from an LLM.",
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/Annotations"
},
{
"type": "null"
}
]
},
"text": {
"type": "string"
},
"type": {
"type": "string"
}
}
},
"TextResourceContents": {
"type": "object",
"required": [
"text",
"uri"
],
"properties": {
"mimeType": {
"type": [
"string",
"null"
]
},
"text": {
"type": "string"
},
"uri": {
"type": "string"
}
}
},
"Thread": {
"type": "object",
"required": [
"cliVersion",
"createdAt",
"cwd",
"id",
"modelProvider",
"path",
"preview",
"source",
"turns",
"updatedAt"
],
"properties": {
"cliVersion": {
"description": "Version of the CLI that created the thread.",
"type": "string"
},
"createdAt": {
"description": "Unix timestamp (in seconds) when the thread was created.",
"type": "integer",
"format": "int64"
},
"cwd": {
"description": "Working directory captured for the thread.",
"type": "string"
},
"gitInfo": {
"description": "Optional Git metadata captured when the thread was created.",
"anyOf": [
{
"$ref": "#/definitions/GitInfo"
},
{
"type": "null"
}
]
},
"id": {
"type": "string"
},
"modelProvider": {
"description": "Model provider used for this thread (for example, 'openai').",
"type": "string"
},
"path": {
"description": "[UNSTABLE] Path to the thread on disk.",
"type": "string"
},
"preview": {
"description": "Usually the first user message in the thread, if available.",
"type": "string"
},
"source": {
"description": "Origin of the thread (CLI, VSCode, codex exec, codex app-server, etc.).",
"allOf": [
{
"$ref": "#/definitions/SessionSource"
}
]
},
"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.",
"type": "array",
"items": {
"$ref": "#/definitions/Turn"
}
},
"updatedAt": {
"description": "Unix timestamp (in seconds) when the thread was last updated.",
"type": "integer",
"format": "int64"
}
}
},
"ThreadItem": {
"oneOf": [
{
"type": "object",
"required": [
"content",
"id",
"type"
],
"properties": {
"content": {
"type": "array",
"items": {
"$ref": "#/definitions/UserInput"
}
},
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"userMessage"
],
"title": "UserMessageThreadItemType"
}
},
"title": "UserMessageThreadItem"
},
{
"type": "object",
"required": [
"id",
"text",
"type"
],
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"agentMessage"
],
"title": "AgentMessageThreadItemType"
}
},
"title": "AgentMessageThreadItem"
},
{
"type": "object",
"required": [
"id",
"type"
],
"properties": {
"content": {
"default": [],
"type": "array",
"items": {
"type": "string"
}
},
"id": {
"type": "string"
},
"summary": {
"default": [],
"type": "array",
"items": {
"type": "string"
}
},
"type": {
"type": "string",
"enum": [
"reasoning"
],
"title": "ReasoningThreadItemType"
}
},
"title": "ReasoningThreadItem"
},
{
"type": "object",
"required": [
"command",
"commandActions",
"cwd",
"id",
"status",
"type"
],
"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.",
"type": "array",
"items": {
"$ref": "#/definitions/CommandAction"
}
},
"cwd": {
"description": "The command's working directory.",
"type": "string"
},
"durationMs": {
"description": "The duration of the command execution in milliseconds.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"exitCode": {
"description": "The command's exit code.",
"type": [
"integer",
"null"
],
"format": "int32"
},
"id": {
"type": "string"
},
"processId": {
"description": "Identifier for the underlying PTY process (when available).",
"type": [
"string",
"null"
]
},
"status": {
"$ref": "#/definitions/CommandExecutionStatus"
},
"type": {
"type": "string",
"enum": [
"commandExecution"
],
"title": "CommandExecutionThreadItemType"
}
},
"title": "CommandExecutionThreadItem"
},
{
"type": "object",
"required": [
"changes",
"id",
"status",
"type"
],
"properties": {
"changes": {
"type": "array",
"items": {
"$ref": "#/definitions/FileUpdateChange"
}
},
"id": {
"type": "string"
},
"status": {
"$ref": "#/definitions/PatchApplyStatus"
},
"type": {
"type": "string",
"enum": [
"fileChange"
],
"title": "FileChangeThreadItemType"
}
},
"title": "FileChangeThreadItem"
},
{
"type": "object",
"required": [
"arguments",
"id",
"server",
"status",
"tool",
"type"
],
"properties": {
"arguments": true,
"durationMs": {
"description": "The duration of the MCP tool call in milliseconds.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"error": {
"anyOf": [
{
"$ref": "#/definitions/McpToolCallError"
},
{
"type": "null"
}
]
},
"id": {
"type": "string"
},
"result": {
"anyOf": [
{
"$ref": "#/definitions/McpToolCallResult"
},
{
"type": "null"
}
]
},
"server": {
"type": "string"
},
"status": {
"$ref": "#/definitions/McpToolCallStatus"
},
"tool": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"mcpToolCall"
],
"title": "McpToolCallThreadItemType"
}
},
"title": "McpToolCallThreadItem"
},
{
"type": "object",
"required": [
"agentsStates",
"id",
"receiverThreadIds",
"senderThreadId",
"status",
"tool",
"type"
],
"properties": {
"agentsStates": {
"description": "Last known status of the target agents, when available.",
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/CollabAgentState"
}
},
"id": {
"description": "Unique identifier for this collab tool call.",
"type": "string"
},
"prompt": {
"description": "Prompt text sent as part of the collab tool call, when available.",
"type": [
"string",
"null"
]
},
"receiverThreadIds": {
"description": "Thread ID of the receiving agent, when applicable. In case of spawn operation, this corresponds to the newly spawned agent.",
"type": "array",
"items": {
"type": "string"
}
},
"senderThreadId": {
"description": "Thread ID of the agent issuing the collab request.",
"type": "string"
},
"status": {
"description": "Current status of the collab tool call.",
"allOf": [
{
"$ref": "#/definitions/CollabAgentToolCallStatus"
}
]
},
"tool": {
"description": "Name of the collab tool that was invoked.",
"allOf": [
{
"$ref": "#/definitions/CollabAgentTool"
}
]
},
"type": {
"type": "string",
"enum": [
"collabAgentToolCall"
],
"title": "CollabAgentToolCallThreadItemType"
}
},
"title": "CollabAgentToolCallThreadItem"
},
{
"type": "object",
"required": [
"id",
"query",
"type"
],
"properties": {
"id": {
"type": "string"
},
"query": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"webSearch"
],
"title": "WebSearchThreadItemType"
}
},
"title": "WebSearchThreadItem"
},
{
"type": "object",
"required": [
"id",
"path",
"type"
],
"properties": {
"id": {
"type": "string"
},
"path": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"imageView"
],
"title": "ImageViewThreadItemType"
}
},
"title": "ImageViewThreadItem"
},
{
"type": "object",
"required": [
"id",
"review",
"type"
],
"properties": {
"id": {
"type": "string"
},
"review": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"enteredReviewMode"
],
"title": "EnteredReviewModeThreadItemType"
}
},
"title": "EnteredReviewModeThreadItem"
},
{
"type": "object",
"required": [
"id",
"review",
"type"
],
"properties": {
"id": {
"type": "string"
},
"review": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"exitedReviewMode"
],
"title": "ExitedReviewModeThreadItemType"
}
},
"title": "ExitedReviewModeThreadItem"
}
]
},
"Turn": {
"type": "object",
"required": [
"id",
"items",
"status"
],
"properties": {
"error": {
"description": "Only populated when the Turn's status is failed.",
"anyOf": [
{
"$ref": "#/definitions/TurnError"
},
{
"type": "null"
}
]
},
"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.",
"type": "array",
"items": {
"$ref": "#/definitions/ThreadItem"
}
},
"status": {
"$ref": "#/definitions/TurnStatus"
}
}
},
"TurnError": {
"type": "object",
"required": [
"message"
],
"properties": {
"additionalDetails": {
"default": null,
"type": [
"string",
"null"
]
},
"codexErrorInfo": {
"anyOf": [
{
"$ref": "#/definitions/CodexErrorInfo"
},
{
"type": "null"
}
]
},
"message": {
"type": "string"
}
}
},
"TurnStatus": {
"type": "string",
"enum": [
"completed",
"interrupted",
"failed",
"inProgress"
]
},
"ThreadStartResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadStartResponse",
"type": "object",
"required": [
"approvalPolicy",
"cwd",
"model",
"modelProvider",
"sandbox",
"thread"
],
"properties": {
"approvalPolicy": {
"$ref": "#/definitions/AskForApproval"
},
"cwd": {
"type": "string"
},
"model": {
"type": "string"
},
"modelProvider": {
"type": "string"
},
"reasoningEffort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
},
"sandbox": {
"$ref": "#/definitions/SandboxPolicy"
},
"thread": {
"$ref": "#/definitions/Thread"
}
}
},
"ThreadResumeResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadResumeResponse",
"type": "object",
"required": [
"approvalPolicy",
"cwd",
"model",
"modelProvider",
"sandbox",
"thread"
],
"properties": {
"approvalPolicy": {
"$ref": "#/definitions/AskForApproval"
},
"cwd": {
"type": "string"
},
"model": {
"type": "string"
},
"modelProvider": {
"type": "string"
},
"reasoningEffort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
},
"sandbox": {
"$ref": "#/definitions/SandboxPolicy"
},
"thread": {
"$ref": "#/definitions/Thread"
}
}
},
"ThreadForkResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadForkResponse",
"type": "object",
"required": [
"approvalPolicy",
"cwd",
"model",
"modelProvider",
"sandbox",
"thread"
],
"properties": {
"approvalPolicy": {
"$ref": "#/definitions/AskForApproval"
},
"cwd": {
"type": "string"
},
"model": {
"type": "string"
},
"modelProvider": {
"type": "string"
},
"reasoningEffort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
},
"sandbox": {
"$ref": "#/definitions/SandboxPolicy"
},
"thread": {
"$ref": "#/definitions/Thread"
}
}
},
"ThreadArchiveResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadArchiveResponse",
"type": "object"
},
"ThreadRollbackResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadRollbackResponse",
"type": "object",
"required": [
"thread"
],
"properties": {
"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`.",
"allOf": [
{
"$ref": "#/definitions/Thread"
}
]
}
}
},
"ThreadListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadListResponse",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/Thread"
}
},
"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"
]
}
}
},
"ThreadLoadedListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadLoadedListResponse",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"description": "Thread ids for sessions currently loaded in memory.",
"type": "array",
"items": {
"type": "string"
}
},
"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"
]
}
}
},
"ThreadReadResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadReadResponse",
"type": "object",
"required": [
"thread"
],
"properties": {
"thread": {
"$ref": "#/definitions/Thread"
}
}
},
"SkillErrorInfo": {
"type": "object",
"required": [
"message",
"path"
],
"properties": {
"message": {
"type": "string"
},
"path": {
"type": "string"
}
}
},
"SkillInterface": {
"type": "object",
"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"
]
}
}
},
"SkillMetadata": {
"type": "object",
"required": [
"description",
"enabled",
"name",
"path",
"scope"
],
"properties": {
"description": {
"type": "string"
},
"enabled": {
"type": "boolean"
},
"interface": {
"anyOf": [
{
"$ref": "#/definitions/SkillInterface"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
},
"path": {
"type": "string"
},
"scope": {
"$ref": "#/definitions/SkillScope"
},
"shortDescription": {
"description": "Legacy short_description from SKILL.md. Prefer SKILL.toml interface.short_description.",
"type": [
"string",
"null"
]
}
}
},
"SkillScope": {
"type": "string",
"enum": [
"user",
"repo",
"system",
"admin"
]
},
"SkillsListEntry": {
"type": "object",
"required": [
"cwd",
"errors",
"skills"
],
"properties": {
"cwd": {
"type": "string"
},
"errors": {
"type": "array",
"items": {
"$ref": "#/definitions/SkillErrorInfo"
}
},
"skills": {
"type": "array",
"items": {
"$ref": "#/definitions/SkillMetadata"
}
}
}
},
"SkillsListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SkillsListResponse",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/SkillsListEntry"
}
}
}
},
"SkillsConfigWriteResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SkillsConfigWriteResponse",
"type": "object",
"required": [
"effectiveEnabled"
],
"properties": {
"effectiveEnabled": {
"type": "boolean"
}
}
},
"TurnStartResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnStartResponse",
"type": "object",
"required": [
"turn"
],
"properties": {
"turn": {
"$ref": "#/definitions/Turn"
}
}
},
"TurnInterruptResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnInterruptResponse",
"type": "object"
},
"ReviewStartResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ReviewStartResponse",
"type": "object",
"required": [
"reviewThreadId",
"turn"
],
"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/Turn"
}
}
},
"Model": {
"type": "object",
"required": [
"defaultReasoningEffort",
"description",
"displayName",
"id",
"isDefault",
"model",
"supportedReasoningEfforts"
],
"properties": {
"defaultReasoningEffort": {
"$ref": "#/definitions/ReasoningEffort"
},
"description": {
"type": "string"
},
"displayName": {
"type": "string"
},
"id": {
"type": "string"
},
"isDefault": {
"type": "boolean"
},
"model": {
"type": "string"
},
"supportedReasoningEfforts": {
"type": "array",
"items": {
"$ref": "#/definitions/ReasoningEffortOption"
}
}
}
},
"ReasoningEffortOption": {
"type": "object",
"required": [
"description",
"reasoningEffort"
],
"properties": {
"description": {
"type": "string"
},
"reasoningEffort": {
"$ref": "#/definitions/ReasoningEffort"
}
}
},
"ModelListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ModelListResponse",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/Model"
}
},
"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"
]
}
}
},
"CollaborationModeListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CollaborationModeListResponse",
"description": "EXPERIMENTAL - collaboration mode presets response.",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/CollaborationMode"
}
}
}
},
"McpServerOauthLoginResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "McpServerOauthLoginResponse",
"type": "object",
"required": [
"authorizationUrl"
],
"properties": {
"authorizationUrl": {
"type": "string"
}
}
},
"McpServerRefreshResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "McpServerRefreshResponse",
"type": "object"
},
"McpAuthStatus": {
"type": "string",
"enum": [
"unsupported",
"notLoggedIn",
"bearerToken",
"oAuth"
]
},
"McpServerStatus": {
"type": "object",
"required": [
"authStatus",
"name",
"resourceTemplates",
"resources",
"tools"
],
"properties": {
"authStatus": {
"$ref": "#/definitions/McpAuthStatus"
},
"name": {
"type": "string"
},
"resourceTemplates": {
"type": "array",
"items": {
"$ref": "#/definitions/ResourceTemplate"
}
},
"resources": {
"type": "array",
"items": {
"$ref": "#/definitions/Resource"
}
},
"tools": {
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/Tool"
}
}
}
},
"Resource": {
"description": "A known resource that the server is capable of reading.",
"type": "object",
"required": [
"name",
"uri"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/Annotations"
},
{
"type": "null"
}
]
},
"description": {
"type": [
"string",
"null"
]
},
"mimeType": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"size": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"title": {
"type": [
"string",
"null"
]
},
"uri": {
"type": "string"
}
}
},
"ResourceTemplate": {
"description": "A template description for resources available on the server.",
"type": "object",
"required": [
"name",
"uriTemplate"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/Annotations"
},
{
"type": "null"
}
]
},
"description": {
"type": [
"string",
"null"
]
},
"mimeType": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"title": {
"type": [
"string",
"null"
]
},
"uriTemplate": {
"type": "string"
}
}
},
"Tool": {
"description": "Definition for a tool the client can call.",
"type": "object",
"required": [
"inputSchema",
"name"
],
"properties": {
"annotations": {
"anyOf": [
{
"$ref": "#/definitions/ToolAnnotations"
},
{
"type": "null"
}
]
},
"description": {
"type": [
"string",
"null"
]
},
"inputSchema": {
"$ref": "#/definitions/ToolInputSchema"
},
"name": {
"type": "string"
},
"outputSchema": {
"anyOf": [
{
"$ref": "#/definitions/ToolOutputSchema"
},
{
"type": "null"
}
]
},
"title": {
"type": [
"string",
"null"
]
}
}
},
"ToolAnnotations": {
"description": "Additional properties describing a Tool to clients.\n\nNOTE: all properties in ToolAnnotations are **hints**. They are not guaranteed to provide a faithful description of tool behavior (including descriptive properties like `title`).\n\nClients should never make tool use decisions based on ToolAnnotations received from untrusted servers.",
"type": "object",
"properties": {
"destructiveHint": {
"type": [
"boolean",
"null"
]
},
"idempotentHint": {
"type": [
"boolean",
"null"
]
},
"openWorldHint": {
"type": [
"boolean",
"null"
]
},
"readOnlyHint": {
"type": [
"boolean",
"null"
]
},
"title": {
"type": [
"string",
"null"
]
}
}
},
"ToolInputSchema": {
"description": "A JSON Schema object defining the expected parameters for the tool.",
"type": "object",
"properties": {
"properties": true,
"required": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"type": {
"default": "object",
"type": "string"
}
}
},
"ToolOutputSchema": {
"description": "An optional JSON Schema object defining the structure of the tool's output returned in the structuredContent field of a CallToolResult.",
"type": "object",
"properties": {
"properties": true,
"required": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"type": {
"default": "object",
"type": "string"
}
}
},
"ListMcpServerStatusResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ListMcpServerStatusResponse",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/McpServerStatus"
}
},
"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"
]
}
}
},
"LoginAccountResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "LoginAccountResponse",
"oneOf": [
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"apiKey"
],
"title": "ApiKeyv2::LoginAccountResponseType"
}
},
"title": "ApiKeyv2::LoginAccountResponse"
},
{
"type": "object",
"required": [
"authUrl",
"loginId",
"type"
],
"properties": {
"authUrl": {
"description": "URL the client should open in a browser to initiate the OAuth flow.",
"type": "string"
},
"loginId": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"chatgpt"
],
"title": "Chatgptv2::LoginAccountResponseType"
}
},
"title": "Chatgptv2::LoginAccountResponse"
}
]
},
"CancelLoginAccountStatus": {
"type": "string",
"enum": [
"canceled",
"notFound"
]
},
"CancelLoginAccountResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CancelLoginAccountResponse",
"type": "object",
"required": [
"status"
],
"properties": {
"status": {
"$ref": "#/definitions/CancelLoginAccountStatus"
}
}
},
"LogoutAccountResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "LogoutAccountResponse",
"type": "object"
},
"CreditsSnapshot": {
"type": "object",
"required": [
"hasCredits",
"unlimited"
],
"properties": {
"balance": {
"type": [
"string",
"null"
]
},
"hasCredits": {
"type": "boolean"
},
"unlimited": {
"type": "boolean"
}
}
},
"PlanType": {
"type": "string",
"enum": [
"free",
"plus",
"pro",
"team",
"business",
"enterprise",
"edu",
"unknown"
]
},
"RateLimitSnapshot": {
"type": "object",
"properties": {
"credits": {
"anyOf": [
{
"$ref": "#/definitions/CreditsSnapshot"
},
{
"type": "null"
}
]
},
"planType": {
"anyOf": [
{
"$ref": "#/definitions/PlanType"
},
{
"type": "null"
}
]
},
"primary": {
"anyOf": [
{
"$ref": "#/definitions/RateLimitWindow"
},
{
"type": "null"
}
]
},
"secondary": {
"anyOf": [
{
"$ref": "#/definitions/RateLimitWindow"
},
{
"type": "null"
}
]
}
}
},
"RateLimitWindow": {
"type": "object",
"required": [
"usedPercent"
],
"properties": {
"resetsAt": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"usedPercent": {
"type": "integer",
"format": "int32"
},
"windowDurationMins": {
"type": [
"integer",
"null"
],
"format": "int64"
}
}
},
"GetAccountRateLimitsResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GetAccountRateLimitsResponse",
"type": "object",
"required": [
"rateLimits"
],
"properties": {
"rateLimits": {
"$ref": "#/definitions/RateLimitSnapshot"
}
}
},
"FeedbackUploadResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FeedbackUploadResponse",
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"type": "string"
}
}
},
"CommandExecResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecResponse",
"type": "object",
"required": [
"exitCode",
"stderr",
"stdout"
],
"properties": {
"exitCode": {
"type": "integer",
"format": "int32"
},
"stderr": {
"type": "string"
},
"stdout": {
"type": "string"
}
}
},
"AnalyticsConfig": {
"type": "object",
"properties": {
"enabled": {
"type": [
"boolean",
"null"
]
}
},
"additionalProperties": true
},
"Config": {
"type": "object",
"properties": {
"analytics": {
"anyOf": [
{
"$ref": "#/definitions/AnalyticsConfig"
},
{
"type": "null"
}
]
},
"approval_policy": {
"anyOf": [
{
"$ref": "#/definitions/AskForApproval"
},
{
"type": "null"
}
]
},
"compact_prompt": {
"type": [
"string",
"null"
]
},
"developer_instructions": {
"type": [
"string",
"null"
]
},
"forced_chatgpt_workspace_id": {
"type": [
"string",
"null"
]
},
"forced_login_method": {
"anyOf": [
{
"$ref": "#/definitions/ForcedLoginMethod"
},
{
"type": "null"
}
]
},
"instructions": {
"type": [
"string",
"null"
]
},
"model": {
"type": [
"string",
"null"
]
},
"model_auto_compact_token_limit": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"model_context_window": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"model_provider": {
"type": [
"string",
"null"
]
},
"model_reasoning_effort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
},
"model_reasoning_summary": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningSummary"
},
{
"type": "null"
}
]
},
"model_verbosity": {
"anyOf": [
{
"$ref": "#/definitions/Verbosity"
},
{
"type": "null"
}
]
},
"profile": {
"type": [
"string",
"null"
]
},
"profiles": {
"default": {},
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/ProfileV2"
}
},
"review_model": {
"type": [
"string",
"null"
]
},
"sandbox_mode": {
"anyOf": [
{
"$ref": "#/definitions/SandboxMode"
},
{
"type": "null"
}
]
},
"sandbox_workspace_write": {
"anyOf": [
{
"$ref": "#/definitions/SandboxWorkspaceWrite"
},
{
"type": "null"
}
]
},
"tools": {
"anyOf": [
{
"$ref": "#/definitions/ToolsV2"
},
{
"type": "null"
}
]
},
"web_search": {
"anyOf": [
{
"$ref": "#/definitions/WebSearchMode"
},
{
"type": "null"
}
]
}
},
"additionalProperties": true
},
"ConfigLayer": {
"type": "object",
"required": [
"config",
"name",
"version"
],
"properties": {
"config": true,
"name": {
"$ref": "#/definitions/ConfigLayerSource"
},
"version": {
"type": "string"
}
}
},
"ConfigLayerMetadata": {
"type": "object",
"required": [
"name",
"version"
],
"properties": {
"name": {
"$ref": "#/definitions/ConfigLayerSource"
},
"version": {
"type": "string"
}
}
},
"ConfigLayerSource": {
"oneOf": [
{
"description": "Managed preferences layer delivered by MDM (macOS only).",
"type": "object",
"required": [
"domain",
"key",
"type"
],
"properties": {
"domain": {
"type": "string"
},
"key": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"mdm"
],
"title": "MdmConfigLayerSourceType"
}
},
"title": "MdmConfigLayerSource"
},
{
"description": "Managed config layer from a file (usually `managed_config.toml`).",
"type": "object",
"required": [
"file",
"type"
],
"properties": {
"file": {
"description": "This is the path to the system config.toml file, though it is not guaranteed to exist.",
"allOf": [
{
"$ref": "#/definitions/AbsolutePathBuf"
}
]
},
"type": {
"type": "string",
"enum": [
"system"
],
"title": "SystemConfigLayerSourceType"
}
},
"title": "SystemConfigLayerSource"
},
{
"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",
"type": "object",
"required": [
"file",
"type"
],
"properties": {
"file": {
"description": "This is the path to the user's config.toml file, though it is not guaranteed to exist.",
"allOf": [
{
"$ref": "#/definitions/AbsolutePathBuf"
}
]
},
"type": {
"type": "string",
"enum": [
"user"
],
"title": "UserConfigLayerSourceType"
}
},
"title": "UserConfigLayerSource"
},
{
"description": "Path to a .codex/ folder within a project. There could be multiple of these between `cwd` and the project/repo root.",
"type": "object",
"required": [
"dotCodexFolder",
"type"
],
"properties": {
"dotCodexFolder": {
"$ref": "#/definitions/AbsolutePathBuf"
},
"type": {
"type": "string",
"enum": [
"project"
],
"title": "ProjectConfigLayerSourceType"
}
},
"title": "ProjectConfigLayerSource"
},
{
"description": "Session-layer overrides supplied via `-c`/`--config`.",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"sessionFlags"
],
"title": "SessionFlagsConfigLayerSourceType"
}
},
"title": "SessionFlagsConfigLayerSource"
},
{
"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`.",
"type": "object",
"required": [
"file",
"type"
],
"properties": {
"file": {
"$ref": "#/definitions/AbsolutePathBuf"
},
"type": {
"type": "string",
"enum": [
"legacyManagedConfigTomlFromFile"
],
"title": "LegacyManagedConfigTomlFromFileConfigLayerSourceType"
}
},
"title": "LegacyManagedConfigTomlFromFileConfigLayerSource"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"legacyManagedConfigTomlFromMdm"
],
"title": "LegacyManagedConfigTomlFromMdmConfigLayerSourceType"
}
},
"title": "LegacyManagedConfigTomlFromMdmConfigLayerSource"
}
]
},
"ForcedLoginMethod": {
"type": "string",
"enum": [
"chatgpt",
"api"
]
},
"ProfileV2": {
"type": "object",
"properties": {
"approval_policy": {
"anyOf": [
{
"$ref": "#/definitions/AskForApproval"
},
{
"type": "null"
}
]
},
"chatgpt_base_url": {
"type": [
"string",
"null"
]
},
"model": {
"type": [
"string",
"null"
]
},
"model_provider": {
"type": [
"string",
"null"
]
},
"model_reasoning_effort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
},
"model_reasoning_summary": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningSummary"
},
{
"type": "null"
}
]
},
"model_verbosity": {
"anyOf": [
{
"$ref": "#/definitions/Verbosity"
},
{
"type": "null"
}
]
},
"web_search": {
"anyOf": [
{
"$ref": "#/definitions/WebSearchMode"
},
{
"type": "null"
}
]
}
},
"additionalProperties": true
},
"SandboxWorkspaceWrite": {
"type": "object",
"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": [],
"type": "array",
"items": {
"type": "string"
}
}
}
},
"ToolsV2": {
"type": "object",
"properties": {
"view_image": {
"type": [
"boolean",
"null"
]
},
"web_search": {
"type": [
"boolean",
"null"
]
}
}
},
"Verbosity": {
"description": "Controls output length/detail on GPT-5 models via the Responses API. Serialized with lowercase values to match the OpenAI API.",
"type": "string",
"enum": [
"low",
"medium",
"high"
]
},
"WebSearchMode": {
"type": "string",
"enum": [
"disabled",
"cached",
"live"
]
},
"ConfigReadResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ConfigReadResponse",
"type": "object",
"required": [
"config",
"origins"
],
"properties": {
"config": {
"$ref": "#/definitions/Config"
},
"layers": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/ConfigLayer"
}
},
"origins": {
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/ConfigLayerMetadata"
}
}
}
},
"OverriddenMetadata": {
"type": "object",
"required": [
"effectiveValue",
"message",
"overridingLayer"
],
"properties": {
"effectiveValue": true,
"message": {
"type": "string"
},
"overridingLayer": {
"$ref": "#/definitions/ConfigLayerMetadata"
}
}
},
"WriteStatus": {
"type": "string",
"enum": [
"ok",
"okOverridden"
]
},
"ConfigWriteResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ConfigWriteResponse",
"type": "object",
"required": [
"filePath",
"status",
"version"
],
"properties": {
"filePath": {
"description": "Canonical path to the config file that was written.",
"allOf": [
{
"$ref": "#/definitions/AbsolutePathBuf"
}
]
},
"overriddenMetadata": {
"anyOf": [
{
"$ref": "#/definitions/OverriddenMetadata"
},
{
"type": "null"
}
]
},
"status": {
"$ref": "#/definitions/WriteStatus"
},
"version": {
"type": "string"
}
}
},
"ConfigRequirements": {
"type": "object",
"properties": {
"allowedApprovalPolicies": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/AskForApproval"
}
},
"allowedSandboxModes": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/SandboxMode"
}
}
}
},
"ConfigRequirementsReadResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ConfigRequirementsReadResponse",
"type": "object",
"properties": {
"requirements": {
"description": "Null if no requirements are configured (e.g. no requirements.toml/MDM entries).",
"anyOf": [
{
"$ref": "#/definitions/ConfigRequirements"
},
{
"type": "null"
}
]
}
}
},
"Account": {
"oneOf": [
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"apiKey"
],
"title": "ApiKeyAccountType"
}
},
"title": "ApiKeyAccount"
},
{
"type": "object",
"required": [
"email",
"planType",
"type"
],
"properties": {
"email": {
"type": "string"
},
"planType": {
"$ref": "#/definitions/PlanType"
},
"type": {
"type": "string",
"enum": [
"chatgpt"
],
"title": "ChatgptAccountType"
}
},
"title": "ChatgptAccount"
}
]
},
"GetAccountResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GetAccountResponse",
"type": "object",
"required": [
"requiresOpenaiAuth"
],
"properties": {
"account": {
"anyOf": [
{
"$ref": "#/definitions/Account"
},
{
"type": "null"
}
]
},
"requiresOpenaiAuth": {
"type": "boolean"
}
}
},
"ErrorNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ErrorNotification",
"type": "object",
"required": [
"error",
"threadId",
"turnId",
"willRetry"
],
"properties": {
"error": {
"$ref": "#/definitions/TurnError"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
},
"willRetry": {
"type": "boolean"
}
}
},
"ThreadStartedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadStartedNotification",
"type": "object",
"required": [
"thread"
],
"properties": {
"thread": {
"$ref": "#/definitions/Thread"
}
}
},
"ThreadTokenUsage": {
"type": "object",
"required": [
"last",
"total"
],
"properties": {
"last": {
"$ref": "#/definitions/TokenUsageBreakdown"
},
"modelContextWindow": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"total": {
"$ref": "#/definitions/TokenUsageBreakdown"
}
}
},
"TokenUsageBreakdown": {
"type": "object",
"required": [
"cachedInputTokens",
"inputTokens",
"outputTokens",
"reasoningOutputTokens",
"totalTokens"
],
"properties": {
"cachedInputTokens": {
"type": "integer",
"format": "int64"
},
"inputTokens": {
"type": "integer",
"format": "int64"
},
"outputTokens": {
"type": "integer",
"format": "int64"
},
"reasoningOutputTokens": {
"type": "integer",
"format": "int64"
},
"totalTokens": {
"type": "integer",
"format": "int64"
}
}
},
"ThreadTokenUsageUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadTokenUsageUpdatedNotification",
"type": "object",
"required": [
"threadId",
"tokenUsage",
"turnId"
],
"properties": {
"threadId": {
"type": "string"
},
"tokenUsage": {
"$ref": "#/definitions/ThreadTokenUsage"
},
"turnId": {
"type": "string"
}
}
},
"TurnStartedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnStartedNotification",
"type": "object",
"required": [
"threadId",
"turn"
],
"properties": {
"threadId": {
"type": "string"
},
"turn": {
"$ref": "#/definitions/Turn"
}
}
},
"TurnCompletedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnCompletedNotification",
"type": "object",
"required": [
"threadId",
"turn"
],
"properties": {
"threadId": {
"type": "string"
},
"turn": {
"$ref": "#/definitions/Turn"
}
}
},
"TurnDiffUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnDiffUpdatedNotification",
"description": "Notification that the turn-level unified diff has changed. Contains the latest aggregated diff across all file changes in the turn.",
"type": "object",
"required": [
"diff",
"threadId",
"turnId"
],
"properties": {
"diff": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"TurnPlanStep": {
"type": "object",
"required": [
"status",
"step"
],
"properties": {
"status": {
"$ref": "#/definitions/TurnPlanStepStatus"
},
"step": {
"type": "string"
}
}
},
"TurnPlanStepStatus": {
"type": "string",
"enum": [
"pending",
"inProgress",
"completed"
]
},
"TurnPlanUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnPlanUpdatedNotification",
"type": "object",
"required": [
"plan",
"threadId",
"turnId"
],
"properties": {
"explanation": {
"type": [
"string",
"null"
]
},
"plan": {
"type": "array",
"items": {
"$ref": "#/definitions/TurnPlanStep"
}
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ItemStartedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ItemStartedNotification",
"type": "object",
"required": [
"item",
"threadId",
"turnId"
],
"properties": {
"item": {
"$ref": "#/definitions/ThreadItem"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ItemCompletedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ItemCompletedNotification",
"type": "object",
"required": [
"item",
"threadId",
"turnId"
],
"properties": {
"item": {
"$ref": "#/definitions/ThreadItem"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"RawResponseItemCompletedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "RawResponseItemCompletedNotification",
"type": "object",
"required": [
"item",
"threadId",
"turnId"
],
"properties": {
"item": {
"$ref": "#/definitions/ResponseItem"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"AgentMessageDeltaNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "AgentMessageDeltaNotification",
"type": "object",
"required": [
"delta",
"itemId",
"threadId",
"turnId"
],
"properties": {
"delta": {
"type": "string"
},
"itemId": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"CommandExecutionOutputDeltaNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecutionOutputDeltaNotification",
"type": "object",
"required": [
"delta",
"itemId",
"threadId",
"turnId"
],
"properties": {
"delta": {
"type": "string"
},
"itemId": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"TerminalInteractionNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TerminalInteractionNotification",
"type": "object",
"required": [
"itemId",
"processId",
"stdin",
"threadId",
"turnId"
],
"properties": {
"itemId": {
"type": "string"
},
"processId": {
"type": "string"
},
"stdin": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"FileChangeOutputDeltaNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FileChangeOutputDeltaNotification",
"type": "object",
"required": [
"delta",
"itemId",
"threadId",
"turnId"
],
"properties": {
"delta": {
"type": "string"
},
"itemId": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"McpToolCallProgressNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "McpToolCallProgressNotification",
"type": "object",
"required": [
"itemId",
"message",
"threadId",
"turnId"
],
"properties": {
"itemId": {
"type": "string"
},
"message": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"McpServerOauthLoginCompletedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "McpServerOauthLoginCompletedNotification",
"type": "object",
"required": [
"name",
"success"
],
"properties": {
"error": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"success": {
"type": "boolean"
}
}
},
"AuthMode": {
"type": "string",
"enum": [
"apikey",
"chatgpt"
]
},
"AccountUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "AccountUpdatedNotification",
"type": "object",
"properties": {
"authMode": {
"anyOf": [
{
"$ref": "#/definitions/AuthMode"
},
{
"type": "null"
}
]
}
}
},
"AccountRateLimitsUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "AccountRateLimitsUpdatedNotification",
"type": "object",
"required": [
"rateLimits"
],
"properties": {
"rateLimits": {
"$ref": "#/definitions/RateLimitSnapshot"
}
}
},
"ReasoningSummaryTextDeltaNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ReasoningSummaryTextDeltaNotification",
"type": "object",
"required": [
"delta",
"itemId",
"summaryIndex",
"threadId",
"turnId"
],
"properties": {
"delta": {
"type": "string"
},
"itemId": {
"type": "string"
},
"summaryIndex": {
"type": "integer",
"format": "int64"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ReasoningSummaryPartAddedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ReasoningSummaryPartAddedNotification",
"type": "object",
"required": [
"itemId",
"summaryIndex",
"threadId",
"turnId"
],
"properties": {
"itemId": {
"type": "string"
},
"summaryIndex": {
"type": "integer",
"format": "int64"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ReasoningTextDeltaNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ReasoningTextDeltaNotification",
"type": "object",
"required": [
"contentIndex",
"delta",
"itemId",
"threadId",
"turnId"
],
"properties": {
"contentIndex": {
"type": "integer",
"format": "int64"
},
"delta": {
"type": "string"
},
"itemId": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ContextCompactedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ContextCompactedNotification",
"type": "object",
"required": [
"threadId",
"turnId"
],
"properties": {
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"DeprecationNoticeNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "DeprecationNoticeNotification",
"type": "object",
"required": [
"summary"
],
"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"
}
}
},
"ConfigWarningNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ConfigWarningNotification",
"type": "object",
"required": [
"summary"
],
"properties": {
"details": {
"description": "Optional extra guidance or error details.",
"type": [
"string",
"null"
]
},
"summary": {
"description": "Concise summary of the warning.",
"type": "string"
}
}
},
"WindowsWorldWritableWarningNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "WindowsWorldWritableWarningNotification",
"type": "object",
"required": [
"extraCount",
"failedScan",
"samplePaths"
],
"properties": {
"extraCount": {
"type": "integer",
"format": "uint",
"minimum": 0
},
"failedScan": {
"type": "boolean"
},
"samplePaths": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"AccountLoginCompletedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "AccountLoginCompletedNotification",
"type": "object",
"required": [
"success"
],
"properties": {
"error": {
"type": [
"string",
"null"
]
},
"loginId": {
"type": [
"string",
"null"
]
},
"success": {
"type": "boolean"
}
}
}
},
"InitializeResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "InitializeResponse",
"type": "object",
"required": [
"userAgent"
],
"properties": {
"userAgent": {
"type": "string"
}
}
},
"NewConversationResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "NewConversationResponse",
"type": "object",
"required": [
"conversationId",
"model",
"rolloutPath"
],
"properties": {
"conversationId": {
"$ref": "#/definitions/ThreadId"
},
"model": {
"type": "string"
},
"reasoningEffort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
},
"rolloutPath": {
"type": "string"
}
}
},
"ConversationGitInfo": {
"type": "object",
"properties": {
"branch": {
"type": [
"string",
"null"
]
},
"origin_url": {
"type": [
"string",
"null"
]
},
"sha": {
"type": [
"string",
"null"
]
}
}
},
"ConversationSummary": {
"type": "object",
"required": [
"cliVersion",
"conversationId",
"cwd",
"modelProvider",
"path",
"preview",
"source"
],
"properties": {
"cliVersion": {
"type": "string"
},
"conversationId": {
"$ref": "#/definitions/ThreadId"
},
"cwd": {
"type": "string"
},
"gitInfo": {
"anyOf": [
{
"$ref": "#/definitions/ConversationGitInfo"
},
{
"type": "null"
}
]
},
"modelProvider": {
"type": "string"
},
"path": {
"type": "string"
},
"preview": {
"type": "string"
},
"source": {
"$ref": "#/definitions/SessionSource"
},
"timestamp": {
"type": [
"string",
"null"
]
},
"updatedAt": {
"type": [
"string",
"null"
]
}
}
},
"SubAgentSource": {
"oneOf": [
{
"type": "string",
"enum": [
"review",
"compact"
]
},
{
"type": "object",
"required": [
"other"
],
"properties": {
"other": {
"type": "string"
}
},
"additionalProperties": false,
"title": "OtherSubAgentSource"
}
]
},
"GetConversationSummaryResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GetConversationSummaryResponse",
"type": "object",
"required": [
"summary"
],
"properties": {
"summary": {
"$ref": "#/definitions/ConversationSummary"
}
}
},
"ListConversationsResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ListConversationsResponse",
"type": "object",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"$ref": "#/definitions/ConversationSummary"
}
},
"nextCursor": {
"type": [
"string",
"null"
]
}
}
},
"ResumeConversationResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ResumeConversationResponse",
"type": "object",
"required": [
"conversationId",
"model",
"rolloutPath"
],
"properties": {
"conversationId": {
"$ref": "#/definitions/ThreadId"
},
"initialMessages": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/EventMsg"
}
},
"model": {
"type": "string"
},
"rolloutPath": {
"type": "string"
}
}
},
"ForkConversationResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ForkConversationResponse",
"type": "object",
"required": [
"conversationId",
"model",
"rolloutPath"
],
"properties": {
"conversationId": {
"$ref": "#/definitions/ThreadId"
},
"initialMessages": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/EventMsg"
}
},
"model": {
"type": "string"
},
"rolloutPath": {
"type": "string"
}
}
},
"ArchiveConversationResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ArchiveConversationResponse",
"type": "object"
},
"SendUserMessageResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SendUserMessageResponse",
"type": "object"
},
"SendUserTurnResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SendUserTurnResponse",
"type": "object"
},
"InterruptConversationResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "InterruptConversationResponse",
"type": "object",
"required": [
"abortReason"
],
"properties": {
"abortReason": {
"$ref": "#/definitions/TurnAbortReason"
}
}
},
"AddConversationSubscriptionResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "AddConversationSubscriptionResponse",
"type": "object",
"required": [
"subscriptionId"
],
"properties": {
"subscriptionId": {
"type": "string"
}
}
},
"RemoveConversationSubscriptionResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "RemoveConversationSubscriptionResponse",
"type": "object"
},
"GitSha": {
"type": "string"
},
"GitDiffToRemoteResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GitDiffToRemoteResponse",
"type": "object",
"required": [
"diff",
"sha"
],
"properties": {
"diff": {
"type": "string"
},
"sha": {
"$ref": "#/definitions/GitSha"
}
}
},
"LoginApiKeyResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "LoginApiKeyResponse",
"type": "object"
},
"LoginChatGptResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "LoginChatGptResponse",
"type": "object",
"required": [
"authUrl",
"loginId"
],
"properties": {
"authUrl": {
"type": "string"
},
"loginId": {
"type": "string"
}
}
},
"CancelLoginChatGptResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CancelLoginChatGptResponse",
"type": "object"
},
"LogoutChatGptResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "LogoutChatGptResponse",
"type": "object"
},
"GetAuthStatusResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GetAuthStatusResponse",
"type": "object",
"properties": {
"authMethod": {
"anyOf": [
{
"$ref": "#/definitions/AuthMode"
},
{
"type": "null"
}
]
},
"authToken": {
"type": [
"string",
"null"
]
},
"requiresOpenaiAuth": {
"type": [
"boolean",
"null"
]
}
}
},
"ForcedLoginMethod": {
"type": "string",
"enum": [
"chatgpt",
"api"
]
},
"Profile": {
"type": "object",
"properties": {
"approvalPolicy": {
"anyOf": [
{
"$ref": "#/definitions/AskForApproval"
},
{
"type": "null"
}
]
},
"chatgptBaseUrl": {
"type": [
"string",
"null"
]
},
"model": {
"type": [
"string",
"null"
]
},
"modelProvider": {
"type": [
"string",
"null"
]
},
"modelReasoningEffort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
},
"modelReasoningSummary": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningSummary"
},
{
"type": "null"
}
]
},
"modelVerbosity": {
"anyOf": [
{
"$ref": "#/definitions/Verbosity"
},
{
"type": "null"
}
]
}
}
},
"SandboxSettings": {
"type": "object",
"properties": {
"excludeSlashTmp": {
"type": [
"boolean",
"null"
]
},
"excludeTmpdirEnvVar": {
"type": [
"boolean",
"null"
]
},
"networkAccess": {
"type": [
"boolean",
"null"
]
},
"writableRoots": {
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/AbsolutePathBuf"
}
}
}
},
"Tools": {
"type": "object",
"properties": {
"viewImage": {
"type": [
"boolean",
"null"
]
},
"webSearch": {
"type": [
"boolean",
"null"
]
}
}
},
"UserSavedConfig": {
"type": "object",
"required": [
"profiles"
],
"properties": {
"approvalPolicy": {
"anyOf": [
{
"$ref": "#/definitions/AskForApproval"
},
{
"type": "null"
}
]
},
"forcedChatgptWorkspaceId": {
"type": [
"string",
"null"
]
},
"forcedLoginMethod": {
"anyOf": [
{
"$ref": "#/definitions/ForcedLoginMethod"
},
{
"type": "null"
}
]
},
"model": {
"type": [
"string",
"null"
]
},
"modelReasoningEffort": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningEffort"
},
{
"type": "null"
}
]
},
"modelReasoningSummary": {
"anyOf": [
{
"$ref": "#/definitions/ReasoningSummary"
},
{
"type": "null"
}
]
},
"modelVerbosity": {
"anyOf": [
{
"$ref": "#/definitions/Verbosity"
},
{
"type": "null"
}
]
},
"profile": {
"type": [
"string",
"null"
]
},
"profiles": {
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/Profile"
}
},
"sandboxMode": {
"anyOf": [
{
"$ref": "#/definitions/SandboxMode"
},
{
"type": "null"
}
]
},
"sandboxSettings": {
"anyOf": [
{
"$ref": "#/definitions/SandboxSettings"
},
{
"type": "null"
}
]
},
"tools": {
"anyOf": [
{
"$ref": "#/definitions/Tools"
},
{
"type": "null"
}
]
}
}
},
"Verbosity": {
"description": "Controls output length/detail on GPT-5 models via the Responses API. Serialized with lowercase values to match the OpenAI API.",
"type": "string",
"enum": [
"low",
"medium",
"high"
]
},
"GetUserSavedConfigResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GetUserSavedConfigResponse",
"type": "object",
"required": [
"config"
],
"properties": {
"config": {
"$ref": "#/definitions/UserSavedConfig"
}
}
},
"SetDefaultModelResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SetDefaultModelResponse",
"type": "object"
},
"GetUserAgentResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GetUserAgentResponse",
"type": "object",
"required": [
"userAgent"
],
"properties": {
"userAgent": {
"type": "string"
}
}
},
"UserInfoResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "UserInfoResponse",
"type": "object",
"properties": {
"allegedUserEmail": {
"type": [
"string",
"null"
]
}
}
},
"FuzzyFileSearchResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FuzzyFileSearchResponse",
"type": "object",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"$ref": "#/definitions/FuzzyFileSearchResult"
}
}
}
},
"ExecOneOffCommandResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExecOneOffCommandResponse",
"type": "object",
"required": [
"exitCode",
"stderr",
"stdout"
],
"properties": {
"exitCode": {
"type": "integer",
"format": "int32"
},
"stderr": {
"type": "string"
},
"stdout": {
"type": "string"
}
}
},
"CommandExecutionRequestApprovalResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecutionRequestApprovalResponse",
"type": "object",
"required": [
"decision"
],
"properties": {
"decision": {
"$ref": "#/definitions/CommandExecutionApprovalDecision"
}
}
},
"FileChangeRequestApprovalResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FileChangeRequestApprovalResponse",
"type": "object",
"required": [
"decision"
],
"properties": {
"decision": {
"$ref": "#/definitions/FileChangeApprovalDecision"
}
}
},
"ToolRequestUserInputResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ToolRequestUserInputResponse",
"description": "EXPERIMENTAL. Response payload mapping question ids to answers.",
"type": "object",
"required": [
"answers"
],
"properties": {
"answers": {
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/ToolRequestUserInputAnswer"
}
}
}
},
"ApplyPatchApprovalResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ApplyPatchApprovalResponse",
"type": "object",
"required": [
"decision"
],
"properties": {
"decision": {
"$ref": "#/definitions/ReviewDecision"
}
}
},
"ExecCommandApprovalResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExecCommandApprovalResponse",
"type": "object",
"required": [
"decision"
],
"properties": {
"decision": {
"$ref": "#/definitions/ReviewDecision"
}
}
}
}
}