{ "$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" }, "CommandExecTerminalSize": { "properties": { "cols": { "format": "uint16", "minimum": 0.0, "type": "integer" }, "rows": { "format": "uint16", "minimum": 0.0, "type": "integer" } }, "required": [ "cols", "rows" ], "type": "object" }, "NetworkAccess": { "enum": [ "restricted", "enabled" ], "type": "string" }, "ReadOnlyAccess": { "oneOf": [ { "properties": { "includePlatformDefaults": { "default": true, "type": "boolean" }, "readableRoots": { "default": [], "items": { "$ref": "#/definitions/AbsolutePathBuf" }, "type": "array" }, "type": { "enum": [ "restricted" ], "title": "RestrictedReadOnlyAccessType", "type": "string" } }, "required": [ "type" ], "title": "RestrictedReadOnlyAccess", "type": "object" }, { "properties": { "type": { "enum": [ "fullAccess" ], "title": "FullAccessReadOnlyAccessType", "type": "string" } }, "required": [ "type" ], "title": "FullAccessReadOnlyAccess", "type": "object" } ] }, "SandboxPolicy": { "oneOf": [ { "properties": { "type": { "enum": [ "dangerFullAccess" ], "title": "DangerFullAccessSandboxPolicyType", "type": "string" } }, "required": [ "type" ], "title": "DangerFullAccessSandboxPolicy", "type": "object" }, { "properties": { "access": { "allOf": [ { "$ref": "#/definitions/ReadOnlyAccess" } ], "default": { "type": "fullAccess" } }, "networkAccess": { "default": false, "type": "boolean" }, "type": { "enum": [ "readOnly" ], "title": "ReadOnlySandboxPolicyType", "type": "string" } }, "required": [ "type" ], "title": "ReadOnlySandboxPolicy", "type": "object" }, { "properties": { "networkAccess": { "allOf": [ { "$ref": "#/definitions/NetworkAccess" } ], "default": "restricted" }, "type": { "enum": [ "externalSandbox" ], "title": "ExternalSandboxSandboxPolicyType", "type": "string" } }, "required": [ "type" ], "title": "ExternalSandboxSandboxPolicy", "type": "object" }, { "properties": { "excludeSlashTmp": { "default": false, "type": "boolean" }, "excludeTmpdirEnvVar": { "default": false, "type": "boolean" }, "networkAccess": { "default": false, "type": "boolean" }, "readOnlyAccess": { "allOf": [ { "$ref": "#/definitions/ReadOnlyAccess" } ], "default": { "type": "fullAccess" } }, "type": { "enum": [ "workspaceWrite" ], "title": "WorkspaceWriteSandboxPolicyType", "type": "string" }, "writableRoots": { "default": [], "items": { "$ref": "#/definitions/AbsolutePathBuf" }, "type": "array" } }, "required": [ "type" ], "title": "WorkspaceWriteSandboxPolicy", "type": "object" } ] } }, "properties": { "command": { "items": { "type": "string" }, "type": "array" }, "cwd": { "type": [ "string", "null" ] }, "disableOutputCap": { "type": "boolean" }, "disableTimeout": { "type": "boolean" }, "env": { "additionalProperties": { "type": [ "string", "null" ] }, "type": [ "object", "null" ] }, "outputBytesCap": { "format": "uint", "minimum": 0.0, "type": [ "integer", "null" ] }, "processId": { "type": [ "string", "null" ] }, "sandboxPolicy": { "anyOf": [ { "$ref": "#/definitions/SandboxPolicy" }, { "type": "null" } ] }, "size": { "anyOf": [ { "$ref": "#/definitions/CommandExecTerminalSize" }, { "type": "null" } ] }, "streamStdin": { "type": "boolean" }, "streamStdoutStderr": { "type": "boolean" }, "timeoutMs": { "format": "int64", "type": [ "integer", "null" ] }, "tty": { "type": "boolean" } }, "required": [ "command" ], "title": "CommandExecParams", "type": "object" }