{ "$schema": "http://json-schema.org/draft-07/schema#", "definitions": { "AbsolutePathBuf": { "description": "A path that is guaranteed to be absolute and normalized (though it is not guaranteed to be canonicalized or exist on the filesystem).\n\nIMPORTANT: When deserializing an `AbsolutePathBuf`, a base path must be set using [AbsolutePathBufGuard::new]. If no base path is set, the deserialization will fail unless the path being deserialized is already absolute.", "type": "string" }, "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.", "enum": ["user", "auto_review", "guardian_subagent"], "type": "string" }, "AskForApproval": { "oneOf": [ { "enum": ["untrusted", "on-request", "never"], "type": "string" }, { "additionalProperties": false, "properties": { "granular": { "properties": { "mcp_elicitations": { "type": "boolean" }, "request_permissions": { "default": false, "type": "boolean" }, "rules": { "type": "boolean" }, "sandbox_approval": { "type": "boolean" }, "skill_approval": { "default": false, "type": "boolean" } }, "required": ["mcp_elicitations", "rules", "sandbox_approval"], "type": "object" } }, "required": ["granular"], "title": "GranularAskForApproval", "type": "object" } ] }, "CapabilityRootLocation": { "description": "Location used to resolve a selected capability root.", "oneOf": [ { "description": "A path owned by an execution environment.", "properties": { "environmentId": { "type": "string" }, "path": { "description": "Absolute path for the root in the selected environment.", "type": "string" }, "type": { "enum": ["environment"], "title": "EnvironmentCapabilityRootLocationType", "type": "string" } }, "required": ["environmentId", "path", "type"], "title": "EnvironmentCapabilityRootLocation", "type": "object" } ] }, "DynamicToolNamespaceTool": { "oneOf": [ { "properties": { "deferLoading": { "type": "boolean" }, "description": { "type": "string" }, "inputSchema": true, "name": { "type": "string" }, "type": { "enum": ["function"], "title": "FunctionDynamicToolNamespaceToolType", "type": "string" } }, "required": ["description", "inputSchema", "name", "type"], "title": "FunctionDynamicToolNamespaceTool", "type": "object" } ] }, "DynamicToolSpec": { "oneOf": [ { "properties": { "deferLoading": { "type": "boolean" }, "description": { "type": "string" }, "inputSchema": true, "name": { "type": "string" }, "type": { "enum": ["function"], "title": "FunctionDynamicToolSpecType", "type": "string" } }, "required": ["description", "inputSchema", "name", "type"], "title": "FunctionDynamicToolSpec", "type": "object" }, { "properties": { "description": { "type": "string" }, "name": { "type": "string" }, "tools": { "items": { "$ref": "#/definitions/DynamicToolNamespaceTool" }, "type": "array" }, "type": { "enum": ["namespace"], "title": "NamespaceDynamicToolSpecType", "type": "string" } }, "required": ["description", "name", "tools", "type"], "title": "NamespaceDynamicToolSpec", "type": "object" } ] }, "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.", "enum": ["none", "explicitRequestOnly", "proactive"], "type": "string" }, "Personality": { "enum": ["none", "friendly", "pragmatic"], "type": "string" }, "SandboxMode": { "enum": ["read-only", "workspace-write", "danger-full-access"], "type": "string" }, "SelectedCapabilityRoot": { "description": "A user-selected root that can expose one or more runtime capabilities.", "properties": { "id": { "description": "Stable identifier supplied by the capability selection platform.", "type": "string" }, "location": { "allOf": [ { "$ref": "#/definitions/CapabilityRootLocation" } ], "description": "Where the selected root can be resolved." } }, "required": ["id", "location"], "type": "object" }, "ThreadSource": { "type": "string" }, "ThreadStartSource": { "enum": ["startup", "clear"], "type": "string" }, "TurnEnvironmentParams": { "properties": { "cwd": { "$ref": "#/definitions/LegacyAppPathString" }, "environmentId": { "type": "string" } }, "required": ["cwd", "environmentId"], "type": "object" } }, "properties": { "approvalPolicy": { "anyOf": [ { "$ref": "#/definitions/AskForApproval" }, { "type": "null" } ] }, "approvalsReviewer": { "anyOf": [ { "$ref": "#/definitions/ApprovalsReviewer" }, { "type": "null" } ], "description": "Override where approval requests are routed for review on this thread and subsequent turns." }, "baseInstructions": { "type": ["string", "null"] }, "config": { "additionalProperties": true, "type": ["object", "null"] }, "cwd": { "type": ["string", "null"] }, "developerInstructions": { "type": ["string", "null"] }, "ephemeral": { "type": ["boolean", "null"] }, "model": { "type": ["string", "null"] }, "modelProvider": { "type": ["string", "null"] }, "personality": { "anyOf": [ { "$ref": "#/definitions/Personality" }, { "type": "null" } ] }, "sandbox": { "anyOf": [ { "$ref": "#/definitions/SandboxMode" }, { "type": "null" } ] }, "serviceName": { "type": ["string", "null"] }, "serviceTier": { "type": ["string", "null"] }, "sessionStartSource": { "anyOf": [ { "$ref": "#/definitions/ThreadStartSource" }, { "type": "null" } ] }, "threadSource": { "anyOf": [ { "$ref": "#/definitions/ThreadSource" }, { "type": "null" } ], "description": "Optional client-supplied analytics source classification for this thread." } }, "title": "ThreadStartParams", "type": "object" }