{ "$schema": "http://json-schema.org/draft-07/schema#", "definitions": { "ApprovalsReviewer": { "description": "Configures who approval requests are routed to for review. Examples include sandbox escapes, blocked network access, MCP approval prompts, and ARC escalations. Defaults to `user`. `guardian_subagent` uses a carefully prompted subagent to gather relevant context and apply a risk-based decision framework before approving or denying the request.", "enum": [ "user", "guardian_subagent" ], "type": "string" }, "AskForApproval": { "oneOf": [ { "enum": [ "untrusted", "on-failure", "on-request", "never" ], "type": "string" }, { "additionalProperties": false, "properties": { "granular": { "properties": { "mcp_elicitations": { "type": "boolean" }, "request_permissions": { "default": false, "type": "boolean" }, "rules": { "type": "boolean" }, "sandbox_approval": { "type": "boolean" }, "skill_approval": { "default": false, "type": "boolean" } }, "required": [ "mcp_elicitations", "rules", "sandbox_approval" ], "type": "object" } }, "required": [ "granular" ], "title": "GranularAskForApproval", "type": "object" } ] }, "SandboxMode": { "enum": [ "read-only", "workspace-write", "danger-full-access" ], "type": "string" }, "ServiceTier": { "enum": [ "fast", "flex" ], "type": "string" } }, "description": "There are two ways to fork a thread: 1. By thread_id: load the thread from disk by thread_id and fork it into a new thread. 2. By path: load the thread from disk by path and fork it into a new thread.\n\nIf using path, the thread_id param will be ignored.\n\nPrefer using thread_id whenever possible.", "properties": { "approvalPolicy": { "anyOf": [ { "$ref": "#/definitions/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" }, "model": { "description": "Configuration overrides for the forked thread, if any.", "type": [ "string", "null" ] }, "modelProvider": { "type": [ "string", "null" ] }, "sandbox": { "anyOf": [ { "$ref": "#/definitions/SandboxMode" }, { "type": "null" } ] }, "serviceTier": { "anyOf": [ { "anyOf": [ { "$ref": "#/definitions/ServiceTier" }, { "type": "null" } ] }, { "type": "null" } ] }, "threadId": { "type": "string" } }, "required": [ "threadId" ], "title": "ThreadForkParams", "type": "object" }