{ "$schema": "http://json-schema.org/draft-07/schema#", "title": "ThreadSettingsUpdatedNotification", "type": "object", "required": [ "threadId", "threadSettings" ], "properties": { "threadId": { "type": "string" }, "threadSettings": { "$ref": "#/definitions/ThreadSettings" } }, "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" }, "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.]` profile.", "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" } ] }, "CollaborationMode": { "description": "Collaboration mode for a Codex session.", "type": "object", "required": [ "mode", "settings" ], "properties": { "mode": { "$ref": "#/definitions/ModeKind" }, "settings": { "$ref": "#/definitions/Settings" } } }, "ModeKind": { "description": "Initial collaboration mode to use when the TUI starts.", "type": "string", "enum": [ "plan", "default" ] }, "NetworkAccess": { "type": "string", "enum": [ "restricted", "enabled" ] }, "Personality": { "type": "string", "enum": [ "none", "friendly", "pragmatic" ] }, "ReasoningEffort": { "description": "See https://platform.openai.com/docs/guides/reasoning?api-mode=responses#get-started-with-reasoning", "type": "string", "enum": [ "none", "minimal", "low", "medium", "high", "xhigh" ] }, "ReasoningSummary": { "description": "A summary of the reasoning performed by the model. This can be useful for debugging and understanding the model's reasoning process. See https://platform.openai.com/docs/guides/reasoning?api-mode=responses#reasoning-summaries", "oneOf": [ { "type": "string", "enum": [ "auto", "concise", "detailed" ] }, { "description": "Option to disable reasoning summaries.", "type": "string", "enum": [ "none" ] } ] }, "SandboxPolicy": { "oneOf": [ { "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "dangerFullAccess" ], "title": "DangerFullAccessSandboxPolicyType" } }, "title": "DangerFullAccessSandboxPolicy" }, { "type": "object", "required": [ "type" ], "properties": { "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/NetworkAccess" } ] }, "type": { "type": "string", "enum": [ "externalSandbox" ], "title": "ExternalSandboxSandboxPolicyType" } }, "title": "ExternalSandboxSandboxPolicy" }, { "type": "object", "required": [ "type" ], "properties": { "excludeSlashTmp": { "default": false, "type": "boolean" }, "excludeTmpdirEnvVar": { "default": false, "type": "boolean" }, "networkAccess": { "default": false, "type": "boolean" }, "type": { "type": "string", "enum": [ "workspaceWrite" ], "title": "WorkspaceWriteSandboxPolicyType" }, "writableRoots": { "default": [], "type": "array", "items": { "$ref": "#/definitions/AbsolutePathBuf" } } }, "title": "WorkspaceWriteSandboxPolicy" } ] }, "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/ReasoningEffort" }, { "type": "null" } ] } } }, "ThreadSettings": { "type": "object", "required": [ "approvalPolicy", "approvalsReviewer", "collaborationMode", "cwd", "model", "modelProvider", "sandboxPolicy" ], "properties": { "activePermissionProfile": { "anyOf": [ { "$ref": "#/definitions/ActivePermissionProfile" }, { "type": "null" } ] }, "approvalPolicy": { "$ref": "#/definitions/AskForApproval" }, "approvalsReviewer": { "$ref": "#/definitions/ApprovalsReviewer" }, "collaborationMode": { "$ref": "#/definitions/CollaborationMode" }, "cwd": { "$ref": "#/definitions/AbsolutePathBuf" }, "effort": { "anyOf": [ { "$ref": "#/definitions/ReasoningEffort" }, { "type": "null" } ] }, "model": { "type": "string" }, "modelProvider": { "type": "string" }, "personality": { "anyOf": [ { "$ref": "#/definitions/Personality" }, { "type": "null" } ] }, "sandboxPolicy": { "$ref": "#/definitions/SandboxPolicy" }, "serviceTier": { "type": [ "string", "null" ] }, "summary": { "anyOf": [ { "$ref": "#/definitions/ReasoningSummary" }, { "type": "null" } ] } } } } }