{
"schemes": ["https"],
"swagger": "2.0",
"info": {
"description": "Daytona Toolbox API. The base URL comes from the sandbox's `toolboxProxyUrl` field (returned in sandbox DTO by the main Daytona API) plus the sandbox ID: `{toolboxProxyUrl}/{sandboxId}/{endpoint}`. Default for Daytona Cloud: `https://proxy.app.daytona.io/toolbox/{sandboxId}`.",
"title": "Daytona Toolbox API",
"contact": {},
"license": {
"name": "Apache-2.0",
"url": "https://www.apache.org/licenses/LICENSE-2.0"
},
"version": "v0.0.0-dev"
},
"paths": {
"/computeruse/a11y/find": {
"post": {
"description": "Search the AT-SPI tree for nodes matching a role/name/state filter and return a flat list.",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Find accessibility nodes",
"operationId": "FindAccessibilityNodes",
"parameters": [
{
"description": "Find request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/FindAccessibilityNodesRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AccessibilityNodesResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"503": {
"description": "Service Unavailable",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/a11y/node/focus": {
"post": {
"description": "Move keyboard focus to the AT-SPI node identified by id (bus-name:object-path).",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Focus an accessibility node",
"operationId": "FocusAccessibilityNode",
"parameters": [
{
"description": "Node focus request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/AccessibilityNodeRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"503": {
"description": "Service Unavailable",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/a11y/node/invoke": {
"post": {
"description": "Call an AT-SPI Action on the node. Leave action empty to invoke the node's primary (first) action.",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Invoke an action on an accessibility node",
"operationId": "InvokeAccessibilityNode",
"parameters": [
{
"description": "Invoke request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/AccessibilityInvokeRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"503": {
"description": "Service Unavailable",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/a11y/node/value": {
"post": {
"description": "Write the given value to the node via EditableText.SetTextContents or, for numeric controls, Value.CurrentValue.",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Set the value of an accessibility node",
"operationId": "SetAccessibilityNodeValue",
"parameters": [
{
"description": "Set value request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/AccessibilitySetValueRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"503": {
"description": "Service Unavailable",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/a11y/tree": {
"get": {
"description": "Fetch the AT-SPI accessibility tree for the focused application, a specific PID, or all registered applications.",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Get accessibility tree",
"operationId": "GetAccessibilityTree",
"parameters": [
{
"type": "string",
"description": "Scope: focused | pid | all (default: focused)",
"name": "scope",
"in": "query"
},
{
"type": "integer",
"description": "Process ID when scope=pid",
"name": "pid",
"in": "query"
},
{
"type": "integer",
"description": "Max tree depth (-1 unbounded, 0 root only; default -1)",
"name": "maxDepth",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AccessibilityTreeResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"503": {
"description": "Service Unavailable",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/display/info": {
"get": {
"description": "Get information about all available displays",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Get display information",
"operationId": "GetDisplayInfo",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DisplayInfoResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/display/windows": {
"get": {
"description": "Get information about all open windows",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Get windows information",
"operationId": "GetWindows",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/WindowsResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/keyboard/down": {
"post": {
"description": "Press a key or modifier and hold it down until a matching key up call",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Press and hold a keyboard key",
"operationId": "KeyDown",
"parameters": [
{
"description": "Key down request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/KeyboardKeyDownRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/keyboard/hotkey": {
"post": {
"description": "Press a hotkey combination (e.g., ctrl+c, cmd+v)",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Press hotkey",
"operationId": "PressHotkey",
"parameters": [
{
"description": "Hotkey press request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/KeyboardHotkeyRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/keyboard/key": {
"post": {
"description": "Press a key with optional modifiers",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Press key",
"operationId": "PressKey",
"parameters": [
{
"description": "Key press request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/KeyboardPressRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/keyboard/type": {
"post": {
"description": "Type text with optional delay between keystrokes",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Type text",
"operationId": "TypeText",
"parameters": [
{
"description": "Text typing request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/KeyboardTypeRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/keyboard/up": {
"post": {
"description": "Release a key or modifier that is currently held down",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Release a held keyboard key",
"operationId": "KeyUp",
"parameters": [
{
"description": "Key up request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/KeyboardKeyUpRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/mouse/click": {
"post": {
"description": "Click the mouse button at the specified coordinates",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Click mouse button",
"operationId": "Click",
"parameters": [
{
"description": "Mouse click request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/MouseClickRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/MouseClickResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/mouse/down": {
"post": {
"description": "Press and hold a mouse button, optionally moving to the specified coordinates first",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Press mouse button",
"operationId": "MouseDown",
"parameters": [
{
"description": "Mouse button press request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/MouseDownRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/MousePositionResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/mouse/drag": {
"post": {
"description": "Drag the mouse from start to end coordinates",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Drag mouse",
"operationId": "Drag",
"parameters": [
{
"description": "Mouse drag request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/MouseDragRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/MouseDragResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/mouse/move": {
"post": {
"description": "Move the mouse cursor to the specified coordinates",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Move mouse cursor",
"operationId": "MoveMouse",
"parameters": [
{
"description": "Mouse move request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/MouseMoveRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/MousePositionResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/mouse/position": {
"get": {
"description": "Get the current mouse cursor position",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Get mouse position",
"operationId": "GetMousePosition",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/MousePositionResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/mouse/scroll": {
"post": {
"description": "Scroll the mouse wheel at the specified coordinates",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Scroll mouse wheel",
"operationId": "Scroll",
"parameters": [
{
"description": "Mouse scroll request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/MouseScrollRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ScrollResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/mouse/up": {
"post": {
"description": "Release a held mouse button, optionally moving to the specified coordinates first",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Release mouse button",
"operationId": "MouseUp",
"parameters": [
{
"description": "Mouse button release request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/MouseUpRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/MousePositionResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/process-status": {
"get": {
"description": "Get the status of all computer use processes",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Get computer use process status",
"operationId": "GetComputerUseStatus",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ComputerUseStatusResponse"
}
}
}
}
},
"/computeruse/process/{processName}/errors": {
"get": {
"description": "Get errors for a specific computer use process",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Get process errors",
"operationId": "GetProcessErrors",
"parameters": [
{
"type": "string",
"description": "Process name to get errors for",
"name": "processName",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ProcessErrorsResponse"
}
}
}
}
},
"/computeruse/process/{processName}/logs": {
"get": {
"description": "Get logs for a specific computer use process",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Get process logs",
"operationId": "GetProcessLogs",
"parameters": [
{
"type": "string",
"description": "Process name to get logs for",
"name": "processName",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ProcessLogsResponse"
}
}
}
}
},
"/computeruse/process/{processName}/restart": {
"post": {
"description": "Restart a specific computer use process",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Restart specific process",
"operationId": "RestartProcess",
"parameters": [
{
"type": "string",
"description": "Process name to restart",
"name": "processName",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ProcessRestartResponse"
}
}
}
}
},
"/computeruse/process/{processName}/status": {
"get": {
"description": "Check if a specific computer use process is running",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Get specific process status",
"operationId": "GetProcessStatus",
"parameters": [
{
"type": "string",
"description": "Process name to check",
"name": "processName",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ProcessStatusResponse"
}
}
}
}
},
"/computeruse/recordings": {
"get": {
"description": "Get a list of all recordings (active and completed)",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "List all recordings",
"operationId": "ListRecordings",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ListRecordingsResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/recordings/start": {
"post": {
"description": "Start a new screen recording session",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Start a new recording",
"operationId": "StartRecording",
"parameters": [
{
"description": "Recording options",
"name": "request",
"in": "body",
"schema": {
"$ref": "#/definitions/StartRecordingRequest"
}
}
],
"responses": {
"201": {
"description": "Created",
"schema": {
"$ref": "#/definitions/Recording"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/recordings/stop": {
"post": {
"description": "Stop an active screen recording session",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Stop a recording",
"operationId": "StopRecording",
"parameters": [
{
"description": "Recording ID to stop",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/StopRecordingRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Recording"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/recordings/{id}": {
"get": {
"description": "Get details of a specific recording by ID",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Get recording details",
"operationId": "GetRecording",
"parameters": [
{
"type": "string",
"description": "Recording ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Recording"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
},
"delete": {
"description": "Delete a recording file by ID",
"tags": ["computer-use"],
"summary": "Delete a recording",
"operationId": "DeleteRecording",
"parameters": [
{
"type": "string",
"description": "Recording ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"204": {
"description": "No Content"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/recordings/{id}/download": {
"get": {
"description": "Download a recording by providing its ID",
"produces": ["application/octet-stream"],
"tags": ["computer-use"],
"summary": "Download a recording",
"operationId": "DownloadRecording",
"parameters": [
{
"type": "string",
"description": "Recording ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "file"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/screenshot": {
"get": {
"description": "Take a screenshot of the entire screen",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Take a screenshot",
"operationId": "TakeScreenshot",
"parameters": [
{
"type": "boolean",
"description": "Whether to show cursor in screenshot",
"name": "showCursor",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ScreenshotResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/screenshot/compressed": {
"get": {
"description": "Take a compressed screenshot of the entire screen",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Take a compressed screenshot",
"operationId": "TakeCompressedScreenshot",
"parameters": [
{
"type": "boolean",
"description": "Whether to show cursor in screenshot",
"name": "showCursor",
"in": "query"
},
{
"type": "string",
"description": "Image format (png or jpeg)",
"name": "format",
"in": "query"
},
{
"type": "integer",
"description": "JPEG quality (1-100)",
"name": "quality",
"in": "query"
},
{
"type": "number",
"description": "Scale factor (0.1-1.0)",
"name": "scale",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ScreenshotResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/screenshot/region": {
"get": {
"description": "Take a screenshot of a specific region of the screen",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Take a region screenshot",
"operationId": "TakeRegionScreenshot",
"parameters": [
{
"type": "integer",
"description": "X coordinate of the region",
"name": "x",
"in": "query",
"required": true
},
{
"type": "integer",
"description": "Y coordinate of the region",
"name": "y",
"in": "query",
"required": true
},
{
"type": "integer",
"description": "Width of the region",
"name": "width",
"in": "query",
"required": true
},
{
"type": "integer",
"description": "Height of the region",
"name": "height",
"in": "query",
"required": true
},
{
"type": "boolean",
"description": "Whether to show cursor in screenshot",
"name": "showCursor",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ScreenshotResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/screenshot/region/compressed": {
"get": {
"description": "Take a compressed screenshot of a specific region of the screen",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Take a compressed region screenshot",
"operationId": "TakeCompressedRegionScreenshot",
"parameters": [
{
"type": "integer",
"description": "X coordinate of the region",
"name": "x",
"in": "query",
"required": true
},
{
"type": "integer",
"description": "Y coordinate of the region",
"name": "y",
"in": "query",
"required": true
},
{
"type": "integer",
"description": "Width of the region",
"name": "width",
"in": "query",
"required": true
},
{
"type": "integer",
"description": "Height of the region",
"name": "height",
"in": "query",
"required": true
},
{
"type": "boolean",
"description": "Whether to show cursor in screenshot",
"name": "showCursor",
"in": "query"
},
{
"type": "string",
"description": "Image format (png or jpeg)",
"name": "format",
"in": "query"
},
{
"type": "integer",
"description": "JPEG quality (1-100)",
"name": "quality",
"in": "query"
},
{
"type": "number",
"description": "Scale factor (0.1-1.0)",
"name": "scale",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ScreenshotResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/start": {
"post": {
"description": "Start all computer use processes and return their status",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Start computer use processes",
"operationId": "StartComputerUse",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ComputerUseStartResponse"
}
}
}
}
},
"/computeruse/status": {
"get": {
"description": "Get the current status of the computer use system",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Get computer use status",
"operationId": "GetComputerUseSystemStatus",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ComputerUseStatusResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/computeruse/stop": {
"post": {
"description": "Stop all computer use processes and return their status",
"produces": ["application/json"],
"tags": ["computer-use"],
"summary": "Stop computer use processes",
"operationId": "StopComputerUse",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ComputerUseStopResponse"
}
}
}
}
},
"/env": {
"post": {
"description": "Update the daemon's process environment. Newly spawned processes, sessions and PTYs inherit the change; already-running processes keep their environment.",
"produces": ["application/json"],
"tags": ["server"],
"summary": "Update process environment",
"operationId": "UpdateEnv",
"parameters": [
{
"description": "Environment update request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/UpdateEnvRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/files": {
"get": {
"description": "List files and directories in the specified path. Use the optional depth\nparameter to list recursively: depth=1 (default) lists the directory's\nentries, depth=2 also includes their children, and so on.",
"produces": ["application/json"],
"tags": ["file-system"],
"summary": "List files and directories",
"operationId": "ListFiles",
"parameters": [
{
"type": "string",
"description": "Directory path to list (defaults to working directory)",
"name": "path",
"in": "query"
},
{
"type": "integer",
"description": "How many levels deep to list (default: 1, must be \u003e= 1)",
"name": "depth",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/FileInfo"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
},
"delete": {
"description": "Delete a file or directory at the specified path",
"tags": ["file-system"],
"summary": "Delete a file or directory",
"operationId": "DeleteFile",
"parameters": [
{
"type": "string",
"description": "File or directory path to delete",
"name": "path",
"in": "query",
"required": true
},
{
"type": "boolean",
"description": "Enable recursive deletion for directories",
"name": "recursive",
"in": "query"
}
],
"responses": {
"204": {
"description": "No Content"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/files/bulk-download": {
"post": {
"description": "Download multiple files by providing their paths. Successful files are returned as multipart parts named `file`. Per-file failures are returned as multipart parts named `error` with JSON payloads shaped like ErrorResponse.",
"consumes": ["application/json"],
"produces": ["multipart/form-data"],
"tags": ["file-system"],
"summary": "Download multiple files",
"operationId": "DownloadFiles",
"parameters": [
{
"description": "Paths of files to download",
"name": "downloadFiles",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/FilesDownloadRequest"
}
}
],
"responses": {
"200": {
"description": "Multipart response with file parts and JSON error parts",
"schema": {
"$ref": "#/definitions/gin.H"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/files/bulk-upload": {
"post": {
"description": "Upload multiple files with their destination paths",
"consumes": ["multipart/form-data"],
"tags": ["file-system"],
"summary": "Upload multiple files",
"operationId": "UploadFiles",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/UploadFilesResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/UploadFilesResponse"
}
}
}
}
},
"/files/download": {
"get": {
"description": "Download a file by providing its path",
"produces": ["application/octet-stream"],
"tags": ["file-system"],
"summary": "Download a file",
"operationId": "DownloadFile",
"parameters": [
{
"type": "string",
"description": "File path to download",
"name": "path",
"in": "query",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "file"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/files/find": {
"get": {
"description": "Search for text pattern within files in a directory",
"produces": ["application/json"],
"tags": ["file-system"],
"summary": "Find text in files",
"operationId": "FindInFiles",
"parameters": [
{
"type": "string",
"description": "Directory path to search in",
"name": "path",
"in": "query",
"required": true
},
{
"type": "string",
"description": "Text pattern to search for",
"name": "pattern",
"in": "query",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/Match"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/files/folder": {
"post": {
"description": "Create a folder with the specified path and optional permissions",
"consumes": ["application/json"],
"tags": ["file-system"],
"summary": "Create a folder",
"operationId": "CreateFolder",
"parameters": [
{
"type": "string",
"description": "Folder path to create",
"name": "path",
"in": "query",
"required": true
},
{
"type": "string",
"description": "Octal permission mode (default: 0755)",
"name": "mode",
"in": "query",
"required": true
}
],
"responses": {
"201": {
"description": "Created"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/files/info": {
"get": {
"description": "Get detailed information about a file or directory",
"produces": ["application/json"],
"tags": ["file-system"],
"summary": "Get file information",
"operationId": "GetFileInfo",
"parameters": [
{
"type": "string",
"description": "File or directory path",
"name": "path",
"in": "query",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/FileInfo"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/files/move": {
"post": {
"description": "Move or rename a file or directory from source to destination",
"tags": ["file-system"],
"summary": "Move or rename file/directory",
"operationId": "MoveFile",
"parameters": [
{
"type": "string",
"description": "Source file or directory path",
"name": "source",
"in": "query",
"required": true
},
{
"type": "string",
"description": "Destination file or directory path",
"name": "destination",
"in": "query",
"required": true
}
],
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/files/permissions": {
"post": {
"description": "Set file permissions, ownership, and group for a file or directory",
"tags": ["file-system"],
"summary": "Set file permissions",
"operationId": "SetFilePermissions",
"parameters": [
{
"type": "string",
"description": "File or directory path",
"name": "path",
"in": "query",
"required": true
},
{
"type": "string",
"description": "Owner (username or UID)",
"name": "owner",
"in": "query"
},
{
"type": "string",
"description": "Group (group name or GID)",
"name": "group",
"in": "query"
},
{
"type": "string",
"description": "File mode in octal format (e.g., 0755)",
"name": "mode",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/files/replace": {
"post": {
"description": "Replace text pattern with new value in multiple files",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["file-system"],
"summary": "Replace text in files",
"operationId": "ReplaceInFiles",
"parameters": [
{
"description": "Replace request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/ReplaceRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/ReplaceResult"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/files/search": {
"get": {
"description": "Search for files matching a specific pattern in a directory",
"produces": ["application/json"],
"tags": ["file-system"],
"summary": "Search files by pattern",
"operationId": "SearchFiles",
"parameters": [
{
"type": "string",
"description": "Directory path to search in",
"name": "path",
"in": "query",
"required": true
},
{
"type": "string",
"description": "File pattern to match (e.g., *.txt, *.go)",
"name": "pattern",
"in": "query",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/SearchFilesResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/files/upload-v2": {
"post": {
"description": "Upload a file to the specified path. Accepts either multipart/form-data\n(field \"file\") or a raw request body (e.g. application/octet-stream).\nParent directories are created if missing; an existing file is overwritten.",
"consumes": ["multipart/form-data"],
"produces": ["application/json"],
"tags": ["file-system"],
"summary": "Upload a file",
"operationId": "UploadFile",
"parameters": [
{
"type": "string",
"description": "Destination path for the uploaded file",
"name": "path",
"in": "query",
"required": true
},
{
"type": "file",
"description": "File to upload (multipart/form-data)",
"name": "file",
"in": "formData"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/UploadedFile"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/git/add": {
"post": {
"description": "Add files to the Git staging area",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Add files to Git staging",
"operationId": "AddFiles",
"parameters": [
{
"description": "Add files request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitAddRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/git/branches": {
"get": {
"description": "Get a list of all branches in the Git repository",
"produces": ["application/json"],
"tags": ["git"],
"summary": "List branches",
"operationId": "ListBranches",
"parameters": [
{
"type": "string",
"description": "Repository path",
"name": "path",
"in": "query",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ListBranchResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
},
"post": {
"description": "Create a new branch in the Git repository",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Create a new branch",
"operationId": "CreateBranch",
"parameters": [
{
"description": "Create branch request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitBranchRequest"
}
}
],
"responses": {
"201": {
"description": "Created"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
},
"delete": {
"description": "Delete a branch from the Git repository",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Delete a branch",
"operationId": "DeleteBranch",
"parameters": [
{
"description": "Delete branch request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitDeleteBranchRequest"
}
}
],
"responses": {
"204": {
"description": "No Content"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/git/checkout": {
"post": {
"description": "Switch to a different branch or commit in the Git repository",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Checkout branch or commit",
"operationId": "CheckoutBranch",
"parameters": [
{
"description": "Checkout request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitCheckoutRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/git/clone": {
"post": {
"description": "Clone a Git repository to the specified path. Defaults to strict TLS verification; set insecure_skip_tls=true to skip verification for self-signed or private-CA Git servers.",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Clone a Git repository",
"operationId": "CloneRepository",
"parameters": [
{
"description": "Clone repository request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitCloneRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/git/commit": {
"post": {
"description": "Commit staged changes to the Git repository",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Commit changes",
"operationId": "CommitChanges",
"parameters": [
{
"description": "Commit request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitCommitRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/GitCommitResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/git/config": {
"get": {
"description": "Get a Git config value at the given scope (null when unset)",
"produces": ["application/json"],
"tags": ["git"],
"summary": "Get a Git config value",
"operationId": "GetGitConfig",
"parameters": [
{
"type": "string",
"description": "Config key (e.g. user.name)",
"name": "key",
"in": "query",
"required": true
},
{
"type": "string",
"description": "Repository path (required for local scope)",
"name": "path",
"in": "query"
},
{
"type": "string",
"description": "Config scope: global (default), local or system",
"name": "scope",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/GitConfigResponse"
}
}
}
},
"post": {
"description": "Set a Git config key/value at the given scope",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Set a Git config value",
"operationId": "SetGitConfig",
"parameters": [
{
"description": "Set config request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitSetConfigRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/git/config/user": {
"post": {
"description": "Configure the Git user name and email at the given scope",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Configure Git user",
"operationId": "ConfigureUser",
"parameters": [
{
"description": "Configure user request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitConfigureUserRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/git/credentials": {
"post": {
"description": "Persist Git credentials globally via the credential store. Stores the password in plaintext on disk.",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Authenticate Git",
"operationId": "Authenticate",
"parameters": [
{
"description": "Authenticate request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitAuthenticateRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/git/history": {
"get": {
"description": "Get the commit history of the Git repository",
"produces": ["application/json"],
"tags": ["git"],
"summary": "Get commit history",
"operationId": "GetCommitHistory",
"parameters": [
{
"type": "string",
"description": "Repository path",
"name": "path",
"in": "query",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/GitCommitInfo"
}
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/git/init": {
"post": {
"description": "Initialize a new Git repository at the specified path",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Initialize a Git repository",
"operationId": "InitRepository",
"parameters": [
{
"description": "Init repository request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitInitRequest"
}
}
],
"responses": {
"201": {
"description": "Created"
}
}
}
},
"/git/pull": {
"post": {
"description": "Pull changes from the remote Git repository",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Pull changes from remote",
"operationId": "PullChanges",
"parameters": [
{
"description": "Pull request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitPullRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/git/push": {
"post": {
"description": "Push local changes to the remote Git repository",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Push changes to remote",
"operationId": "PushChanges",
"parameters": [
{
"description": "Push request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitPushRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/git/remotes": {
"get": {
"description": "List the remotes configured in the Git repository",
"produces": ["application/json"],
"tags": ["git"],
"summary": "List remotes",
"operationId": "ListRemotes",
"parameters": [
{
"type": "string",
"description": "Repository path",
"name": "path",
"in": "query",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ListRemotesResponse"
}
}
}
},
"post": {
"description": "Add (or overwrite) a remote in the Git repository",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Add a remote",
"operationId": "AddRemote",
"parameters": [
{
"description": "Add remote request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitAddRemoteRequest"
}
}
],
"responses": {
"201": {
"description": "Created"
}
}
}
},
"/git/reset": {
"post": {
"description": "Reset the current HEAD to the specified state",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Reset repository",
"operationId": "ResetChanges",
"parameters": [
{
"description": "Reset request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitResetRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/git/restore": {
"post": {
"description": "Restore working tree files or unstage changes",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["git"],
"summary": "Restore files",
"operationId": "RestoreFiles",
"parameters": [
{
"description": "Restore request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/GitRestoreRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/git/status": {
"get": {
"description": "Get the Git status of the repository at the specified path",
"produces": ["application/json"],
"tags": ["git"],
"summary": "Get Git status",
"operationId": "GetStatus",
"parameters": [
{
"type": "string",
"description": "Repository path",
"name": "path",
"in": "query",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/GitStatus"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/init": {
"post": {
"description": "Set the auth token and initialize telemetry for the toolbox server",
"produces": ["application/json"],
"tags": ["server"],
"summary": "Initialize toolbox server",
"operationId": "Initialize",
"parameters": [
{
"description": "Initialization request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/InitializeRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
}
}
},
"/lsp/completions": {
"post": {
"description": "Get code completion suggestions from the LSP server",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["lsp"],
"summary": "Get code completions",
"operationId": "Completions",
"parameters": [
{
"description": "Completion request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/LspCompletionParams"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/CompletionList"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/lsp/did-close": {
"post": {
"description": "Notify the LSP server that a document has been closed",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["lsp"],
"summary": "Notify document closed",
"operationId": "DidClose",
"parameters": [
{
"description": "Document request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/LspDocumentRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/lsp/did-open": {
"post": {
"description": "Notify the LSP server that a document has been opened",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["lsp"],
"summary": "Notify document opened",
"operationId": "DidOpen",
"parameters": [
{
"description": "Document request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/LspDocumentRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/lsp/document-symbols": {
"get": {
"description": "Get symbols (functions, classes, etc.) from a document",
"produces": ["application/json"],
"tags": ["lsp"],
"summary": "Get document symbols",
"operationId": "DocumentSymbols",
"parameters": [
{
"type": "string",
"description": "Language ID (e.g., python, typescript)",
"name": "languageId",
"in": "query",
"required": true
},
{
"type": "string",
"description": "Path to project",
"name": "pathToProject",
"in": "query",
"required": true
},
{
"type": "string",
"description": "Document URI",
"name": "uri",
"in": "query",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/LspSymbol"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/lsp/start": {
"post": {
"description": "Start a Language Server Protocol server for the specified language",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["lsp"],
"summary": "Start LSP server",
"operationId": "Start",
"parameters": [
{
"description": "LSP server request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/LspServerRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/lsp/stop": {
"post": {
"description": "Stop a Language Server Protocol server",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["lsp"],
"summary": "Stop LSP server",
"operationId": "Stop",
"parameters": [
{
"description": "LSP server request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/LspServerRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/lsp/workspacesymbols": {
"get": {
"description": "Search for symbols across the entire workspace",
"produces": ["application/json"],
"tags": ["lsp"],
"summary": "Get workspace symbols",
"operationId": "WorkspaceSymbols",
"parameters": [
{
"type": "string",
"description": "Search query",
"name": "query",
"in": "query",
"required": true
},
{
"type": "string",
"description": "Language ID (e.g., python, typescript)",
"name": "languageId",
"in": "query",
"required": true
},
{
"type": "string",
"description": "Path to project",
"name": "pathToProject",
"in": "query",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/LspSymbol"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/port": {
"get": {
"description": "Get a list of all currently active ports",
"produces": ["application/json"],
"tags": ["port"],
"summary": "Get active ports",
"operationId": "GetPorts",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PortList"
}
}
}
}
},
"/port/{port}/in-use": {
"get": {
"description": "Check if a specific port is currently in use",
"produces": ["application/json"],
"tags": ["port"],
"summary": "Check if port is in use",
"operationId": "IsPortInUse",
"parameters": [
{
"type": "integer",
"description": "Port number (3000-9999)",
"name": "port",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/IsPortInUseResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/code-run": {
"post": {
"description": "Execute Python, JavaScript, or TypeScript code and return output, exit code, and artifacts",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["process"],
"summary": "Execute code",
"operationId": "CodeRun",
"parameters": [
{
"description": "Code execution request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/CodeRunRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/CodeRunResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"408": {
"description": "Request Timeout",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/execute": {
"post": {
"description": "Execute a shell command and return the output and exit code",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["process"],
"summary": "Execute a command",
"operationId": "ExecuteCommand",
"parameters": [
{
"description": "Command execution request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/ExecuteRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ExecuteResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"408": {
"description": "Request Timeout",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/interpreter/context": {
"get": {
"description": "Returns information about all user-created interpreter contexts (excludes default context)",
"produces": ["application/json"],
"tags": ["interpreter"],
"summary": "List all user-created interpreter contexts",
"operationId": "ListInterpreterContexts",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ListContextsResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
},
"post": {
"description": "Creates a new isolated interpreter context with optional working directory and language",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["interpreter"],
"summary": "Create a new interpreter context",
"operationId": "CreateInterpreterContext",
"parameters": [
{
"description": "Context configuration",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/CreateContextRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/InterpreterContext"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/interpreter/context/{id}": {
"delete": {
"description": "Deletes an interpreter context and shuts down its worker process",
"produces": ["application/json"],
"tags": ["interpreter"],
"summary": "Delete an interpreter context",
"operationId": "DeleteInterpreterContext",
"parameters": [
{
"type": "string",
"description": "Context ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/interpreter/execute": {
"get": {
"description": "Executes code in a specified context (or default context if not specified) via WebSocket streaming",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["interpreter"],
"summary": "Execute code in an interpreter context",
"operationId": "ExecuteInterpreterCode",
"responses": {
"101": {
"description": "Switching Protocols",
"schema": {
"type": "string"
},
"headers": {
"Connection": {
"type": "string",
"description": "Upgrade"
},
"Upgrade": {
"type": "string",
"description": "websocket"
}
}
}
}
}
},
"/process/pty": {
"get": {
"description": "Get a list of all active pseudo-terminal sessions",
"produces": ["application/json"],
"tags": ["process"],
"summary": "List all PTY sessions",
"operationId": "ListPtySessions",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PtyListResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
},
"post": {
"description": "Create a new pseudo-terminal session with specified configuration",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["process"],
"summary": "Create a new PTY session",
"operationId": "CreatePtySession",
"parameters": [
{
"description": "PTY session creation request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/PtyCreateRequest"
}
}
],
"responses": {
"201": {
"description": "Created",
"schema": {
"$ref": "#/definitions/PtyCreateResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/pty/{sessionId}": {
"get": {
"description": "Get detailed information about a specific pseudo-terminal session",
"produces": ["application/json"],
"tags": ["process"],
"summary": "Get PTY session information",
"operationId": "GetPtySession",
"parameters": [
{
"type": "string",
"description": "PTY session ID",
"name": "sessionId",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PtySessionInfo"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
},
"delete": {
"description": "Delete a pseudo-terminal session and terminate its process",
"produces": ["application/json"],
"tags": ["process"],
"summary": "Delete a PTY session",
"operationId": "DeletePtySession",
"parameters": [
{
"type": "string",
"description": "PTY session ID",
"name": "sessionId",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/gin.H"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/pty/{sessionId}/connect": {
"get": {
"description": "Establish a WebSocket connection to interact with a pseudo-terminal session",
"tags": ["process"],
"summary": "Connect to PTY session via WebSocket",
"operationId": "ConnectPtySession",
"parameters": [
{
"type": "string",
"description": "PTY session ID",
"name": "sessionId",
"in": "path",
"required": true
}
],
"responses": {
"101": {
"description": "Switching Protocols - WebSocket connection established"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/pty/{sessionId}/resize": {
"post": {
"description": "Resize the terminal dimensions of a pseudo-terminal session",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["process"],
"summary": "Resize a PTY session",
"operationId": "ResizePtySession",
"parameters": [
{
"type": "string",
"description": "PTY session ID",
"name": "sessionId",
"in": "path",
"required": true
},
{
"description": "Resize request with new dimensions",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/PtyResizeRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PtySessionInfo"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"410": {
"description": "Gone",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/session": {
"get": {
"description": "Get a list of all active shell sessions",
"produces": ["application/json"],
"tags": ["process"],
"summary": "List all sessions",
"operationId": "ListSessions",
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/Session"
}
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
},
"post": {
"description": "Create a new shell session for command execution",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["process"],
"summary": "Create a new session",
"operationId": "CreateSession",
"parameters": [
{
"description": "Session creation request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/CreateSessionRequest"
}
}
],
"responses": {
"201": {
"description": "Created"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/session/entrypoint": {
"get": {
"description": "Get details of an entrypoint session including its commands",
"produces": ["application/json"],
"tags": ["process"],
"summary": "Get entrypoint session details",
"operationId": "GetEntrypointSession",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Session"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/session/entrypoint/logs": {
"get": {
"description": "Get logs for a sandbox entrypoint session. Returns JSON with separated stdout/stderr for SDK \u003e= 0.161.0, plain text otherwise. Supports WebSocket streaming.",
"produces": ["application/json", "text/plain"],
"tags": ["process"],
"summary": "Get entrypoint logs",
"operationId": "GetEntrypointLogs",
"parameters": [
{
"type": "boolean",
"description": "Follow logs in real-time (WebSocket only)",
"name": "follow",
"in": "query"
}
],
"responses": {
"200": {
"description": "Entrypoint log content",
"schema": {
"$ref": "#/definitions/SessionCommandLogsResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/session/{sessionId}": {
"get": {
"description": "Get details of a specific session including its commands",
"produces": ["application/json"],
"tags": ["process"],
"summary": "Get session details",
"operationId": "GetSession",
"parameters": [
{
"type": "string",
"description": "Session ID",
"name": "sessionId",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Session"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
},
"delete": {
"description": "Delete an existing shell session",
"tags": ["process"],
"summary": "Delete a session",
"operationId": "DeleteSession",
"parameters": [
{
"type": "string",
"description": "Session ID",
"name": "sessionId",
"in": "path",
"required": true
}
],
"responses": {
"204": {
"description": "No Content"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/session/{sessionId}/command/{commandId}": {
"get": {
"description": "Get details of a specific command within a session",
"produces": ["application/json"],
"tags": ["process"],
"summary": "Get session command details",
"operationId": "GetSessionCommand",
"parameters": [
{
"type": "string",
"description": "Session ID",
"name": "sessionId",
"in": "path",
"required": true
},
{
"type": "string",
"description": "Command ID",
"name": "commandId",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/Command"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/session/{sessionId}/command/{commandId}/input": {
"post": {
"description": "Send input data to a running command in a session for interactive execution",
"consumes": ["application/json"],
"tags": ["process"],
"summary": "Send input to command",
"operationId": "SendInput",
"parameters": [
{
"type": "string",
"description": "Session ID",
"name": "sessionId",
"in": "path",
"required": true
},
{
"type": "string",
"description": "Command ID",
"name": "commandId",
"in": "path",
"required": true
},
{
"description": "Input send request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/SessionSendInputRequest"
}
}
],
"responses": {
"204": {
"description": "No Content"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"410": {
"description": "Gone",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/session/{sessionId}/command/{commandId}/logs": {
"get": {
"description": "Get logs for a specific command within a session. Returns JSON with separated stdout/stderr for SDK \u003e= 0.167.0, plain text otherwise. Supports WebSocket streaming.",
"produces": ["application/json", "text/plain"],
"tags": ["process"],
"summary": "Get session command logs",
"operationId": "GetSessionCommandLogs",
"parameters": [
{
"type": "string",
"description": "Session ID",
"name": "sessionId",
"in": "path",
"required": true
},
{
"type": "string",
"description": "Command ID",
"name": "commandId",
"in": "path",
"required": true
},
{
"type": "boolean",
"description": "Follow logs in real-time (WebSocket only)",
"name": "follow",
"in": "query"
}
],
"responses": {
"200": {
"description": "Log content (JSON for new SDKs, plain text for old SDKs)",
"schema": {
"$ref": "#/definitions/SessionCommandLogsResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/process/session/{sessionId}/exec": {
"post": {
"description": "Execute a command within an existing shell session",
"consumes": ["application/json"],
"produces": ["application/json"],
"tags": ["process"],
"summary": "Execute command in session",
"operationId": "SessionExecuteCommand",
"parameters": [
{
"type": "string",
"description": "Session ID",
"name": "sessionId",
"in": "path",
"required": true
},
{
"description": "Command execution request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/SessionExecuteRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/SessionExecuteResponse"
}
},
"202": {
"description": "Accepted",
"schema": {
"$ref": "#/definitions/SessionExecuteResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"410": {
"description": "Gone",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
},
"/system/metrics": {
"get": {
"description": "Latest CPU/memory/disk usage snapshot for the sandbox. cpuUsedPct is the\naverage CPU usage as a percentage of the CPU limit over the last sample\nwindow (0 until the first sample completes). Byte fields are in bytes.",
"produces": ["application/json"],
"tags": ["system"],
"summary": "Get sandbox resource metrics",
"operationId": "GetSystemMetrics",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/SystemMetrics"
}
}
}
}
},
"/user-home-dir": {
"get": {
"description": "Get the current user home directory path.",
"produces": ["application/json"],
"tags": ["info"],
"summary": "Get user home directory",
"operationId": "GetUserHomeDir",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/UserHomeDirResponse"
}
}
}
}
},
"/version": {
"get": {
"description": "Get the current daemon version",
"produces": ["application/json"],
"tags": ["info"],
"summary": "Get version",
"operationId": "GetVersion",
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
}
}
},
"/work-dir": {
"get": {
"description": "Get the current working directory path. This is default directory used for running commands.",
"produces": ["application/json"],
"tags": ["info"],
"summary": "Get working directory",
"operationId": "GetWorkDir",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/WorkDirResponse"
}
}
}
}
}
},
"definitions": {
"AccessibilityBounds": {
"type": "object",
"properties": {
"height": {
"type": "integer"
},
"width": {
"type": "integer"
},
"x": {
"type": "integer"
},
"y": {
"type": "integer"
}
}
},
"AccessibilityInvokeRequest": {
"type": "object",
"required": ["id"],
"properties": {
"action": {
"type": "string"
},
"id": {
"type": "string"
}
}
},
"AccessibilityNodeRequest": {
"type": "object",
"required": ["id"],
"properties": {
"id": {
"type": "string"
}
}
},
"AccessibilityNodesResponse": {
"type": "object",
"properties": {
"matches": {
"type": "array",
"items": {
"$ref": "#/definitions/computeruse.AccessibilityNode"
}
},
"truncated": {
"type": "boolean"
}
}
},
"AccessibilitySetValueRequest": {
"type": "object",
"required": ["id"],
"properties": {
"id": {
"type": "string"
},
"value": {
"type": "string"
}
}
},
"AccessibilityTreeResponse": {
"type": "object",
"properties": {
"root": {
"$ref": "#/definitions/computeruse.AccessibilityNode"
},
"truncated": {
"type": "boolean"
}
}
},
"Chart": {
"type": "object",
"properties": {
"elements": {
"type": "array",
"items": {
"$ref": "#/definitions/ChartElement"
}
},
"png": {
"type": "string"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
},
"x_label": {
"type": "string"
},
"x_scale": {
"type": "string"
},
"x_tick_labels": {
"type": "array",
"items": {
"type": "string"
}
},
"x_ticks": {
"type": "array",
"items": {
"type": "number"
}
},
"y_label": {
"type": "string"
},
"y_scale": {
"type": "string"
},
"y_tick_labels": {
"type": "array",
"items": {
"type": "string"
}
},
"y_ticks": {
"type": "array",
"items": {
"type": "number"
}
}
}
},
"ChartElement": {
"type": "object",
"properties": {
"angle": {
"type": "number"
},
"first_quartile": {
"type": "number"
},
"group": {
"type": "string"
},
"label": {
"type": "string"
},
"max": {
"type": "number"
},
"median": {
"type": "number"
},
"min": {
"type": "number"
},
"outliers": {
"type": "array",
"items": {
"type": "number"
}
},
"png": {
"type": "string"
},
"points": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "number"
}
}
},
"radius": {
"type": "number"
},
"third_quartile": {
"type": "number"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
},
"value": {
"type": "string"
},
"x_label": {
"type": "string"
},
"y_label": {
"type": "string"
}
}
},
"CodeRunArtifacts": {
"type": "object",
"properties": {
"charts": {
"type": "array",
"items": {
"$ref": "#/definitions/Chart"
}
}
}
},
"CodeRunRequest": {
"type": "object",
"required": ["code", "language"],
"properties": {
"argv": {
"type": "array",
"items": {
"type": "string"
}
},
"code": {
"type": "string"
},
"envs": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"language": {
"description": "python, javascript, typescript",
"type": "string"
},
"timeout": {
"type": "integer"
}
}
},
"CodeRunResponse": {
"type": "object",
"properties": {
"artifacts": {
"$ref": "#/definitions/CodeRunArtifacts"
},
"exitCode": {
"type": "integer"
},
"result": {
"type": "string"
}
}
},
"Command": {
"type": "object",
"required": ["command", "id"],
"properties": {
"command": {
"type": "string"
},
"exitCode": {
"type": "integer"
},
"id": {
"type": "string"
}
}
},
"CompletionContext": {
"type": "object",
"required": ["triggerKind"],
"properties": {
"triggerCharacter": {
"type": "string"
},
"triggerKind": {
"type": "integer"
}
}
},
"CompletionItem": {
"type": "object",
"required": ["label"],
"properties": {
"detail": {
"type": "string"
},
"documentation": {},
"filterText": {
"type": "string"
},
"insertText": {
"type": "string"
},
"kind": {
"type": "integer"
},
"label": {
"type": "string"
},
"sortText": {
"type": "string"
}
}
},
"CompletionList": {
"type": "object",
"required": ["isIncomplete", "items"],
"properties": {
"isIncomplete": {
"type": "boolean"
},
"items": {
"type": "array",
"items": {
"$ref": "#/definitions/CompletionItem"
}
}
}
},
"ComputerUseStartResponse": {
"type": "object",
"properties": {
"message": {
"type": "string"
},
"status": {
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/ProcessStatus"
}
}
}
},
"ComputerUseStatusResponse": {
"type": "object",
"properties": {
"status": {
"type": "string"
}
}
},
"ComputerUseStopResponse": {
"type": "object",
"properties": {
"message": {
"type": "string"
},
"status": {
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/ProcessStatus"
}
}
}
},
"CreateContextRequest": {
"type": "object",
"properties": {
"cwd": {
"type": "string"
},
"language": {
"type": "string"
}
}
},
"CreateSessionRequest": {
"type": "object",
"required": ["sessionId"],
"properties": {
"sessionId": {
"type": "string"
}
}
},
"DaemonErrorCode": {
"type": "string",
"enum": [
"GIT_AUTH_FAILED",
"GIT_REPO_NOT_FOUND",
"GIT_BRANCH_NOT_FOUND",
"GIT_BRANCH_EXISTS",
"GIT_PUSH_REJECTED",
"GIT_DIRTY_WORKTREE",
"GIT_MERGE_CONFLICT",
"GIT_TRANSPORT_FAILED",
"GIT_REMOTE_REJECTED",
"FILE_NOT_FOUND",
"FILE_ACCESS_DENIED",
"INVALID_FILE_PATH",
"FILE_READ_FAILED",
"LSP_SERVER_NOT_INITIALIZED",
"PROCESS_EXECUTION_TIMEOUT",
"PROCESS_NOT_FOUND",
"SESSION_ENDED",
"COMMAND_ALREADY_COMPLETED",
"A11Y_UNAVAILABLE",
"RECORDING_STILL_ACTIVE",
"RECORDING_FFMPEG_NOT_FOUND",
"BAD_REQUEST",
"INVALID_REQUEST_BODY",
"UNAUTHORIZED",
"FORBIDDEN",
"NOT_FOUND",
"CONFLICT",
"REQUEST_TIMEOUT",
"GONE",
"UNPROCESSABLE_ENTITY",
"INTERNAL_SERVER_ERROR"
],
"x-enum-varnames": [
"CodeGitAuthFailed",
"CodeGitRepoNotFound",
"CodeGitBranchNotFound",
"CodeGitBranchExists",
"CodeGitPushRejected",
"CodeGitDirtyWorktree",
"CodeGitMergeConflict",
"CodeGitTransportFailed",
"CodeGitRemoteRejected",
"CodeFileNotFound",
"CodeFileAccessDenied",
"CodeInvalidFilePath",
"CodeFileReadFailed",
"CodeLspServerNotInitialized",
"CodeProcessExecutionTimeout",
"CodeProcessNotFound",
"CodeSessionEnded",
"CodeCommandAlreadyCompleted",
"CodeA11yUnavailable",
"CodeRecordingStillActive",
"CodeRecordingFfmpegNotFound",
"CodeBadRequest",
"CodeInvalidRequestBody",
"CodeUnauthorized",
"CodeForbidden",
"CodeNotFound",
"CodeConflict",
"CodeRequestTimeout",
"CodeGone",
"CodeUnprocessableEntity",
"CodeInternalServerError"
]
},
"DisplayInfo": {
"type": "object",
"properties": {
"height": {
"type": "integer"
},
"id": {
"type": "integer"
},
"isActive": {
"type": "boolean"
},
"width": {
"type": "integer"
},
"x": {
"type": "integer"
},
"y": {
"type": "integer"
}
}
},
"DisplayInfoResponse": {
"type": "object",
"properties": {
"displays": {
"type": "array",
"items": {
"$ref": "#/definitions/DisplayInfo"
}
}
}
},
"Empty": {
"type": "object"
},
"ErrorResponse": {
"description": "Error response",
"type": "object",
"required": ["message", "path", "statusCode", "timestamp"],
"properties": {
"code": {
"allOf": [
{
"$ref": "#/definitions/DaemonErrorCode"
}
],
"example": "GIT_REPO_NOT_FOUND"
},
"message": {
"type": "string",
"example": "Bad request"
},
"method": {
"type": "string",
"example": "GET"
},
"path": {
"type": "string",
"example": "/api/resource"
},
"source": {
"type": "string",
"example": "DAYTONA_DAEMON"
},
"statusCode": {
"type": "integer",
"example": 400
},
"timestamp": {
"type": "string",
"example": "2023-01-01T12:00:00Z"
}
}
},
"ExecuteRequest": {
"type": "object",
"required": ["command"],
"properties": {
"command": {
"type": "string"
},
"cwd": {
"description": "Current working directory",
"type": "string"
},
"envs": {
"description": "Environment variables to set for the command",
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"timeout": {
"description": "Timeout in seconds, defaults to 10 seconds",
"type": "integer"
}
}
},
"ExecuteResponse": {
"type": "object",
"required": ["result"],
"properties": {
"exitCode": {
"type": "integer"
},
"result": {
"type": "string"
}
}
},
"FileInfo": {
"type": "object",
"required": ["group", "isDir", "modTime", "mode", "modifiedAt", "name", "owner", "permissions", "size"],
"properties": {
"group": {
"type": "string"
},
"isDir": {
"type": "boolean"
},
"modTime": {
"description": "Deprecated: ModTime uses Go's time.String() layout which is not a standard format.\nUse ModifiedAt instead, which is serialized as ISO 8601 / RFC 3339.",
"type": "string"
},
"mode": {
"type": "string"
},
"modifiedAt": {
"type": "string"
},
"name": {
"type": "string"
},
"owner": {
"type": "string"
},
"path": {
"description": "Full path of the entry",
"type": "string"
},
"permissions": {
"type": "string"
},
"size": {
"type": "integer"
}
}
},
"FileStatus": {
"type": "object",
"required": ["extra", "name", "staging", "worktree"],
"properties": {
"extra": {
"type": "string"
},
"name": {
"type": "string"
},
"staging": {
"$ref": "#/definitions/Status"
},
"worktree": {
"$ref": "#/definitions/Status"
}
}
},
"FilesDownloadRequest": {
"type": "object",
"required": ["paths"],
"properties": {
"paths": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"FindAccessibilityNodesRequest": {
"type": "object",
"properties": {
"limit": {
"type": "integer"
},
"name": {
"type": "string"
},
"nameMatch": {
"description": "\"exact\" | \"substring\" | \"regex\"",
"type": "string"
},
"pid": {
"type": "integer"
},
"role": {
"type": "string"
},
"scope": {
"type": "string"
},
"states": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"GitAddRemoteRequest": {
"type": "object",
"required": ["name", "path", "url"],
"properties": {
"fetch": {
"description": "Fetch fetches from the remote immediately after adding it.",
"type": "boolean"
},
"name": {
"type": "string"
},
"overwrite": {
"description": "Overwrite replaces an existing remote with the same name.",
"type": "boolean"
},
"path": {
"type": "string"
},
"url": {
"type": "string"
}
}
},
"GitAddRequest": {
"type": "object",
"required": ["files", "path"],
"properties": {
"files": {
"description": "files to add (use . for all files)",
"type": "array",
"items": {
"type": "string"
}
},
"path": {
"type": "string"
}
}
},
"GitAuthenticateRequest": {
"type": "object",
"required": ["password", "username"],
"properties": {
"host": {
"description": "Host defaults to github.com.",
"type": "string"
},
"password": {
"type": "string"
},
"protocol": {
"description": "Protocol defaults to https.",
"type": "string"
},
"username": {
"type": "string"
}
}
},
"GitBranchRequest": {
"type": "object",
"required": ["name", "path"],
"properties": {
"name": {
"type": "string"
},
"path": {
"type": "string"
}
}
},
"GitCheckoutRequest": {
"type": "object",
"required": ["branch", "path"],
"properties": {
"branch": {
"type": "string"
},
"path": {
"type": "string"
}
}
},
"GitCloneRequest": {
"type": "object",
"required": ["path", "url"],
"properties": {
"branch": {
"type": "string"
},
"commit_id": {
"type": "string"
},
"depth": {
"description": "Depth creates a shallow clone truncated to the given number of commits.",
"type": "integer"
},
"insecure_skip_tls": {
"description": "Skip TLS certificate verification for this clone. Defaults to false (verify).\nSet to true ONLY for trusted internal Git servers with self-signed or\nprivate-CA certs; credentials, if supplied, will be transmitted over an\nunverified TLS connection and are exposed to any MITM on the route.",
"type": "boolean"
},
"password": {
"type": "string"
},
"path": {
"type": "string"
},
"url": {
"type": "string"
},
"username": {
"type": "string"
}
}
},
"GitCommitInfo": {
"type": "object",
"required": ["author", "email", "hash", "message", "timestamp"],
"properties": {
"author": {
"type": "string"
},
"email": {
"type": "string"
},
"hash": {
"type": "string"
},
"message": {
"type": "string"
},
"timestamp": {
"type": "string"
}
}
},
"GitCommitRequest": {
"type": "object",
"required": ["author", "email", "message", "path"],
"properties": {
"allow_empty": {
"type": "boolean"
},
"author": {
"type": "string"
},
"email": {
"type": "string"
},
"message": {
"type": "string"
},
"path": {
"type": "string"
}
}
},
"GitCommitResponse": {
"type": "object",
"required": ["hash"],
"properties": {
"hash": {
"type": "string"
}
}
},
"GitConfigResponse": {
"type": "object",
"properties": {
"value": {
"description": "Value is the config value, null when the key is not set.",
"type": "string"
}
}
},
"GitConfigureUserRequest": {
"type": "object",
"required": ["email", "name"],
"properties": {
"email": {
"type": "string"
},
"name": {
"type": "string"
},
"path": {
"description": "Path is the repository path, required when scope is \"local\".",
"type": "string"
},
"scope": {
"description": "Scope is one of global (default), local or system.",
"type": "string"
}
}
},
"GitDeleteBranchRequest": {
"type": "object",
"required": ["name", "path"],
"properties": {
"name": {
"type": "string"
},
"path": {
"type": "string"
}
}
},
"GitInitRequest": {
"type": "object",
"required": ["path"],
"properties": {
"bare": {
"description": "Bare creates a repository without a working tree.",
"type": "boolean"
},
"initial_branch": {
"description": "InitialBranch sets the name of the initial branch.",
"type": "string"
},
"path": {
"type": "string"
}
}
},
"GitPullRequest": {
"type": "object",
"required": ["path"],
"properties": {
"branch": {
"description": "Branch to pull (defaults to the current branch's upstream).",
"type": "string"
},
"password": {
"type": "string"
},
"path": {
"type": "string"
},
"remote": {
"description": "Remote to pull from (defaults to \"origin\").",
"type": "string"
},
"username": {
"type": "string"
}
}
},
"GitPushRequest": {
"type": "object",
"required": ["path"],
"properties": {
"branch": {
"description": "Branch to push (defaults to the current branch).",
"type": "string"
},
"password": {
"type": "string"
},
"path": {
"type": "string"
},
"remote": {
"description": "Remote to push to (defaults to \"origin\").",
"type": "string"
},
"set_upstream": {
"description": "SetUpstream records the pushed branch as the upstream tracking branch.",
"type": "boolean"
},
"username": {
"type": "string"
}
}
},
"GitRemote": {
"type": "object",
"required": ["name", "url"],
"properties": {
"name": {
"type": "string"
},
"url": {
"type": "string"
}
}
},
"GitResetRequest": {
"type": "object",
"required": ["path"],
"properties": {
"files": {
"description": "Files constrains the reset to the given paths.",
"type": "array",
"items": {
"type": "string"
}
},
"mode": {
"description": "Mode is one of soft, mixed (default), hard, merge or keep.",
"type": "string"
},
"path": {
"type": "string"
},
"target": {
"description": "Target is the revision to reset to (defaults to HEAD).",
"type": "string"
}
}
},
"GitRestoreRequest": {
"type": "object",
"required": ["files", "path"],
"properties": {
"files": {
"type": "array",
"items": {
"type": "string"
}
},
"path": {
"type": "string"
},
"source": {
"description": "Source restores file contents from the given revision instead of the index.",
"type": "string"
},
"staged": {
"description": "Staged restores the staging index for the given files.",
"type": "boolean"
},
"worktree": {
"description": "Worktree restores the working tree for the given files.",
"type": "boolean"
}
}
},
"GitSetConfigRequest": {
"type": "object",
"required": ["key", "value"],
"properties": {
"key": {
"type": "string"
},
"path": {
"description": "Path is the repository path, required when scope is \"local\".",
"type": "string"
},
"scope": {
"description": "Scope is one of global (default), local or system.",
"type": "string"
},
"value": {
"type": "string"
}
}
},
"GitStatus": {
"type": "object",
"required": ["currentBranch", "fileStatus"],
"properties": {
"ahead": {
"type": "integer"
},
"behind": {
"type": "integer"
},
"branchPublished": {
"type": "boolean"
},
"currentBranch": {
"type": "string"
},
"detached": {
"description": "Detached is true when HEAD is not on a branch (detached HEAD state).",
"type": "boolean"
},
"fileStatus": {
"type": "array",
"items": {
"$ref": "#/definitions/FileStatus"
}
},
"upstream": {
"description": "Upstream is the upstream tracking branch (e.g. \"origin/main\"), empty when unset.",
"type": "string"
}
}
},
"InitializeRequest": {
"type": "object",
"properties": {
"token": {
"type": "string"
}
}
},
"InterpreterContext": {
"type": "object",
"required": ["active", "createdAt", "cwd", "id", "language"],
"properties": {
"active": {
"type": "boolean"
},
"createdAt": {
"type": "string"
},
"cwd": {
"type": "string"
},
"id": {
"type": "string"
},
"language": {
"type": "string"
}
}
},
"IsPortInUseResponse": {
"type": "object",
"properties": {
"isInUse": {
"type": "boolean"
}
}
},
"KeyboardHotkeyRequest": {
"type": "object",
"properties": {
"keys": {
"description": "e.g., \"ctrl+c\", \"cmd+v\"",
"type": "string"
}
}
},
"KeyboardKeyDownRequest": {
"type": "object",
"required": ["key"],
"properties": {
"key": {
"description": "e.g., \"ctrl\", \"shift\", \"a\"",
"type": "string"
}
}
},
"KeyboardKeyUpRequest": {
"type": "object",
"required": ["key"],
"properties": {
"key": {
"description": "e.g., \"ctrl\", \"shift\", \"a\"",
"type": "string"
}
}
},
"KeyboardPressRequest": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"modifiers": {
"description": "ctrl, alt, shift, cmd",
"type": "array",
"items": {
"type": "string"
}
}
}
},
"KeyboardTypeRequest": {
"type": "object",
"properties": {
"delay": {
"description": "milliseconds between keystrokes",
"type": "integer"
},
"text": {
"type": "string"
}
}
},
"ListBranchResponse": {
"type": "object",
"required": ["branches"],
"properties": {
"branches": {
"type": "array",
"items": {
"type": "string"
}
},
"current": {
"description": "Current is the name of the checked out branch (empty when HEAD is detached).",
"type": "string"
}
}
},
"ListContextsResponse": {
"type": "object",
"required": ["contexts"],
"properties": {
"contexts": {
"type": "array",
"items": {
"$ref": "#/definitions/InterpreterContext"
}
}
}
},
"ListRecordingsResponse": {
"type": "object",
"required": ["recordings"],
"properties": {
"recordings": {
"type": "array",
"items": {
"$ref": "#/definitions/Recording"
}
}
}
},
"ListRemotesResponse": {
"type": "object",
"required": ["remotes"],
"properties": {
"remotes": {
"type": "array",
"items": {
"$ref": "#/definitions/GitRemote"
}
}
}
},
"LspCompletionParams": {
"type": "object",
"required": ["languageId", "pathToProject", "position", "uri"],
"properties": {
"context": {
"$ref": "#/definitions/CompletionContext"
},
"languageId": {
"type": "string"
},
"pathToProject": {
"type": "string"
},
"position": {
"$ref": "#/definitions/LspPosition"
},
"uri": {
"type": "string"
}
}
},
"LspDocumentRequest": {
"type": "object",
"required": ["languageId", "pathToProject", "uri"],
"properties": {
"languageId": {
"type": "string"
},
"pathToProject": {
"type": "string"
},
"uri": {
"type": "string"
}
}
},
"LspLocation": {
"type": "object",
"required": ["range", "uri"],
"properties": {
"range": {
"$ref": "#/definitions/LspRange"
},
"uri": {
"type": "string"
}
}
},
"LspPosition": {
"type": "object",
"required": ["character", "line"],
"properties": {
"character": {
"type": "integer"
},
"line": {
"type": "integer"
}
}
},
"LspRange": {
"type": "object",
"required": ["end", "start"],
"properties": {
"end": {
"$ref": "#/definitions/LspPosition"
},
"start": {
"$ref": "#/definitions/LspPosition"
}
}
},
"LspServerRequest": {
"type": "object",
"required": ["languageId", "pathToProject"],
"properties": {
"languageId": {
"type": "string"
},
"pathToProject": {
"type": "string"
}
}
},
"LspSymbol": {
"type": "object",
"required": ["kind", "location", "name"],
"properties": {
"kind": {
"type": "integer"
},
"location": {
"$ref": "#/definitions/LspLocation"
},
"name": {
"type": "string"
}
}
},
"Match": {
"type": "object",
"required": ["content", "file", "line"],
"properties": {
"content": {
"type": "string"
},
"file": {
"type": "string"
},
"line": {
"type": "integer"
}
}
},
"MouseClickRequest": {
"type": "object",
"properties": {
"button": {
"description": "left, right, middle",
"type": "string"
},
"clicks": {
"description": "Clicks is a pointer so an omitted value is distinguishable from an\nexplicit 0, which must be rejected rather than silently defaulted.",
"type": "integer"
},
"double": {
"type": "boolean"
},
"modifiers": {
"type": "array",
"items": {
"type": "string"
}
},
"x": {
"type": "integer"
},
"y": {
"type": "integer"
}
}
},
"MouseClickResponse": {
"type": "object",
"properties": {
"x": {
"type": "integer"
},
"y": {
"type": "integer"
}
}
},
"MouseDownRequest": {
"type": "object",
"properties": {
"button": {
"description": "left, right, middle",
"type": "string"
},
"x": {
"type": "integer"
},
"y": {
"type": "integer"
}
}
},
"MouseDragRequest": {
"type": "object",
"properties": {
"button": {
"type": "string"
},
"endX": {
"type": "integer"
},
"endY": {
"type": "integer"
},
"modifiers": {
"type": "array",
"items": {
"type": "string"
}
},
"startX": {
"type": "integer"
},
"startY": {
"type": "integer"
}
}
},
"MouseDragResponse": {
"type": "object",
"properties": {
"x": {
"type": "integer"
},
"y": {
"type": "integer"
}
}
},
"MouseMoveRequest": {
"type": "object",
"properties": {
"x": {
"type": "integer"
},
"y": {
"type": "integer"
}
}
},
"MousePositionResponse": {
"type": "object",
"properties": {
"x": {
"type": "integer"
},
"y": {
"type": "integer"
}
}
},
"MouseScrollRequest": {
"type": "object",
"properties": {
"amount": {
"type": "integer",
"default": 1,
"minimum": 0
},
"direction": {
"description": "up, down, left, right",
"type": "string"
},
"modifiers": {
"type": "array",
"items": {
"type": "string"
}
},
"x": {
"type": "integer"
},
"y": {
"type": "integer"
}
}
},
"MouseUpRequest": {
"type": "object",
"properties": {
"button": {
"description": "left, right, middle",
"type": "string"
},
"x": {
"type": "integer"
},
"y": {
"type": "integer"
}
}
},
"PortList": {
"type": "object",
"properties": {
"ports": {
"type": "array",
"items": {
"type": "integer"
}
}
}
},
"Position": {
"type": "object",
"properties": {
"x": {
"type": "integer"
},
"y": {
"type": "integer"
}
}
},
"ProcessErrorsResponse": {
"type": "object",
"properties": {
"errors": {
"type": "string"
},
"processName": {
"type": "string"
}
}
},
"ProcessLogsResponse": {
"type": "object",
"properties": {
"logs": {
"type": "string"
},
"processName": {
"type": "string"
}
}
},
"ProcessRestartResponse": {
"type": "object",
"properties": {
"message": {
"type": "string"
},
"processName": {
"type": "string"
}
}
},
"ProcessStatus": {
"type": "object",
"properties": {
"autoRestart": {
"type": "boolean"
},
"pid": {
"type": "integer"
},
"priority": {
"type": "integer"
},
"running": {
"type": "boolean"
}
}
},
"ProcessStatusResponse": {
"type": "object",
"properties": {
"processName": {
"type": "string"
},
"running": {
"type": "boolean"
}
}
},
"PtyCreateRequest": {
"type": "object",
"properties": {
"cols": {
"type": "integer"
},
"cwd": {
"type": "string"
},
"envs": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"id": {
"type": "string"
},
"lazyStart": {
"description": "Don't start PTY until first client connects",
"type": "boolean"
},
"rows": {
"type": "integer"
}
}
},
"PtyCreateResponse": {
"type": "object",
"required": ["sessionId"],
"properties": {
"sessionId": {
"type": "string"
}
}
},
"PtyListResponse": {
"type": "object",
"required": ["sessions"],
"properties": {
"sessions": {
"type": "array",
"items": {
"$ref": "#/definitions/PtySessionInfo"
}
}
}
},
"PtyResizeRequest": {
"type": "object",
"required": ["cols", "rows"],
"properties": {
"cols": {
"type": "integer",
"maximum": 1000,
"minimum": 1
},
"rows": {
"type": "integer",
"maximum": 1000,
"minimum": 1
}
}
},
"PtySessionInfo": {
"type": "object",
"required": ["active", "cols", "createdAt", "cwd", "envs", "id", "lazyStart", "rows"],
"properties": {
"active": {
"type": "boolean"
},
"cols": {
"type": "integer"
},
"createdAt": {
"type": "string"
},
"cwd": {
"type": "string"
},
"envs": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"id": {
"type": "string"
},
"lazyStart": {
"description": "Whether this session uses lazy start",
"type": "boolean"
},
"rows": {
"type": "integer"
}
}
},
"Recording": {
"type": "object",
"required": ["fileName", "filePath", "id", "startTime", "status"],
"properties": {
"durationSeconds": {
"type": "number"
},
"endTime": {
"type": "string"
},
"fileName": {
"type": "string"
},
"filePath": {
"type": "string"
},
"id": {
"type": "string"
},
"sizeBytes": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"status": {
"type": "string"
}
}
},
"ReplaceRequest": {
"type": "object",
"required": ["files", "newValue", "pattern"],
"properties": {
"files": {
"type": "array",
"items": {
"type": "string"
}
},
"newValue": {
"type": "string"
},
"pattern": {
"type": "string"
}
}
},
"ReplaceResult": {
"type": "object",
"properties": {
"error": {
"type": "string"
},
"file": {
"type": "string"
},
"success": {
"type": "boolean"
}
}
},
"ScreenshotResponse": {
"type": "object",
"properties": {
"cursorPosition": {
"$ref": "#/definitions/Position"
},
"screenshot": {
"type": "string"
},
"sizeBytes": {
"type": "integer"
}
}
},
"ScrollResponse": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
}
}
},
"SearchFilesResponse": {
"type": "object",
"required": ["files"],
"properties": {
"files": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"Session": {
"type": "object",
"required": ["commands", "sessionId"],
"properties": {
"commands": {
"type": "array",
"items": {
"$ref": "#/definitions/Command"
}
},
"sessionId": {
"type": "string"
}
}
},
"SessionCommandLogsResponse": {
"type": "object",
"required": ["output", "stderr", "stdout"],
"properties": {
"output": {
"type": "string"
},
"stderr": {
"type": "string"
},
"stdout": {
"type": "string"
}
}
},
"SessionExecuteRequest": {
"type": "object",
"required": ["command"],
"properties": {
"async": {
"type": "boolean"
},
"command": {
"type": "string"
},
"runAsync": {
"type": "boolean"
},
"suppressInputEcho": {
"type": "boolean"
}
}
},
"SessionExecuteResponse": {
"type": "object",
"required": ["cmdId"],
"properties": {
"cmdId": {
"type": "string"
},
"exitCode": {
"type": "integer"
},
"output": {
"type": "string"
},
"stderr": {
"type": "string"
},
"stdout": {
"type": "string"
}
}
},
"SessionSendInputRequest": {
"type": "object",
"required": ["data"],
"properties": {
"data": {
"type": "string"
}
}
},
"StartRecordingRequest": {
"type": "object",
"properties": {
"label": {
"type": "string"
}
}
},
"Status": {
"type": "string",
"enum": ["Unmodified", "Untracked", "Modified", "Added", "Deleted", "Renamed", "Copied", "Updated but unmerged"],
"x-enum-varnames": [
"Unmodified",
"Untracked",
"Modified",
"Added",
"Deleted",
"Renamed",
"Copied",
"UpdatedButUnmerged"
]
},
"StopRecordingRequest": {
"type": "object",
"required": ["id"],
"properties": {
"id": {
"type": "string"
}
}
},
"SystemMetrics": {
"type": "object",
"properties": {
"cpuCount": {
"type": "integer"
},
"cpuUsedPct": {
"type": "number",
"format": "double"
},
"diskFree": {
"type": "integer",
"format": "int64"
},
"diskTotal": {
"type": "integer",
"format": "int64"
},
"diskUsed": {
"type": "integer",
"format": "int64"
},
"memCache": {
"type": "integer",
"format": "int64"
},
"memTotal": {
"type": "integer",
"format": "int64"
},
"memUsed": {
"type": "integer",
"format": "int64"
},
"timestamp": {
"type": "string"
},
"timestampUnix": {
"type": "integer",
"format": "int64"
}
}
},
"UpdateEnvRequest": {
"type": "object",
"properties": {
"set": {
"description": "Set maps env var names to values applied to the daemon's process env, so\nprocesses spawned after the call (exec, sessions, PTYs) inherit them.",
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"unset": {
"description": "Unset lists env var names to remove before Set is applied.",
"type": "array",
"items": {
"type": "string"
}
},
"unsetValuePrefix": {
"description": "UnsetValuePrefix removes every env var whose value has this prefix and\nwhose name is not a key of Set, before Set is applied. Used to reconcile\nsecret placeholder vars without the caller knowing the daemon's env.",
"type": "string"
}
}
},
"UploadFilesResponse": {
"type": "object",
"properties": {
"errors": {
"type": "array",
"items": {
"type": "string"
}
},
"files": {
"type": "array",
"items": {
"$ref": "#/definitions/fs.fileResult"
}
}
}
},
"UploadedFile": {
"type": "object",
"required": ["name", "path", "type"],
"properties": {
"name": {
"type": "string"
},
"path": {
"type": "string"
},
"type": {
"type": "string"
}
}
},
"UserHomeDirResponse": {
"type": "object",
"required": ["dir"],
"properties": {
"dir": {
"type": "string"
}
}
},
"WindowInfo": {
"type": "object",
"properties": {
"height": {
"type": "integer"
},
"id": {
"type": "integer"
},
"isActive": {
"type": "boolean"
},
"title": {
"type": "string"
},
"width": {
"type": "integer"
},
"x": {
"type": "integer"
},
"y": {
"type": "integer"
}
}
},
"WindowsResponse": {
"type": "object",
"properties": {
"windows": {
"type": "array",
"items": {
"$ref": "#/definitions/WindowInfo"
}
}
}
},
"WorkDirResponse": {
"type": "object",
"required": ["dir"],
"properties": {
"dir": {
"type": "string"
}
}
},
"computeruse.AccessibilityNode": {
"type": "object",
"properties": {
"actions": {
"type": "array",
"items": {
"type": "string"
}
},
"bounds": {
"$ref": "#/definitions/AccessibilityBounds"
},
"children": {
"type": "array",
"items": {
"$ref": "#/definitions/computeruse.AccessibilityNode"
}
},
"description": {
"type": "string"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"role": {
"type": "string"
},
"states": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"fs.fileResult": {
"type": "object",
"properties": {
"bytes": {
"type": "integer"
},
"path": {
"type": "string"
}
}
},
"gin.H": {
"type": "object",
"additionalProperties": {}
}
},
"securityDefinitions": {
"Bearer": {
"description": "Type \"Bearer\" followed by a space and your API key.",
"type": "apiKey",
"name": "Authorization",
"in": "header"
}
}
}