{ "$schema": "http://json-schema.org/draft-07/schema#", "definitions": { "AskForApproval": { "enum": [ "untrusted", "on-failure", "on-request", "never" ], "type": "string" }, "DynamicToolSpec": { "properties": { "description": { "type": "string" }, "inputSchema": true, "name": { "type": "string" } }, "required": [ "description", "inputSchema", "name" ], "type": "object" }, "Personality": { "enum": [ "none", "friendly", "pragmatic" ], "type": "string" }, "SandboxMode": { "enum": [ "read-only", "workspace-write", "danger-full-access" ], "type": "string" } }, "properties": { "approvalPolicy": { "anyOf": [ { "$ref": "#/definitions/AskForApproval" }, { "type": "null" } ] }, "baseInstructions": { "type": [ "string", "null" ] }, "config": { "additionalProperties": true, "type": [ "object", "null" ] }, "cwd": { "type": [ "string", "null" ] }, "developerInstructions": { "type": [ "string", "null" ] }, "ephemeral": { "type": [ "boolean", "null" ] }, "experimentalRawEvents": { "default": false, "description": "If true, opt into emitting raw response items on the event stream.\n\nThis is for internal use only (e.g. Codex Cloud). (TODO): Figure out a better way to categorize internal / experimental events & protocols.", "type": "boolean" }, "model": { "type": [ "string", "null" ] }, "modelProvider": { "type": [ "string", "null" ] }, "personality": { "anyOf": [ { "$ref": "#/definitions/Personality" }, { "type": "null" } ] }, "sandbox": { "anyOf": [ { "$ref": "#/definitions/SandboxMode" }, { "type": "null" } ] } }, "title": "ThreadStartParams", "type": "object" }