Files
codex-telegram-bot/schemas/codex_app_server_protocol.schemas.json
2026-06-23 11:20:03 +00:00

20669 lines
538 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CodexAppServerProtocol",
"type": "object",
"definitions": {
"RequestId": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "RequestId",
"anyOf": [
{
"type": "string"
},
{
"type": "integer",
"format": "int64"
}
]
},
"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/v2/RequestId"
}
}
},
"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"
}
}
},
"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/v2/RequestId"
},
"method": {
"type": "string"
},
"params": true,
"trace": {
"description": "Optional W3C Trace Context for distributed tracing.",
"anyOf": [
{
"$ref": "#/definitions/W3cTraceContext"
},
{
"type": "null"
}
]
}
}
},
"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/v2/RequestId"
},
"result": true
}
},
"W3cTraceContext": {
"type": "object",
"properties": {
"traceparent": {
"type": [
"string",
"null"
]
},
"tracestate": {
"type": [
"string",
"null"
]
}
}
},
"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"
}
]
},
"ClientInfo": {
"type": "object",
"required": [
"name",
"version"
],
"properties": {
"name": {
"type": "string"
},
"title": {
"type": [
"string",
"null"
]
},
"version": {
"type": "string"
}
}
},
"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"
}
}
}
},
"ExecCommandApprovalResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExecCommandApprovalResponse",
"type": "object",
"required": [
"decision"
],
"properties": {
"decision": {
"$ref": "#/definitions/ReviewDecision"
}
}
},
"ApplyPatchApprovalResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ApplyPatchApprovalResponse",
"type": "object",
"required": [
"decision"
],
"properties": {
"decision": {
"$ref": "#/definitions/ReviewDecision"
}
}
},
"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 request and wants future prompts in the same session-scoped approval cache to be automatically approved for the remainder of the session.",
"type": "string",
"enum": [
"approved_for_session"
]
},
{
"description": "User chose to persist a network policy rule (allow/deny) for future requests to the same host.",
"type": "object",
"required": [
"network_policy_amendment"
],
"properties": {
"network_policy_amendment": {
"type": "object",
"required": [
"network_policy_amendment"
],
"properties": {
"network_policy_amendment": {
"$ref": "#/definitions/NetworkPolicyAmendment"
}
}
}
},
"additionalProperties": false,
"title": "NetworkPolicyAmendmentReviewDecision"
},
{
"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": "Automatic approval review timed out before reaching a decision.",
"type": "string",
"enum": [
"timed_out"
]
},
{
"description": "User has denied this command and the agent should not do anything until the user's next command.",
"type": "string",
"enum": [
"abort"
]
}
]
},
"InitializeCapabilities": {
"description": "Client-declared capabilities negotiated during initialize.",
"type": "object",
"properties": {
"experimentalApi": {
"description": "Opt into receiving experimental API methods and fields.",
"default": false,
"type": "boolean"
},
"mcpServerOpenaiFormElicitation": {
"description": "Allow downstream MCP servers to request OpenAI extended form elicitations.",
"type": "boolean"
},
"optOutNotificationMethods": {
"description": "Exact notification method names that should be suppressed for this connection (for example `thread/started`).",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"requestAttestation": {
"description": "Opt into `attestation/generate` requests for upstream `x-oai-attestation`.",
"default": false,
"type": "boolean"
}
}
},
"InitializeParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "InitializeParams",
"type": "object",
"required": [
"clientInfo"
],
"properties": {
"capabilities": {
"anyOf": [
{
"$ref": "#/definitions/InitializeCapabilities"
},
{
"type": "null"
}
]
},
"clientInfo": {
"$ref": "#/definitions/ClientInfo"
}
}
},
"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/v2/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/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/start"
],
"title": "Thread/startRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadStartParams"
}
},
"title": "Thread/startRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/resume"
],
"title": "Thread/resumeRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadResumeParams"
}
},
"title": "Thread/resumeRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/fork"
],
"title": "Thread/forkRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadForkParams"
}
},
"title": "Thread/forkRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/archive"
],
"title": "Thread/archiveRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadArchiveParams"
}
},
"title": "Thread/archiveRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/delete"
],
"title": "Thread/deleteRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadDeleteParams"
}
},
"title": "Thread/deleteRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/unsubscribe"
],
"title": "Thread/unsubscribeRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadUnsubscribeParams"
}
},
"title": "Thread/unsubscribeRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/name/set"
],
"title": "Thread/name/setRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadSetNameParams"
}
},
"title": "Thread/name/setRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/goal/set"
],
"title": "Thread/goal/setRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadGoalSetParams"
}
},
"title": "Thread/goal/setRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/goal/get"
],
"title": "Thread/goal/getRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadGoalGetParams"
}
},
"title": "Thread/goal/getRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/goal/clear"
],
"title": "Thread/goal/clearRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadGoalClearParams"
}
},
"title": "Thread/goal/clearRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/metadata/update"
],
"title": "Thread/metadata/updateRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadMetadataUpdateParams"
}
},
"title": "Thread/metadata/updateRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/unarchive"
],
"title": "Thread/unarchiveRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadUnarchiveParams"
}
},
"title": "Thread/unarchiveRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/compact/start"
],
"title": "Thread/compact/startRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadCompactStartParams"
}
},
"title": "Thread/compact/startRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/shellCommand"
],
"title": "Thread/shellCommandRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadShellCommandParams"
}
},
"title": "Thread/shellCommandRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/approveGuardianDeniedAction"
],
"title": "Thread/approveGuardianDeniedActionRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadApproveGuardianDeniedActionParams"
}
},
"title": "Thread/approveGuardianDeniedActionRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/rollback"
],
"title": "Thread/rollbackRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadRollbackParams"
}
},
"title": "Thread/rollbackRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/list"
],
"title": "Thread/listRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadListParams"
}
},
"title": "Thread/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/loaded/list"
],
"title": "Thread/loaded/listRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadLoadedListParams"
}
},
"title": "Thread/loaded/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/read"
],
"title": "Thread/readRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadReadParams"
}
},
"title": "Thread/readRequest"
},
{
"description": "Append raw Responses API items to the thread history without starting a user turn.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"thread/inject_items"
],
"title": "Thread/injectItemsRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadInjectItemsParams"
}
},
"title": "Thread/injectItemsRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"skills/list"
],
"title": "Skills/listRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/SkillsListParams"
}
},
"title": "Skills/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"skills/extraRoots/set"
],
"title": "Skills/extraRoots/setRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/SkillsExtraRootsSetParams"
}
},
"title": "Skills/extraRoots/setRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"hooks/list"
],
"title": "Hooks/listRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/HooksListParams"
}
},
"title": "Hooks/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"marketplace/add"
],
"title": "Marketplace/addRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/MarketplaceAddParams"
}
},
"title": "Marketplace/addRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"marketplace/remove"
],
"title": "Marketplace/removeRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/MarketplaceRemoveParams"
}
},
"title": "Marketplace/removeRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"marketplace/upgrade"
],
"title": "Marketplace/upgradeRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/MarketplaceUpgradeParams"
}
},
"title": "Marketplace/upgradeRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"plugin/list"
],
"title": "Plugin/listRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/PluginListParams"
}
},
"title": "Plugin/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"plugin/installed"
],
"title": "Plugin/installedRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/PluginInstalledParams"
}
},
"title": "Plugin/installedRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"plugin/read"
],
"title": "Plugin/readRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/PluginReadParams"
}
},
"title": "Plugin/readRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"plugin/skill/read"
],
"title": "Plugin/skill/readRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/PluginSkillReadParams"
}
},
"title": "Plugin/skill/readRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"plugin/share/save"
],
"title": "Plugin/share/saveRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/PluginShareSaveParams"
}
},
"title": "Plugin/share/saveRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"plugin/share/updateTargets"
],
"title": "Plugin/share/updateTargetsRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/PluginShareUpdateTargetsParams"
}
},
"title": "Plugin/share/updateTargetsRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"plugin/share/list"
],
"title": "Plugin/share/listRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/PluginShareListParams"
}
},
"title": "Plugin/share/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"plugin/share/checkout"
],
"title": "Plugin/share/checkoutRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/PluginShareCheckoutParams"
}
},
"title": "Plugin/share/checkoutRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"plugin/share/delete"
],
"title": "Plugin/share/deleteRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/PluginShareDeleteParams"
}
},
"title": "Plugin/share/deleteRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"app/list"
],
"title": "App/listRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/AppsListParams"
}
},
"title": "App/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"fs/readFile"
],
"title": "Fs/readFileRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/FsReadFileParams"
}
},
"title": "Fs/readFileRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"fs/writeFile"
],
"title": "Fs/writeFileRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/FsWriteFileParams"
}
},
"title": "Fs/writeFileRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"fs/createDirectory"
],
"title": "Fs/createDirectoryRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/FsCreateDirectoryParams"
}
},
"title": "Fs/createDirectoryRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"fs/getMetadata"
],
"title": "Fs/getMetadataRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/FsGetMetadataParams"
}
},
"title": "Fs/getMetadataRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"fs/readDirectory"
],
"title": "Fs/readDirectoryRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/FsReadDirectoryParams"
}
},
"title": "Fs/readDirectoryRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"fs/remove"
],
"title": "Fs/removeRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/FsRemoveParams"
}
},
"title": "Fs/removeRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"fs/copy"
],
"title": "Fs/copyRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/FsCopyParams"
}
},
"title": "Fs/copyRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"fs/watch"
],
"title": "Fs/watchRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/FsWatchParams"
}
},
"title": "Fs/watchRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"fs/unwatch"
],
"title": "Fs/unwatchRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/FsUnwatchParams"
}
},
"title": "Fs/unwatchRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"skills/config/write"
],
"title": "Skills/config/writeRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/SkillsConfigWriteParams"
}
},
"title": "Skills/config/writeRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"plugin/install"
],
"title": "Plugin/installRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/PluginInstallParams"
}
},
"title": "Plugin/installRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"plugin/uninstall"
],
"title": "Plugin/uninstallRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/PluginUninstallParams"
}
},
"title": "Plugin/uninstallRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"turn/start"
],
"title": "Turn/startRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/TurnStartParams"
}
},
"title": "Turn/startRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"turn/steer"
],
"title": "Turn/steerRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/TurnSteerParams"
}
},
"title": "Turn/steerRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"turn/interrupt"
],
"title": "Turn/interruptRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/TurnInterruptParams"
}
},
"title": "Turn/interruptRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"review/start"
],
"title": "Review/startRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ReviewStartParams"
}
},
"title": "Review/startRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"model/list"
],
"title": "Model/listRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ModelListParams"
}
},
"title": "Model/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"modelProvider/capabilities/read"
],
"title": "ModelProvider/capabilities/readRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ModelProviderCapabilitiesReadParams"
}
},
"title": "ModelProvider/capabilities/readRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"experimentalFeature/list"
],
"title": "ExperimentalFeature/listRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ExperimentalFeatureListParams"
}
},
"title": "ExperimentalFeature/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"permissionProfile/list"
],
"title": "PermissionProfile/listRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/PermissionProfileListParams"
}
},
"title": "PermissionProfile/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"experimentalFeature/enablement/set"
],
"title": "ExperimentalFeature/enablement/setRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ExperimentalFeatureEnablementSetParams"
}
},
"title": "ExperimentalFeature/enablement/setRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"mcpServer/oauth/login"
],
"title": "McpServer/oauth/loginRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/McpServerOauthLoginParams"
}
},
"title": "McpServer/oauth/loginRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/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/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"mcpServerStatus/list"
],
"title": "McpServerStatus/listRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ListMcpServerStatusParams"
}
},
"title": "McpServerStatus/listRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"mcpServer/resource/read"
],
"title": "McpServer/resource/readRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/McpResourceReadParams"
}
},
"title": "McpServer/resource/readRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"mcpServer/tool/call"
],
"title": "McpServer/tool/callRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/McpServerToolCallParams"
}
},
"title": "McpServer/tool/callRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"windowsSandbox/setupStart"
],
"title": "WindowsSandbox/setupStartRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/WindowsSandboxSetupStartParams"
}
},
"title": "WindowsSandbox/setupStartRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"windowsSandbox/readiness"
],
"title": "WindowsSandbox/readinessRequestMethod"
},
"params": {
"type": "null"
}
},
"title": "WindowsSandbox/readinessRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"account/login/start"
],
"title": "Account/login/startRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/LoginAccountParams"
}
},
"title": "Account/login/startRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"account/login/cancel"
],
"title": "Account/login/cancelRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/CancelLoginAccountParams"
}
},
"title": "Account/login/cancelRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/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/v2/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/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"account/rateLimitResetCredit/consume"
],
"title": "Account/rateLimitResetCredit/consumeRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ConsumeAccountRateLimitResetCreditParams"
}
},
"title": "Account/rateLimitResetCredit/consumeRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"account/usage/read"
],
"title": "Account/usage/readRequestMethod"
},
"params": {
"type": "null"
}
},
"title": "Account/usage/readRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"account/workspaceMessages/read"
],
"title": "Account/workspaceMessages/readRequestMethod"
},
"params": {
"type": "null"
}
},
"title": "Account/workspaceMessages/readRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"account/sendAddCreditsNudgeEmail"
],
"title": "Account/sendAddCreditsNudgeEmailRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/SendAddCreditsNudgeEmailParams"
}
},
"title": "Account/sendAddCreditsNudgeEmailRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"feedback/upload"
],
"title": "Feedback/uploadRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/FeedbackUploadParams"
}
},
"title": "Feedback/uploadRequest"
},
{
"description": "Execute a standalone command (argv vector) under the server's sandbox.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"command/exec"
],
"title": "Command/execRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/CommandExecParams"
}
},
"title": "Command/execRequest"
},
{
"description": "Write stdin bytes to a running `command/exec` session or close stdin.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"command/exec/write"
],
"title": "Command/exec/writeRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/CommandExecWriteParams"
}
},
"title": "Command/exec/writeRequest"
},
{
"description": "Terminate a running `command/exec` session by client-supplied `processId`.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"command/exec/terminate"
],
"title": "Command/exec/terminateRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/CommandExecTerminateParams"
}
},
"title": "Command/exec/terminateRequest"
},
{
"description": "Resize a running PTY-backed `command/exec` session by client-supplied `processId`.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"command/exec/resize"
],
"title": "Command/exec/resizeRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/CommandExecResizeParams"
}
},
"title": "Command/exec/resizeRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"config/read"
],
"title": "Config/readRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ConfigReadParams"
}
},
"title": "Config/readRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"externalAgentConfig/detect"
],
"title": "ExternalAgentConfig/detectRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ExternalAgentConfigDetectParams"
}
},
"title": "ExternalAgentConfig/detectRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"externalAgentConfig/import"
],
"title": "ExternalAgentConfig/importRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ExternalAgentConfigImportParams"
}
},
"title": "ExternalAgentConfig/importRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"externalAgentConfig/import/readHistories"
],
"title": "ExternalAgentConfig/import/readHistoriesRequestMethod"
},
"params": {
"type": "null"
}
},
"title": "ExternalAgentConfig/import/readHistoriesRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"config/value/write"
],
"title": "Config/value/writeRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ConfigValueWriteParams"
}
},
"title": "Config/value/writeRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"config/batchWrite"
],
"title": "Config/batchWriteRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/ConfigBatchWriteParams"
}
},
"title": "Config/batchWriteRequest"
},
{
"type": "object",
"required": [
"id",
"method"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/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/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"account/read"
],
"title": "Account/readRequestMethod"
},
"params": {
"$ref": "#/definitions/v2/GetAccountParams"
}
},
"title": "Account/readRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"fuzzyFileSearch"
],
"title": "FuzzyFileSearchRequestMethod"
},
"params": {
"$ref": "#/definitions/FuzzyFileSearchParams"
}
},
"title": "FuzzyFileSearchRequest"
}
]
},
"AdditionalPermissionProfile": {
"type": "object",
"properties": {
"fileSystem": {
"anyOf": [
{
"$ref": "#/definitions/v2/AdditionalFileSystemPermissions"
},
{
"type": "null"
}
]
},
"network": {
"description": "Partial overlay used for per-command permission requests.",
"anyOf": [
{
"$ref": "#/definitions/v2/AdditionalNetworkPermissions"
},
{
"type": "null"
}
]
}
}
},
"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_protocol::protocol::PatchApplyBeginEvent] and [codex_protocol::protocol::PatchApplyEndEvent].",
"type": "string"
},
"conversationId": {
"$ref": "#/definitions/v2/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"
]
}
}
},
"AttestationGenerateParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "AttestationGenerateParams",
"type": "object"
},
"ChatgptAuthTokensRefreshParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ChatgptAuthTokensRefreshParams",
"type": "object",
"required": [
"reason"
],
"properties": {
"previousAccountId": {
"description": "Workspace/account identifier that Codex was previously using.\n\nClients that manage multiple accounts/workspaces can use this as a hint to refresh the token for the correct workspace.\n\nThis may be `null` when the prior auth state did not include a workspace identifier (`chatgpt_account_id`).",
"type": [
"string",
"null"
]
},
"reason": {
"$ref": "#/definitions/ChatgptAuthTokensRefreshReason"
}
}
},
"ChatgptAuthTokensRefreshReason": {
"oneOf": [
{
"description": "Codex attempted a backend request and received `401 Unauthorized`.",
"type": "string",
"enum": [
"unauthorized"
]
}
]
},
"CommandExecutionApprovalDecision": {
"oneOf": [
{
"description": "User approved the command.",
"type": "string",
"enum": [
"accept"
]
},
{
"description": "User approved the command and future prompts in the same session-scoped approval cache 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 chose a persistent network policy rule (allow/deny) for this host.",
"type": "object",
"required": [
"applyNetworkPolicyAmendment"
],
"properties": {
"applyNetworkPolicyAmendment": {
"type": "object",
"required": [
"network_policy_amendment"
],
"properties": {
"network_policy_amendment": {
"$ref": "#/definitions/NetworkPolicyAmendment"
}
}
}
},
"additionalProperties": false,
"title": "ApplyNetworkPolicyAmendmentCommandExecutionApprovalDecision"
},
{
"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"
]
}
]
},
"CommandExecutionRequestApprovalParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecutionRequestApprovalParams",
"type": "object",
"required": [
"itemId",
"startedAtMs",
"threadId",
"turnId"
],
"properties": {
"turnId": {
"type": "string"
},
"approvalId": {
"description": "Unique identifier for this specific approval callback.\n\nFor regular shell/unified_exec approvals, this is null.\n\nFor zsh-exec-bridge subcommand approvals, multiple callbacks can belong to one parent `itemId`, so `approvalId` is a distinct opaque callback id (a UUID) used to disambiguate routing.",
"type": [
"string",
"null"
]
},
"threadId": {
"type": "string"
},
"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/v2/CommandAction"
}
},
"cwd": {
"description": "The command's working directory.",
"anyOf": [
{
"$ref": "#/definitions/v2/LegacyAppPathString"
},
{
"type": "null"
}
]
},
"environmentId": {
"description": "Environment in which the command will run.",
"default": null,
"type": [
"string",
"null"
]
},
"itemId": {
"type": "string"
},
"networkApprovalContext": {
"description": "Optional context for a managed-network approval prompt.",
"anyOf": [
{
"$ref": "#/definitions/NetworkApprovalContext"
},
{
"type": "null"
}
]
},
"proposedExecpolicyAmendment": {
"description": "Optional proposed execpolicy amendment to allow similar commands without prompting.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"proposedNetworkPolicyAmendments": {
"description": "Optional proposed network policy amendments (allow/deny host) for future requests.",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/NetworkPolicyAmendment"
}
},
"reason": {
"description": "Optional explanatory reason (e.g. request for network access).",
"type": [
"string",
"null"
]
},
"startedAtMs": {
"description": "Unix timestamp (in milliseconds) when this approval request started.",
"type": "integer",
"format": "int64"
}
}
},
"PermissionsRequestApprovalResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PermissionsRequestApprovalResponse",
"type": "object",
"required": [
"permissions"
],
"properties": {
"permissions": {
"$ref": "#/definitions/GrantedPermissionProfile"
},
"scope": {
"default": "turn",
"allOf": [
{
"$ref": "#/definitions/PermissionGrantScope"
}
]
},
"strictAutoReview": {
"description": "Review every subsequent command in this turn before normal sandboxed execution.",
"type": [
"boolean",
"null"
]
}
}
},
"DynamicToolCallParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "DynamicToolCallParams",
"type": "object",
"required": [
"arguments",
"callId",
"threadId",
"tool",
"turnId"
],
"properties": {
"arguments": true,
"callId": {
"type": "string"
},
"namespace": {
"type": [
"string",
"null"
]
},
"threadId": {
"type": "string"
},
"tool": {
"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": {
"approvalId": {
"description": "Identifier for this specific approval callback.",
"type": [
"string",
"null"
]
},
"callId": {
"description": "Use to correlate this with [codex_protocol::protocol::ExecCommandBeginEvent] and [codex_protocol::protocol::ExecCommandEndEvent].",
"type": "string"
},
"command": {
"type": "array",
"items": {
"type": "string"
}
},
"conversationId": {
"$ref": "#/definitions/v2/ThreadId"
},
"cwd": {
"type": "string"
},
"parsedCmd": {
"type": "array",
"items": {
"$ref": "#/definitions/ParsedCommand"
}
},
"reason": {
"type": [
"string",
"null"
]
}
}
},
"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"
}
]
},
"FileChangeRequestApprovalParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FileChangeRequestApprovalParams",
"type": "object",
"required": [
"itemId",
"startedAtMs",
"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"
]
},
"startedAtMs": {
"description": "Unix timestamp (in milliseconds) when this approval request started.",
"type": "integer",
"format": "int64"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"McpElicitationArrayType": {
"type": "string",
"enum": [
"array"
]
},
"McpElicitationBooleanSchema": {
"type": "object",
"required": [
"type"
],
"properties": {
"default": {
"type": [
"boolean",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"title": {
"type": [
"string",
"null"
]
},
"type": {
"$ref": "#/definitions/McpElicitationBooleanType"
}
},
"additionalProperties": false
},
"McpElicitationBooleanType": {
"type": "string",
"enum": [
"boolean"
]
},
"McpElicitationConstOption": {
"type": "object",
"required": [
"const",
"title"
],
"properties": {
"const": {
"type": "string"
},
"title": {
"type": "string"
}
},
"additionalProperties": false
},
"McpElicitationEnumSchema": {
"anyOf": [
{
"$ref": "#/definitions/McpElicitationSingleSelectEnumSchema"
},
{
"$ref": "#/definitions/McpElicitationMultiSelectEnumSchema"
},
{
"$ref": "#/definitions/McpElicitationLegacyTitledEnumSchema"
}
]
},
"McpElicitationLegacyTitledEnumSchema": {
"type": "object",
"required": [
"enum",
"type"
],
"properties": {
"default": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"enum": {
"type": "array",
"items": {
"type": "string"
}
},
"enumNames": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"title": {
"type": [
"string",
"null"
]
},
"type": {
"$ref": "#/definitions/McpElicitationStringType"
}
},
"additionalProperties": false
},
"McpElicitationMultiSelectEnumSchema": {
"anyOf": [
{
"$ref": "#/definitions/McpElicitationUntitledMultiSelectEnumSchema"
},
{
"$ref": "#/definitions/McpElicitationTitledMultiSelectEnumSchema"
}
]
},
"McpElicitationNumberSchema": {
"type": "object",
"required": [
"type"
],
"properties": {
"default": {
"type": [
"number",
"null"
],
"format": "double"
},
"description": {
"type": [
"string",
"null"
]
},
"maximum": {
"type": [
"number",
"null"
],
"format": "double"
},
"minimum": {
"type": [
"number",
"null"
],
"format": "double"
},
"title": {
"type": [
"string",
"null"
]
},
"type": {
"$ref": "#/definitions/McpElicitationNumberType"
}
},
"additionalProperties": false
},
"McpElicitationNumberType": {
"type": "string",
"enum": [
"number",
"integer"
]
},
"McpElicitationObjectType": {
"type": "string",
"enum": [
"object"
]
},
"McpElicitationPrimitiveSchema": {
"anyOf": [
{
"$ref": "#/definitions/McpElicitationEnumSchema"
},
{
"$ref": "#/definitions/McpElicitationStringSchema"
},
{
"$ref": "#/definitions/McpElicitationNumberSchema"
},
{
"$ref": "#/definitions/McpElicitationBooleanSchema"
}
]
},
"McpElicitationSchema": {
"description": "Typed form schema for MCP `elicitation/create` requests.\n\nThis matches the `requestedSchema` shape from the MCP 2025-11-25 `ElicitRequestFormParams` schema.",
"type": "object",
"required": [
"properties",
"type"
],
"properties": {
"$schema": {
"type": [
"string",
"null"
]
},
"properties": {
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/McpElicitationPrimitiveSchema"
}
},
"required": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"type": {
"$ref": "#/definitions/McpElicitationObjectType"
}
},
"additionalProperties": false
},
"McpElicitationSingleSelectEnumSchema": {
"anyOf": [
{
"$ref": "#/definitions/McpElicitationUntitledSingleSelectEnumSchema"
},
{
"$ref": "#/definitions/McpElicitationTitledSingleSelectEnumSchema"
}
]
},
"McpElicitationStringFormat": {
"type": "string",
"enum": [
"email",
"uri",
"date",
"date-time"
]
},
"McpElicitationStringSchema": {
"type": "object",
"required": [
"type"
],
"properties": {
"default": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"format": {
"anyOf": [
{
"$ref": "#/definitions/McpElicitationStringFormat"
},
{
"type": "null"
}
]
},
"maxLength": {
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0.0
},
"minLength": {
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0.0
},
"title": {
"type": [
"string",
"null"
]
},
"type": {
"$ref": "#/definitions/McpElicitationStringType"
}
},
"additionalProperties": false
},
"McpElicitationStringType": {
"type": "string",
"enum": [
"string"
]
},
"McpElicitationTitledEnumItems": {
"type": "object",
"required": [
"anyOf"
],
"properties": {
"anyOf": {
"type": "array",
"items": {
"$ref": "#/definitions/McpElicitationConstOption"
}
}
},
"additionalProperties": false
},
"McpElicitationTitledMultiSelectEnumSchema": {
"type": "object",
"required": [
"items",
"type"
],
"properties": {
"default": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"description": {
"type": [
"string",
"null"
]
},
"items": {
"$ref": "#/definitions/McpElicitationTitledEnumItems"
},
"maxItems": {
"type": [
"integer",
"null"
],
"format": "uint64",
"minimum": 0.0
},
"minItems": {
"type": [
"integer",
"null"
],
"format": "uint64",
"minimum": 0.0
},
"title": {
"type": [
"string",
"null"
]
},
"type": {
"$ref": "#/definitions/McpElicitationArrayType"
}
},
"additionalProperties": false
},
"McpElicitationTitledSingleSelectEnumSchema": {
"type": "object",
"required": [
"oneOf",
"type"
],
"properties": {
"default": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"oneOf": {
"type": "array",
"items": {
"$ref": "#/definitions/McpElicitationConstOption"
}
},
"title": {
"type": [
"string",
"null"
]
},
"type": {
"$ref": "#/definitions/McpElicitationStringType"
}
},
"additionalProperties": false
},
"McpElicitationUntitledEnumItems": {
"type": "object",
"required": [
"enum",
"type"
],
"properties": {
"enum": {
"type": "array",
"items": {
"type": "string"
}
},
"type": {
"$ref": "#/definitions/McpElicitationStringType"
}
},
"additionalProperties": false
},
"McpElicitationUntitledMultiSelectEnumSchema": {
"type": "object",
"required": [
"items",
"type"
],
"properties": {
"default": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"description": {
"type": [
"string",
"null"
]
},
"items": {
"$ref": "#/definitions/McpElicitationUntitledEnumItems"
},
"maxItems": {
"type": [
"integer",
"null"
],
"format": "uint64",
"minimum": 0.0
},
"minItems": {
"type": [
"integer",
"null"
],
"format": "uint64",
"minimum": 0.0
},
"title": {
"type": [
"string",
"null"
]
},
"type": {
"$ref": "#/definitions/McpElicitationArrayType"
}
},
"additionalProperties": false
},
"McpElicitationUntitledSingleSelectEnumSchema": {
"type": "object",
"required": [
"enum",
"type"
],
"properties": {
"default": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"enum": {
"type": "array",
"items": {
"type": "string"
}
},
"title": {
"type": [
"string",
"null"
]
},
"type": {
"$ref": "#/definitions/McpElicitationStringType"
}
},
"additionalProperties": false
},
"McpServerElicitationRequestParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "McpServerElicitationRequestParams",
"type": "object",
"oneOf": [
{
"type": "object",
"required": [
"message",
"mode",
"requestedSchema"
],
"properties": {
"_meta": true,
"message": {
"type": "string"
},
"mode": {
"type": "string",
"enum": [
"form"
]
},
"requestedSchema": {
"$ref": "#/definitions/McpElicitationSchema"
}
}
},
{
"type": "object",
"required": [
"message",
"mode",
"requestedSchema"
],
"properties": {
"_meta": true,
"message": {
"type": "string"
},
"mode": {
"type": "string",
"enum": [
"openai/form"
]
},
"requestedSchema": true
}
},
{
"type": "object",
"required": [
"elicitationId",
"message",
"mode",
"url"
],
"properties": {
"_meta": true,
"elicitationId": {
"type": "string"
},
"message": {
"type": "string"
},
"mode": {
"type": "string",
"enum": [
"url"
]
},
"url": {
"type": "string"
}
}
}
],
"required": [
"serverName",
"threadId"
],
"properties": {
"serverName": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"description": "Active Codex turn when this elicitation was observed, if app-server could correlate one.\n\nThis is nullable because MCP models elicitation as a standalone server-to-client request identified by the MCP server request id. It may be triggered during a turn, but turn context is app-server correlation rather than part of the protocol identity of the elicitation itself.",
"type": [
"string",
"null"
]
}
}
},
"NetworkApprovalContext": {
"type": "object",
"required": [
"host",
"protocol"
],
"properties": {
"host": {
"type": "string"
},
"protocol": {
"$ref": "#/definitions/v2/NetworkApprovalProtocol"
}
}
},
"NetworkPolicyAmendment": {
"type": "object",
"required": [
"action",
"host"
],
"properties": {
"action": {
"$ref": "#/definitions/NetworkPolicyRuleAction"
},
"host": {
"type": "string"
}
}
},
"NetworkPolicyRuleAction": {
"type": "string",
"enum": [
"allow",
"deny"
]
},
"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"
}
]
},
"PermissionsRequestApprovalParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PermissionsRequestApprovalParams",
"type": "object",
"required": [
"cwd",
"itemId",
"permissions",
"startedAtMs",
"threadId",
"turnId"
],
"properties": {
"cwd": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"environmentId": {
"default": null,
"type": [
"string",
"null"
]
},
"itemId": {
"type": "string"
},
"permissions": {
"$ref": "#/definitions/v2/RequestPermissionProfile"
},
"reason": {
"type": [
"string",
"null"
]
},
"startedAtMs": {
"description": "Unix timestamp (in milliseconds) when this approval request started.",
"type": "integer",
"format": "int64"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"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": {
"autoResolutionMs": {
"default": null,
"type": [
"integer",
"null"
],
"format": "uint64",
"minimum": 0.0
},
"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 required options.",
"type": "object",
"required": [
"header",
"id",
"question"
],
"properties": {
"header": {
"type": "string"
},
"id": {
"type": "string"
},
"isOther": {
"default": false,
"type": "boolean"
},
"isSecret": {
"default": false,
"type": "boolean"
},
"options": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/ToolRequestUserInputOption"
}
},
"question": {
"type": "string"
}
}
},
"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/v2/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/v2/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/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"item/tool/requestUserInput"
],
"title": "Item/tool/requestUserInputRequestMethod"
},
"params": {
"$ref": "#/definitions/ToolRequestUserInputParams"
}
},
"title": "Item/tool/requestUserInputRequest"
},
{
"description": "Request input for an MCP server elicitation.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"mcpServer/elicitation/request"
],
"title": "McpServer/elicitation/requestRequestMethod"
},
"params": {
"$ref": "#/definitions/McpServerElicitationRequestParams"
}
},
"title": "McpServer/elicitation/requestRequest"
},
{
"description": "Request approval for additional permissions from the user.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"item/permissions/requestApproval"
],
"title": "Item/permissions/requestApprovalRequestMethod"
},
"params": {
"$ref": "#/definitions/PermissionsRequestApprovalParams"
}
},
"title": "Item/permissions/requestApprovalRequest"
},
{
"description": "Execute a dynamic tool call on the client.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"item/tool/call"
],
"title": "Item/tool/callRequestMethod"
},
"params": {
"$ref": "#/definitions/DynamicToolCallParams"
}
},
"title": "Item/tool/callRequest"
},
{
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"account/chatgptAuthTokens/refresh"
],
"title": "Account/chatgptAuthTokens/refreshRequestMethod"
},
"params": {
"$ref": "#/definitions/ChatgptAuthTokensRefreshParams"
}
},
"title": "Account/chatgptAuthTokens/refreshRequest"
},
{
"description": "Generate a fresh upstream attestation result on demand.",
"type": "object",
"required": [
"id",
"method",
"params"
],
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"attestation/generate"
],
"title": "Attestation/generateRequestMethod"
},
"params": {
"$ref": "#/definitions/AttestationGenerateParams"
}
},
"title": "Attestation/generateRequest"
},
{
"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/v2/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/v2/RequestId"
},
"method": {
"type": "string",
"enum": [
"execCommandApproval"
],
"title": "ExecCommandApprovalRequestMethod"
},
"params": {
"$ref": "#/definitions/ExecCommandApprovalParams"
}
},
"title": "ExecCommandApprovalRequest"
}
]
},
"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"
}
]
},
"FuzzyFileSearchMatchType": {
"type": "string",
"enum": [
"file",
"directory"
]
},
"FuzzyFileSearchResult": {
"description": "Superset of [`codex_file_search::FileMatch`]",
"type": "object",
"required": [
"file_name",
"match_type",
"path",
"root",
"score"
],
"properties": {
"file_name": {
"type": "string"
},
"indices": {
"type": [
"array",
"null"
],
"items": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
}
},
"match_type": {
"$ref": "#/definitions/FuzzyFileSearchMatchType"
},
"path": {
"type": "string"
},
"root": {
"type": "string"
},
"score": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
}
}
},
"FuzzyFileSearchSessionCompletedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FuzzyFileSearchSessionCompletedNotification",
"type": "object",
"required": [
"sessionId"
],
"properties": {
"sessionId": {
"type": "string"
}
}
},
"FuzzyFileSearchSessionUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FuzzyFileSearchSessionUpdatedNotification",
"type": "object",
"required": [
"files",
"query",
"sessionId"
],
"properties": {
"files": {
"type": "array",
"items": {
"$ref": "#/definitions/FuzzyFileSearchResult"
}
},
"query": {
"type": "string"
},
"sessionId": {
"type": "string"
}
}
},
"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/v2/ErrorNotification"
}
},
"title": "ErrorNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/started"
],
"title": "Thread/startedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadStartedNotification"
}
},
"title": "Thread/startedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/status/changed"
],
"title": "Thread/status/changedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadStatusChangedNotification"
}
},
"title": "Thread/status/changedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/archived"
],
"title": "Thread/archivedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadArchivedNotification"
}
},
"title": "Thread/archivedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/deleted"
],
"title": "Thread/deletedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadDeletedNotification"
}
},
"title": "Thread/deletedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/unarchived"
],
"title": "Thread/unarchivedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadUnarchivedNotification"
}
},
"title": "Thread/unarchivedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/closed"
],
"title": "Thread/closedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadClosedNotification"
}
},
"title": "Thread/closedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"skills/changed"
],
"title": "Skills/changedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/SkillsChangedNotification"
}
},
"title": "Skills/changedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/name/updated"
],
"title": "Thread/name/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadNameUpdatedNotification"
}
},
"title": "Thread/name/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/goal/updated"
],
"title": "Thread/goal/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadGoalUpdatedNotification"
}
},
"title": "Thread/goal/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/goal/cleared"
],
"title": "Thread/goal/clearedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadGoalClearedNotification"
}
},
"title": "Thread/goal/clearedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/settings/updated"
],
"title": "Thread/settings/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadSettingsUpdatedNotification"
}
},
"title": "Thread/settings/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/tokenUsage/updated"
],
"title": "Thread/tokenUsage/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadTokenUsageUpdatedNotification"
}
},
"title": "Thread/tokenUsage/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"turn/started"
],
"title": "Turn/startedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/TurnStartedNotification"
}
},
"title": "Turn/startedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"hook/started"
],
"title": "Hook/startedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/HookStartedNotification"
}
},
"title": "Hook/startedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"turn/completed"
],
"title": "Turn/completedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/TurnCompletedNotification"
}
},
"title": "Turn/completedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"hook/completed"
],
"title": "Hook/completedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/HookCompletedNotification"
}
},
"title": "Hook/completedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"turn/diff/updated"
],
"title": "Turn/diff/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/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/v2/TurnPlanUpdatedNotification"
}
},
"title": "Turn/plan/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/started"
],
"title": "Item/startedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ItemStartedNotification"
}
},
"title": "Item/startedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/autoApprovalReview/started"
],
"title": "Item/autoApprovalReview/startedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ItemGuardianApprovalReviewStartedNotification"
}
},
"title": "Item/autoApprovalReview/startedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/autoApprovalReview/completed"
],
"title": "Item/autoApprovalReview/completedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ItemGuardianApprovalReviewCompletedNotification"
}
},
"title": "Item/autoApprovalReview/completedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/completed"
],
"title": "Item/completedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ItemCompletedNotification"
}
},
"title": "Item/completedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/agentMessage/delta"
],
"title": "Item/agentMessage/deltaNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/AgentMessageDeltaNotification"
}
},
"title": "Item/agentMessage/deltaNotification"
},
{
"description": "EXPERIMENTAL - proposed plan streaming deltas for plan items.",
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/plan/delta"
],
"title": "Item/plan/deltaNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/PlanDeltaNotification"
}
},
"title": "Item/plan/deltaNotification"
},
{
"description": "Stream base64-encoded stdout/stderr chunks for a running `command/exec` session.",
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"command/exec/outputDelta"
],
"title": "Command/exec/outputDeltaNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/CommandExecOutputDeltaNotification"
}
},
"title": "Command/exec/outputDeltaNotification"
},
{
"description": "Stream base64-encoded stdout/stderr chunks for a running `process/spawn` session.",
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"process/outputDelta"
],
"title": "Process/outputDeltaNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ProcessOutputDeltaNotification"
}
},
"title": "Process/outputDeltaNotification"
},
{
"description": "Final exit notification for a `process/spawn` session.",
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"process/exited"
],
"title": "Process/exitedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ProcessExitedNotification"
}
},
"title": "Process/exitedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/commandExecution/outputDelta"
],
"title": "Item/commandExecution/outputDeltaNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/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/v2/TerminalInteractionNotification"
}
},
"title": "Item/commandExecution/terminalInteractionNotification"
},
{
"description": "Deprecated legacy apply_patch output stream notification.",
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/fileChange/outputDelta"
],
"title": "Item/fileChange/outputDeltaNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/FileChangeOutputDeltaNotification"
}
},
"title": "Item/fileChange/outputDeltaNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/fileChange/patchUpdated"
],
"title": "Item/fileChange/patchUpdatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/FileChangePatchUpdatedNotification"
}
},
"title": "Item/fileChange/patchUpdatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"serverRequest/resolved"
],
"title": "ServerRequest/resolvedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ServerRequestResolvedNotification"
}
},
"title": "ServerRequest/resolvedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/mcpToolCall/progress"
],
"title": "Item/mcpToolCall/progressNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/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/v2/McpServerOauthLoginCompletedNotification"
}
},
"title": "McpServer/oauthLogin/completedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"mcpServer/startupStatus/updated"
],
"title": "McpServer/startupStatus/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/McpServerStatusUpdatedNotification"
}
},
"title": "McpServer/startupStatus/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"account/updated"
],
"title": "Account/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/AccountUpdatedNotification"
}
},
"title": "Account/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"account/rateLimits/updated"
],
"title": "Account/rateLimits/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/AccountRateLimitsUpdatedNotification"
}
},
"title": "Account/rateLimits/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"app/list/updated"
],
"title": "App/list/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/AppListUpdatedNotification"
}
},
"title": "App/list/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"remoteControl/status/changed"
],
"title": "RemoteControl/status/changedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/RemoteControlStatusChangedNotification"
}
},
"title": "RemoteControl/status/changedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"externalAgentConfig/import/progress"
],
"title": "ExternalAgentConfig/import/progressNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ExternalAgentConfigImportProgressNotification"
}
},
"title": "ExternalAgentConfig/import/progressNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"externalAgentConfig/import/completed"
],
"title": "ExternalAgentConfig/import/completedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ExternalAgentConfigImportCompletedNotification"
}
},
"title": "ExternalAgentConfig/import/completedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"fs/changed"
],
"title": "Fs/changedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/FsChangedNotification"
}
},
"title": "Fs/changedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"item/reasoning/summaryTextDelta"
],
"title": "Item/reasoning/summaryTextDeltaNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/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/v2/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/v2/ReasoningTextDeltaNotification"
}
},
"title": "Item/reasoning/textDeltaNotification"
},
{
"description": "Deprecated: Use `ContextCompaction` item type instead.",
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/compacted"
],
"title": "Thread/compactedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ContextCompactedNotification"
}
},
"title": "Thread/compactedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"model/rerouted"
],
"title": "Model/reroutedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ModelReroutedNotification"
}
},
"title": "Model/reroutedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"model/verification"
],
"title": "Model/verificationNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ModelVerificationNotification"
}
},
"title": "Model/verificationNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"turn/moderationMetadata"
],
"title": "Turn/moderationMetadataNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/TurnModerationMetadataNotification"
}
},
"title": "Turn/moderationMetadataNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"model/safetyBuffering/updated"
],
"title": "Model/safetyBuffering/updatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ModelSafetyBufferingUpdatedNotification"
}
},
"title": "Model/safetyBuffering/updatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"warning"
],
"title": "WarningNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/WarningNotification"
}
},
"title": "WarningNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"guardianWarning"
],
"title": "GuardianWarningNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/GuardianWarningNotification"
}
},
"title": "GuardianWarningNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"deprecationNotice"
],
"title": "DeprecationNoticeNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/DeprecationNoticeNotification"
}
},
"title": "DeprecationNoticeNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"configWarning"
],
"title": "ConfigWarningNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ConfigWarningNotification"
}
},
"title": "ConfigWarningNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"fuzzyFileSearch/sessionUpdated"
],
"title": "FuzzyFileSearch/sessionUpdatedNotificationMethod"
},
"params": {
"$ref": "#/definitions/FuzzyFileSearchSessionUpdatedNotification"
}
},
"title": "FuzzyFileSearch/sessionUpdatedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"fuzzyFileSearch/sessionCompleted"
],
"title": "FuzzyFileSearch/sessionCompletedNotificationMethod"
},
"params": {
"$ref": "#/definitions/FuzzyFileSearchSessionCompletedNotification"
}
},
"title": "FuzzyFileSearch/sessionCompletedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/realtime/started"
],
"title": "Thread/realtime/startedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadRealtimeStartedNotification"
}
},
"title": "Thread/realtime/startedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/realtime/itemAdded"
],
"title": "Thread/realtime/itemAddedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadRealtimeItemAddedNotification"
}
},
"title": "Thread/realtime/itemAddedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/realtime/transcript/delta"
],
"title": "Thread/realtime/transcript/deltaNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadRealtimeTranscriptDeltaNotification"
}
},
"title": "Thread/realtime/transcript/deltaNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/realtime/transcript/done"
],
"title": "Thread/realtime/transcript/doneNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadRealtimeTranscriptDoneNotification"
}
},
"title": "Thread/realtime/transcript/doneNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/realtime/outputAudio/delta"
],
"title": "Thread/realtime/outputAudio/deltaNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadRealtimeOutputAudioDeltaNotification"
}
},
"title": "Thread/realtime/outputAudio/deltaNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/realtime/sdp"
],
"title": "Thread/realtime/sdpNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadRealtimeSdpNotification"
}
},
"title": "Thread/realtime/sdpNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/realtime/error"
],
"title": "Thread/realtime/errorNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadRealtimeErrorNotification"
}
},
"title": "Thread/realtime/errorNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"thread/realtime/closed"
],
"title": "Thread/realtime/closedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/ThreadRealtimeClosedNotification"
}
},
"title": "Thread/realtime/closedNotification"
},
{
"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/v2/WindowsWorldWritableWarningNotification"
}
},
"title": "Windows/worldWritableWarningNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"windowsSandbox/setupCompleted"
],
"title": "WindowsSandbox/setupCompletedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/WindowsSandboxSetupCompletedNotification"
}
},
"title": "WindowsSandbox/setupCompletedNotification"
},
{
"type": "object",
"required": [
"method",
"params"
],
"properties": {
"method": {
"type": "string",
"enum": [
"account/login/completed"
],
"title": "Account/login/completedNotificationMethod"
},
"params": {
"$ref": "#/definitions/v2/AccountLoginCompletedNotification"
}
},
"title": "Account/login/completedNotification"
}
]
},
"v2": {
"AbsolutePathBuf": {
"description": "A path that is guaranteed to be absolute and normalized (though it is not guaranteed to be canonicalized or exist on the filesystem).\n\nIMPORTANT: When deserializing an `AbsolutePathBuf`, a base path must be set using [AbsolutePathBufGuard::new]. If no base path is set, the deserialization will fail unless the path being deserialized is already absolute.",
"type": "string"
},
"ApprovalsReviewer": {
"description": "Configures who approval requests are routed to for review. Examples include sandbox escapes, blocked network access, MCP approval prompts, and ARC escalations. Defaults to `user`. `auto_review` uses a carefully prompted subagent to gather relevant context and apply a risk-based decision framework before approving or denying the request. The legacy value `guardian_subagent` is accepted for compatibility.",
"type": "string",
"enum": [
"user",
"auto_review",
"guardian_subagent"
]
},
"AskForApproval": {
"oneOf": [
{
"type": "string",
"enum": [
"untrusted",
"on-failure",
"on-request",
"never"
]
},
{
"type": "object",
"required": [
"granular"
],
"properties": {
"granular": {
"type": "object",
"required": [
"mcp_elicitations",
"rules",
"sandbox_approval"
],
"properties": {
"mcp_elicitations": {
"type": "boolean"
},
"request_permissions": {
"default": false,
"type": "boolean"
},
"rules": {
"type": "boolean"
},
"sandbox_approval": {
"type": "boolean"
},
"skill_approval": {
"default": false,
"type": "boolean"
}
}
}
},
"additionalProperties": false,
"title": "GranularAskForApproval"
}
]
},
"CapabilityRootLocation": {
"description": "Location used to resolve a selected capability root.",
"oneOf": [
{
"description": "A path owned by an execution environment.",
"type": "object",
"required": [
"environmentId",
"path",
"type"
],
"properties": {
"environmentId": {
"type": "string"
},
"path": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"environment"
],
"title": "EnvironmentCapabilityRootLocationType"
}
},
"title": "EnvironmentCapabilityRootLocation"
}
]
},
"DynamicToolNamespaceTool": {
"oneOf": [
{
"type": "object",
"required": [
"description",
"inputSchema",
"name",
"type"
],
"properties": {
"deferLoading": {
"type": "boolean"
},
"description": {
"type": "string"
},
"inputSchema": true,
"name": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"function"
],
"title": "FunctionDynamicToolNamespaceToolType"
}
},
"title": "FunctionDynamicToolNamespaceTool"
}
]
},
"DynamicToolSpec": {
"oneOf": [
{
"type": "object",
"required": [
"description",
"inputSchema",
"name",
"type"
],
"properties": {
"deferLoading": {
"type": "boolean"
},
"description": {
"type": "string"
},
"inputSchema": true,
"name": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"function"
],
"title": "FunctionDynamicToolSpecType"
}
},
"title": "FunctionDynamicToolSpec"
},
{
"type": "object",
"required": [
"description",
"name",
"tools",
"type"
],
"properties": {
"description": {
"type": "string"
},
"name": {
"type": "string"
},
"tools": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/DynamicToolNamespaceTool"
}
},
"type": {
"type": "string",
"enum": [
"namespace"
],
"title": "NamespaceDynamicToolSpecType"
}
},
"title": "NamespaceDynamicToolSpec"
}
]
},
"LegacyAppPathString": {
"type": "string"
},
"MultiAgentMode": {
"description": "Controls whether the model receives multi-agent delegation instructions and, when it does, whether it should only spawn sub-agents after an explicit user request or may delegate proactively when doing so would help. `none` leaves the multi-agent tools available without injecting delegation instructions.",
"type": "string",
"enum": [
"none",
"explicitRequestOnly",
"proactive"
]
},
"Personality": {
"type": "string",
"enum": [
"none",
"friendly",
"pragmatic"
]
},
"SandboxMode": {
"type": "string",
"enum": [
"read-only",
"workspace-write",
"danger-full-access"
]
},
"SelectedCapabilityRoot": {
"description": "A user-selected root that can expose one or more runtime capabilities.",
"type": "object",
"required": [
"id",
"location"
],
"properties": {
"id": {
"description": "Stable identifier supplied by the capability selection platform.",
"type": "string"
},
"location": {
"description": "Where the selected root can be resolved.",
"allOf": [
{
"$ref": "#/definitions/v2/CapabilityRootLocation"
}
]
}
}
},
"ThreadSource": {
"type": "string"
},
"ThreadStartSource": {
"type": "string",
"enum": [
"startup",
"clear"
]
},
"TurnEnvironmentParams": {
"type": "object",
"required": [
"cwd",
"environmentId"
],
"properties": {
"cwd": {
"$ref": "#/definitions/v2/LegacyAppPathString"
},
"environmentId": {
"type": "string"
}
}
},
"ThreadStartParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadStartParams",
"type": "object",
"properties": {
"approvalPolicy": {
"anyOf": [
{
"$ref": "#/definitions/v2/AskForApproval"
},
{
"type": "null"
}
]
},
"approvalsReviewer": {
"description": "Override where approval requests are routed for review on this thread and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/v2/ApprovalsReviewer"
},
{
"type": "null"
}
]
},
"baseInstructions": {
"type": [
"string",
"null"
]
},
"config": {
"type": [
"object",
"null"
],
"additionalProperties": true
},
"cwd": {
"type": [
"string",
"null"
]
},
"developerInstructions": {
"type": [
"string",
"null"
]
},
"serviceName": {
"type": [
"string",
"null"
]
},
"sandbox": {
"anyOf": [
{
"$ref": "#/definitions/v2/SandboxMode"
},
{
"type": "null"
}
]
},
"ephemeral": {
"type": [
"boolean",
"null"
]
},
"threadSource": {
"description": "Optional client-supplied analytics source classification for this thread.",
"anyOf": [
{
"$ref": "#/definitions/v2/ThreadSource"
},
{
"type": "null"
}
]
},
"personality": {
"anyOf": [
{
"$ref": "#/definitions/v2/Personality"
},
{
"type": "null"
}
]
},
"model": {
"type": [
"string",
"null"
]
},
"modelProvider": {
"type": [
"string",
"null"
]
},
"serviceTier": {
"type": [
"string",
"null"
]
},
"sessionStartSource": {
"anyOf": [
{
"$ref": "#/definitions/v2/ThreadStartSource"
},
{
"type": "null"
}
]
}
}
},
"AgentMessageInputContent": {
"oneOf": [
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"input_text"
],
"title": "InputTextAgentMessageInputContentType"
}
},
"title": "InputTextAgentMessageInputContent"
},
{
"type": "object",
"required": [
"encrypted_content",
"type"
],
"properties": {
"encrypted_content": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"encrypted_content"
],
"title": "EncryptedContentAgentMessageInputContentType"
}
},
"title": "EncryptedContentAgentMessageInputContent"
}
]
},
"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": {
"detail": {
"anyOf": [
{
"$ref": "#/definitions/v2/ImageDetail"
},
{
"type": "null"
}
]
},
"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"
}
]
},
"FunctionCallOutputBody": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"$ref": "#/definitions/v2/FunctionCallOutputContentItem"
}
}
]
},
"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": {
"detail": {
"anyOf": [
{
"$ref": "#/definitions/v2/ImageDetail"
},
{
"type": "null"
}
]
},
"image_url": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"input_image"
],
"title": "InputImageFunctionCallOutputContentItemType"
}
},
"title": "InputImageFunctionCallOutputContentItem"
},
{
"type": "object",
"required": [
"encrypted_content",
"type"
],
"properties": {
"encrypted_content": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"encrypted_content"
],
"title": "EncryptedContentFunctionCallOutputContentItemType"
}
},
"title": "EncryptedContentFunctionCallOutputContentItem"
}
]
},
"ImageDetail": {
"type": "string",
"enum": [
"auto",
"low",
"high",
"original"
]
},
"InternalChatMessageMetadataPassthrough": {
"description": "Internal Responses API passthrough metadata copied into underlying chat messages.\n\nResponses API strongly types this payload. Do not modify it without first getting API approval and making the corresponding Responses API change.",
"type": "object",
"properties": {
"turn_id": {
"type": [
"string",
"null"
]
}
}
},
"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.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"
]
},
"MessagePhase": {
"description": "Classifies an assistant message as interim commentary or final answer text.\n\nProviders do not emit this consistently, so callers must treat `None` as \"phase unknown\" and keep compatibility behavior for legacy models.",
"oneOf": [
{
"description": "Mid-turn assistant text (for example preamble/progress narration).\n\nAdditional tool calls or assistant output may follow before turn completion.",
"type": "string",
"enum": [
"commentary"
]
},
{
"description": "The assistant's terminal answer text for the current turn.",
"type": "string",
"enum": [
"final_answer"
]
}
]
},
"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/v2/ContentItem"
}
},
"id": {
"type": [
"string",
"null"
]
},
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"phase": {
"anyOf": [
{
"$ref": "#/definitions/v2/MessagePhase"
},
{
"type": "null"
}
]
},
"role": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"message"
],
"title": "MessageResponseItemType"
}
},
"title": "MessageResponseItem"
},
{
"type": "object",
"required": [
"author",
"content",
"recipient",
"type"
],
"properties": {
"author": {
"type": "string"
},
"content": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/AgentMessageInputContent"
}
},
"id": {
"type": [
"string",
"null"
]
},
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"recipient": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"agent_message"
],
"title": "AgentMessageResponseItemType"
}
},
"title": "AgentMessageResponseItem"
},
{
"type": "object",
"required": [
"summary",
"type"
],
"properties": {
"content": {
"default": null,
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/ReasoningItemContent"
}
},
"encrypted_content": {
"type": [
"string",
"null"
]
},
"id": {
"type": [
"string",
"null"
]
},
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"summary": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ReasoningItemReasoningSummary"
}
},
"type": {
"type": "string",
"enum": [
"reasoning"
],
"title": "ReasoningResponseItemType"
}
},
"title": "ReasoningResponseItem"
},
{
"type": "object",
"required": [
"action",
"status",
"type"
],
"properties": {
"action": {
"$ref": "#/definitions/v2/LocalShellAction"
},
"call_id": {
"description": "Set when using the Responses API.",
"type": [
"string",
"null"
]
},
"id": {
"description": "Legacy id field retained for compatibility with older payloads.",
"type": [
"string",
"null"
]
},
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"status": {
"$ref": "#/definitions/v2/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": {
"type": [
"string",
"null"
]
},
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
},
"namespace": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"function_call"
],
"title": "FunctionCallResponseItemType"
}
},
"title": "FunctionCallResponseItem"
},
{
"type": "object",
"required": [
"arguments",
"execution",
"type"
],
"properties": {
"arguments": true,
"call_id": {
"type": [
"string",
"null"
]
},
"execution": {
"type": "string"
},
"id": {
"type": [
"string",
"null"
]
},
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"status": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"tool_search_call"
],
"title": "ToolSearchCallResponseItemType"
}
},
"title": "ToolSearchCallResponseItem"
},
{
"type": "object",
"required": [
"call_id",
"output",
"type"
],
"properties": {
"call_id": {
"type": "string"
},
"id": {
"type": [
"string",
"null"
]
},
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"output": {
"$ref": "#/definitions/v2/FunctionCallOutputBody"
},
"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": {
"type": [
"string",
"null"
]
},
"input": {
"type": "string"
},
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"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"
},
"id": {
"type": [
"string",
"null"
]
},
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"name": {
"type": [
"string",
"null"
]
},
"output": {
"$ref": "#/definitions/v2/FunctionCallOutputBody"
},
"type": {
"type": "string",
"enum": [
"custom_tool_call_output"
],
"title": "CustomToolCallOutputResponseItemType"
}
},
"title": "CustomToolCallOutputResponseItem"
},
{
"type": "object",
"required": [
"execution",
"status",
"tools",
"type"
],
"properties": {
"call_id": {
"type": [
"string",
"null"
]
},
"execution": {
"type": "string"
},
"id": {
"type": [
"string",
"null"
]
},
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"status": {
"type": "string"
},
"tools": {
"type": "array",
"items": true
},
"type": {
"type": "string",
"enum": [
"tool_search_output"
],
"title": "ToolSearchOutputResponseItemType"
}
},
"title": "ToolSearchOutputResponseItem"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"action": {
"anyOf": [
{
"$ref": "#/definitions/v2/ResponsesApiWebSearchAction"
},
{
"type": "null"
}
]
},
"id": {
"type": [
"string",
"null"
]
},
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"status": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"web_search_call"
],
"title": "WebSearchCallResponseItemType"
}
},
"title": "WebSearchCallResponseItem"
},
{
"type": "object",
"required": [
"result",
"status",
"type"
],
"properties": {
"id": {
"type": [
"string",
"null"
]
},
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"result": {
"type": "string"
},
"revised_prompt": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"image_generation_call"
],
"title": "ImageGenerationCallResponseItemType"
}
},
"title": "ImageGenerationCallResponseItem"
},
{
"type": "object",
"required": [
"encrypted_content",
"type"
],
"properties": {
"encrypted_content": {
"type": "string"
},
"id": {
"type": [
"string",
"null"
]
},
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"type": {
"type": "string",
"enum": [
"compaction"
],
"title": "CompactionResponseItemType"
}
},
"title": "CompactionResponseItem"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"type": {
"type": "string",
"enum": [
"compaction_trigger"
],
"title": "CompactionTriggerResponseItemType"
}
},
"title": "CompactionTriggerResponseItem"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"encrypted_content": {
"type": [
"string",
"null"
]
},
"id": {
"type": [
"string",
"null"
]
},
"internal_chat_message_metadata_passthrough": {
"anyOf": [
{
"$ref": "#/definitions/v2/InternalChatMessageMetadataPassthrough"
},
{
"type": "null"
}
]
},
"type": {
"type": "string",
"enum": [
"context_compaction"
],
"title": "ContextCompactionResponseItemType"
}
},
"title": "ContextCompactionResponseItem"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"other"
],
"title": "OtherResponseItemType"
}
},
"title": "OtherResponseItem"
}
]
},
"ResponsesApiWebSearchAction": {
"oneOf": [
{
"type": "object",
"required": [
"type"
],
"properties": {
"queries": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"query": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"search"
],
"title": "SearchResponsesApiWebSearchActionType"
}
},
"title": "SearchResponsesApiWebSearchAction"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"open_page"
],
"title": "OpenPageResponsesApiWebSearchActionType"
},
"url": {
"type": [
"string",
"null"
]
}
},
"title": "OpenPageResponsesApiWebSearchAction"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"pattern": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"find_in_page"
],
"title": "FindInPageResponsesApiWebSearchActionType"
},
"url": {
"type": [
"string",
"null"
]
}
},
"title": "FindInPageResponsesApiWebSearchAction"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"other"
],
"title": "OtherResponsesApiWebSearchActionType"
}
},
"title": "OtherResponsesApiWebSearchAction"
}
]
},
"SortDirection": {
"type": "string",
"enum": [
"asc",
"desc"
]
},
"ThreadResumeInitialTurnsPageParams": {
"type": "object",
"properties": {
"itemsView": {
"description": "How much item detail to include for each returned turn; defaults to summary.",
"anyOf": [
{
"$ref": "#/definitions/v2/TurnItemsView"
},
{
"type": "null"
}
]
},
"limit": {
"description": "Optional turn page size.",
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0.0
},
"sortDirection": {
"description": "Optional turn pagination direction; defaults to descending.",
"anyOf": [
{
"$ref": "#/definitions/v2/SortDirection"
},
{
"type": "null"
}
]
}
}
},
"TurnItemsView": {
"oneOf": [
{
"description": "`items` was not loaded for this turn. The field is intentionally empty.",
"type": "string",
"enum": [
"notLoaded"
]
},
{
"description": "`items` contains only a display summary for this turn.",
"type": "string",
"enum": [
"summary"
]
},
{
"description": "`items` contains every ThreadItem available from persisted app-server history for this turn.",
"type": "string",
"enum": [
"full"
]
}
]
},
"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\nFor non-running threads, the precedence is: history > non-empty path > thread_id. If using history or a non-empty path for a non-running thread, the thread_id param will be ignored.\n\nIf thread_id identifies a running thread, app-server rejoins that thread and treats a non-empty path as a consistency check against the active rollout path. Empty string path values are treated as absent.\n\nPrefer using thread_id whenever possible.",
"type": "object",
"required": [
"threadId"
],
"properties": {
"approvalPolicy": {
"anyOf": [
{
"$ref": "#/definitions/v2/AskForApproval"
},
{
"type": "null"
}
]
},
"approvalsReviewer": {
"description": "Override where approval requests are routed for review on this thread and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/v2/ApprovalsReviewer"
},
{
"type": "null"
}
]
},
"baseInstructions": {
"type": [
"string",
"null"
]
},
"config": {
"type": [
"object",
"null"
],
"additionalProperties": true
},
"cwd": {
"type": [
"string",
"null"
]
},
"developerInstructions": {
"type": [
"string",
"null"
]
},
"serviceTier": {
"type": [
"string",
"null"
]
},
"threadId": {
"type": "string"
},
"personality": {
"anyOf": [
{
"$ref": "#/definitions/v2/Personality"
},
{
"type": "null"
}
]
},
"model": {
"description": "Configuration overrides for the resumed thread, if any.",
"type": [
"string",
"null"
]
},
"modelProvider": {
"type": [
"string",
"null"
]
},
"sandbox": {
"anyOf": [
{
"$ref": "#/definitions/v2/SandboxMode"
},
{
"type": "null"
}
]
}
}
},
"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 a non-empty path, the thread_id param will be ignored. Empty string path values are treated as absent.\n\nPrefer using thread_id whenever possible.",
"type": "object",
"required": [
"threadId"
],
"properties": {
"approvalPolicy": {
"anyOf": [
{
"$ref": "#/definitions/v2/AskForApproval"
},
{
"type": "null"
}
]
},
"approvalsReviewer": {
"description": "Override where approval requests are routed for review on this thread and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/v2/ApprovalsReviewer"
},
{
"type": "null"
}
]
},
"baseInstructions": {
"type": [
"string",
"null"
]
},
"config": {
"type": [
"object",
"null"
],
"additionalProperties": true
},
"cwd": {
"type": [
"string",
"null"
]
},
"developerInstructions": {
"type": [
"string",
"null"
]
},
"ephemeral": {
"type": "boolean"
},
"serviceTier": {
"type": [
"string",
"null"
]
},
"model": {
"description": "Configuration overrides for the forked thread, if any.",
"type": [
"string",
"null"
]
},
"modelProvider": {
"type": [
"string",
"null"
]
},
"threadSource": {
"description": "Optional client-supplied analytics source classification for this forked thread.",
"anyOf": [
{
"$ref": "#/definitions/v2/ThreadSource"
},
{
"type": "null"
}
]
},
"sandbox": {
"anyOf": [
{
"$ref": "#/definitions/v2/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"
}
}
},
"ThreadDeleteParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadDeleteParams",
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"type": "string"
}
}
},
"ThreadUnsubscribeParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadUnsubscribeParams",
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"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"
}
}
},
"WindowsSandboxSetupCompletedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "WindowsSandboxSetupCompletedNotification",
"type": "object",
"required": [
"mode",
"success"
],
"properties": {
"error": {
"type": [
"string",
"null"
]
},
"mode": {
"$ref": "#/definitions/v2/WindowsSandboxSetupMode"
},
"success": {
"type": "boolean"
}
}
},
"ThreadSetNameParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadSetNameParams",
"type": "object",
"required": [
"name",
"threadId"
],
"properties": {
"name": {
"type": "string"
},
"threadId": {
"type": "string"
}
}
},
"ThreadGoalStatus": {
"type": "string",
"enum": [
"active",
"paused",
"blocked",
"usageLimited",
"budgetLimited",
"complete"
]
},
"ThreadGoalSetParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadGoalSetParams",
"type": "object",
"required": [
"threadId"
],
"properties": {
"objective": {
"type": [
"string",
"null"
]
},
"status": {
"anyOf": [
{
"$ref": "#/definitions/v2/ThreadGoalStatus"
},
{
"type": "null"
}
]
},
"threadId": {
"type": "string"
},
"tokenBudget": {
"type": [
"integer",
"null"
],
"format": "int64"
}
}
},
"ThreadGoalGetParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadGoalGetParams",
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"type": "string"
}
}
},
"ThreadGoalClearParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadGoalClearParams",
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"type": "string"
}
}
},
"ThreadMetadataGitInfoUpdateParams": {
"type": "object",
"properties": {
"branch": {
"description": "Omit to leave the stored branch unchanged, set to `null` to clear it, or provide a non-empty string to replace it.",
"type": [
"string",
"null"
]
},
"originUrl": {
"description": "Omit to leave the stored origin URL unchanged, set to `null` to clear it, or provide a non-empty string to replace it.",
"type": [
"string",
"null"
]
},
"sha": {
"description": "Omit to leave the stored commit unchanged, set to `null` to clear it, or provide a non-empty string to replace it.",
"type": [
"string",
"null"
]
}
}
},
"ThreadMetadataUpdateParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadMetadataUpdateParams",
"type": "object",
"required": [
"threadId"
],
"properties": {
"gitInfo": {
"description": "Patch the stored Git metadata for this thread. Omit a field to leave it unchanged, set it to `null` to clear it, or provide a string to replace the stored value.",
"anyOf": [
{
"$ref": "#/definitions/v2/ThreadMetadataGitInfoUpdateParams"
},
{
"type": "null"
}
]
},
"threadId": {
"type": "string"
}
}
},
"CollaborationMode": {
"description": "Collaboration mode for a Codex session.",
"type": "object",
"required": [
"mode",
"settings"
],
"properties": {
"mode": {
"$ref": "#/definitions/v2/ModeKind"
},
"settings": {
"$ref": "#/definitions/v2/Settings"
}
}
},
"ModeKind": {
"description": "Initial collaboration mode to use when the TUI starts.",
"type": "string",
"enum": [
"plan",
"default"
]
},
"NetworkAccess": {
"type": "string",
"enum": [
"restricted",
"enabled"
]
},
"ReasoningEffort": {
"description": "A non-empty reasoning effort value advertised by the model.",
"type": "string",
"minLength": 1
},
"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": {
"networkAccess": {
"default": false,
"type": "boolean"
},
"type": {
"type": "string",
"enum": [
"readOnly"
],
"title": "ReadOnlySandboxPolicyType"
}
},
"title": "ReadOnlySandboxPolicy"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"networkAccess": {
"default": "restricted",
"allOf": [
{
"$ref": "#/definitions/v2/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/v2/AbsolutePathBuf"
}
}
},
"title": "WorkspaceWriteSandboxPolicy"
}
]
},
"Settings": {
"description": "Settings for a collaboration mode.",
"type": "object",
"required": [
"model"
],
"properties": {
"developer_instructions": {
"type": [
"string",
"null"
]
},
"model": {
"type": "string"
},
"reasoning_effort": {
"anyOf": [
{
"$ref": "#/definitions/v2/ReasoningEffort"
},
{
"type": "null"
}
]
}
}
},
"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.0
},
"failedScan": {
"type": "boolean"
},
"samplePaths": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"ThreadMemoryMode": {
"type": "string",
"enum": [
"enabled",
"disabled"
]
},
"ThreadRealtimeClosedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadRealtimeClosedNotification",
"description": "EXPERIMENTAL - emitted when thread realtime transport closes.",
"type": "object",
"required": [
"threadId"
],
"properties": {
"reason": {
"type": [
"string",
"null"
]
},
"threadId": {
"type": "string"
}
}
},
"ThreadUnarchiveParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadUnarchiveParams",
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"type": "string"
}
}
},
"ThreadCompactStartParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadCompactStartParams",
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"type": "string"
}
}
},
"ThreadShellCommandParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadShellCommandParams",
"type": "object",
"required": [
"command",
"threadId"
],
"properties": {
"command": {
"description": "Shell command string evaluated by the thread's configured shell. Unlike `command/exec`, this intentionally preserves shell syntax such as pipes, redirects, and quoting. This runs unsandboxed with full access rather than inheriting the thread sandbox policy.",
"type": "string"
},
"threadId": {
"type": "string"
}
}
},
"ThreadApproveGuardianDeniedActionParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadApproveGuardianDeniedActionParams",
"type": "object",
"required": [
"event",
"threadId"
],
"properties": {
"event": {
"description": "Serialized `codex_protocol::protocol::GuardianAssessmentEvent`."
},
"threadId": {
"type": "string"
}
}
},
"ThreadRealtimeErrorNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadRealtimeErrorNotification",
"description": "EXPERIMENTAL - emitted when thread realtime encounters an error.",
"type": "object",
"required": [
"message",
"threadId"
],
"properties": {
"message": {
"type": "string"
},
"threadId": {
"type": "string"
}
}
},
"ThreadRealtimeSdpNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadRealtimeSdpNotification",
"description": "EXPERIMENTAL - emitted with the remote SDP for a WebRTC realtime session.",
"type": "object",
"required": [
"sdp",
"threadId"
],
"properties": {
"sdp": {
"type": "string"
},
"threadId": {
"type": "string"
}
}
},
"ThreadRealtimeOutputAudioDeltaNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadRealtimeOutputAudioDeltaNotification",
"description": "EXPERIMENTAL - streamed output audio emitted by thread realtime.",
"type": "object",
"required": [
"audio",
"threadId"
],
"properties": {
"audio": {
"$ref": "#/definitions/v2/ThreadRealtimeAudioChunk"
},
"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.0
},
"threadId": {
"type": "string"
}
}
},
"ThreadListCwdFilter": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"ThreadSortKey": {
"type": "string",
"enum": [
"created_at",
"updated_at",
"recency_at"
]
},
"ThreadSourceKind": {
"type": "string",
"enum": [
"cli",
"vscode",
"exec",
"appServer",
"subAgent",
"subAgentReview",
"subAgentCompact",
"subAgentThreadSpawn",
"subAgentOther",
"unknown"
]
},
"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"
]
},
"cwd": {
"description": "Optional cwd filter or filters; when set, only threads whose session cwd exactly matches one of these paths are returned.",
"anyOf": [
{
"$ref": "#/definitions/v2/ThreadListCwdFilter"
},
{
"type": "null"
}
]
},
"limit": {
"description": "Optional page size; defaults to a reasonable server-side value.",
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0.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"
}
},
"useStateDbOnly": {
"description": "If true, return from the state DB without scanning JSONL rollouts to repair thread metadata. Omitted or false preserves scan-and-repair behavior.",
"type": "boolean"
},
"searchTerm": {
"description": "Optional substring filter for the extracted thread title.",
"type": [
"string",
"null"
]
},
"sortDirection": {
"description": "Optional sort direction; defaults to descending (newest first).",
"anyOf": [
{
"$ref": "#/definitions/v2/SortDirection"
},
{
"type": "null"
}
]
},
"sortKey": {
"description": "Optional sort key; defaults to created_at.",
"anyOf": [
{
"$ref": "#/definitions/v2/ThreadSortKey"
},
{
"type": "null"
}
]
},
"sourceKinds": {
"description": "Optional source filter; when set, only sessions from these source kinds are returned. When omitted or empty, defaults to interactive sources.",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/ThreadSourceKind"
}
}
}
},
"ThreadRealtimeTranscriptDoneNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadRealtimeTranscriptDoneNotification",
"description": "EXPERIMENTAL - final transcript text emitted when realtime completes a transcript part.",
"type": "object",
"required": [
"role",
"text",
"threadId"
],
"properties": {
"role": {
"type": "string"
},
"text": {
"description": "Final complete text for the transcript part.",
"type": "string"
},
"threadId": {
"type": "string"
}
}
},
"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.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.",
"type": "boolean"
},
"threadId": {
"type": "string"
}
}
},
"ThreadRealtimeTranscriptDeltaNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadRealtimeTranscriptDeltaNotification",
"description": "EXPERIMENTAL - flat transcript delta emitted whenever realtime transcript text changes.",
"type": "object",
"required": [
"delta",
"role",
"threadId"
],
"properties": {
"delta": {
"description": "Live transcript delta from the realtime event.",
"type": "string"
},
"role": {
"type": "string"
},
"threadId": {
"type": "string"
}
}
},
"ThreadRealtimeItemAddedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadRealtimeItemAddedNotification",
"description": "EXPERIMENTAL - raw non-audio thread realtime item emitted by the backend.",
"type": "object",
"required": [
"item",
"threadId"
],
"properties": {
"item": true,
"threadId": {
"type": "string"
}
}
},
"ThreadInjectItemsParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadInjectItemsParams",
"type": "object",
"required": [
"items",
"threadId"
],
"properties": {
"items": {
"description": "Raw Responses API items to append to the thread's model-visible history.",
"type": "array",
"items": true
},
"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"
}
}
},
"SkillsExtraRootsSetParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SkillsExtraRootsSetParams",
"type": "object",
"required": [
"extraRoots"
],
"properties": {
"extraRoots": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
}
}
},
"HooksListParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "HooksListParams",
"type": "object",
"properties": {
"cwds": {
"description": "When empty, defaults to the current session working directory.",
"type": "array",
"items": {
"type": "string"
}
}
}
},
"MarketplaceAddParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "MarketplaceAddParams",
"type": "object",
"required": [
"source"
],
"properties": {
"refName": {
"type": [
"string",
"null"
]
},
"source": {
"type": "string"
},
"sparsePaths": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
}
}
},
"MarketplaceRemoveParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "MarketplaceRemoveParams",
"type": "object",
"required": [
"marketplaceName"
],
"properties": {
"marketplaceName": {
"type": "string"
}
}
},
"MarketplaceUpgradeParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "MarketplaceUpgradeParams",
"type": "object",
"properties": {
"marketplaceName": {
"type": [
"string",
"null"
]
}
}
},
"PluginListMarketplaceKind": {
"type": "string",
"enum": [
"local",
"vertical",
"workspace-directory",
"shared-with-me",
"created-by-me-remote"
]
},
"PluginListParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginListParams",
"type": "object",
"properties": {
"cwds": {
"description": "Optional working directories used to discover repo marketplaces. When omitted, only home-scoped marketplaces and the official curated marketplace are considered.",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
},
"marketplaceKinds": {
"description": "Optional marketplace kind filter. When omitted, only local marketplaces are queried, plus the default remote catalog when enabled by feature flag.",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/PluginListMarketplaceKind"
}
}
}
},
"PluginInstalledParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginInstalledParams",
"type": "object",
"properties": {
"cwds": {
"description": "Optional working directories used to discover repo marketplaces.",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
},
"installSuggestionPluginNames": {
"description": "Additional uninstalled plugin names that should be returned when present locally. This is used by mention surfaces that intentionally expose install entrypoints.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
}
}
},
"PluginReadParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginReadParams",
"type": "object",
"required": [
"pluginName"
],
"properties": {
"marketplacePath": {
"anyOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
{
"type": "null"
}
]
},
"pluginName": {
"type": "string"
},
"remoteMarketplaceName": {
"type": [
"string",
"null"
]
}
}
},
"PluginSkillReadParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginSkillReadParams",
"type": "object",
"required": [
"remoteMarketplaceName",
"remotePluginId",
"skillName"
],
"properties": {
"remoteMarketplaceName": {
"type": "string"
},
"remotePluginId": {
"type": "string"
},
"skillName": {
"type": "string"
}
}
},
"PluginShareDiscoverability": {
"type": "string",
"enum": [
"LISTED",
"UNLISTED",
"PRIVATE"
]
},
"PluginSharePrincipalType": {
"type": "string",
"enum": [
"user",
"group",
"workspace"
]
},
"PluginShareTarget": {
"type": "object",
"required": [
"principalId",
"principalType",
"role"
],
"properties": {
"principalId": {
"type": "string"
},
"principalType": {
"$ref": "#/definitions/v2/PluginSharePrincipalType"
},
"role": {
"$ref": "#/definitions/v2/PluginShareTargetRole"
}
}
},
"PluginShareTargetRole": {
"type": "string",
"enum": [
"reader",
"editor"
]
},
"PluginShareSaveParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginShareSaveParams",
"type": "object",
"required": [
"pluginPath"
],
"properties": {
"discoverability": {
"anyOf": [
{
"$ref": "#/definitions/v2/PluginShareDiscoverability"
},
{
"type": "null"
}
]
},
"pluginPath": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"remotePluginId": {
"type": [
"string",
"null"
]
},
"shareTargets": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/PluginShareTarget"
}
}
}
},
"PluginShareUpdateDiscoverability": {
"type": "string",
"enum": [
"UNLISTED",
"PRIVATE"
]
},
"PluginShareUpdateTargetsParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginShareUpdateTargetsParams",
"type": "object",
"required": [
"discoverability",
"remotePluginId",
"shareTargets"
],
"properties": {
"discoverability": {
"$ref": "#/definitions/v2/PluginShareUpdateDiscoverability"
},
"remotePluginId": {
"type": "string"
},
"shareTargets": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/PluginShareTarget"
}
}
}
},
"PluginShareListParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginShareListParams",
"type": "object"
},
"PluginShareCheckoutParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginShareCheckoutParams",
"type": "object",
"required": [
"remotePluginId"
],
"properties": {
"remotePluginId": {
"type": "string"
}
}
},
"PluginShareDeleteParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginShareDeleteParams",
"type": "object",
"required": [
"remotePluginId"
],
"properties": {
"remotePluginId": {
"type": "string"
}
}
},
"AppsListParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "AppsListParams",
"description": "EXPERIMENTAL - list available apps/connectors.",
"type": "object",
"properties": {
"cursor": {
"description": "Opaque pagination cursor returned by a previous call.",
"type": [
"string",
"null"
]
},
"forceRefetch": {
"description": "When true, bypass app caches and fetch the latest data from sources.",
"type": "boolean"
},
"limit": {
"description": "Optional page size; defaults to a reasonable server-side value.",
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0.0
},
"threadId": {
"description": "Optional thread id used to evaluate app feature gating from that thread's config.",
"type": [
"string",
"null"
]
}
}
},
"FsReadFileParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsReadFileParams",
"description": "Read a file from the host filesystem.",
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"description": "Absolute path to read.",
"allOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
]
}
}
},
"FsWriteFileParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsWriteFileParams",
"description": "Write a file on the host filesystem.",
"type": "object",
"required": [
"dataBase64",
"path"
],
"properties": {
"dataBase64": {
"description": "File contents encoded as base64.",
"type": "string"
},
"path": {
"description": "Absolute path to write.",
"allOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
]
}
}
},
"FsCreateDirectoryParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsCreateDirectoryParams",
"description": "Create a directory on the host filesystem.",
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"description": "Absolute directory path to create.",
"allOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
]
},
"recursive": {
"description": "Whether parent directories should also be created. Defaults to `true`.",
"type": [
"boolean",
"null"
]
}
}
},
"FsGetMetadataParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsGetMetadataParams",
"description": "Request metadata for an absolute path.",
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"description": "Absolute path to inspect.",
"allOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
]
}
}
},
"FsReadDirectoryParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsReadDirectoryParams",
"description": "List direct child names for a directory.",
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"description": "Absolute directory path to read.",
"allOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
]
}
}
},
"FsRemoveParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsRemoveParams",
"description": "Remove a file or directory tree from the host filesystem.",
"type": "object",
"required": [
"path"
],
"properties": {
"force": {
"description": "Whether missing paths should be ignored. Defaults to `true`.",
"type": [
"boolean",
"null"
]
},
"path": {
"description": "Absolute path to remove.",
"allOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
]
},
"recursive": {
"description": "Whether directory removal should recurse. Defaults to `true`.",
"type": [
"boolean",
"null"
]
}
}
},
"FsCopyParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsCopyParams",
"description": "Copy a file or directory tree on the host filesystem.",
"type": "object",
"required": [
"destinationPath",
"sourcePath"
],
"properties": {
"destinationPath": {
"description": "Absolute destination path.",
"allOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
]
},
"recursive": {
"description": "Required for directory copies; ignored for file copies.",
"type": "boolean"
},
"sourcePath": {
"description": "Absolute source path.",
"allOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
]
}
}
},
"FsWatchParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsWatchParams",
"description": "Start filesystem watch notifications for an absolute path.",
"type": "object",
"required": [
"path",
"watchId"
],
"properties": {
"path": {
"description": "Absolute file or directory path to watch.",
"allOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
]
},
"watchId": {
"description": "Connection-scoped watch identifier used for `fs/unwatch` and `fs/changed`.",
"type": "string"
}
}
},
"FsUnwatchParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsUnwatchParams",
"description": "Stop filesystem watch notifications for a prior `fs/watch`.",
"type": "object",
"required": [
"watchId"
],
"properties": {
"watchId": {
"description": "Watch identifier previously provided to `fs/watch`.",
"type": "string"
}
}
},
"SkillsConfigWriteParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SkillsConfigWriteParams",
"type": "object",
"required": [
"enabled"
],
"properties": {
"enabled": {
"type": "boolean"
},
"name": {
"description": "Name-based selector.",
"type": [
"string",
"null"
]
},
"path": {
"description": "Path-based selector.",
"anyOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
{
"type": "null"
}
]
}
}
},
"PluginInstallParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginInstallParams",
"type": "object",
"required": [
"pluginName"
],
"properties": {
"marketplacePath": {
"anyOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
{
"type": "null"
}
]
},
"pluginName": {
"type": "string"
},
"remoteMarketplaceName": {
"type": [
"string",
"null"
]
}
}
},
"PluginUninstallParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginUninstallParams",
"type": "object",
"required": [
"pluginId"
],
"properties": {
"pluginId": {
"type": "string"
}
}
},
"AdditionalContextEntry": {
"type": "object",
"required": [
"kind",
"value"
],
"properties": {
"kind": {
"$ref": "#/definitions/v2/AdditionalContextKind"
},
"value": {
"type": "string"
}
}
},
"AdditionalContextKind": {
"type": "string",
"enum": [
"untrusted",
"application"
]
},
"ByteRange": {
"type": "object",
"required": [
"end",
"start"
],
"properties": {
"end": {
"type": "integer",
"format": "uint",
"minimum": 0.0
},
"start": {
"type": "integer",
"format": "uint",
"minimum": 0.0
}
}
},
"TextElement": {
"type": "object",
"required": [
"byteRange"
],
"properties": {
"byteRange": {
"description": "Byte range in the parent `text` buffer that this element occupies.",
"allOf": [
{
"$ref": "#/definitions/v2/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/v2/TextElement"
}
},
"type": {
"type": "string",
"enum": [
"text"
],
"title": "TextUserInputType"
}
},
"title": "TextUserInput"
},
{
"type": "object",
"required": [
"type",
"url"
],
"properties": {
"detail": {
"default": null,
"anyOf": [
{
"$ref": "#/definitions/v2/ImageDetail"
},
{
"type": "null"
}
]
},
"type": {
"type": "string",
"enum": [
"image"
],
"title": "ImageUserInputType"
},
"url": {
"type": "string"
}
},
"title": "ImageUserInput"
},
{
"type": "object",
"required": [
"path",
"type"
],
"properties": {
"detail": {
"default": null,
"anyOf": [
{
"$ref": "#/definitions/v2/ImageDetail"
},
{
"type": "null"
}
]
},
"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"
},
{
"type": "object",
"required": [
"name",
"path",
"type"
],
"properties": {
"name": {
"type": "string"
},
"path": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"mention"
],
"title": "MentionUserInputType"
}
},
"title": "MentionUserInput"
}
]
},
"TurnStartParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnStartParams",
"type": "object",
"required": [
"input",
"threadId"
],
"properties": {
"threadId": {
"type": "string"
},
"approvalPolicy": {
"description": "Override the approval policy for this turn and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/v2/AskForApproval"
},
{
"type": "null"
}
]
},
"approvalsReviewer": {
"description": "Override where approval requests are routed for review on this turn and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/v2/ApprovalsReviewer"
},
{
"type": "null"
}
]
},
"clientUserMessageId": {
"type": [
"string",
"null"
]
},
"serviceTier": {
"description": "Override the service tier for this turn and subsequent turns.",
"type": [
"string",
"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/v2/ReasoningEffort"
},
{
"type": "null"
}
]
},
"personality": {
"description": "Override the personality for this turn and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/v2/Personality"
},
{
"type": "null"
}
]
},
"input": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/UserInput"
}
},
"model": {
"description": "Override the model for this turn and subsequent turns.",
"type": [
"string",
"null"
]
},
"summary": {
"description": "Override the reasoning summary for this turn and subsequent turns.",
"anyOf": [
{
"$ref": "#/definitions/v2/ReasoningSummary"
},
{
"type": "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/v2/SandboxPolicy"
},
{
"type": "null"
}
]
}
}
},
"TurnSteerParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnSteerParams",
"type": "object",
"required": [
"expectedTurnId",
"input",
"threadId"
],
"properties": {
"threadId": {
"type": "string"
},
"clientUserMessageId": {
"type": [
"string",
"null"
]
},
"expectedTurnId": {
"description": "Required active turn id precondition. The request fails when it does not match the currently active turn.",
"type": "string"
},
"input": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/UserInput"
}
}
}
},
"TurnInterruptParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnInterruptParams",
"type": "object",
"required": [
"threadId",
"turnId"
],
"properties": {
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"RealtimeConversationVersion": {
"type": "string",
"enum": [
"v1",
"v2"
]
},
"RealtimeOutputModality": {
"type": "string",
"enum": [
"text",
"audio"
]
},
"RealtimeVoice": {
"type": "string",
"enum": [
"alloy",
"arbor",
"ash",
"ballad",
"breeze",
"cedar",
"coral",
"cove",
"echo",
"ember",
"juniper",
"maple",
"marin",
"sage",
"shimmer",
"sol",
"spruce",
"vale",
"verse"
]
},
"ThreadRealtimeStartTransport": {
"description": "EXPERIMENTAL - transport used by thread realtime.",
"oneOf": [
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"websocket"
],
"title": "WebsocketThreadRealtimeStartTransportType"
}
},
"title": "WebsocketThreadRealtimeStartTransport"
},
{
"type": "object",
"required": [
"sdp",
"type"
],
"properties": {
"sdp": {
"description": "SDP offer generated by a WebRTC RTCPeerConnection after configuring audio and the realtime events data channel.",
"type": "string"
},
"type": {
"type": "string",
"enum": [
"webrtc"
],
"title": "WebrtcThreadRealtimeStartTransportType"
}
},
"title": "WebrtcThreadRealtimeStartTransport"
}
]
},
"ThreadRealtimeStartedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadRealtimeStartedNotification",
"description": "EXPERIMENTAL - emitted when thread realtime startup is accepted.",
"type": "object",
"required": [
"threadId",
"version"
],
"properties": {
"realtimeSessionId": {
"type": [
"string",
"null"
]
},
"threadId": {
"type": "string"
},
"version": {
"$ref": "#/definitions/v2/RealtimeConversationVersion"
}
}
},
"ThreadRealtimeAudioChunk": {
"description": "EXPERIMENTAL - thread realtime audio chunk.",
"type": "object",
"required": [
"data",
"numChannels",
"sampleRate"
],
"properties": {
"data": {
"type": "string"
},
"itemId": {
"type": [
"string",
"null"
]
},
"numChannels": {
"type": "integer",
"format": "uint16",
"minimum": 0.0
},
"sampleRate": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
},
"samplesPerChannel": {
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0.0
}
}
},
"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"
]
},
"path": {
"description": "Optional path to the config file that triggered the warning.",
"type": [
"string",
"null"
]
},
"range": {
"description": "Optional range for the error location inside the config file.",
"anyOf": [
{
"$ref": "#/definitions/v2/TextRange"
},
{
"type": "null"
}
]
},
"summary": {
"description": "Concise summary of the warning.",
"type": "string"
}
}
},
"ConversationTextRole": {
"type": "string",
"enum": [
"user",
"developer",
"assistant"
]
},
"TextRange": {
"type": "object",
"required": [
"end",
"start"
],
"properties": {
"end": {
"$ref": "#/definitions/v2/TextPosition"
},
"start": {
"$ref": "#/definitions/v2/TextPosition"
}
}
},
"TextPosition": {
"type": "object",
"required": [
"column",
"line"
],
"properties": {
"column": {
"description": "1-based column number (in Unicode scalar values).",
"type": "integer",
"format": "uint",
"minimum": 0.0
},
"line": {
"description": "1-based line number.",
"type": "integer",
"format": "uint",
"minimum": 0.0
}
}
},
"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"
}
}
},
"GuardianWarningNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GuardianWarningNotification",
"type": "object",
"required": [
"message",
"threadId"
],
"properties": {
"message": {
"description": "Concise guardian warning message for the user.",
"type": "string"
},
"threadId": {
"description": "Thread target for the guardian warning.",
"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/v2/ReviewDelivery"
},
{
"type": "null"
}
]
},
"target": {
"$ref": "#/definitions/v2/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"
]
},
"includeHidden": {
"description": "When true, include models that are hidden from the default picker list.",
"type": [
"boolean",
"null"
]
},
"limit": {
"description": "Optional page size; defaults to a reasonable server-side value.",
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0.0
}
}
},
"ModelProviderCapabilitiesReadParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ModelProviderCapabilitiesReadParams",
"type": "object"
},
"ExperimentalFeatureListParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExperimentalFeatureListParams",
"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.0
},
"threadId": {
"description": "Optional loaded thread id. Pass this when showing feature state for an existing thread so enablement is computed from that thread's refreshed config, including project-local config for the thread's cwd.",
"type": [
"string",
"null"
]
}
}
},
"PermissionProfileListParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PermissionProfileListParams",
"type": "object",
"properties": {
"cursor": {
"description": "Opaque pagination cursor returned by a previous call.",
"type": [
"string",
"null"
]
},
"cwd": {
"description": "Optional working directory to resolve project config layers.",
"type": [
"string",
"null"
]
},
"limit": {
"description": "Optional page size; defaults to the full result set.",
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0.0
}
}
},
"ExperimentalFeatureEnablementSetParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExperimentalFeatureEnablementSetParams",
"type": "object",
"required": [
"enablement"
],
"properties": {
"enablement": {
"description": "Process-wide runtime feature enablement keyed by canonical feature name.\n\nOnly named features are updated. Omitted features are left unchanged. Send an empty map for a no-op.",
"type": "object",
"additionalProperties": {
"type": "boolean"
}
}
}
},
"RemoteControlEnableParams": {
"type": "object",
"properties": {
"ephemeral": {
"type": "boolean"
}
}
},
"WarningNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "WarningNotification",
"type": "object",
"required": [
"message"
],
"properties": {
"message": {
"description": "Concise warning message for the user.",
"type": "string"
},
"threadId": {
"description": "Optional thread target when the warning applies to a specific thread.",
"type": [
"string",
"null"
]
}
}
},
"RemoteControlDisableParams": {
"type": "object",
"properties": {
"ephemeral": {
"type": "boolean"
}
}
},
"ModelSafetyBufferingUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ModelSafetyBufferingUpdatedNotification",
"type": "object",
"required": [
"model",
"reasons",
"threadId",
"turnId",
"useCases"
],
"properties": {
"model": {
"type": "string"
},
"reasons": {
"type": "array",
"items": {
"type": "string"
}
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
},
"useCases": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"TurnModerationMetadataNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnModerationMetadataNotification",
"type": "object",
"required": [
"metadata",
"threadId",
"turnId"
],
"properties": {
"metadata": true,
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ModelVerificationNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ModelVerificationNotification",
"type": "object",
"required": [
"threadId",
"turnId",
"verifications"
],
"properties": {
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
},
"verifications": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ModelVerification"
}
}
}
},
"ModelVerification": {
"type": "string",
"enum": [
"trustedAccessForCyber"
]
},
"ModelReroutedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ModelReroutedNotification",
"type": "object",
"required": [
"fromModel",
"reason",
"threadId",
"toModel",
"turnId"
],
"properties": {
"fromModel": {
"type": "string"
},
"reason": {
"$ref": "#/definitions/v2/ModelRerouteReason"
},
"threadId": {
"type": "string"
},
"toModel": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ModelRerouteReason": {
"type": "string",
"enum": [
"highRiskCyberActivity"
]
},
"ContextCompactedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ContextCompactedNotification",
"description": "Deprecated: Use `ContextCompaction` item type instead.",
"type": "object",
"required": [
"threadId",
"turnId"
],
"properties": {
"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"
}
}
},
"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"
}
}
},
"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"
}
}
},
"McpServerStatusDetail": {
"type": "string",
"enum": [
"full",
"toolsAndAuthOnly"
]
},
"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"
]
},
"detail": {
"description": "Controls how much MCP inventory data to fetch for each server. Defaults to `Full` when omitted.",
"anyOf": [
{
"$ref": "#/definitions/v2/McpServerStatusDetail"
},
{
"type": "null"
}
]
},
"limit": {
"description": "Optional page size; defaults to a server-defined value.",
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0.0
},
"threadId": {
"type": [
"string",
"null"
]
}
}
},
"McpResourceReadParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "McpResourceReadParams",
"type": "object",
"required": [
"server",
"uri"
],
"properties": {
"server": {
"type": "string"
},
"threadId": {
"type": [
"string",
"null"
]
},
"uri": {
"type": "string"
}
}
},
"McpServerToolCallParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "McpServerToolCallParams",
"type": "object",
"required": [
"server",
"threadId",
"tool"
],
"properties": {
"_meta": true,
"arguments": true,
"server": {
"type": "string"
},
"threadId": {
"type": "string"
},
"tool": {
"type": "string"
}
}
},
"WindowsSandboxSetupMode": {
"type": "string",
"enum": [
"elevated",
"unelevated"
]
},
"WindowsSandboxSetupStartParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "WindowsSandboxSetupStartParams",
"type": "object",
"required": [
"mode"
],
"properties": {
"cwd": {
"anyOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
{
"type": "null"
}
]
},
"mode": {
"$ref": "#/definitions/v2/WindowsSandboxSetupMode"
}
}
},
"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": {
"codexStreamlinedLogin": {
"type": "boolean"
},
"type": {
"type": "string",
"enum": [
"chatgpt"
],
"title": "Chatgptv2::LoginAccountParamsType"
}
},
"title": "Chatgptv2::LoginAccountParams"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"chatgptDeviceCode"
],
"title": "ChatgptDeviceCodev2::LoginAccountParamsType"
}
},
"title": "ChatgptDeviceCodev2::LoginAccountParams"
},
{
"description": "[UNSTABLE] FOR OPENAI INTERNAL USE ONLY - DO NOT USE. The access token must contain the same scopes that Codex-managed ChatGPT auth tokens have.",
"type": "object",
"required": [
"accessToken",
"chatgptAccountId",
"type"
],
"properties": {
"accessToken": {
"description": "Access token (JWT) supplied by the client. This token is used for backend API requests and email extraction.",
"type": "string"
},
"chatgptAccountId": {
"description": "Workspace/account identifier supplied by the client.",
"type": "string"
},
"chatgptPlanType": {
"description": "Optional plan type supplied by the client.\n\nWhen `null`, Codex attempts to derive the plan type from access-token claims. If unavailable, the plan defaults to `unknown`.",
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"chatgptAuthTokens"
],
"title": "ChatgptAuthTokensv2::LoginAccountParamsType"
}
},
"title": "ChatgptAuthTokensv2::LoginAccountParams"
}
]
},
"CancelLoginAccountParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CancelLoginAccountParams",
"type": "object",
"required": [
"loginId"
],
"properties": {
"loginId": {
"type": "string"
}
}
},
"ConsumeAccountRateLimitResetCreditParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ConsumeAccountRateLimitResetCreditParams",
"type": "object",
"required": [
"idempotencyKey"
],
"properties": {
"idempotencyKey": {
"description": "Identifies one logical reset attempt. A UUID is recommended; reuse the same value when retrying that attempt.",
"type": "string"
}
}
},
"AddCreditsNudgeCreditType": {
"type": "string",
"enum": [
"credits",
"usage_limit"
]
},
"SendAddCreditsNudgeEmailParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SendAddCreditsNudgeEmailParams",
"type": "object",
"required": [
"creditType"
],
"properties": {
"creditType": {
"$ref": "#/definitions/v2/AddCreditsNudgeCreditType"
}
}
},
"FeedbackUploadParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FeedbackUploadParams",
"type": "object",
"required": [
"classification"
],
"properties": {
"classification": {
"type": "string"
},
"extraLogFiles": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"includeLogs": {
"type": "boolean"
},
"reason": {
"type": [
"string",
"null"
]
},
"tags": {
"type": [
"object",
"null"
],
"additionalProperties": {
"type": "string"
}
},
"threadId": {
"type": [
"string",
"null"
]
}
}
},
"CommandExecTerminalSize": {
"description": "PTY size in character cells for `command/exec` PTY sessions.",
"type": "object",
"required": [
"cols",
"rows"
],
"properties": {
"cols": {
"description": "Terminal width in character cells.",
"type": "integer",
"format": "uint16",
"minimum": 0.0
},
"rows": {
"description": "Terminal height in character cells.",
"type": "integer",
"format": "uint16",
"minimum": 0.0
}
}
},
"CommandExecParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecParams",
"description": "Run a standalone command (argv vector) in the server sandbox without creating a thread or turn.\n\nThe final `command/exec` response is deferred until the process exits and is sent only after all `command/exec/outputDelta` notifications for that connection have been emitted.",
"type": "object",
"required": [
"command"
],
"properties": {
"command": {
"description": "Command argv vector. Empty arrays are rejected.",
"type": "array",
"items": {
"type": "string"
}
},
"cwd": {
"description": "Optional working directory. Defaults to the server cwd.",
"type": [
"string",
"null"
]
},
"disableOutputCap": {
"description": "Disable stdout/stderr capture truncation for this request.\n\nCannot be combined with `outputBytesCap`.",
"type": "boolean"
},
"disableTimeout": {
"description": "Disable the timeout entirely for this request.\n\nCannot be combined with `timeoutMs`.",
"type": "boolean"
},
"env": {
"description": "Optional environment overrides merged into the server-computed environment.\n\nMatching names override inherited values. Set a key to `null` to unset an inherited variable.",
"type": [
"object",
"null"
],
"additionalProperties": {
"type": [
"string",
"null"
]
}
},
"outputBytesCap": {
"description": "Optional per-stream stdout/stderr capture cap in bytes.\n\nWhen omitted, the server default applies. Cannot be combined with `disableOutputCap`.",
"type": [
"integer",
"null"
],
"format": "uint",
"minimum": 0.0
},
"tty": {
"description": "Enable PTY mode.\n\nThis implies `streamStdin` and `streamStdoutStderr`.",
"type": "boolean"
},
"processId": {
"description": "Optional client-supplied, connection-scoped process id.\n\nRequired for `tty`, `streamStdin`, `streamStdoutStderr`, and follow-up `command/exec/write`, `command/exec/resize`, and `command/exec/terminate` calls. When omitted, buffered execution gets an internal id that is not exposed to the client.",
"type": [
"string",
"null"
]
},
"sandboxPolicy": {
"description": "Optional sandbox policy for this command.\n\nUses the same shape as thread/turn execution sandbox configuration and defaults to the user's configured policy when omitted. Cannot be combined with `permissionProfile`.",
"anyOf": [
{
"$ref": "#/definitions/v2/SandboxPolicy"
},
{
"type": "null"
}
]
},
"size": {
"description": "Optional initial PTY size in character cells. Only valid when `tty` is true.",
"anyOf": [
{
"$ref": "#/definitions/v2/CommandExecTerminalSize"
},
{
"type": "null"
}
]
},
"streamStdin": {
"description": "Allow follow-up `command/exec/write` requests to write stdin bytes.\n\nRequires a client-supplied `processId`.",
"type": "boolean"
},
"streamStdoutStderr": {
"description": "Stream stdout/stderr via `command/exec/outputDelta` notifications.\n\nStreamed bytes are not duplicated into the final response and require a client-supplied `processId`.",
"type": "boolean"
},
"timeoutMs": {
"description": "Optional timeout in milliseconds.\n\nWhen omitted, the server default applies. Cannot be combined with `disableTimeout`.",
"type": [
"integer",
"null"
],
"format": "int64"
}
}
},
"CommandExecWriteParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecWriteParams",
"description": "Write stdin bytes to a running `command/exec` session, close stdin, or both.",
"type": "object",
"required": [
"processId"
],
"properties": {
"closeStdin": {
"description": "Close stdin after writing `deltaBase64`, if present.",
"type": "boolean"
},
"deltaBase64": {
"description": "Optional base64-encoded stdin bytes to write.",
"type": [
"string",
"null"
]
},
"processId": {
"description": "Client-supplied, connection-scoped `processId` from the original `command/exec` request.",
"type": "string"
}
}
},
"CommandExecTerminateParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecTerminateParams",
"description": "Terminate a running `command/exec` session.",
"type": "object",
"required": [
"processId"
],
"properties": {
"processId": {
"description": "Client-supplied, connection-scoped `processId` from the original `command/exec` request.",
"type": "string"
}
}
},
"CommandExecResizeParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecResizeParams",
"description": "Resize a running PTY-backed `command/exec` session.",
"type": "object",
"required": [
"processId",
"size"
],
"properties": {
"processId": {
"description": "Client-supplied, connection-scoped `processId` from the original `command/exec` request.",
"type": "string"
},
"size": {
"description": "New PTY size in character cells.",
"allOf": [
{
"$ref": "#/definitions/v2/CommandExecTerminalSize"
}
]
}
}
},
"ProcessTerminalSize": {
"description": "PTY size in character cells for `process/spawn` PTY sessions.",
"type": "object",
"required": [
"cols",
"rows"
],
"properties": {
"cols": {
"description": "Terminal width in character cells.",
"type": "integer",
"format": "uint16",
"minimum": 0.0
},
"rows": {
"description": "Terminal height in character cells.",
"type": "integer",
"format": "uint16",
"minimum": 0.0
}
}
},
"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"
}
}
},
"FsChangedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsChangedNotification",
"description": "Filesystem watch notification emitted for `fs/watch` subscribers.",
"type": "object",
"required": [
"changedPaths",
"watchId"
],
"properties": {
"changedPaths": {
"description": "File or directory paths associated with this event.",
"type": "array",
"items": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
},
"watchId": {
"description": "Watch identifier previously provided to `fs/watch`.",
"type": "string"
}
}
},
"ExternalAgentConfigImportCompletedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExternalAgentConfigImportCompletedNotification",
"type": "object",
"required": [
"importId",
"itemTypeResults"
],
"properties": {
"importId": {
"type": "string"
},
"itemTypeResults": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ExternalAgentConfigImportTypeResult"
}
}
}
},
"ExternalAgentConfigImportProgressNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExternalAgentConfigImportProgressNotification",
"type": "object",
"required": [
"importId",
"itemTypeResults"
],
"properties": {
"importId": {
"type": "string"
},
"itemTypeResults": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ExternalAgentConfigImportTypeResult"
}
}
}
},
"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": {
"type": "boolean"
}
}
},
"ExternalAgentConfigDetectParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExternalAgentConfigDetectParams",
"type": "object",
"properties": {
"cwds": {
"description": "Zero or more working directories to include for repo-scoped detection.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"includeHome": {
"description": "If true, include detection under the user's home directory.",
"type": "boolean"
}
}
},
"CommandMigration": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
}
}
},
"ExternalAgentConfigMigrationItem": {
"type": "object",
"required": [
"description",
"itemType"
],
"properties": {
"cwd": {
"description": "Null or empty means home-scoped migration; non-empty means repo-scoped migration.",
"type": [
"string",
"null"
]
},
"description": {
"type": "string"
},
"details": {
"anyOf": [
{
"$ref": "#/definitions/v2/MigrationDetails"
},
{
"type": "null"
}
]
},
"itemType": {
"$ref": "#/definitions/v2/ExternalAgentConfigMigrationItemType"
}
}
},
"ExternalAgentConfigMigrationItemType": {
"type": "string",
"enum": [
"AGENTS_MD",
"CONFIG",
"SKILLS",
"PLUGINS",
"MCP_SERVER_CONFIG",
"SUBAGENTS",
"HOOKS",
"COMMANDS",
"SESSIONS"
]
},
"HookMigration": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
}
}
},
"McpServerMigration": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
}
}
},
"MigrationDetails": {
"type": "object",
"properties": {
"commands": {
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/v2/CommandMigration"
}
},
"hooks": {
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/v2/HookMigration"
}
},
"mcpServers": {
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/v2/McpServerMigration"
}
},
"plugins": {
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/v2/PluginsMigration"
}
},
"sessions": {
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/v2/SessionMigration"
}
},
"subagents": {
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/v2/SubagentMigration"
}
}
}
},
"PluginsMigration": {
"type": "object",
"required": [
"marketplaceName",
"pluginNames"
],
"properties": {
"marketplaceName": {
"type": "string"
},
"pluginNames": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"SessionMigration": {
"type": "object",
"required": [
"cwd",
"path"
],
"properties": {
"cwd": {
"type": "string"
},
"path": {
"type": "string"
},
"title": {
"type": [
"string",
"null"
]
}
}
},
"SubagentMigration": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
}
}
},
"ExternalAgentConfigImportParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExternalAgentConfigImportParams",
"type": "object",
"required": [
"migrationItems"
],
"properties": {
"migrationItems": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ExternalAgentConfigMigrationItem"
}
},
"source": {
"description": "Source product that produced the migration items. Missing means unspecified.",
"type": [
"string",
"null"
]
}
}
},
"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/v2/MergeStrategy"
},
"value": true
}
},
"ConfigEdit": {
"type": "object",
"required": [
"keyPath",
"mergeStrategy",
"value"
],
"properties": {
"keyPath": {
"type": "string"
},
"mergeStrategy": {
"$ref": "#/definitions/v2/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/v2/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"
]
},
"reloadUserConfig": {
"description": "When true, hot-reload the updated user config into all loaded threads after writing.",
"type": "boolean"
}
}
},
"GetAccountParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GetAccountParams",
"type": "object",
"properties": {
"refreshToken": {
"description": "When `true`, requests a proactive token refresh before returning.\n\nIn managed auth mode this triggers the normal refresh-token flow. In external auth mode this flag is ignored. Clients should refresh tokens themselves and call `account/login/start` with `chatgptAuthTokens`.",
"type": "boolean"
}
}
},
"ActivePermissionProfile": {
"type": "object",
"required": [
"id"
],
"properties": {
"extends": {
"description": "Parent profile identifier from the selected permissions profile's `extends` setting, when present.",
"default": null,
"type": [
"string",
"null"
]
},
"id": {
"description": "Identifier from `default_permissions` or the implicit built-in default, such as `:workspace` or a user-defined `[permissions.<id>]` profile.",
"type": "string"
}
}
},
"AgentPath": {
"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",
"serverOverloaded",
"cyberPolicy",
"internalServerError",
"unauthorized",
"badRequest",
"threadRollbackFailed",
"sandboxError",
"other"
]
},
{
"type": "object",
"required": [
"httpConnectionFailed"
],
"properties": {
"httpConnectionFailed": {
"type": "object",
"properties": {
"httpStatusCode": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0.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.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.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.0
}
}
}
},
"additionalProperties": false,
"title": "ResponseTooManyFailedAttemptsCodexErrorInfo"
},
{
"description": "Returned when `turn/start` or `turn/steer` is submitted while the current active turn cannot accept same-turn steering, for example `/review` or manual `/compact`.",
"type": "object",
"required": [
"activeTurnNotSteerable"
],
"properties": {
"activeTurnNotSteerable": {
"type": "object",
"required": [
"turnKind"
],
"properties": {
"turnKind": {
"$ref": "#/definitions/v2/NonSteerableTurnKind"
}
}
}
},
"additionalProperties": false,
"title": "ActiveTurnNotSteerableCodexErrorInfo"
}
]
},
"CollabAgentState": {
"type": "object",
"required": [
"status"
],
"properties": {
"message": {
"type": [
"string",
"null"
]
},
"status": {
"$ref": "#/definitions/v2/CollabAgentStatus"
}
}
},
"CollabAgentStatus": {
"type": "string",
"enum": [
"pendingInit",
"running",
"interrupted",
"completed",
"errored",
"shutdown",
"notFound"
]
},
"CollabAgentTool": {
"type": "string",
"enum": [
"spawnAgent",
"sendInput",
"resumeAgent",
"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": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"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"
}
]
},
"CommandExecutionSource": {
"type": "string",
"enum": [
"agent",
"userShell",
"unifiedExecStartup",
"unifiedExecInteraction"
]
},
"CommandExecutionStatus": {
"type": "string",
"enum": [
"inProgress",
"completed",
"failed",
"declined"
]
},
"DynamicToolCallOutputContentItem": {
"oneOf": [
{
"type": "object",
"required": [
"text",
"type"
],
"properties": {
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"inputText"
],
"title": "InputTextDynamicToolCallOutputContentItemType"
}
},
"title": "InputTextDynamicToolCallOutputContentItem"
},
{
"type": "object",
"required": [
"imageUrl",
"type"
],
"properties": {
"imageUrl": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"inputImage"
],
"title": "InputImageDynamicToolCallOutputContentItemType"
}
},
"title": "InputImageDynamicToolCallOutputContentItem"
}
]
},
"DynamicToolCallStatus": {
"type": "string",
"enum": [
"inProgress",
"completed",
"failed"
]
},
"FileUpdateChange": {
"type": "object",
"required": [
"diff",
"kind",
"path"
],
"properties": {
"diff": {
"type": "string"
},
"kind": {
"$ref": "#/definitions/v2/PatchChangeKind"
},
"path": {
"type": "string"
}
}
},
"GitInfo": {
"type": "object",
"properties": {
"branch": {
"type": [
"string",
"null"
]
},
"originUrl": {
"type": [
"string",
"null"
]
},
"sha": {
"type": [
"string",
"null"
]
}
}
},
"HookPromptFragment": {
"type": "object",
"required": [
"hookRunId",
"text"
],
"properties": {
"hookRunId": {
"type": "string"
},
"text": {
"type": "string"
}
}
},
"McpToolCallAppContext": {
"type": "object",
"required": [
"connectorId"
],
"properties": {
"connectorId": {
"type": "string"
},
"linkId": {
"type": [
"string",
"null"
]
},
"resourceUri": {
"type": [
"string",
"null"
]
}
}
},
"McpToolCallError": {
"type": "object",
"required": [
"message"
],
"properties": {
"message": {
"type": "string"
}
}
},
"McpToolCallResult": {
"type": "object",
"required": [
"content"
],
"properties": {
"_meta": true,
"content": {
"type": "array",
"items": true
},
"structuredContent": true
}
},
"McpToolCallStatus": {
"type": "string",
"enum": [
"inProgress",
"completed",
"failed"
]
},
"MemoryCitation": {
"type": "object",
"required": [
"entries",
"threadIds"
],
"properties": {
"entries": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/MemoryCitationEntry"
}
},
"threadIds": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"MemoryCitationEntry": {
"type": "object",
"required": [
"lineEnd",
"lineStart",
"note",
"path"
],
"properties": {
"lineEnd": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
},
"lineStart": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
},
"note": {
"type": "string"
},
"path": {
"type": "string"
}
}
},
"NonSteerableTurnKind": {
"type": "string",
"enum": [
"review",
"compact"
]
},
"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"
}
]
},
"SessionSource": {
"oneOf": [
{
"type": "string",
"enum": [
"cli",
"vscode",
"exec",
"appServer",
"unknown"
]
},
{
"type": "object",
"required": [
"custom"
],
"properties": {
"custom": {
"type": "string"
}
},
"additionalProperties": false,
"title": "CustomSessionSource"
},
{
"type": "object",
"required": [
"subAgent"
],
"properties": {
"subAgent": {
"$ref": "#/definitions/v2/SubAgentSource"
}
},
"additionalProperties": false,
"title": "SubAgentSessionSource"
}
]
},
"SubAgentActivityKind": {
"type": "string",
"enum": [
"started",
"interacted",
"interrupted"
]
},
"SubAgentSource": {
"oneOf": [
{
"type": "string",
"enum": [
"review",
"compact",
"memory_consolidation"
]
},
{
"type": "object",
"required": [
"thread_spawn"
],
"properties": {
"thread_spawn": {
"type": "object",
"required": [
"depth",
"parent_thread_id"
],
"properties": {
"agent_nickname": {
"default": null,
"type": [
"string",
"null"
]
},
"agent_path": {
"default": null,
"anyOf": [
{
"$ref": "#/definitions/v2/AgentPath"
},
{
"type": "null"
}
]
},
"agent_role": {
"default": null,
"type": [
"string",
"null"
]
},
"depth": {
"type": "integer",
"format": "int32"
},
"parent_thread_id": {
"$ref": "#/definitions/v2/ThreadId"
}
}
}
},
"additionalProperties": false,
"title": "ThreadSpawnSubAgentSource"
},
{
"type": "object",
"required": [
"other"
],
"properties": {
"other": {
"type": "string"
}
},
"additionalProperties": false,
"title": "OtherSubAgentSource"
}
]
},
"Thread": {
"type": "object",
"required": [
"cliVersion",
"createdAt",
"cwd",
"ephemeral",
"id",
"modelProvider",
"preview",
"sessionId",
"source",
"status",
"turns",
"updatedAt"
],
"properties": {
"agentNickname": {
"description": "Optional random unique nickname assigned to an AgentControl-spawned sub-agent.",
"type": [
"string",
"null"
]
},
"agentRole": {
"description": "Optional role (agent_role) assigned to an AgentControl-spawned sub-agent.",
"type": [
"string",
"null"
]
},
"cliVersion": {
"description": "Version of the CLI that created the thread.",
"type": "string"
},
"createdAt": {
"description": "Unix timestamp (in seconds) when the thread was created.",
"type": "integer",
"format": "int64"
},
"cwd": {
"description": "Working directory captured for the thread.",
"allOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
]
},
"ephemeral": {
"description": "Whether the thread is ephemeral and should not be materialized on disk.",
"type": "boolean"
},
"forkedFromId": {
"description": "Source thread id when this thread was created by forking another thread.",
"type": [
"string",
"null"
]
},
"gitInfo": {
"description": "Optional Git metadata captured when the thread was created.",
"anyOf": [
{
"$ref": "#/definitions/v2/GitInfo"
},
{
"type": "null"
}
]
},
"id": {
"type": "string"
},
"modelProvider": {
"description": "Model provider used for this thread (for example, 'openai').",
"type": "string"
},
"name": {
"description": "Optional user-facing thread title.",
"type": [
"string",
"null"
]
},
"parentThreadId": {
"description": "The ID of the parent thread. This will only be set if this thread is a subagent.",
"type": [
"string",
"null"
]
},
"path": {
"description": "[UNSTABLE] Path to the thread on disk.",
"type": [
"string",
"null"
]
},
"preview": {
"description": "Usually the first user message in the thread, if available.",
"type": "string"
},
"recencyAt": {
"description": "Unix timestamp (in seconds) used for thread recency ordering.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"sessionId": {
"description": "Session id shared by threads that belong to the same session tree.",
"type": "string"
},
"source": {
"description": "Origin of the thread (CLI, VSCode, codex exec, codex app-server, etc.).",
"allOf": [
{
"$ref": "#/definitions/v2/SessionSource"
}
]
},
"status": {
"description": "Current runtime status for the thread.",
"allOf": [
{
"$ref": "#/definitions/v2/ThreadStatus"
}
]
},
"threadSource": {
"description": "Optional analytics source classification for this thread.",
"anyOf": [
{
"$ref": "#/definitions/v2/ThreadSource"
},
{
"type": "null"
}
]
},
"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/v2/Turn"
}
},
"updatedAt": {
"description": "Unix timestamp (in seconds) when the thread was last updated.",
"type": "integer",
"format": "int64"
}
}
},
"ThreadActiveFlag": {
"type": "string",
"enum": [
"waitingOnApproval",
"waitingOnUserInput"
]
},
"ThreadId": {
"type": "string"
},
"ThreadItem": {
"oneOf": [
{
"type": "object",
"required": [
"content",
"id",
"type"
],
"properties": {
"clientId": {
"type": [
"string",
"null"
]
},
"content": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/UserInput"
}
},
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"userMessage"
],
"title": "UserMessageThreadItemType"
}
},
"title": "UserMessageThreadItem"
},
{
"type": "object",
"required": [
"fragments",
"id",
"type"
],
"properties": {
"fragments": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/HookPromptFragment"
}
},
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"hookPrompt"
],
"title": "HookPromptThreadItemType"
}
},
"title": "HookPromptThreadItem"
},
{
"type": "object",
"required": [
"id",
"text",
"type"
],
"properties": {
"id": {
"type": "string"
},
"memoryCitation": {
"default": null,
"anyOf": [
{
"$ref": "#/definitions/v2/MemoryCitation"
},
{
"type": "null"
}
]
},
"phase": {
"default": null,
"anyOf": [
{
"$ref": "#/definitions/v2/MessagePhase"
},
{
"type": "null"
}
]
},
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"agentMessage"
],
"title": "AgentMessageThreadItemType"
}
},
"title": "AgentMessageThreadItem"
},
{
"description": "EXPERIMENTAL - proposed plan item content. The completed plan item is authoritative and may not match the concatenation of `PlanDelta` text.",
"type": "object",
"required": [
"id",
"text",
"type"
],
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"plan"
],
"title": "PlanThreadItemType"
}
},
"title": "PlanThreadItem"
},
{
"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/v2/CommandAction"
}
},
"cwd": {
"description": "The command's working directory.",
"allOf": [
{
"$ref": "#/definitions/v2/LegacyAppPathString"
}
]
},
"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"
]
},
"source": {
"default": "agent",
"allOf": [
{
"$ref": "#/definitions/v2/CommandExecutionSource"
}
]
},
"status": {
"$ref": "#/definitions/v2/CommandExecutionStatus"
},
"type": {
"type": "string",
"enum": [
"commandExecution"
],
"title": "CommandExecutionThreadItemType"
}
},
"title": "CommandExecutionThreadItem"
},
{
"type": "object",
"required": [
"changes",
"id",
"status",
"type"
],
"properties": {
"changes": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/FileUpdateChange"
}
},
"id": {
"type": "string"
},
"status": {
"$ref": "#/definitions/v2/PatchApplyStatus"
},
"type": {
"type": "string",
"enum": [
"fileChange"
],
"title": "FileChangeThreadItemType"
}
},
"title": "FileChangeThreadItem"
},
{
"type": "object",
"required": [
"arguments",
"id",
"server",
"status",
"tool",
"type"
],
"properties": {
"appContext": {
"anyOf": [
{
"$ref": "#/definitions/v2/McpToolCallAppContext"
},
{
"type": "null"
}
]
},
"arguments": true,
"durationMs": {
"description": "The duration of the MCP tool call in milliseconds.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"error": {
"anyOf": [
{
"$ref": "#/definitions/v2/McpToolCallError"
},
{
"type": "null"
}
]
},
"id": {
"type": "string"
},
"mcpAppResourceUri": {
"description": "Deprecated: use `appContext.resourceUri` instead.",
"type": [
"string",
"null"
]
},
"pluginId": {
"type": [
"string",
"null"
]
},
"result": {
"anyOf": [
{
"$ref": "#/definitions/v2/McpToolCallResult"
},
{
"type": "null"
}
]
},
"server": {
"type": "string"
},
"status": {
"$ref": "#/definitions/v2/McpToolCallStatus"
},
"tool": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"mcpToolCall"
],
"title": "McpToolCallThreadItemType"
}
},
"title": "McpToolCallThreadItem"
},
{
"type": "object",
"required": [
"arguments",
"id",
"status",
"tool",
"type"
],
"properties": {
"arguments": true,
"contentItems": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/DynamicToolCallOutputContentItem"
}
},
"durationMs": {
"description": "The duration of the dynamic tool call in milliseconds.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"id": {
"type": "string"
},
"namespace": {
"type": [
"string",
"null"
]
},
"status": {
"$ref": "#/definitions/v2/DynamicToolCallStatus"
},
"success": {
"type": [
"boolean",
"null"
]
},
"tool": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"dynamicToolCall"
],
"title": "DynamicToolCallThreadItemType"
}
},
"title": "DynamicToolCallThreadItem"
},
{
"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/v2/CollabAgentState"
}
},
"id": {
"description": "Unique identifier for this collab tool call.",
"type": "string"
},
"model": {
"description": "Model requested for the spawned agent, when applicable.",
"type": [
"string",
"null"
]
},
"prompt": {
"description": "Prompt text sent as part of the collab tool call, when available.",
"type": [
"string",
"null"
]
},
"reasoningEffort": {
"description": "Reasoning effort requested for the spawned agent, when applicable.",
"anyOf": [
{
"$ref": "#/definitions/v2/ReasoningEffort"
},
{
"type": "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/v2/CollabAgentToolCallStatus"
}
]
},
"tool": {
"description": "Name of the collab tool that was invoked.",
"allOf": [
{
"$ref": "#/definitions/v2/CollabAgentTool"
}
]
},
"type": {
"type": "string",
"enum": [
"collabAgentToolCall"
],
"title": "CollabAgentToolCallThreadItemType"
}
},
"title": "CollabAgentToolCallThreadItem"
},
{
"type": "object",
"required": [
"agentPath",
"agentThreadId",
"id",
"kind",
"type"
],
"properties": {
"agentPath": {
"type": "string"
},
"agentThreadId": {
"type": "string"
},
"id": {
"type": "string"
},
"kind": {
"$ref": "#/definitions/v2/SubAgentActivityKind"
},
"type": {
"type": "string",
"enum": [
"subAgentActivity"
],
"title": "SubAgentActivityThreadItemType"
}
},
"title": "SubAgentActivityThreadItem"
},
{
"type": "object",
"required": [
"id",
"query",
"type"
],
"properties": {
"action": {
"anyOf": [
{
"$ref": "#/definitions/v2/WebSearchAction"
},
{
"type": "null"
}
]
},
"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": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"type": {
"type": "string",
"enum": [
"imageView"
],
"title": "ImageViewThreadItemType"
}
},
"title": "ImageViewThreadItem"
},
{
"type": "object",
"required": [
"durationMs",
"id",
"type"
],
"properties": {
"durationMs": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"sleep"
],
"title": "SleepThreadItemType"
}
},
"title": "SleepThreadItem"
},
{
"type": "object",
"required": [
"id",
"result",
"status",
"type"
],
"properties": {
"id": {
"type": "string"
},
"result": {
"type": "string"
},
"revisedPrompt": {
"type": [
"string",
"null"
]
},
"savedPath": {
"anyOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
{
"type": "null"
}
]
},
"status": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"imageGeneration"
],
"title": "ImageGenerationThreadItemType"
}
},
"title": "ImageGenerationThreadItem"
},
{
"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"
},
{
"type": "object",
"required": [
"id",
"type"
],
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"contextCompaction"
],
"title": "ContextCompactionThreadItemType"
}
},
"title": "ContextCompactionThreadItem"
}
]
},
"ThreadStatus": {
"oneOf": [
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"notLoaded"
],
"title": "NotLoadedThreadStatusType"
}
},
"title": "NotLoadedThreadStatus"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"idle"
],
"title": "IdleThreadStatusType"
}
},
"title": "IdleThreadStatus"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"systemError"
],
"title": "SystemErrorThreadStatusType"
}
},
"title": "SystemErrorThreadStatus"
},
{
"type": "object",
"required": [
"activeFlags",
"type"
],
"properties": {
"activeFlags": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ThreadActiveFlag"
}
},
"type": {
"type": "string",
"enum": [
"active"
],
"title": "ActiveThreadStatusType"
}
},
"title": "ActiveThreadStatus"
}
]
},
"Turn": {
"type": "object",
"required": [
"id",
"items",
"status"
],
"properties": {
"completedAt": {
"description": "Unix timestamp (in seconds) when the turn completed.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"durationMs": {
"description": "Duration between turn start and completion in milliseconds, if known.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"error": {
"description": "Only populated when the Turn's status is failed.",
"anyOf": [
{
"$ref": "#/definitions/v2/TurnError"
},
{
"type": "null"
}
]
},
"id": {
"type": "string"
},
"items": {
"description": "Thread items currently included in this turn payload.",
"type": "array",
"items": {
"$ref": "#/definitions/v2/ThreadItem"
}
},
"itemsView": {
"description": "Describes how much of `items` has been loaded for this turn.",
"default": "full",
"allOf": [
{
"$ref": "#/definitions/v2/TurnItemsView"
}
]
},
"startedAt": {
"description": "Unix timestamp (in seconds) when the turn started.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"status": {
"$ref": "#/definitions/v2/TurnStatus"
}
}
},
"TurnError": {
"type": "object",
"required": [
"message"
],
"properties": {
"additionalDetails": {
"default": null,
"type": [
"string",
"null"
]
},
"codexErrorInfo": {
"anyOf": [
{
"$ref": "#/definitions/v2/CodexErrorInfo"
},
{
"type": "null"
}
]
},
"message": {
"type": "string"
}
}
},
"TurnStatus": {
"type": "string",
"enum": [
"completed",
"interrupted",
"failed",
"inProgress"
]
},
"WebSearchAction": {
"oneOf": [
{
"type": "object",
"required": [
"type"
],
"properties": {
"queries": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"query": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"search"
],
"title": "SearchWebSearchActionType"
}
},
"title": "SearchWebSearchAction"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"openPage"
],
"title": "OpenPageWebSearchActionType"
},
"url": {
"type": [
"string",
"null"
]
}
},
"title": "OpenPageWebSearchAction"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"pattern": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"findInPage"
],
"title": "FindInPageWebSearchActionType"
},
"url": {
"type": [
"string",
"null"
]
}
},
"title": "FindInPageWebSearchAction"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"other"
],
"title": "OtherWebSearchActionType"
}
},
"title": "OtherWebSearchAction"
}
]
},
"ThreadStartResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadStartResponse",
"type": "object",
"required": [
"approvalPolicy",
"approvalsReviewer",
"cwd",
"model",
"modelProvider",
"sandbox",
"thread"
],
"properties": {
"serviceTier": {
"type": [
"string",
"null"
]
},
"approvalPolicy": {
"$ref": "#/definitions/v2/AskForApproval"
},
"approvalsReviewer": {
"description": "Reviewer currently used for approval requests on this thread.",
"allOf": [
{
"$ref": "#/definitions/v2/ApprovalsReviewer"
}
]
},
"cwd": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"instructionSources": {
"description": "Environment-native paths to instruction source files currently loaded for this thread.",
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/v2/LegacyAppPathString"
}
},
"model": {
"type": "string"
},
"modelProvider": {
"type": "string"
},
"thread": {
"$ref": "#/definitions/v2/Thread"
},
"reasoningEffort": {
"anyOf": [
{
"$ref": "#/definitions/v2/ReasoningEffort"
},
{
"type": "null"
}
]
},
"sandbox": {
"description": "Legacy sandbox policy retained for compatibility. Experimental clients should prefer `activePermissionProfile` for profile provenance.",
"allOf": [
{
"$ref": "#/definitions/v2/SandboxPolicy"
}
]
}
}
},
"TurnsPage": {
"type": "object",
"required": [
"data"
],
"properties": {
"backwardsCursor": {
"type": [
"string",
"null"
]
},
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/Turn"
}
},
"nextCursor": {
"type": [
"string",
"null"
]
}
}
},
"ThreadResumeResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadResumeResponse",
"type": "object",
"required": [
"approvalPolicy",
"approvalsReviewer",
"cwd",
"model",
"modelProvider",
"sandbox",
"thread"
],
"properties": {
"thread": {
"$ref": "#/definitions/v2/Thread"
},
"approvalPolicy": {
"$ref": "#/definitions/v2/AskForApproval"
},
"approvalsReviewer": {
"description": "Reviewer currently used for approval requests on this thread.",
"allOf": [
{
"$ref": "#/definitions/v2/ApprovalsReviewer"
}
]
},
"cwd": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"sandbox": {
"description": "Legacy sandbox policy retained for compatibility. Experimental clients should prefer `activePermissionProfile` for profile provenance.",
"allOf": [
{
"$ref": "#/definitions/v2/SandboxPolicy"
}
]
},
"instructionSources": {
"description": "Environment-native paths to instruction source files currently loaded for this thread.",
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/v2/LegacyAppPathString"
}
},
"model": {
"type": "string"
},
"modelProvider": {
"type": "string"
},
"serviceTier": {
"type": [
"string",
"null"
]
},
"reasoningEffort": {
"anyOf": [
{
"$ref": "#/definitions/v2/ReasoningEffort"
},
{
"type": "null"
}
]
}
}
},
"ThreadForkResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadForkResponse",
"type": "object",
"required": [
"approvalPolicy",
"approvalsReviewer",
"cwd",
"model",
"modelProvider",
"sandbox",
"thread"
],
"properties": {
"serviceTier": {
"type": [
"string",
"null"
]
},
"approvalPolicy": {
"$ref": "#/definitions/v2/AskForApproval"
},
"approvalsReviewer": {
"description": "Reviewer currently used for approval requests on this thread.",
"allOf": [
{
"$ref": "#/definitions/v2/ApprovalsReviewer"
}
]
},
"cwd": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"instructionSources": {
"description": "Environment-native paths to instruction source files currently loaded for this thread.",
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/v2/LegacyAppPathString"
}
},
"model": {
"type": "string"
},
"modelProvider": {
"type": "string"
},
"sandbox": {
"description": "Legacy sandbox policy retained for compatibility. Experimental clients should prefer `activePermissionProfile` for profile provenance.",
"allOf": [
{
"$ref": "#/definitions/v2/SandboxPolicy"
}
]
},
"reasoningEffort": {
"anyOf": [
{
"$ref": "#/definitions/v2/ReasoningEffort"
},
{
"type": "null"
}
]
},
"thread": {
"$ref": "#/definitions/v2/Thread"
}
}
},
"ThreadArchiveResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadArchiveResponse",
"type": "object"
},
"ThreadDeleteResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadDeleteResponse",
"type": "object"
},
"ThreadUnsubscribeStatus": {
"type": "string",
"enum": [
"notLoaded",
"notSubscribed",
"unsubscribed"
]
},
"ThreadUnsubscribeResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadUnsubscribeResponse",
"type": "object",
"required": [
"status"
],
"properties": {
"status": {
"$ref": "#/definitions/v2/ThreadUnsubscribeStatus"
}
}
},
"ExternalAgentConfigImportTypeResult": {
"type": "object",
"required": [
"failures",
"itemType",
"successes"
],
"properties": {
"failures": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ExternalAgentConfigImportItemTypeFailure"
}
},
"itemType": {
"$ref": "#/definitions/v2/ExternalAgentConfigMigrationItemType"
},
"successes": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ExternalAgentConfigImportItemTypeSuccess"
}
}
}
},
"RemoteControlStatusChangedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "RemoteControlStatusChangedNotification",
"description": "Current remote-control connection status and remote identity exposed to clients.",
"type": "object",
"required": [
"installationId",
"serverName",
"status"
],
"properties": {
"environmentId": {
"type": [
"string",
"null"
]
},
"installationId": {
"type": "string"
},
"serverName": {
"type": "string"
},
"status": {
"$ref": "#/definitions/v2/RemoteControlConnectionStatus"
}
}
},
"ThreadSetNameResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadSetNameResponse",
"type": "object"
},
"ThreadGoal": {
"type": "object",
"required": [
"createdAt",
"objective",
"status",
"threadId",
"timeUsedSeconds",
"tokensUsed",
"updatedAt"
],
"properties": {
"createdAt": {
"type": "integer",
"format": "int64"
},
"objective": {
"type": "string"
},
"status": {
"$ref": "#/definitions/v2/ThreadGoalStatus"
},
"threadId": {
"type": "string"
},
"timeUsedSeconds": {
"type": "integer",
"format": "int64"
},
"tokenBudget": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"tokensUsed": {
"type": "integer",
"format": "int64"
},
"updatedAt": {
"type": "integer",
"format": "int64"
}
}
},
"ThreadGoalSetResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadGoalSetResponse",
"type": "object",
"required": [
"goal"
],
"properties": {
"goal": {
"$ref": "#/definitions/v2/ThreadGoal"
}
}
},
"ThreadGoalGetResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadGoalGetResponse",
"type": "object",
"properties": {
"goal": {
"anyOf": [
{
"$ref": "#/definitions/v2/ThreadGoal"
},
{
"type": "null"
}
]
}
}
},
"ThreadGoalClearResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadGoalClearResponse",
"type": "object",
"required": [
"cleared"
],
"properties": {
"cleared": {
"type": "boolean"
}
}
},
"ThreadMetadataUpdateResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadMetadataUpdateResponse",
"type": "object",
"required": [
"thread"
],
"properties": {
"thread": {
"$ref": "#/definitions/v2/Thread"
}
}
},
"AppListUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "AppListUpdatedNotification",
"description": "EXPERIMENTAL - notification emitted when the app list changes.",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/AppInfo"
}
}
}
},
"AccountRateLimitsUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "AccountRateLimitsUpdatedNotification",
"description": "Sparse rolling rate-limit update.\n\nClients should merge available values into the most recent `account/rateLimits/read` response or refetch that snapshot. Nullable account metadata may be unavailable in a rolling update and does not clear a previously observed value.",
"type": "object",
"required": [
"rateLimits"
],
"properties": {
"rateLimits": {
"$ref": "#/definitions/v2/RateLimitSnapshot"
}
}
},
"AccountUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "AccountUpdatedNotification",
"type": "object",
"properties": {
"authMode": {
"anyOf": [
{
"$ref": "#/definitions/v2/AuthMode"
},
{
"type": "null"
}
]
},
"planType": {
"anyOf": [
{
"$ref": "#/definitions/v2/PlanType"
},
{
"type": "null"
}
]
}
}
},
"ThreadUnarchiveResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadUnarchiveResponse",
"type": "object",
"required": [
"thread"
],
"properties": {
"thread": {
"$ref": "#/definitions/v2/Thread"
}
}
},
"ThreadCompactStartResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadCompactStartResponse",
"type": "object"
},
"ThreadShellCommandResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadShellCommandResponse",
"type": "object"
},
"ThreadApproveGuardianDeniedActionResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadApproveGuardianDeniedActionResponse",
"type": "object"
},
"AuthMode": {
"description": "Authentication mode for OpenAI-backed providers.",
"oneOf": [
{
"description": "OpenAI API key provided by the caller and stored by Codex.",
"type": "string",
"enum": [
"apikey"
]
},
{
"description": "ChatGPT OAuth managed by Codex (tokens persisted and refreshed by Codex).",
"type": "string",
"enum": [
"chatgpt"
]
},
{
"description": "[UNSTABLE] FOR OPENAI INTERNAL USE ONLY - DO NOT USE.\n\nChatGPT auth tokens are supplied by an external host app and are only stored in memory. Token refresh must be handled by the external host app.",
"type": "string",
"enum": [
"chatgptAuthTokens"
]
},
{
"description": "Programmatic Codex auth backed by a registered Agent Identity.",
"type": "string",
"enum": [
"agentIdentity"
]
},
{
"description": "Programmatic Codex auth backed by a personal access token.",
"type": "string",
"enum": [
"personalAccessToken"
]
},
{
"description": "Amazon Bedrock bearer token managed by Codex.",
"type": "string",
"enum": [
"bedrockApiKey"
]
}
]
},
"McpServerStatusUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "McpServerStatusUpdatedNotification",
"type": "object",
"required": [
"name",
"status"
],
"properties": {
"error": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"status": {
"$ref": "#/definitions/v2/McpServerStartupState"
},
"threadId": {
"type": [
"string",
"null"
]
}
}
},
"McpServerStartupState": {
"type": "string",
"enum": [
"starting",
"ready",
"failed",
"cancelled"
]
},
"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"
}
}
},
"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/v2/Thread"
}
]
}
}
},
"ThreadListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadListResponse",
"type": "object",
"required": [
"data"
],
"properties": {
"backwardsCursor": {
"description": "Opaque cursor to pass as `cursor` when reversing `sortDirection`. This is only populated when the page contains at least one thread. Use it with the opposite `sortDirection`; for timestamp sorts it anchors at the start of the page timestamp so same-second updates are not skipped.",
"type": [
"string",
"null"
]
},
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/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"
]
}
}
},
"ThreadSearchResult": {
"type": "object",
"required": [
"snippet",
"thread"
],
"properties": {
"snippet": {
"type": "string"
},
"thread": {
"$ref": "#/definitions/v2/Thread"
}
}
},
"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"
}
}
},
"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/v2/Thread"
}
}
},
"ServerRequestResolvedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ServerRequestResolvedNotification",
"type": "object",
"required": [
"requestId",
"threadId"
],
"properties": {
"requestId": {
"$ref": "#/definitions/v2/RequestId"
},
"threadId": {
"type": "string"
}
}
},
"RequestId": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer",
"format": "int64"
}
]
},
"ThreadInjectItemsResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadInjectItemsResponse",
"type": "object"
},
"SkillDependencies": {
"type": "object",
"required": [
"tools"
],
"properties": {
"tools": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/SkillToolDependency"
}
}
}
},
"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": {
"anyOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
{
"type": "null"
}
]
},
"iconSmall": {
"anyOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
{
"type": "null"
}
]
},
"shortDescription": {
"type": [
"string",
"null"
]
}
}
},
"SkillMetadata": {
"type": "object",
"required": [
"description",
"enabled",
"name",
"path",
"scope"
],
"properties": {
"dependencies": {
"anyOf": [
{
"$ref": "#/definitions/v2/SkillDependencies"
},
{
"type": "null"
}
]
},
"description": {
"type": "string"
},
"enabled": {
"type": "boolean"
},
"interface": {
"anyOf": [
{
"$ref": "#/definitions/v2/SkillInterface"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
},
"path": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"scope": {
"$ref": "#/definitions/v2/SkillScope"
},
"shortDescription": {
"description": "Legacy short_description from SKILL.md. Prefer SKILL.json interface.short_description.",
"type": [
"string",
"null"
]
}
}
},
"SkillScope": {
"type": "string",
"enum": [
"user",
"repo",
"system",
"admin"
]
},
"SkillToolDependency": {
"type": "object",
"required": [
"type",
"value"
],
"properties": {
"command": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"transport": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string"
},
"url": {
"type": [
"string",
"null"
]
},
"value": {
"type": "string"
}
}
},
"SkillsListEntry": {
"type": "object",
"required": [
"cwd",
"errors",
"skills"
],
"properties": {
"cwd": {
"type": "string"
},
"errors": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/SkillErrorInfo"
}
},
"skills": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/SkillMetadata"
}
}
}
},
"SkillsListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SkillsListResponse",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/SkillsListEntry"
}
}
}
},
"SkillsExtraRootsSetResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SkillsExtraRootsSetResponse",
"type": "object"
},
"HookErrorInfo": {
"type": "object",
"required": [
"message",
"path"
],
"properties": {
"message": {
"type": "string"
},
"path": {
"type": "string"
}
}
},
"HookEventName": {
"type": "string",
"enum": [
"preToolUse",
"permissionRequest",
"postToolUse",
"preCompact",
"postCompact",
"sessionStart",
"userPromptSubmit",
"subagentStart",
"subagentStop",
"stop"
]
},
"HookHandlerType": {
"type": "string",
"enum": [
"command",
"prompt",
"agent"
]
},
"HookMetadata": {
"type": "object",
"required": [
"currentHash",
"displayOrder",
"enabled",
"eventName",
"handlerType",
"isManaged",
"key",
"source",
"sourcePath",
"timeoutSec",
"trustStatus"
],
"properties": {
"command": {
"type": [
"string",
"null"
]
},
"currentHash": {
"type": "string"
},
"displayOrder": {
"type": "integer",
"format": "int64"
},
"enabled": {
"type": "boolean"
},
"eventName": {
"$ref": "#/definitions/v2/HookEventName"
},
"handlerType": {
"$ref": "#/definitions/v2/HookHandlerType"
},
"isManaged": {
"type": "boolean"
},
"key": {
"type": "string"
},
"matcher": {
"type": [
"string",
"null"
]
},
"pluginId": {
"type": [
"string",
"null"
]
},
"source": {
"$ref": "#/definitions/v2/HookSource"
},
"sourcePath": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"statusMessage": {
"type": [
"string",
"null"
]
},
"timeoutSec": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"trustStatus": {
"$ref": "#/definitions/v2/HookTrustStatus"
}
}
},
"HookSource": {
"type": "string",
"enum": [
"system",
"user",
"project",
"mdm",
"sessionFlags",
"plugin",
"cloudRequirements",
"cloudManagedConfig",
"legacyManagedConfigFile",
"legacyManagedConfigMdm",
"unknown"
]
},
"HookTrustStatus": {
"type": "string",
"enum": [
"managed",
"untrusted",
"trusted",
"modified"
]
},
"HooksListEntry": {
"type": "object",
"required": [
"cwd",
"errors",
"hooks",
"warnings"
],
"properties": {
"cwd": {
"type": "string"
},
"errors": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/HookErrorInfo"
}
},
"hooks": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/HookMetadata"
}
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"HooksListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "HooksListResponse",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/HooksListEntry"
}
}
}
},
"MarketplaceAddResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "MarketplaceAddResponse",
"type": "object",
"required": [
"alreadyAdded",
"installedRoot",
"marketplaceName"
],
"properties": {
"alreadyAdded": {
"type": "boolean"
},
"installedRoot": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"marketplaceName": {
"type": "string"
}
}
},
"MarketplaceRemoveResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "MarketplaceRemoveResponse",
"type": "object",
"required": [
"marketplaceName"
],
"properties": {
"installedRoot": {
"anyOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
{
"type": "null"
}
]
},
"marketplaceName": {
"type": "string"
}
}
},
"MarketplaceUpgradeErrorInfo": {
"type": "object",
"required": [
"marketplaceName",
"message"
],
"properties": {
"marketplaceName": {
"type": "string"
},
"message": {
"type": "string"
}
}
},
"MarketplaceUpgradeResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "MarketplaceUpgradeResponse",
"type": "object",
"required": [
"errors",
"selectedMarketplaces",
"upgradedRoots"
],
"properties": {
"errors": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/MarketplaceUpgradeErrorInfo"
}
},
"selectedMarketplaces": {
"type": "array",
"items": {
"type": "string"
}
},
"upgradedRoots": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
}
}
},
"MarketplaceInterface": {
"type": "object",
"properties": {
"displayName": {
"type": [
"string",
"null"
]
}
}
},
"MarketplaceLoadErrorInfo": {
"type": "object",
"required": [
"marketplacePath",
"message"
],
"properties": {
"marketplacePath": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"message": {
"type": "string"
}
}
},
"PluginAuthPolicy": {
"type": "string",
"enum": [
"ON_INSTALL",
"ON_USE"
]
},
"PluginAvailability": {
"oneOf": [
{
"type": "string",
"enum": [
"DISABLED_BY_ADMIN"
]
},
{
"description": "Plugin-service currently sends `\"ENABLED\"` for available remote plugins. Codex app-server exposes `\"AVAILABLE\"` in its API; the alias keeps decoding compatible with that upstream response.",
"type": "string",
"enum": [
"AVAILABLE"
]
}
]
},
"PluginInstallPolicy": {
"type": "string",
"enum": [
"NOT_AVAILABLE",
"AVAILABLE",
"INSTALLED_BY_DEFAULT"
]
},
"PluginInterface": {
"type": "object",
"required": [
"capabilities",
"screenshotUrls",
"screenshots"
],
"properties": {
"brandColor": {
"type": [
"string",
"null"
]
},
"capabilities": {
"type": "array",
"items": {
"type": "string"
}
},
"category": {
"type": [
"string",
"null"
]
},
"composerIcon": {
"description": "Local composer icon path, resolved from the installed plugin package.",
"anyOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
{
"type": "null"
}
]
},
"composerIconUrl": {
"description": "Remote composer icon URL from the plugin catalog.",
"type": [
"string",
"null"
]
},
"defaultPrompt": {
"description": "Starter prompts for the plugin. Capped at 3 entries with a maximum of 128 characters per entry.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"developerName": {
"type": [
"string",
"null"
]
},
"displayName": {
"type": [
"string",
"null"
]
},
"logo": {
"description": "Local logo path, resolved from the installed plugin package.",
"anyOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
{
"type": "null"
}
]
},
"logoUrl": {
"description": "Remote logo URL from the plugin catalog.",
"type": [
"string",
"null"
]
},
"longDescription": {
"type": [
"string",
"null"
]
},
"privacyPolicyUrl": {
"type": [
"string",
"null"
]
},
"screenshotUrls": {
"description": "Remote screenshot URLs from the plugin catalog.",
"type": "array",
"items": {
"type": "string"
}
},
"screenshots": {
"description": "Local screenshot paths, resolved from the installed plugin package.",
"type": "array",
"items": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
},
"shortDescription": {
"type": [
"string",
"null"
]
},
"termsOfServiceUrl": {
"type": [
"string",
"null"
]
},
"websiteUrl": {
"type": [
"string",
"null"
]
}
}
},
"PluginMarketplaceEntry": {
"type": "object",
"required": [
"name",
"plugins"
],
"properties": {
"interface": {
"anyOf": [
{
"$ref": "#/definitions/v2/MarketplaceInterface"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
},
"path": {
"description": "Local marketplace file path when the marketplace is backed by a local file. Remote-only catalog marketplaces do not have a local path.",
"anyOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
{
"type": "null"
}
]
},
"plugins": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/PluginSummary"
}
}
}
},
"PluginShareContext": {
"type": "object",
"required": [
"remotePluginId"
],
"properties": {
"creatorAccountUserId": {
"type": [
"string",
"null"
]
},
"creatorName": {
"type": [
"string",
"null"
]
},
"discoverability": {
"anyOf": [
{
"$ref": "#/definitions/v2/PluginShareDiscoverability"
},
{
"type": "null"
}
]
},
"remotePluginId": {
"type": "string"
},
"remoteVersion": {
"description": "Version of the remote shared plugin release when available.",
"default": null,
"type": [
"string",
"null"
]
},
"sharePrincipals": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/PluginSharePrincipal"
}
},
"shareUrl": {
"type": [
"string",
"null"
]
}
}
},
"PluginSharePrincipal": {
"type": "object",
"required": [
"name",
"principalId",
"principalType",
"role"
],
"properties": {
"name": {
"type": "string"
},
"principalId": {
"type": "string"
},
"principalType": {
"$ref": "#/definitions/v2/PluginSharePrincipalType"
},
"role": {
"$ref": "#/definitions/v2/PluginSharePrincipalRole"
}
}
},
"PluginSharePrincipalRole": {
"type": "string",
"enum": [
"reader",
"editor",
"owner"
]
},
"PluginSource": {
"oneOf": [
{
"type": "object",
"required": [
"path",
"type"
],
"properties": {
"path": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"type": {
"type": "string",
"enum": [
"local"
],
"title": "LocalPluginSourceType"
}
},
"title": "LocalPluginSource"
},
{
"type": "object",
"required": [
"type",
"url"
],
"properties": {
"path": {
"type": [
"string",
"null"
]
},
"refName": {
"type": [
"string",
"null"
]
},
"sha": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"git"
],
"title": "GitPluginSourceType"
},
"url": {
"type": "string"
}
},
"title": "GitPluginSource"
},
{
"description": "The plugin is available in the remote catalog. Download metadata is kept server-side and is not exposed through the app-server API.",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"remote"
],
"title": "RemotePluginSourceType"
}
},
"title": "RemotePluginSource"
}
]
},
"PluginSummary": {
"type": "object",
"required": [
"authPolicy",
"enabled",
"id",
"installPolicy",
"installed",
"name",
"source"
],
"properties": {
"authPolicy": {
"$ref": "#/definitions/v2/PluginAuthPolicy"
},
"availability": {
"description": "Availability state for installing and using the plugin.",
"default": "AVAILABLE",
"allOf": [
{
"$ref": "#/definitions/v2/PluginAvailability"
}
]
},
"enabled": {
"type": "boolean"
},
"id": {
"type": "string"
},
"installPolicy": {
"$ref": "#/definitions/v2/PluginInstallPolicy"
},
"installed": {
"type": "boolean"
},
"interface": {
"anyOf": [
{
"$ref": "#/definitions/v2/PluginInterface"
},
{
"type": "null"
}
]
},
"keywords": {
"default": [],
"type": "array",
"items": {
"type": "string"
}
},
"localVersion": {
"description": "Version of the locally materialized plugin package when available.",
"default": null,
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"remotePluginId": {
"description": "Backend remote plugin identifier when available.",
"type": [
"string",
"null"
]
},
"shareContext": {
"description": "Remote sharing context associated with this plugin when available.",
"anyOf": [
{
"$ref": "#/definitions/v2/PluginShareContext"
},
{
"type": "null"
}
]
},
"source": {
"$ref": "#/definitions/v2/PluginSource"
}
}
},
"PluginListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginListResponse",
"type": "object",
"required": [
"marketplaces"
],
"properties": {
"featuredPluginIds": {
"default": [],
"type": "array",
"items": {
"type": "string"
}
},
"marketplaceLoadErrors": {
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/v2/MarketplaceLoadErrorInfo"
}
},
"marketplaces": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/PluginMarketplaceEntry"
}
}
}
},
"PluginInstalledResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginInstalledResponse",
"type": "object",
"required": [
"marketplaces"
],
"properties": {
"marketplaceLoadErrors": {
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/v2/MarketplaceLoadErrorInfo"
}
},
"marketplaces": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/PluginMarketplaceEntry"
}
}
}
},
"AppSummary": {
"description": "EXPERIMENTAL - app metadata summary for plugin responses.",
"type": "object",
"required": [
"id",
"name"
],
"properties": {
"category": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"id": {
"type": "string"
},
"installUrl": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
}
}
},
"AppTemplateSummary": {
"type": "object",
"required": [
"materializedAppIds",
"name",
"templateId"
],
"properties": {
"canonicalConnectorId": {
"type": [
"string",
"null"
]
},
"category": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"logoUrl": {
"type": [
"string",
"null"
]
},
"logoUrlDark": {
"type": [
"string",
"null"
]
},
"materializedAppIds": {
"type": "array",
"items": {
"type": "string"
}
},
"name": {
"type": "string"
},
"reason": {
"anyOf": [
{
"$ref": "#/definitions/v2/AppTemplateUnavailableReason"
},
{
"type": "null"
}
]
},
"templateId": {
"type": "string"
}
}
},
"AppTemplateUnavailableReason": {
"type": "string",
"enum": [
"NOT_CONFIGURED_FOR_WORKSPACE",
"NO_ACTIVE_WORKSPACE"
]
},
"PluginDetail": {
"type": "object",
"required": [
"appTemplates",
"apps",
"hooks",
"marketplaceName",
"mcpServers",
"skills",
"summary"
],
"properties": {
"appTemplates": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/AppTemplateSummary"
}
},
"apps": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/AppSummary"
}
},
"description": {
"type": [
"string",
"null"
]
},
"hooks": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/PluginHookSummary"
}
},
"marketplaceName": {
"type": "string"
},
"marketplacePath": {
"anyOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
{
"type": "null"
}
]
},
"mcpServers": {
"type": "array",
"items": {
"type": "string"
}
},
"shareUrl": {
"type": [
"string",
"null"
]
},
"skills": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/SkillSummary"
}
},
"summary": {
"$ref": "#/definitions/v2/PluginSummary"
}
}
},
"PluginHookSummary": {
"type": "object",
"required": [
"eventName",
"key"
],
"properties": {
"eventName": {
"$ref": "#/definitions/v2/HookEventName"
},
"key": {
"type": "string"
}
}
},
"SkillSummary": {
"type": "object",
"required": [
"description",
"enabled",
"name"
],
"properties": {
"description": {
"type": "string"
},
"enabled": {
"type": "boolean"
},
"interface": {
"anyOf": [
{
"$ref": "#/definitions/v2/SkillInterface"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
},
"path": {
"anyOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
{
"type": "null"
}
]
},
"shortDescription": {
"type": [
"string",
"null"
]
}
}
},
"PluginReadResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginReadResponse",
"type": "object",
"required": [
"plugin"
],
"properties": {
"plugin": {
"$ref": "#/definitions/v2/PluginDetail"
}
}
},
"PluginSkillReadResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginSkillReadResponse",
"type": "object",
"properties": {
"contents": {
"type": [
"string",
"null"
]
}
}
},
"PluginShareSaveResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginShareSaveResponse",
"type": "object",
"required": [
"remotePluginId",
"shareUrl"
],
"properties": {
"remotePluginId": {
"type": "string"
},
"shareUrl": {
"type": "string"
}
}
},
"PluginShareUpdateTargetsResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginShareUpdateTargetsResponse",
"type": "object",
"required": [
"discoverability",
"principals"
],
"properties": {
"discoverability": {
"$ref": "#/definitions/v2/PluginShareDiscoverability"
},
"principals": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/PluginSharePrincipal"
}
}
}
},
"PluginShareListItem": {
"type": "object",
"required": [
"plugin"
],
"properties": {
"localPluginPath": {
"anyOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
{
"type": "null"
}
]
},
"plugin": {
"$ref": "#/definitions/v2/PluginSummary"
}
}
},
"PluginShareListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginShareListResponse",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/PluginShareListItem"
}
}
}
},
"PluginShareCheckoutResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginShareCheckoutResponse",
"type": "object",
"required": [
"marketplaceName",
"marketplacePath",
"pluginId",
"pluginName",
"pluginPath",
"remotePluginId"
],
"properties": {
"marketplaceName": {
"type": "string"
},
"marketplacePath": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"pluginId": {
"type": "string"
},
"pluginName": {
"type": "string"
},
"pluginPath": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"remotePluginId": {
"type": "string"
},
"remoteVersion": {
"type": [
"string",
"null"
]
}
}
},
"PluginShareDeleteResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginShareDeleteResponse",
"type": "object"
},
"AppBranding": {
"description": "EXPERIMENTAL - app metadata returned by app-list APIs.",
"type": "object",
"required": [
"isDiscoverableApp"
],
"properties": {
"category": {
"type": [
"string",
"null"
]
},
"developer": {
"type": [
"string",
"null"
]
},
"isDiscoverableApp": {
"type": "boolean"
},
"privacyPolicy": {
"type": [
"string",
"null"
]
},
"termsOfService": {
"type": [
"string",
"null"
]
},
"website": {
"type": [
"string",
"null"
]
}
}
},
"AppInfo": {
"description": "EXPERIMENTAL - app metadata returned by app-list APIs.",
"type": "object",
"required": [
"id",
"name"
],
"properties": {
"appMetadata": {
"anyOf": [
{
"$ref": "#/definitions/v2/AppMetadata"
},
{
"type": "null"
}
]
},
"branding": {
"anyOf": [
{
"$ref": "#/definitions/v2/AppBranding"
},
{
"type": "null"
}
]
},
"description": {
"type": [
"string",
"null"
]
},
"distributionChannel": {
"type": [
"string",
"null"
]
},
"id": {
"type": "string"
},
"installUrl": {
"type": [
"string",
"null"
]
},
"isAccessible": {
"default": false,
"type": "boolean"
},
"isEnabled": {
"description": "Whether this app is enabled in config.toml. Example: ```toml [apps.bad_app] enabled = false ```",
"default": true,
"type": "boolean"
},
"labels": {
"type": [
"object",
"null"
],
"additionalProperties": {
"type": "string"
}
},
"logoUrl": {
"type": [
"string",
"null"
]
},
"logoUrlDark": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"pluginDisplayNames": {
"default": [],
"type": "array",
"items": {
"type": "string"
}
}
}
},
"AppMetadata": {
"type": "object",
"properties": {
"categories": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"developer": {
"type": [
"string",
"null"
]
},
"firstPartyRequiresInstall": {
"type": [
"boolean",
"null"
]
},
"firstPartyType": {
"type": [
"string",
"null"
]
},
"review": {
"anyOf": [
{
"$ref": "#/definitions/v2/AppReview"
},
{
"type": "null"
}
]
},
"screenshots": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/AppScreenshot"
}
},
"seoDescription": {
"type": [
"string",
"null"
]
},
"showInComposerWhenUnlinked": {
"type": [
"boolean",
"null"
]
},
"subCategories": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"version": {
"type": [
"string",
"null"
]
},
"versionId": {
"type": [
"string",
"null"
]
},
"versionNotes": {
"type": [
"string",
"null"
]
}
}
},
"AppReview": {
"type": "object",
"required": [
"status"
],
"properties": {
"status": {
"type": "string"
}
}
},
"AppScreenshot": {
"type": "object",
"required": [
"userPrompt"
],
"properties": {
"fileId": {
"type": [
"string",
"null"
]
},
"url": {
"type": [
"string",
"null"
]
},
"userPrompt": {
"type": "string"
}
}
},
"AppsListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "AppsListResponse",
"description": "EXPERIMENTAL - app list response.",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/AppInfo"
}
},
"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"
]
}
}
},
"FsReadFileResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsReadFileResponse",
"description": "Base64-encoded file contents returned by `fs/readFile`.",
"type": "object",
"required": [
"dataBase64"
],
"properties": {
"dataBase64": {
"description": "File contents encoded as base64.",
"type": "string"
}
}
},
"FsWriteFileResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsWriteFileResponse",
"description": "Successful response for `fs/writeFile`.",
"type": "object"
},
"FsCreateDirectoryResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsCreateDirectoryResponse",
"description": "Successful response for `fs/createDirectory`.",
"type": "object"
},
"FsGetMetadataResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsGetMetadataResponse",
"description": "Metadata returned by `fs/getMetadata`.",
"type": "object",
"required": [
"createdAtMs",
"isDirectory",
"isFile",
"isSymlink",
"modifiedAtMs"
],
"properties": {
"createdAtMs": {
"description": "File creation time in Unix milliseconds when available, otherwise `0`.",
"type": "integer",
"format": "int64"
},
"isDirectory": {
"description": "Whether the path resolves to a directory.",
"type": "boolean"
},
"isFile": {
"description": "Whether the path resolves to a regular file.",
"type": "boolean"
},
"isSymlink": {
"description": "Whether the path itself is a symbolic link.",
"type": "boolean"
},
"modifiedAtMs": {
"description": "File modification time in Unix milliseconds when available, otherwise `0`.",
"type": "integer",
"format": "int64"
}
}
},
"FsReadDirectoryEntry": {
"description": "A directory entry returned by `fs/readDirectory`.",
"type": "object",
"required": [
"fileName",
"isDirectory",
"isFile"
],
"properties": {
"fileName": {
"description": "Direct child entry name only, not an absolute or relative path.",
"type": "string"
},
"isDirectory": {
"description": "Whether this entry resolves to a directory.",
"type": "boolean"
},
"isFile": {
"description": "Whether this entry resolves to a regular file.",
"type": "boolean"
}
}
},
"FsReadDirectoryResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsReadDirectoryResponse",
"description": "Directory entries returned by `fs/readDirectory`.",
"type": "object",
"required": [
"entries"
],
"properties": {
"entries": {
"description": "Direct child entries in the requested directory.",
"type": "array",
"items": {
"$ref": "#/definitions/v2/FsReadDirectoryEntry"
}
}
}
},
"FsRemoveResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsRemoveResponse",
"description": "Successful response for `fs/remove`.",
"type": "object"
},
"FsCopyResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsCopyResponse",
"description": "Successful response for `fs/copy`.",
"type": "object"
},
"FsWatchResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsWatchResponse",
"description": "Successful response for `fs/watch`.",
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"description": "Canonicalized path associated with the watch.",
"allOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
]
}
}
},
"FsUnwatchResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FsUnwatchResponse",
"description": "Successful response for `fs/unwatch`.",
"type": "object"
},
"SkillsConfigWriteResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SkillsConfigWriteResponse",
"type": "object",
"required": [
"effectiveEnabled"
],
"properties": {
"effectiveEnabled": {
"type": "boolean"
}
}
},
"PluginInstallResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginInstallResponse",
"type": "object",
"required": [
"appsNeedingAuth",
"authPolicy"
],
"properties": {
"appsNeedingAuth": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/AppSummary"
}
},
"authPolicy": {
"$ref": "#/definitions/v2/PluginAuthPolicy"
}
}
},
"PluginUninstallResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PluginUninstallResponse",
"type": "object"
},
"TurnStartResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnStartResponse",
"type": "object",
"required": [
"turn"
],
"properties": {
"turn": {
"$ref": "#/definitions/v2/Turn"
}
}
},
"TurnSteerResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnSteerResponse",
"type": "object",
"required": [
"turnId"
],
"properties": {
"turnId": {
"type": "string"
}
}
},
"TurnInterruptResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnInterruptResponse",
"type": "object"
},
"FileChangePatchUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FileChangePatchUpdatedNotification",
"type": "object",
"required": [
"changes",
"itemId",
"threadId",
"turnId"
],
"properties": {
"changes": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/FileUpdateChange"
}
},
"itemId": {
"type": "string"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"FileChangeOutputDeltaNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FileChangeOutputDeltaNotification",
"description": "Deprecated legacy notification for `apply_patch` textual output.\n\nThe server no longer emits this notification.",
"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"
}
}
},
"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"
}
}
},
"ProcessExitedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ProcessExitedNotification",
"description": "Final process exit notification for `process/spawn`.",
"type": "object",
"required": [
"exitCode",
"processHandle",
"stderr",
"stderrCapReached",
"stdout",
"stdoutCapReached"
],
"properties": {
"exitCode": {
"description": "Process exit code.",
"type": "integer",
"format": "int32"
},
"processHandle": {
"description": "Client-supplied, connection-scoped `processHandle` from `process/spawn`.",
"type": "string"
},
"stderr": {
"description": "Buffered stderr capture.\n\nEmpty when stderr was streamed via `process/outputDelta`.",
"type": "string"
},
"stderrCapReached": {
"description": "Whether stderr reached `outputBytesCap`.\n\nIn streaming mode, stderr is empty and cap state is also reported on the final stderr `process/outputDelta` notification.",
"type": "boolean"
},
"stdout": {
"description": "Buffered stdout capture.\n\nEmpty when stdout was streamed via `process/outputDelta`.",
"type": "string"
},
"stdoutCapReached": {
"description": "Whether stdout reached `outputBytesCap`.\n\nIn streaming mode, stdout is empty and cap state is also reported on the final stdout `process/outputDelta` notification.",
"type": "boolean"
}
}
},
"RealtimeVoicesList": {
"type": "object",
"required": [
"defaultV1",
"defaultV2",
"v1",
"v2"
],
"properties": {
"defaultV1": {
"$ref": "#/definitions/v2/RealtimeVoice"
},
"defaultV2": {
"$ref": "#/definitions/v2/RealtimeVoice"
},
"v1": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/RealtimeVoice"
}
},
"v2": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/RealtimeVoice"
}
}
}
},
"ProcessOutputDeltaNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ProcessOutputDeltaNotification",
"description": "Base64-encoded output chunk emitted for a streaming `process/spawn` request.",
"type": "object",
"required": [
"capReached",
"deltaBase64",
"processHandle",
"stream"
],
"properties": {
"capReached": {
"description": "True on the final streamed chunk for this stream when output was truncated by `outputBytesCap`.",
"type": "boolean"
},
"deltaBase64": {
"description": "Base64-encoded output bytes.",
"type": "string"
},
"processHandle": {
"description": "Client-supplied, connection-scoped `processHandle` from `process/spawn`.",
"type": "string"
},
"stream": {
"description": "Output stream this chunk belongs to.",
"allOf": [
{
"$ref": "#/definitions/v2/ProcessOutputStream"
}
]
}
}
},
"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/v2/Turn"
}
}
},
"InputModality": {
"description": "Canonical user-input modality tags advertised by a model.",
"oneOf": [
{
"description": "Plain text turns and tool payloads.",
"type": "string",
"enum": [
"text"
]
},
{
"description": "Image attachments included in user turns.",
"type": "string",
"enum": [
"image"
]
}
]
},
"Model": {
"type": "object",
"required": [
"defaultReasoningEffort",
"description",
"displayName",
"hidden",
"id",
"isDefault",
"model",
"supportedReasoningEfforts"
],
"properties": {
"additionalSpeedTiers": {
"description": "Deprecated: use `serviceTiers` instead.",
"default": [],
"type": "array",
"items": {
"type": "string"
}
},
"availabilityNux": {
"anyOf": [
{
"$ref": "#/definitions/v2/ModelAvailabilityNux"
},
{
"type": "null"
}
]
},
"defaultReasoningEffort": {
"$ref": "#/definitions/v2/ReasoningEffort"
},
"defaultServiceTier": {
"description": "Catalog default service tier id for this model, when one is configured.",
"default": null,
"type": [
"string",
"null"
]
},
"description": {
"type": "string"
},
"displayName": {
"type": "string"
},
"hidden": {
"type": "boolean"
},
"id": {
"type": "string"
},
"inputModalities": {
"default": [
"text",
"image"
],
"type": "array",
"items": {
"$ref": "#/definitions/v2/InputModality"
}
},
"isDefault": {
"type": "boolean"
},
"model": {
"type": "string"
},
"serviceTiers": {
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/v2/ModelServiceTier"
}
},
"supportedReasoningEfforts": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ReasoningEffortOption"
}
},
"supportsPersonality": {
"default": false,
"type": "boolean"
},
"upgrade": {
"type": [
"string",
"null"
]
},
"upgradeInfo": {
"anyOf": [
{
"$ref": "#/definitions/v2/ModelUpgradeInfo"
},
{
"type": "null"
}
]
}
}
},
"ModelAvailabilityNux": {
"type": "object",
"required": [
"message"
],
"properties": {
"message": {
"type": "string"
}
}
},
"ModelServiceTier": {
"type": "object",
"required": [
"description",
"id",
"name"
],
"properties": {
"description": {
"type": "string"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
}
}
},
"ModelUpgradeInfo": {
"type": "object",
"required": [
"model"
],
"properties": {
"migrationMarkdown": {
"type": [
"string",
"null"
]
},
"model": {
"type": "string"
},
"modelLink": {
"type": [
"string",
"null"
]
},
"upgradeCopy": {
"type": [
"string",
"null"
]
}
}
},
"ReasoningEffortOption": {
"type": "object",
"required": [
"description",
"reasoningEffort"
],
"properties": {
"description": {
"type": "string"
},
"reasoningEffort": {
"$ref": "#/definitions/v2/ReasoningEffort"
}
}
},
"ModelListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ModelListResponse",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/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"
]
}
}
},
"ModelProviderCapabilitiesReadResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ModelProviderCapabilitiesReadResponse",
"type": "object",
"required": [
"imageGeneration",
"namespaceTools",
"webSearch"
],
"properties": {
"imageGeneration": {
"type": "boolean"
},
"namespaceTools": {
"type": "boolean"
},
"webSearch": {
"type": "boolean"
}
}
},
"ExperimentalFeature": {
"type": "object",
"required": [
"defaultEnabled",
"enabled",
"name",
"stage"
],
"properties": {
"announcement": {
"description": "Announcement copy shown to users when the feature is introduced. Null when this feature is not in beta.",
"type": [
"string",
"null"
]
},
"defaultEnabled": {
"description": "Whether this feature is enabled by default.",
"type": "boolean"
},
"description": {
"description": "Short summary describing what the feature does. Null when this feature is not in beta.",
"type": [
"string",
"null"
]
},
"displayName": {
"description": "User-facing display name shown in the experimental features UI. Null when this feature is not in beta.",
"type": [
"string",
"null"
]
},
"enabled": {
"description": "Whether this feature is currently enabled in the loaded config.",
"type": "boolean"
},
"name": {
"description": "Stable key used in config.toml and CLI flag toggles.",
"type": "string"
},
"stage": {
"description": "Lifecycle stage of this feature flag.",
"allOf": [
{
"$ref": "#/definitions/v2/ExperimentalFeatureStage"
}
]
}
}
},
"ExperimentalFeatureStage": {
"oneOf": [
{
"description": "Feature is available for user testing and feedback.",
"type": "string",
"enum": [
"beta"
]
},
{
"description": "Feature is still being built and not ready for broad use.",
"type": "string",
"enum": [
"underDevelopment"
]
},
{
"description": "Feature is production-ready.",
"type": "string",
"enum": [
"stable"
]
},
{
"description": "Feature is deprecated and should be avoided.",
"type": "string",
"enum": [
"deprecated"
]
},
{
"description": "Feature flag is retained only for backwards compatibility.",
"type": "string",
"enum": [
"removed"
]
}
]
},
"ExperimentalFeatureListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExperimentalFeatureListResponse",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ExperimentalFeature"
}
},
"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"
]
}
}
},
"PermissionProfileSummary": {
"type": "object",
"required": [
"allowed",
"id"
],
"properties": {
"allowed": {
"description": "Whether the effective requirements allow selecting this profile.",
"type": "boolean"
},
"description": {
"description": "Optional user-facing description for display in clients.",
"type": [
"string",
"null"
]
},
"id": {
"description": "Available permission profile identifier.",
"type": "string"
}
}
},
"PermissionProfileListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PermissionProfileListResponse",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/PermissionProfileSummary"
}
},
"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"
]
}
}
},
"ExperimentalFeatureEnablementSetResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExperimentalFeatureEnablementSetResponse",
"type": "object",
"required": [
"enablement"
],
"properties": {
"enablement": {
"description": "Feature enablement entries updated by this request.",
"type": "object",
"additionalProperties": {
"type": "boolean"
}
}
}
},
"RemoteControlConnectionStatus": {
"type": "string",
"enum": [
"disabled",
"connecting",
"connected",
"errored"
]
},
"ProcessOutputStream": {
"description": "Stream label for `process/outputDelta` notifications.",
"oneOf": [
{
"description": "stdout stream. PTY mode multiplexes terminal output here.",
"type": "string",
"enum": [
"stdout"
]
},
{
"description": "stderr stream.",
"type": "string",
"enum": [
"stderr"
]
}
]
},
"CommandExecOutputDeltaNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecOutputDeltaNotification",
"description": "Base64-encoded output chunk emitted for a streaming `command/exec` request.\n\nThese notifications are connection-scoped. If the originating connection closes, the server terminates the process.",
"type": "object",
"required": [
"capReached",
"deltaBase64",
"processId",
"stream"
],
"properties": {
"capReached": {
"description": "`true` on the final streamed chunk for a stream when `outputBytesCap` truncated later output on that stream.",
"type": "boolean"
},
"deltaBase64": {
"description": "Base64-encoded output bytes.",
"type": "string"
},
"processId": {
"description": "Client-supplied, connection-scoped `processId` from the original `command/exec` request.",
"type": "string"
},
"stream": {
"description": "Output stream for this chunk.",
"allOf": [
{
"$ref": "#/definitions/v2/CommandExecOutputStream"
}
]
}
}
},
"CommandExecOutputStream": {
"description": "Stream label for `command/exec/outputDelta` notifications.",
"oneOf": [
{
"description": "stdout stream. PTY mode multiplexes terminal output here.",
"type": "string",
"enum": [
"stdout"
]
},
{
"description": "stderr stream.",
"type": "string",
"enum": [
"stderr"
]
}
]
},
"PlanDeltaNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PlanDeltaNotification",
"description": "EXPERIMENTAL - proposed plan streaming deltas for plan items. Clients should not assume concatenated deltas match the completed plan item content.",
"type": "object",
"required": [
"delta",
"itemId",
"threadId",
"turnId"
],
"properties": {
"delta": {
"type": "string"
},
"itemId": {
"type": "string"
},
"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"
}
}
},
"RawResponseItemCompletedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "RawResponseItemCompletedNotification",
"type": "object",
"required": [
"item",
"threadId",
"turnId"
],
"properties": {
"item": {
"$ref": "#/definitions/v2/ResponseItem"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ItemCompletedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ItemCompletedNotification",
"type": "object",
"required": [
"completedAtMs",
"item",
"threadId",
"turnId"
],
"properties": {
"completedAtMs": {
"description": "Unix timestamp (in milliseconds) when this item lifecycle completed.",
"type": "integer",
"format": "int64"
},
"item": {
"$ref": "#/definitions/v2/ThreadItem"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ItemGuardianApprovalReviewCompletedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ItemGuardianApprovalReviewCompletedNotification",
"description": "[UNSTABLE] Temporary notification payload for approval auto-review. This shape is expected to change soon.",
"type": "object",
"required": [
"action",
"completedAtMs",
"decisionSource",
"review",
"reviewId",
"startedAtMs",
"threadId",
"turnId"
],
"properties": {
"action": {
"$ref": "#/definitions/v2/GuardianApprovalReviewAction"
},
"completedAtMs": {
"description": "Unix timestamp (in milliseconds) when this review completed.",
"type": "integer",
"format": "int64"
},
"decisionSource": {
"$ref": "#/definitions/v2/AutoReviewDecisionSource"
},
"review": {
"$ref": "#/definitions/v2/GuardianApprovalReview"
},
"reviewId": {
"description": "Stable identifier for this review.",
"type": "string"
},
"startedAtMs": {
"description": "Unix timestamp (in milliseconds) when this review started.",
"type": "integer",
"format": "int64"
},
"targetItemId": {
"description": "Identifier for the reviewed item or tool call when one exists.\n\nIn most cases, one review maps to one target item. The exceptions are - execve reviews, where a single command may contain multiple execve calls to review (only possible when using the shell_zsh_fork feature) - network policy reviews, where there is no target item\n\nA network call is triggered by a CommandExecution item, so having a target_item_id set to the CommandExecution item would be misleading because the review is about the network call, not the command execution. Therefore, target_item_id is set to None for network policy reviews.",
"type": [
"string",
"null"
]
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"CollaborationModeMask": {
"description": "EXPERIMENTAL - collaboration mode preset metadata for clients.",
"type": "object",
"required": [
"name"
],
"properties": {
"mode": {
"anyOf": [
{
"$ref": "#/definitions/v2/ModeKind"
},
{
"type": "null"
}
]
},
"model": {
"type": [
"string",
"null"
]
},
"name": {
"type": "string"
},
"reasoning_effort": {
"anyOf": [
{
"anyOf": [
{
"$ref": "#/definitions/v2/ReasoningEffort"
},
{
"type": "null"
}
]
},
{
"type": "null"
}
]
}
}
},
"AutoReviewDecisionSource": {
"description": "[UNSTABLE] Source that produced a terminal approval auto-review decision.",
"type": "string",
"enum": [
"agent"
]
},
"ItemGuardianApprovalReviewStartedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ItemGuardianApprovalReviewStartedNotification",
"description": "[UNSTABLE] Temporary notification payload for approval auto-review. This shape is expected to change soon.",
"type": "object",
"required": [
"action",
"review",
"reviewId",
"startedAtMs",
"threadId",
"turnId"
],
"properties": {
"action": {
"$ref": "#/definitions/v2/GuardianApprovalReviewAction"
},
"review": {
"$ref": "#/definitions/v2/GuardianApprovalReview"
},
"reviewId": {
"description": "Stable identifier for this review.",
"type": "string"
},
"startedAtMs": {
"description": "Unix timestamp (in milliseconds) when this review started.",
"type": "integer",
"format": "int64"
},
"targetItemId": {
"description": "Identifier for the reviewed item or tool call when one exists.\n\nIn most cases, one review maps to one target item. The exceptions are - execve reviews, where a single command may contain multiple execve calls to review (only possible when using the shell_zsh_fork feature) - network policy reviews, where there is no target item\n\nA network call is triggered by a CommandExecution item, so having a target_item_id set to the CommandExecution item would be misleading because the review is about the network call, not the command execution. Therefore, target_item_id is set to None for network policy reviews.",
"type": [
"string",
"null"
]
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"RequestPermissionProfile": {
"type": "object",
"properties": {
"fileSystem": {
"anyOf": [
{
"$ref": "#/definitions/v2/AdditionalFileSystemPermissions"
},
{
"type": "null"
}
]
},
"network": {
"anyOf": [
{
"$ref": "#/definitions/v2/AdditionalNetworkPermissions"
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
},
"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"
]
},
"McpServerInfo": {
"description": "Presentation metadata advertised by an initialized MCP server.",
"type": "object",
"required": [
"name",
"version"
],
"properties": {
"description": {
"type": [
"string",
"null"
]
},
"icons": {
"type": [
"array",
"null"
],
"items": true
},
"name": {
"type": "string"
},
"title": {
"type": [
"string",
"null"
]
},
"version": {
"type": "string"
},
"websiteUrl": {
"type": [
"string",
"null"
]
}
}
},
"McpServerStatus": {
"type": "object",
"required": [
"authStatus",
"name",
"resourceTemplates",
"resources",
"tools"
],
"properties": {
"authStatus": {
"$ref": "#/definitions/v2/McpAuthStatus"
},
"name": {
"type": "string"
},
"resourceTemplates": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ResourceTemplate"
}
},
"resources": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/Resource"
}
},
"serverInfo": {
"anyOf": [
{
"$ref": "#/definitions/v2/McpServerInfo"
},
{
"type": "null"
}
]
},
"tools": {
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/v2/Tool"
}
}
}
},
"Resource": {
"description": "A known resource that the server is capable of reading.",
"type": "object",
"required": [
"name",
"uri"
],
"properties": {
"_meta": true,
"annotations": true,
"description": {
"type": [
"string",
"null"
]
},
"icons": {
"type": [
"array",
"null"
],
"items": true
},
"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": true,
"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": {
"_meta": true,
"annotations": true,
"description": {
"type": [
"string",
"null"
]
},
"icons": {
"type": [
"array",
"null"
],
"items": true
},
"inputSchema": true,
"name": {
"type": "string"
},
"outputSchema": true,
"title": {
"type": [
"string",
"null"
]
}
}
},
"ListMcpServerStatusResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ListMcpServerStatusResponse",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/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"
]
}
}
},
"ResourceContent": {
"description": "Contents returned when reading a resource from an MCP server.",
"anyOf": [
{
"type": "object",
"required": [
"text",
"uri"
],
"properties": {
"_meta": true,
"mimeType": {
"type": [
"string",
"null"
]
},
"text": {
"type": "string"
},
"uri": {
"description": "The URI of this resource.",
"type": "string"
}
}
},
{
"type": "object",
"required": [
"blob",
"uri"
],
"properties": {
"_meta": true,
"blob": {
"type": "string"
},
"mimeType": {
"type": [
"string",
"null"
]
},
"uri": {
"description": "The URI of this resource.",
"type": "string"
}
}
}
]
},
"McpResourceReadResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "McpResourceReadResponse",
"type": "object",
"required": [
"contents"
],
"properties": {
"contents": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ResourceContent"
}
}
}
},
"McpServerToolCallResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "McpServerToolCallResponse",
"type": "object",
"required": [
"content"
],
"properties": {
"_meta": true,
"content": {
"type": "array",
"items": true
},
"isError": {
"type": [
"boolean",
"null"
]
},
"structuredContent": true
}
},
"WindowsSandboxSetupStartResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "WindowsSandboxSetupStartResponse",
"type": "object",
"required": [
"started"
],
"properties": {
"started": {
"type": "boolean"
}
}
},
"WindowsSandboxReadiness": {
"type": "string",
"enum": [
"ready",
"notConfigured",
"updateRequired"
]
},
"WindowsSandboxReadinessResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "WindowsSandboxReadinessResponse",
"type": "object",
"required": [
"status"
],
"properties": {
"status": {
"$ref": "#/definitions/v2/WindowsSandboxReadiness"
}
}
},
"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"
},
{
"type": "object",
"required": [
"loginId",
"type",
"userCode",
"verificationUrl"
],
"properties": {
"loginId": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"chatgptDeviceCode"
],
"title": "ChatgptDeviceCodev2::LoginAccountResponseType"
},
"userCode": {
"description": "One-time code the user must enter after signing in.",
"type": "string"
},
"verificationUrl": {
"description": "URL the client should open in a browser to complete device code authorization.",
"type": "string"
}
},
"title": "ChatgptDeviceCodev2::LoginAccountResponse"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"chatgptAuthTokens"
],
"title": "ChatgptAuthTokensv2::LoginAccountResponseType"
}
},
"title": "ChatgptAuthTokensv2::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/v2/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",
"go",
"plus",
"pro",
"prolite",
"team",
"self_serve_business_usage_based",
"business",
"enterprise_cbp_usage_based",
"enterprise",
"edu",
"unknown"
]
},
"RateLimitReachedType": {
"type": "string",
"enum": [
"rate_limit_reached",
"workspace_owner_credits_depleted",
"workspace_member_credits_depleted",
"workspace_owner_usage_limit_reached",
"workspace_member_usage_limit_reached"
]
},
"RateLimitResetCreditsSummary": {
"type": "object",
"required": [
"availableCount"
],
"properties": {
"availableCount": {
"type": "integer",
"format": "int64"
}
}
},
"RateLimitSnapshot": {
"type": "object",
"properties": {
"credits": {
"anyOf": [
{
"$ref": "#/definitions/v2/CreditsSnapshot"
},
{
"type": "null"
}
]
},
"individualLimit": {
"anyOf": [
{
"$ref": "#/definitions/v2/SpendControlLimitSnapshot"
},
{
"type": "null"
}
]
},
"limitId": {
"type": [
"string",
"null"
]
},
"limitName": {
"type": [
"string",
"null"
]
},
"planType": {
"anyOf": [
{
"$ref": "#/definitions/v2/PlanType"
},
{
"type": "null"
}
]
},
"primary": {
"anyOf": [
{
"$ref": "#/definitions/v2/RateLimitWindow"
},
{
"type": "null"
}
]
},
"rateLimitReachedType": {
"anyOf": [
{
"$ref": "#/definitions/v2/RateLimitReachedType"
},
{
"type": "null"
}
]
},
"secondary": {
"anyOf": [
{
"$ref": "#/definitions/v2/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"
}
}
},
"SpendControlLimitSnapshot": {
"type": "object",
"required": [
"limit",
"remainingPercent",
"resetsAt",
"used"
],
"properties": {
"limit": {
"type": "string"
},
"remainingPercent": {
"type": "integer",
"format": "int32"
},
"resetsAt": {
"type": "integer",
"format": "int64"
},
"used": {
"type": "string"
}
}
},
"GetAccountRateLimitsResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GetAccountRateLimitsResponse",
"type": "object",
"required": [
"rateLimits"
],
"properties": {
"rateLimitResetCredits": {
"anyOf": [
{
"$ref": "#/definitions/v2/RateLimitResetCreditsSummary"
},
{
"type": "null"
}
]
},
"rateLimits": {
"description": "Backward-compatible single-bucket view; mirrors the historical payload.",
"allOf": [
{
"$ref": "#/definitions/v2/RateLimitSnapshot"
}
]
},
"rateLimitsByLimitId": {
"description": "Multi-bucket view keyed by metered `limit_id` (for example, `codex`).",
"type": [
"object",
"null"
],
"additionalProperties": {
"$ref": "#/definitions/v2/RateLimitSnapshot"
}
}
}
},
"ConsumeAccountRateLimitResetCreditOutcome": {
"oneOf": [
{
"description": "A reset credit was consumed and the eligible rate-limit windows were reset.",
"type": "string",
"enum": [
"reset"
]
},
{
"description": "No current rate-limit window is eligible for a reset.",
"type": "string",
"enum": [
"nothingToReset"
]
},
{
"description": "The account has no earned reset credits available.",
"type": "string",
"enum": [
"noCredit"
]
},
{
"description": "The same idempotency key already completed a reset successfully.",
"type": "string",
"enum": [
"alreadyRedeemed"
]
}
]
},
"ConsumeAccountRateLimitResetCreditResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ConsumeAccountRateLimitResetCreditResponse",
"type": "object",
"required": [
"outcome"
],
"properties": {
"outcome": {
"$ref": "#/definitions/v2/ConsumeAccountRateLimitResetCreditOutcome"
}
}
},
"AccountTokenUsageDailyBucket": {
"type": "object",
"required": [
"startDate",
"tokens"
],
"properties": {
"startDate": {
"type": "string"
},
"tokens": {
"type": "integer",
"format": "int64"
}
}
},
"AccountTokenUsageSummary": {
"type": "object",
"properties": {
"currentStreakDays": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"lifetimeTokens": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"longestRunningTurnSec": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"longestStreakDays": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"peakDailyTokens": {
"type": [
"integer",
"null"
],
"format": "int64"
}
}
},
"GetAccountTokenUsageResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GetAccountTokenUsageResponse",
"type": "object",
"required": [
"summary"
],
"properties": {
"dailyUsageBuckets": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/AccountTokenUsageDailyBucket"
}
},
"summary": {
"$ref": "#/definitions/v2/AccountTokenUsageSummary"
}
}
},
"WorkspaceMessage": {
"type": "object",
"required": [
"messageBody",
"messageId",
"messageType"
],
"properties": {
"archivedAt": {
"description": "Unix timestamp (in seconds) when the message was archived.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"createdAt": {
"description": "Unix timestamp (in seconds) when the message was created.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"messageBody": {
"type": "string"
},
"messageId": {
"type": "string"
},
"messageType": {
"$ref": "#/definitions/v2/WorkspaceMessageType"
}
}
},
"WorkspaceMessageType": {
"type": "string",
"enum": [
"headline",
"announcement",
"unknown"
]
},
"GetWorkspaceMessagesResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GetWorkspaceMessagesResponse",
"type": "object",
"required": [
"featureEnabled",
"messages"
],
"properties": {
"featureEnabled": {
"description": "Whether the workspace-message backend route is available for this client.",
"type": "boolean"
},
"messages": {
"description": "Active workspace messages returned by the backend.",
"type": "array",
"items": {
"$ref": "#/definitions/v2/WorkspaceMessage"
}
}
}
},
"AddCreditsNudgeEmailStatus": {
"type": "string",
"enum": [
"sent",
"cooldown_active"
]
},
"SendAddCreditsNudgeEmailResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SendAddCreditsNudgeEmailResponse",
"type": "object",
"required": [
"status"
],
"properties": {
"status": {
"$ref": "#/definitions/v2/AddCreditsNudgeEmailStatus"
}
}
},
"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",
"description": "Final buffered result for `command/exec`.",
"type": "object",
"required": [
"exitCode",
"stderr",
"stdout"
],
"properties": {
"exitCode": {
"description": "Process exit code.",
"type": "integer",
"format": "int32"
},
"stderr": {
"description": "Buffered stderr capture.\n\nEmpty when stderr was streamed via `command/exec/outputDelta`.",
"type": "string"
},
"stdout": {
"description": "Buffered stdout capture.\n\nEmpty when stdout was streamed via `command/exec/outputDelta`.",
"type": "string"
}
}
},
"CommandExecWriteResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecWriteResponse",
"description": "Empty success response for `command/exec/write`.",
"type": "object"
},
"CommandExecTerminateResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecTerminateResponse",
"description": "Empty success response for `command/exec/terminate`.",
"type": "object"
},
"CommandExecResizeResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecResizeResponse",
"description": "Empty success response for `command/exec/resize`.",
"type": "object"
},
"NetworkApprovalProtocol": {
"type": "string",
"enum": [
"http",
"https",
"socks5Tcp",
"socks5Udp"
]
},
"GuardianUserAuthorization": {
"description": "[UNSTABLE] Authorization level assigned by approval auto-review.",
"type": "string",
"enum": [
"unknown",
"low",
"medium",
"high"
]
},
"GuardianRiskLevel": {
"description": "[UNSTABLE] Risk level assigned by approval auto-review.",
"type": "string",
"enum": [
"low",
"medium",
"high",
"critical"
]
},
"GuardianCommandSource": {
"type": "string",
"enum": [
"shell",
"unifiedExec"
]
},
"AnalyticsConfig": {
"type": "object",
"properties": {
"enabled": {
"type": [
"boolean",
"null"
]
}
},
"additionalProperties": true
},
"AppConfig": {
"type": "object",
"properties": {
"approvals_reviewer": {
"anyOf": [
{
"$ref": "#/definitions/v2/ApprovalsReviewer"
},
{
"type": "null"
}
]
},
"default_tools_approval_mode": {
"anyOf": [
{
"$ref": "#/definitions/v2/AppToolApproval"
},
{
"type": "null"
}
]
},
"default_tools_enabled": {
"type": [
"boolean",
"null"
]
},
"destructive_enabled": {
"type": [
"boolean",
"null"
]
},
"enabled": {
"default": true,
"type": "boolean"
},
"open_world_enabled": {
"type": [
"boolean",
"null"
]
},
"tools": {
"anyOf": [
{
"$ref": "#/definitions/v2/AppToolsConfig"
},
{
"type": "null"
}
]
}
}
},
"AppToolApproval": {
"type": "string",
"enum": [
"auto",
"prompt",
"approve"
]
},
"AppToolConfig": {
"type": "object",
"properties": {
"approval_mode": {
"anyOf": [
{
"$ref": "#/definitions/v2/AppToolApproval"
},
{
"type": "null"
}
]
},
"enabled": {
"type": [
"boolean",
"null"
]
}
}
},
"AppToolsConfig": {
"type": "object"
},
"AppsConfig": {
"type": "object",
"properties": {
"_default": {
"default": null,
"anyOf": [
{
"$ref": "#/definitions/v2/AppsDefaultConfig"
},
{
"type": "null"
}
]
}
}
},
"AppsDefaultConfig": {
"type": "object",
"properties": {
"approvals_reviewer": {
"anyOf": [
{
"$ref": "#/definitions/v2/ApprovalsReviewer"
},
{
"type": "null"
}
]
},
"default_tools_approval_mode": {
"anyOf": [
{
"$ref": "#/definitions/v2/AppToolApproval"
},
{
"type": "null"
}
]
},
"destructive_enabled": {
"default": true,
"type": "boolean"
},
"enabled": {
"default": true,
"type": "boolean"
},
"open_world_enabled": {
"default": true,
"type": "boolean"
}
}
},
"AutoCompactTokenLimitScope": {
"description": "Selects which part of the active context is charged against `model_auto_compact_token_limit`.",
"oneOf": [
{
"description": "Count the full active context against the limit.",
"type": "string",
"enum": [
"total"
]
},
{
"description": "Count sampled output and later growth after the carried window prefix.",
"type": "string",
"enum": [
"body_after_prefix"
]
}
]
},
"Config": {
"type": "object",
"properties": {
"analytics": {
"anyOf": [
{
"$ref": "#/definitions/v2/AnalyticsConfig"
},
{
"type": "null"
}
]
},
"approval_policy": {
"anyOf": [
{
"$ref": "#/definitions/v2/AskForApproval"
},
{
"type": "null"
}
]
},
"approvals_reviewer": {
"description": "[UNSTABLE] Optional default for where approval requests are routed for review.",
"anyOf": [
{
"$ref": "#/definitions/v2/ApprovalsReviewer"
},
{
"type": "null"
}
]
},
"web_search": {
"anyOf": [
{
"$ref": "#/definitions/v2/WebSearchMode"
},
{
"type": "null"
}
]
},
"compact_prompt": {
"type": [
"string",
"null"
]
},
"desktop": {
"type": [
"object",
"null"
],
"additionalProperties": true
},
"developer_instructions": {
"type": [
"string",
"null"
]
},
"forced_chatgpt_workspace_id": {
"anyOf": [
{
"$ref": "#/definitions/v2/ForcedChatgptWorkspaceIds"
},
{
"type": "null"
}
]
},
"forced_login_method": {
"anyOf": [
{
"$ref": "#/definitions/v2/ForcedLoginMethod"
},
{
"type": "null"
}
]
},
"instructions": {
"type": [
"string",
"null"
]
},
"model": {
"type": [
"string",
"null"
]
},
"model_auto_compact_token_limit": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"model_auto_compact_token_limit_scope": {
"anyOf": [
{
"$ref": "#/definitions/v2/AutoCompactTokenLimitScope"
},
{
"type": "null"
}
]
},
"model_context_window": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"model_provider": {
"type": [
"string",
"null"
]
},
"model_reasoning_effort": {
"anyOf": [
{
"$ref": "#/definitions/v2/ReasoningEffort"
},
{
"type": "null"
}
]
},
"model_reasoning_summary": {
"anyOf": [
{
"$ref": "#/definitions/v2/ReasoningSummary"
},
{
"type": "null"
}
]
},
"model_verbosity": {
"anyOf": [
{
"$ref": "#/definitions/v2/Verbosity"
},
{
"type": "null"
}
]
},
"review_model": {
"type": [
"string",
"null"
]
},
"sandbox_mode": {
"anyOf": [
{
"$ref": "#/definitions/v2/SandboxMode"
},
{
"type": "null"
}
]
},
"sandbox_workspace_write": {
"anyOf": [
{
"$ref": "#/definitions/v2/SandboxWorkspaceWrite"
},
{
"type": "null"
}
]
},
"service_tier": {
"type": [
"string",
"null"
]
},
"tools": {
"anyOf": [
{
"$ref": "#/definitions/v2/ToolsV2"
},
{
"type": "null"
}
]
}
},
"additionalProperties": true
},
"ConfigLayer": {
"type": "object",
"required": [
"config",
"name",
"version"
],
"properties": {
"config": true,
"disabledReason": {
"type": [
"string",
"null"
]
},
"name": {
"$ref": "#/definitions/v2/ConfigLayerSource"
},
"version": {
"type": "string"
}
}
},
"ConfigLayerMetadata": {
"type": "object",
"required": [
"name",
"version"
],
"properties": {
"name": {
"$ref": "#/definitions/v2/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/v2/AbsolutePathBuf"
}
]
},
"type": {
"type": "string",
"enum": [
"system"
],
"title": "SystemConfigLayerSourceType"
}
},
"title": "SystemConfigLayerSource"
},
{
"description": "Enterprise-managed config layer delivered by the cloud config bundle.",
"type": "object",
"required": [
"id",
"name",
"type"
],
"properties": {
"id": {
"description": "Stable identifier for the delivered layer.",
"type": "string"
},
"name": {
"description": "Admin-facing name for the delivered layer. This is surfaced in diagnostics so users know which cloud layer needs administrator attention.",
"type": "string"
},
"type": {
"type": "string",
"enum": [
"enterpriseManaged"
],
"title": "EnterpriseManagedConfigLayerSourceType"
}
},
"title": "EnterpriseManagedConfigLayerSource"
},
{
"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/v2/AbsolutePathBuf"
}
]
},
"profile": {
"description": "Name of the selected profile-v2 config layered on top of the base user config, when this layer represents one.",
"type": [
"string",
"null"
]
},
"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/v2/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/v2/AbsolutePathBuf"
},
"type": {
"type": "string",
"enum": [
"legacyManagedConfigTomlFromFile"
],
"title": "LegacyManagedConfigTomlFromFileConfigLayerSourceType"
}
},
"title": "LegacyManagedConfigTomlFromFileConfigLayerSource"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"legacyManagedConfigTomlFromMdm"
],
"title": "LegacyManagedConfigTomlFromMdmConfigLayerSourceType"
}
},
"title": "LegacyManagedConfigTomlFromMdmConfigLayerSource"
}
]
},
"ForcedChatgptWorkspaceIds": {
"description": "Backward-compatible API shape for ChatGPT workspace login restrictions.",
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"ForcedLoginMethod": {
"type": "string",
"enum": [
"chatgpt",
"api"
]
},
"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": {
"web_search": {
"anyOf": [
{
"$ref": "#/definitions/v2/WebSearchToolConfig"
},
{
"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"
]
},
"WebSearchContextSize": {
"type": "string",
"enum": [
"low",
"medium",
"high"
]
},
"WebSearchLocation": {
"type": "object",
"properties": {
"city": {
"type": [
"string",
"null"
]
},
"country": {
"type": [
"string",
"null"
]
},
"region": {
"type": [
"string",
"null"
]
},
"timezone": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
},
"WebSearchMode": {
"type": "string",
"enum": [
"disabled",
"cached",
"indexed",
"live"
]
},
"WebSearchToolConfig": {
"type": "object",
"properties": {
"allowed_domains": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"context_size": {
"anyOf": [
{
"$ref": "#/definitions/v2/WebSearchContextSize"
},
{
"type": "null"
}
]
},
"location": {
"anyOf": [
{
"$ref": "#/definitions/v2/WebSearchLocation"
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
},
"ConfigReadResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ConfigReadResponse",
"type": "object",
"required": [
"config",
"origins"
],
"properties": {
"config": {
"$ref": "#/definitions/v2/Config"
},
"layers": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/ConfigLayer"
}
},
"origins": {
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/v2/ConfigLayerMetadata"
}
}
}
},
"ExternalAgentConfigDetectResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExternalAgentConfigDetectResponse",
"type": "object",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ExternalAgentConfigMigrationItem"
}
}
}
},
"ExternalAgentConfigImportResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExternalAgentConfigImportResponse",
"type": "object",
"required": [
"importId"
],
"properties": {
"importId": {
"type": "string"
}
}
},
"ExternalAgentConfigImportHistory": {
"type": "object",
"required": [
"completedAtMs",
"failures",
"importId",
"successes"
],
"properties": {
"completedAtMs": {
"type": "integer",
"format": "int64"
},
"failures": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ExternalAgentConfigImportItemTypeFailure"
}
},
"importId": {
"type": "string"
},
"successes": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ExternalAgentConfigImportItemTypeSuccess"
}
}
}
},
"ExternalAgentConfigImportItemTypeFailure": {
"type": "object",
"required": [
"failureStage",
"itemType",
"message"
],
"properties": {
"cwd": {
"type": [
"string",
"null"
]
},
"errorType": {
"type": [
"string",
"null"
]
},
"failureStage": {
"type": "string"
},
"itemType": {
"$ref": "#/definitions/v2/ExternalAgentConfigMigrationItemType"
},
"message": {
"type": "string"
},
"source": {
"type": [
"string",
"null"
]
}
}
},
"ExternalAgentConfigImportItemTypeSuccess": {
"type": "object",
"required": [
"itemType"
],
"properties": {
"cwd": {
"type": [
"string",
"null"
]
},
"itemType": {
"$ref": "#/definitions/v2/ExternalAgentConfigMigrationItemType"
},
"source": {
"type": [
"string",
"null"
]
},
"target": {
"type": [
"string",
"null"
]
}
}
},
"ExternalAgentConfigImportHistoriesReadResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ExternalAgentConfigImportHistoriesReadResponse",
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ExternalAgentConfigImportHistory"
}
}
}
},
"OverriddenMetadata": {
"type": "object",
"required": [
"effectiveValue",
"message",
"overridingLayer"
],
"properties": {
"effectiveValue": true,
"message": {
"type": "string"
},
"overridingLayer": {
"$ref": "#/definitions/v2/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/v2/AbsolutePathBuf"
}
]
},
"overriddenMetadata": {
"anyOf": [
{
"$ref": "#/definitions/v2/OverriddenMetadata"
},
{
"type": "null"
}
]
},
"status": {
"$ref": "#/definitions/v2/WriteStatus"
},
"version": {
"type": "string"
}
}
},
"ComputerUseRequirements": {
"type": "object",
"properties": {
"allowLockedComputerUse": {
"type": [
"boolean",
"null"
]
}
}
},
"ConfigRequirements": {
"type": "object",
"properties": {
"allowAppshots": {
"type": [
"boolean",
"null"
]
},
"allowManagedHooksOnly": {
"type": [
"boolean",
"null"
]
},
"allowRemoteControl": {
"type": [
"boolean",
"null"
]
},
"allowedApprovalPolicies": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/AskForApproval"
}
},
"featureRequirements": {
"type": [
"object",
"null"
],
"additionalProperties": {
"type": "boolean"
}
},
"allowedPermissionProfiles": {
"type": [
"object",
"null"
],
"additionalProperties": {
"type": "boolean"
}
},
"allowedSandboxModes": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/SandboxMode"
}
},
"allowedWebSearchModes": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/WebSearchMode"
}
},
"allowedWindowsSandboxImplementations": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/WindowsSandboxSetupMode"
}
},
"computerUse": {
"anyOf": [
{
"$ref": "#/definitions/v2/ComputerUseRequirements"
},
{
"type": "null"
}
]
},
"defaultPermissions": {
"type": [
"string",
"null"
]
},
"enforceResidency": {
"anyOf": [
{
"$ref": "#/definitions/v2/ResidencyRequirement"
},
{
"type": "null"
}
]
}
}
},
"ConfiguredHookHandler": {
"oneOf": [
{
"type": "object",
"required": [
"async",
"command",
"type"
],
"properties": {
"async": {
"type": "boolean"
},
"command": {
"type": "string"
},
"commandWindows": {
"type": [
"string",
"null"
]
},
"statusMessage": {
"type": [
"string",
"null"
]
},
"timeoutSec": {
"type": [
"integer",
"null"
],
"format": "uint64",
"minimum": 0.0
},
"type": {
"type": "string",
"enum": [
"command"
],
"title": "CommandConfiguredHookHandlerType"
}
},
"title": "CommandConfiguredHookHandler"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"prompt"
],
"title": "PromptConfiguredHookHandlerType"
}
},
"title": "PromptConfiguredHookHandler"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"agent"
],
"title": "AgentConfiguredHookHandlerType"
}
},
"title": "AgentConfiguredHookHandler"
}
]
},
"ConfiguredHookMatcherGroup": {
"type": "object",
"required": [
"hooks"
],
"properties": {
"hooks": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ConfiguredHookHandler"
}
},
"matcher": {
"type": [
"string",
"null"
]
}
}
},
"ManagedHooksRequirements": {
"type": "object",
"required": [
"PermissionRequest",
"PostCompact",
"PostToolUse",
"PreCompact",
"PreToolUse",
"SessionStart",
"Stop",
"SubagentStart",
"SubagentStop",
"UserPromptSubmit"
],
"properties": {
"PermissionRequest": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ConfiguredHookMatcherGroup"
}
},
"PostCompact": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ConfiguredHookMatcherGroup"
}
},
"PostToolUse": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ConfiguredHookMatcherGroup"
}
},
"PreCompact": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ConfiguredHookMatcherGroup"
}
},
"PreToolUse": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ConfiguredHookMatcherGroup"
}
},
"SessionStart": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ConfiguredHookMatcherGroup"
}
},
"Stop": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ConfiguredHookMatcherGroup"
}
},
"SubagentStart": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ConfiguredHookMatcherGroup"
}
},
"SubagentStop": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ConfiguredHookMatcherGroup"
}
},
"UserPromptSubmit": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/ConfiguredHookMatcherGroup"
}
},
"managedDir": {
"type": [
"string",
"null"
]
},
"windowsManagedDir": {
"type": [
"string",
"null"
]
}
}
},
"NetworkDomainPermission": {
"type": "string",
"enum": [
"allow",
"deny"
]
},
"NetworkRequirements": {
"type": "object",
"properties": {
"allowLocalBinding": {
"type": [
"boolean",
"null"
]
},
"allowUnixSockets": {
"description": "Legacy compatibility view derived from `unix_sockets`.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"allowUpstreamProxy": {
"type": [
"boolean",
"null"
]
},
"allowedDomains": {
"description": "Legacy compatibility view derived from `domains`.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"dangerouslyAllowAllUnixSockets": {
"type": [
"boolean",
"null"
]
},
"dangerouslyAllowNonLoopbackProxy": {
"type": [
"boolean",
"null"
]
},
"deniedDomains": {
"description": "Legacy compatibility view derived from `domains`.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"domains": {
"description": "Canonical network permission map for `experimental_network`.",
"type": [
"object",
"null"
],
"additionalProperties": {
"$ref": "#/definitions/v2/NetworkDomainPermission"
}
},
"enabled": {
"type": [
"boolean",
"null"
]
},
"httpPort": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0.0
},
"managedAllowedDomainsOnly": {
"description": "When true, only managed allowlist entries are respected while managed network enforcement is active.",
"type": [
"boolean",
"null"
]
},
"socksPort": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0.0
},
"unixSockets": {
"description": "Canonical unix socket permission map for `experimental_network`.",
"type": [
"object",
"null"
],
"additionalProperties": {
"$ref": "#/definitions/v2/NetworkUnixSocketPermission"
}
}
}
},
"NetworkUnixSocketPermission": {
"type": "string",
"enum": [
"allow",
"deny"
]
},
"ResidencyRequirement": {
"type": "string",
"enum": [
"us"
]
},
"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/v2/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",
"null"
]
},
"planType": {
"$ref": "#/definitions/v2/PlanType"
},
"type": {
"type": "string",
"enum": [
"chatgpt"
],
"title": "ChatgptAccountType"
}
},
"title": "ChatgptAccount"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"credentialSource": {
"default": "awsManaged",
"allOf": [
{
"$ref": "#/definitions/v2/AmazonBedrockCredentialSource"
}
]
},
"type": {
"type": "string",
"enum": [
"amazonBedrock"
],
"title": "AmazonBedrockAccountType"
}
},
"title": "AmazonBedrockAccount"
}
]
},
"AmazonBedrockCredentialSource": {
"type": "string",
"enum": [
"codexManaged",
"awsManaged"
]
},
"GetAccountResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "GetAccountResponse",
"type": "object",
"required": [
"requiresOpenaiAuth"
],
"properties": {
"account": {
"anyOf": [
{
"$ref": "#/definitions/v2/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/v2/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/v2/Thread"
}
}
},
"ThreadStatusChangedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadStatusChangedNotification",
"type": "object",
"required": [
"status",
"threadId"
],
"properties": {
"status": {
"$ref": "#/definitions/v2/ThreadStatus"
},
"threadId": {
"type": "string"
}
}
},
"ThreadArchivedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadArchivedNotification",
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"type": "string"
}
}
},
"ThreadDeletedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadDeletedNotification",
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"type": "string"
}
}
},
"ThreadUnarchivedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadUnarchivedNotification",
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"type": "string"
}
}
},
"ThreadClosedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadClosedNotification",
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"type": "string"
}
}
},
"SkillsChangedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SkillsChangedNotification",
"description": "Notification emitted when watched local skill files change.\n\nTreat this as an invalidation signal and re-run `skills/list` with the client's current parameters when refreshed skill metadata is needed.",
"type": "object"
},
"ThreadNameUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadNameUpdatedNotification",
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"type": "string"
},
"threadName": {
"type": [
"string",
"null"
]
}
}
},
"ThreadGoalUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadGoalUpdatedNotification",
"type": "object",
"required": [
"goal",
"threadId"
],
"properties": {
"goal": {
"$ref": "#/definitions/v2/ThreadGoal"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": [
"string",
"null"
]
}
}
},
"ThreadGoalClearedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadGoalClearedNotification",
"type": "object",
"required": [
"threadId"
],
"properties": {
"threadId": {
"type": "string"
}
}
},
"ThreadSettings": {
"type": "object",
"required": [
"approvalPolicy",
"approvalsReviewer",
"collaborationMode",
"cwd",
"model",
"modelProvider",
"sandboxPolicy"
],
"properties": {
"activePermissionProfile": {
"anyOf": [
{
"$ref": "#/definitions/v2/ActivePermissionProfile"
},
{
"type": "null"
}
]
},
"approvalPolicy": {
"$ref": "#/definitions/v2/AskForApproval"
},
"approvalsReviewer": {
"$ref": "#/definitions/v2/ApprovalsReviewer"
},
"collaborationMode": {
"$ref": "#/definitions/v2/CollaborationMode"
},
"cwd": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"effort": {
"anyOf": [
{
"$ref": "#/definitions/v2/ReasoningEffort"
},
{
"type": "null"
}
]
},
"model": {
"type": "string"
},
"modelProvider": {
"type": "string"
},
"summary": {
"anyOf": [
{
"$ref": "#/definitions/v2/ReasoningSummary"
},
{
"type": "null"
}
]
},
"personality": {
"anyOf": [
{
"$ref": "#/definitions/v2/Personality"
},
{
"type": "null"
}
]
},
"sandboxPolicy": {
"$ref": "#/definitions/v2/SandboxPolicy"
},
"serviceTier": {
"type": [
"string",
"null"
]
}
}
},
"ThreadSettingsUpdatedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ThreadSettingsUpdatedNotification",
"type": "object",
"required": [
"threadId",
"threadSettings"
],
"properties": {
"threadId": {
"type": "string"
},
"threadSettings": {
"$ref": "#/definitions/v2/ThreadSettings"
}
}
},
"ThreadTokenUsage": {
"type": "object",
"required": [
"last",
"total"
],
"properties": {
"last": {
"$ref": "#/definitions/v2/TokenUsageBreakdown"
},
"modelContextWindow": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"total": {
"$ref": "#/definitions/v2/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/v2/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/v2/Turn"
}
}
},
"HookExecutionMode": {
"type": "string",
"enum": [
"sync",
"async"
]
},
"HookOutputEntry": {
"type": "object",
"required": [
"kind",
"text"
],
"properties": {
"kind": {
"$ref": "#/definitions/v2/HookOutputEntryKind"
},
"text": {
"type": "string"
}
}
},
"HookOutputEntryKind": {
"type": "string",
"enum": [
"warning",
"stop",
"feedback",
"context",
"error"
]
},
"HookRunStatus": {
"type": "string",
"enum": [
"running",
"completed",
"failed",
"blocked",
"stopped"
]
},
"HookRunSummary": {
"type": "object",
"required": [
"displayOrder",
"entries",
"eventName",
"executionMode",
"handlerType",
"id",
"scope",
"sourcePath",
"startedAt",
"status"
],
"properties": {
"completedAt": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"displayOrder": {
"type": "integer",
"format": "int64"
},
"durationMs": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"entries": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/HookOutputEntry"
}
},
"eventName": {
"$ref": "#/definitions/v2/HookEventName"
},
"executionMode": {
"$ref": "#/definitions/v2/HookExecutionMode"
},
"handlerType": {
"$ref": "#/definitions/v2/HookHandlerType"
},
"id": {
"type": "string"
},
"scope": {
"$ref": "#/definitions/v2/HookScope"
},
"source": {
"default": "unknown",
"allOf": [
{
"$ref": "#/definitions/v2/HookSource"
}
]
},
"sourcePath": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"startedAt": {
"type": "integer",
"format": "int64"
},
"status": {
"$ref": "#/definitions/v2/HookRunStatus"
},
"statusMessage": {
"type": [
"string",
"null"
]
}
}
},
"HookScope": {
"type": "string",
"enum": [
"thread",
"turn"
]
},
"HookStartedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "HookStartedNotification",
"type": "object",
"required": [
"run",
"threadId"
],
"properties": {
"run": {
"$ref": "#/definitions/v2/HookRunSummary"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": [
"string",
"null"
]
}
}
},
"TurnCompletedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "TurnCompletedNotification",
"type": "object",
"required": [
"threadId",
"turn"
],
"properties": {
"threadId": {
"type": "string"
},
"turn": {
"$ref": "#/definitions/v2/Turn"
}
}
},
"HookCompletedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "HookCompletedNotification",
"type": "object",
"required": [
"run",
"threadId"
],
"properties": {
"run": {
"$ref": "#/definitions/v2/HookRunSummary"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": [
"string",
"null"
]
}
}
},
"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/v2/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/v2/TurnPlanStep"
}
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"ItemStartedNotification": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ItemStartedNotification",
"type": "object",
"required": [
"item",
"startedAtMs",
"threadId",
"turnId"
],
"properties": {
"item": {
"$ref": "#/definitions/v2/ThreadItem"
},
"startedAtMs": {
"description": "Unix timestamp (in milliseconds) when this item lifecycle started.",
"type": "integer",
"format": "int64"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
}
}
},
"AdditionalFileSystemPermissions": {
"type": "object",
"properties": {
"entries": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/FileSystemSandboxEntry"
}
},
"globScanMaxDepth": {
"type": [
"integer",
"null"
],
"format": "uint",
"minimum": 1.0
},
"read": {
"description": "This will be removed in favor of `entries`.",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/LegacyAppPathString"
}
},
"write": {
"description": "This will be removed in favor of `entries`.",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/v2/LegacyAppPathString"
}
}
}
},
"AdditionalNetworkPermissions": {
"type": "object",
"properties": {
"enabled": {
"type": [
"boolean",
"null"
]
}
}
},
"FileSystemAccessMode": {
"type": "string",
"enum": [
"read",
"write",
"deny"
]
},
"FileSystemPath": {
"oneOf": [
{
"type": "object",
"required": [
"path",
"type"
],
"properties": {
"path": {
"$ref": "#/definitions/v2/LegacyAppPathString"
},
"type": {
"type": "string",
"enum": [
"path"
],
"title": "PathFileSystemPathType"
}
},
"title": "PathFileSystemPath"
},
{
"type": "object",
"required": [
"pattern",
"type"
],
"properties": {
"pattern": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"glob_pattern"
],
"title": "GlobPatternFileSystemPathType"
}
},
"title": "GlobPatternFileSystemPath"
},
{
"type": "object",
"required": [
"type",
"value"
],
"properties": {
"type": {
"type": "string",
"enum": [
"special"
],
"title": "SpecialFileSystemPathType"
},
"value": {
"$ref": "#/definitions/v2/FileSystemSpecialPath"
}
},
"title": "SpecialFileSystemPath"
}
]
},
"FileSystemSandboxEntry": {
"type": "object",
"required": [
"access",
"path"
],
"properties": {
"access": {
"$ref": "#/definitions/v2/FileSystemAccessMode"
},
"path": {
"$ref": "#/definitions/v2/FileSystemPath"
}
}
},
"FileSystemSpecialPath": {
"oneOf": [
{
"type": "object",
"required": [
"kind"
],
"properties": {
"kind": {
"type": "string",
"enum": [
"root"
]
}
},
"title": "RootFileSystemSpecialPath"
},
{
"type": "object",
"required": [
"kind"
],
"properties": {
"kind": {
"type": "string",
"enum": [
"minimal"
]
}
},
"title": "MinimalFileSystemSpecialPath"
},
{
"type": "object",
"required": [
"kind"
],
"properties": {
"kind": {
"type": "string",
"enum": [
"project_roots"
]
},
"subpath": {
"type": [
"string",
"null"
]
}
},
"title": "KindFileSystemSpecialPath"
},
{
"type": "object",
"required": [
"kind"
],
"properties": {
"kind": {
"type": "string",
"enum": [
"tmpdir"
]
}
},
"title": "TmpdirFileSystemSpecialPath"
},
{
"type": "object",
"required": [
"kind"
],
"properties": {
"kind": {
"type": "string",
"enum": [
"slash_tmp"
]
}
},
"title": "SlashTmpFileSystemSpecialPath"
},
{
"type": "object",
"required": [
"kind",
"path"
],
"properties": {
"kind": {
"type": "string",
"enum": [
"unknown"
]
},
"path": {
"type": "string"
},
"subpath": {
"type": [
"string",
"null"
]
}
}
}
]
},
"GuardianApprovalReview": {
"description": "[UNSTABLE] Temporary approval auto-review payload used by `item/autoApprovalReview/*` notifications. This shape is expected to change soon.",
"type": "object",
"required": [
"status"
],
"properties": {
"rationale": {
"type": [
"string",
"null"
]
},
"riskLevel": {
"anyOf": [
{
"$ref": "#/definitions/v2/GuardianRiskLevel"
},
{
"type": "null"
}
]
},
"status": {
"$ref": "#/definitions/v2/GuardianApprovalReviewStatus"
},
"userAuthorization": {
"anyOf": [
{
"$ref": "#/definitions/v2/GuardianUserAuthorization"
},
{
"type": "null"
}
]
}
}
},
"GuardianApprovalReviewAction": {
"oneOf": [
{
"type": "object",
"required": [
"command",
"cwd",
"source",
"type"
],
"properties": {
"command": {
"type": "string"
},
"cwd": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"source": {
"$ref": "#/definitions/v2/GuardianCommandSource"
},
"type": {
"type": "string",
"enum": [
"command"
],
"title": "CommandGuardianApprovalReviewActionType"
}
},
"title": "CommandGuardianApprovalReviewAction"
},
{
"type": "object",
"required": [
"argv",
"cwd",
"program",
"source",
"type"
],
"properties": {
"argv": {
"type": "array",
"items": {
"type": "string"
}
},
"cwd": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"program": {
"type": "string"
},
"source": {
"$ref": "#/definitions/v2/GuardianCommandSource"
},
"type": {
"type": "string",
"enum": [
"execve"
],
"title": "ExecveGuardianApprovalReviewActionType"
}
},
"title": "ExecveGuardianApprovalReviewAction"
},
{
"type": "object",
"required": [
"cwd",
"files",
"type"
],
"properties": {
"cwd": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
},
"files": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
},
"type": {
"type": "string",
"enum": [
"applyPatch"
],
"title": "ApplyPatchGuardianApprovalReviewActionType"
}
},
"title": "ApplyPatchGuardianApprovalReviewAction"
},
{
"type": "object",
"required": [
"host",
"port",
"protocol",
"target",
"type"
],
"properties": {
"host": {
"type": "string"
},
"port": {
"type": "integer",
"format": "uint16",
"minimum": 0.0
},
"protocol": {
"$ref": "#/definitions/v2/NetworkApprovalProtocol"
},
"target": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"networkAccess"
],
"title": "NetworkAccessGuardianApprovalReviewActionType"
}
},
"title": "NetworkAccessGuardianApprovalReviewAction"
},
{
"type": "object",
"required": [
"server",
"toolName",
"type"
],
"properties": {
"connectorId": {
"type": [
"string",
"null"
]
},
"connectorName": {
"type": [
"string",
"null"
]
},
"server": {
"type": "string"
},
"toolName": {
"type": "string"
},
"toolTitle": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"mcpToolCall"
],
"title": "McpToolCallGuardianApprovalReviewActionType"
}
},
"title": "McpToolCallGuardianApprovalReviewAction"
},
{
"type": "object",
"required": [
"permissions",
"type"
],
"properties": {
"permissions": {
"$ref": "#/definitions/v2/RequestPermissionProfile"
},
"reason": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"requestPermissions"
],
"title": "RequestPermissionsGuardianApprovalReviewActionType"
}
},
"title": "RequestPermissionsGuardianApprovalReviewAction"
}
]
},
"GuardianApprovalReviewStatus": {
"description": "[UNSTABLE] Lifecycle state for an approval auto-review.",
"type": "string",
"enum": [
"inProgress",
"approved",
"denied",
"timedOut",
"aborted"
]
}
},
"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"
},
"InitializeResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "InitializeResponse",
"type": "object",
"required": [
"codexHome",
"platformFamily",
"platformOs",
"userAgent"
],
"properties": {
"codexHome": {
"description": "Absolute path to the server's $CODEX_HOME directory.",
"allOf": [
{
"$ref": "#/definitions/v2/AbsolutePathBuf"
}
]
},
"platformFamily": {
"description": "Platform family for the running app-server target, for example `\"unix\"` or `\"windows\"`.",
"type": "string"
},
"platformOs": {
"description": "Operating system for the running app-server target, for example `\"macos\"`, `\"linux\"`, or `\"windows\"`.",
"type": "string"
},
"userAgent": {
"type": "string"
}
}
},
"FuzzyFileSearchResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FuzzyFileSearchResponse",
"type": "object",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"$ref": "#/definitions/FuzzyFileSearchResult"
}
}
}
},
"AttestationGenerateResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "AttestationGenerateResponse",
"type": "object",
"required": [
"token"
],
"properties": {
"token": {
"description": "Opaque client attestation token.",
"type": "string"
}
}
},
"ChatgptAuthTokensRefreshResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ChatgptAuthTokensRefreshResponse",
"type": "object",
"required": [
"accessToken",
"chatgptAccountId"
],
"properties": {
"accessToken": {
"type": "string"
},
"chatgptAccountId": {
"type": "string"
},
"chatgptPlanType": {
"type": [
"string",
"null"
]
}
}
},
"DynamicToolCallResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "DynamicToolCallResponse",
"type": "object",
"required": [
"contentItems",
"success"
],
"properties": {
"contentItems": {
"type": "array",
"items": {
"$ref": "#/definitions/v2/DynamicToolCallOutputContentItem"
}
},
"success": {
"type": "boolean"
}
}
},
"CommandExecutionRequestApprovalResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CommandExecutionRequestApprovalResponse",
"type": "object",
"required": [
"decision"
],
"properties": {
"decision": {
"$ref": "#/definitions/CommandExecutionApprovalDecision"
}
}
},
"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"
]
}
]
},
"FileChangeRequestApprovalResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "FileChangeRequestApprovalResponse",
"type": "object",
"required": [
"decision"
],
"properties": {
"decision": {
"$ref": "#/definitions/FileChangeApprovalDecision"
}
}
},
"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"
}
}
}
},
"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"
}
}
}
},
"McpServerElicitationAction": {
"type": "string",
"enum": [
"accept",
"decline",
"cancel"
]
},
"McpServerElicitationRequestResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "McpServerElicitationRequestResponse",
"type": "object",
"required": [
"action"
],
"properties": {
"_meta": {
"description": "Optional client metadata for form-mode action handling."
},
"action": {
"$ref": "#/definitions/McpServerElicitationAction"
},
"content": {
"description": "Structured user input for accepted elicitations, mirroring RMCP `CreateElicitationResult`.\n\nThis is nullable because decline/cancel responses have no content."
}
}
},
"GrantedPermissionProfile": {
"type": "object",
"properties": {
"fileSystem": {
"anyOf": [
{
"$ref": "#/definitions/v2/AdditionalFileSystemPermissions"
},
{
"type": "null"
}
]
},
"network": {
"anyOf": [
{
"$ref": "#/definitions/v2/AdditionalNetworkPermissions"
},
{
"type": "null"
}
]
}
}
},
"PermissionGrantScope": {
"type": "string",
"enum": [
"turn",
"session"
]
}
}
}