{"openapi":"3.0.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.","tags":["computer-use"],"summary":"Find accessibility nodes","operationId":"FindAccessibilityNodes","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FindAccessibilityNodesRequest"}}},"description":"Find request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessibilityNodesResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/a11y/node/focus":{"post":{"description":"Move keyboard focus to the AT-SPI node identified by id (bus-name:object-path).","tags":["computer-use"],"summary":"Focus an accessibility node","operationId":"FocusAccessibilityNode","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessibilityNodeRequest"}}},"description":"Node focus request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Empty"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/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.","tags":["computer-use"],"summary":"Invoke an action on an accessibility node","operationId":"InvokeAccessibilityNode","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessibilityInvokeRequest"}}},"description":"Invoke request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Empty"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/a11y/node/value":{"post":{"description":"Write the given value to the node via EditableText.SetTextContents or, for numeric controls, Value.CurrentValue.","tags":["computer-use"],"summary":"Set the value of an accessibility node","operationId":"SetAccessibilityNodeValue","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessibilitySetValueRequest"}}},"description":"Set value request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Empty"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/a11y/tree":{"get":{"description":"Fetch the AT-SPI accessibility tree for the focused application, a specific PID, or all registered applications.","tags":["computer-use"],"summary":"Get accessibility tree","operationId":"GetAccessibilityTree","parameters":[{"description":"Scope: focused | pid | all (default: focused)","name":"scope","in":"query","schema":{"type":"string"}},{"description":"Process ID when scope=pid","name":"pid","in":"query","schema":{"type":"integer"}},{"description":"Max tree depth (-1 unbounded, 0 root only; default -1)","name":"maxDepth","in":"query","schema":{"type":"integer"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessibilityTreeResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/display/info":{"get":{"description":"Get information about all available displays","tags":["computer-use"],"summary":"Get display information","operationId":"GetDisplayInfo","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DisplayInfoResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/display/windows":{"get":{"description":"Get information about all open windows","tags":["computer-use"],"summary":"Get windows information","operationId":"GetWindows","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WindowsResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/keyboard/hotkey":{"post":{"description":"Press a hotkey combination (e.g., ctrl+c, cmd+v)","tags":["computer-use"],"summary":"Press hotkey","operationId":"PressHotkey","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KeyboardHotkeyRequest"}}},"description":"Hotkey press request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Empty"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/keyboard/key":{"post":{"description":"Press a key with optional modifiers","tags":["computer-use"],"summary":"Press key","operationId":"PressKey","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KeyboardPressRequest"}}},"description":"Key press request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Empty"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/keyboard/type":{"post":{"description":"Type text with optional delay between keystrokes","tags":["computer-use"],"summary":"Type text","operationId":"TypeText","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KeyboardTypeRequest"}}},"description":"Text typing request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Empty"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/mouse/click":{"post":{"description":"Click the mouse button at the specified coordinates","tags":["computer-use"],"summary":"Click mouse button","operationId":"Click","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MouseClickRequest"}}},"description":"Mouse click request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MouseClickResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/mouse/drag":{"post":{"description":"Drag the mouse from start to end coordinates","tags":["computer-use"],"summary":"Drag mouse","operationId":"Drag","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MouseDragRequest"}}},"description":"Mouse drag request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MouseDragResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/mouse/move":{"post":{"description":"Move the mouse cursor to the specified coordinates","tags":["computer-use"],"summary":"Move mouse cursor","operationId":"MoveMouse","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MouseMoveRequest"}}},"description":"Mouse move request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MousePositionResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/mouse/position":{"get":{"description":"Get the current mouse cursor position","tags":["computer-use"],"summary":"Get mouse position","operationId":"GetMousePosition","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MousePositionResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/mouse/scroll":{"post":{"description":"Scroll the mouse wheel at the specified coordinates","tags":["computer-use"],"summary":"Scroll mouse wheel","operationId":"Scroll","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MouseScrollRequest"}}},"description":"Mouse scroll request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScrollResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/process-status":{"get":{"description":"Get the status of all computer use processes","tags":["computer-use"],"summary":"Get computer use process status","operationId":"GetComputerUseStatus","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ComputerUseStatusResponse"}}}}}}},"/computeruse/process/{processName}/errors":{"get":{"description":"Get errors for a specific computer use process","tags":["computer-use"],"summary":"Get process errors","operationId":"GetProcessErrors","parameters":[{"description":"Process name to get errors for","name":"processName","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProcessErrorsResponse"}}}}}}},"/computeruse/process/{processName}/logs":{"get":{"description":"Get logs for a specific computer use process","tags":["computer-use"],"summary":"Get process logs","operationId":"GetProcessLogs","parameters":[{"description":"Process name to get logs for","name":"processName","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProcessLogsResponse"}}}}}}},"/computeruse/process/{processName}/restart":{"post":{"description":"Restart a specific computer use process","tags":["computer-use"],"summary":"Restart specific process","operationId":"RestartProcess","parameters":[{"description":"Process name to restart","name":"processName","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProcessRestartResponse"}}}}}}},"/computeruse/process/{processName}/status":{"get":{"description":"Check if a specific computer use process is running","tags":["computer-use"],"summary":"Get specific process status","operationId":"GetProcessStatus","parameters":[{"description":"Process name to check","name":"processName","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProcessStatusResponse"}}}}}}},"/computeruse/recordings":{"get":{"description":"Get a list of all recordings (active and completed)","tags":["computer-use"],"summary":"List all recordings","operationId":"ListRecordings","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRecordingsResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/recordings/start":{"post":{"description":"Start a new screen recording session","tags":["computer-use"],"summary":"Start a new recording","operationId":"StartRecording","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingRequest"}}},"description":"Recording options"},"responses":{"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Recording"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/recordings/stop":{"post":{"description":"Stop an active screen recording session","tags":["computer-use"],"summary":"Stop a recording","operationId":"StopRecording","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopRecordingRequest"}}},"description":"Recording ID to stop","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Recording"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/recordings/{id}":{"get":{"description":"Get details of a specific recording by ID","tags":["computer-use"],"summary":"Get recording details","operationId":"GetRecording","parameters":[{"description":"Recording ID","name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Recording"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"delete":{"description":"Delete a recording file by ID","tags":["computer-use"],"summary":"Delete a recording","operationId":"DeleteRecording","parameters":[{"description":"Recording ID","name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/recordings/{id}/download":{"get":{"description":"Download a recording by providing its ID","tags":["computer-use"],"summary":"Download a recording","operationId":"DownloadRecording","parameters":[{"description":"Recording ID","name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/octet-stream":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/octet-stream":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/octet-stream":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/screenshot":{"get":{"description":"Take a screenshot of the entire screen","tags":["computer-use"],"summary":"Take a screenshot","operationId":"TakeScreenshot","parameters":[{"description":"Whether to show cursor in screenshot","name":"showCursor","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScreenshotResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/screenshot/compressed":{"get":{"description":"Take a compressed screenshot of the entire screen","tags":["computer-use"],"summary":"Take a compressed screenshot","operationId":"TakeCompressedScreenshot","parameters":[{"description":"Whether to show cursor in screenshot","name":"showCursor","in":"query","schema":{"type":"boolean"}},{"description":"Image format (png or jpeg)","name":"format","in":"query","schema":{"type":"string"}},{"description":"JPEG quality (1-100)","name":"quality","in":"query","schema":{"type":"integer"}},{"description":"Scale factor (0.1-1.0)","name":"scale","in":"query","schema":{"type":"number"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScreenshotResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/screenshot/region":{"get":{"description":"Take a screenshot of a specific region of the screen","tags":["computer-use"],"summary":"Take a region screenshot","operationId":"TakeRegionScreenshot","parameters":[{"description":"X coordinate of the region","name":"x","in":"query","required":true,"schema":{"type":"integer"}},{"description":"Y coordinate of the region","name":"y","in":"query","required":true,"schema":{"type":"integer"}},{"description":"Width of the region","name":"width","in":"query","required":true,"schema":{"type":"integer"}},{"description":"Height of the region","name":"height","in":"query","required":true,"schema":{"type":"integer"}},{"description":"Whether to show cursor in screenshot","name":"showCursor","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScreenshotResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/screenshot/region/compressed":{"get":{"description":"Take a compressed screenshot of a specific region of the screen","tags":["computer-use"],"summary":"Take a compressed region screenshot","operationId":"TakeCompressedRegionScreenshot","parameters":[{"description":"X coordinate of the region","name":"x","in":"query","required":true,"schema":{"type":"integer"}},{"description":"Y coordinate of the region","name":"y","in":"query","required":true,"schema":{"type":"integer"}},{"description":"Width of the region","name":"width","in":"query","required":true,"schema":{"type":"integer"}},{"description":"Height of the region","name":"height","in":"query","required":true,"schema":{"type":"integer"}},{"description":"Whether to show cursor in screenshot","name":"showCursor","in":"query","schema":{"type":"boolean"}},{"description":"Image format (png or jpeg)","name":"format","in":"query","schema":{"type":"string"}},{"description":"JPEG quality (1-100)","name":"quality","in":"query","schema":{"type":"integer"}},{"description":"Scale factor (0.1-1.0)","name":"scale","in":"query","schema":{"type":"number"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScreenshotResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/start":{"post":{"description":"Start all computer use processes and return their status","tags":["computer-use"],"summary":"Start computer use processes","operationId":"StartComputerUse","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ComputerUseStartResponse"}}}}}}},"/computeruse/status":{"get":{"description":"Get the current status of the computer use system","tags":["computer-use"],"summary":"Get computer use status","operationId":"GetComputerUseSystemStatus","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ComputerUseStatusResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/computeruse/stop":{"post":{"description":"Stop all computer use processes and return their status","tags":["computer-use"],"summary":"Stop computer use processes","operationId":"StopComputerUse","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/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.","tags":["server"],"summary":"Update process environment","operationId":"UpdateEnv","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateEnvRequest"}}},"description":"Environment update request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"string"}}}}}}}},"/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.","tags":["file-system"],"summary":"List files and directories","operationId":"ListFiles","parameters":[{"description":"Directory path to list (defaults to working directory)","name":"path","in":"query","schema":{"type":"string"}},{"description":"How many levels deep to list (default: 1, must be >= 1)","name":"depth","in":"query","schema":{"type":"integer"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"delete":{"description":"Delete a file or directory at the specified path","tags":["file-system"],"summary":"Delete a file or directory","operationId":"DeleteFile","parameters":[{"description":"File or directory path to delete","name":"path","in":"query","required":true,"schema":{"type":"string"}},{"description":"Enable recursive deletion for directories","name":"recursive","in":"query","schema":{"type":"boolean"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/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.","tags":["file-system"],"summary":"Download multiple files","operationId":"DownloadFiles","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FilesDownloadRequest"}}},"description":"Paths of files to download","required":true},"responses":{"200":{"description":"Multipart response with file parts and JSON error parts","content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/gin.H"}}}},"400":{"description":"Bad Request","content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/files/bulk-upload":{"post":{"description":"Upload multiple files with their destination paths","tags":["file-system"],"summary":"Upload multiple files","operationId":"UploadFiles","responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/files/download":{"get":{"description":"Download a file by providing its path","tags":["file-system"],"summary":"Download a file","operationId":"DownloadFile","parameters":[{"description":"File path to download","name":"path","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/octet-stream":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/octet-stream":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/octet-stream":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/files/find":{"get":{"description":"Search for text pattern within files in a directory","tags":["file-system"],"summary":"Find text in files","operationId":"FindInFiles","parameters":[{"description":"Directory path to search in","name":"path","in":"query","required":true,"schema":{"type":"string"}},{"description":"Text pattern to search for","name":"pattern","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Match"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/files/folder":{"post":{"description":"Create a folder with the specified path and optional permissions","tags":["file-system"],"summary":"Create a folder","operationId":"CreateFolder","parameters":[{"description":"Folder path to create","name":"path","in":"query","required":true,"schema":{"type":"string"}},{"description":"Octal permission mode (default: 0755)","name":"mode","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Created"},"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/files/info":{"get":{"description":"Get detailed information about a file or directory","tags":["file-system"],"summary":"Get file information","operationId":"GetFileInfo","parameters":[{"description":"File or directory path","name":"path","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/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":[{"description":"Source file or directory path","name":"source","in":"query","required":true,"schema":{"type":"string"}},{"description":"Destination file or directory path","name":"destination","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/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":[{"description":"File or directory path","name":"path","in":"query","required":true,"schema":{"type":"string"}},{"description":"Owner (username or UID)","name":"owner","in":"query","schema":{"type":"string"}},{"description":"Group (group name or GID)","name":"group","in":"query","schema":{"type":"string"}},{"description":"File mode in octal format (e.g., 0755)","name":"mode","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/files/replace":{"post":{"description":"Replace text pattern with new value in multiple files","tags":["file-system"],"summary":"Replace text in files","operationId":"ReplaceInFiles","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReplaceRequest"}}},"description":"Replace request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ReplaceResult"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/files/search":{"get":{"description":"Search for files matching a specific pattern in a directory","tags":["file-system"],"summary":"Search files by pattern","operationId":"SearchFiles","parameters":[{"description":"Directory path to search in","name":"path","in":"query","required":true,"schema":{"type":"string"}},{"description":"File pattern to match (e.g., *.txt, *.go)","name":"pattern","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchFilesResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/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.","tags":["file-system"],"summary":"Upload a file","operationId":"UploadFile","parameters":[{"description":"Destination path for the uploaded file","name":"path","in":"query","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"file":{"description":"File to upload (multipart/form-data)","type":"string","format":"binary"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadedFile"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/git/add":{"post":{"description":"Add files to the Git staging area","tags":["git"],"summary":"Add files to Git staging","operationId":"AddFiles","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitAddRequest"}}},"description":"Add files request","required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/git/branches":{"get":{"description":"Get a list of all branches in the Git repository","tags":["git"],"summary":"List branches","operationId":"ListBranches","parameters":[{"description":"Repository path","name":"path","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListBranchResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"post":{"description":"Create a new branch in the Git repository","tags":["git"],"summary":"Create a new branch","operationId":"CreateBranch","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitBranchRequest"}}},"description":"Create branch request","required":true},"responses":{"201":{"description":"Created"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"delete":{"description":"Delete a branch from the Git repository","tags":["git"],"summary":"Delete a branch","operationId":"DeleteBranch","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitDeleteBranchRequest"}}},"description":"Delete branch request","required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/git/checkout":{"post":{"description":"Switch to a different branch or commit in the Git repository","tags":["git"],"summary":"Checkout branch or commit","operationId":"CheckoutBranch","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitCheckoutRequest"}}},"description":"Checkout request","required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/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.","tags":["git"],"summary":"Clone a Git repository","operationId":"CloneRepository","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitCloneRequest"}}},"description":"Clone repository request","required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/git/commit":{"post":{"description":"Commit staged changes to the Git repository","tags":["git"],"summary":"Commit changes","operationId":"CommitChanges","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitCommitRequest"}}},"description":"Commit request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitCommitResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/git/config":{"get":{"description":"Get a Git config value at the given scope (null when unset)","tags":["git"],"summary":"Get a Git config value","operationId":"GetGitConfig","parameters":[{"description":"Config key (e.g. user.name)","name":"key","in":"query","required":true,"schema":{"type":"string"}},{"description":"Repository path (required for local scope)","name":"path","in":"query","schema":{"type":"string"}},{"description":"Config scope: global (default), local or system","name":"scope","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitConfigResponse"}}}}}},"post":{"description":"Set a Git config key/value at the given scope","tags":["git"],"summary":"Set a Git config value","operationId":"SetGitConfig","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitSetConfigRequest"}}},"description":"Set config request","required":true},"responses":{"200":{"description":"OK"}}}},"/git/config/user":{"post":{"description":"Configure the Git user name and email at the given scope","tags":["git"],"summary":"Configure Git user","operationId":"ConfigureUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitConfigureUserRequest"}}},"description":"Configure user request","required":true},"responses":{"200":{"description":"OK"}}}},"/git/credentials":{"post":{"description":"Persist Git credentials globally via the credential store. Stores the password in plaintext on disk.","tags":["git"],"summary":"Authenticate Git","operationId":"Authenticate","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitAuthenticateRequest"}}},"description":"Authenticate request","required":true},"responses":{"200":{"description":"OK"}}}},"/git/history":{"get":{"description":"Get the commit history of the Git repository","tags":["git"],"summary":"Get commit history","operationId":"GetCommitHistory","parameters":[{"description":"Repository path","name":"path","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/GitCommitInfo"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/git/init":{"post":{"description":"Initialize a new Git repository at the specified path","tags":["git"],"summary":"Initialize a Git repository","operationId":"InitRepository","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitInitRequest"}}},"description":"Init repository request","required":true},"responses":{"201":{"description":"Created"}}}},"/git/pull":{"post":{"description":"Pull changes from the remote Git repository","tags":["git"],"summary":"Pull changes from remote","operationId":"PullChanges","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitPullRequest"}}},"description":"Pull request","required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/git/push":{"post":{"description":"Push local changes to the remote Git repository","tags":["git"],"summary":"Push changes to remote","operationId":"PushChanges","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitPushRequest"}}},"description":"Push request","required":true},"responses":{"200":{"description":"OK"}}}},"/git/remotes":{"get":{"description":"List the remotes configured in the Git repository","tags":["git"],"summary":"List remotes","operationId":"ListRemotes","parameters":[{"description":"Repository path","name":"path","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRemotesResponse"}}}}}},"post":{"description":"Add (or overwrite) a remote in the Git repository","tags":["git"],"summary":"Add a remote","operationId":"AddRemote","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitAddRemoteRequest"}}},"description":"Add remote request","required":true},"responses":{"201":{"description":"Created"}}}},"/git/reset":{"post":{"description":"Reset the current HEAD to the specified state","tags":["git"],"summary":"Reset repository","operationId":"ResetChanges","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitResetRequest"}}},"description":"Reset request","required":true},"responses":{"200":{"description":"OK"}}}},"/git/restore":{"post":{"description":"Restore working tree files or unstage changes","tags":["git"],"summary":"Restore files","operationId":"RestoreFiles","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitRestoreRequest"}}},"description":"Restore request","required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/git/status":{"get":{"description":"Get the Git status of the repository at the specified path","tags":["git"],"summary":"Get Git status","operationId":"GetStatus","parameters":[{"description":"Repository path","name":"path","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GitStatus"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/init":{"post":{"description":"Set the auth token and initialize telemetry for the toolbox server","tags":["server"],"summary":"Initialize toolbox server","operationId":"Initialize","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InitializeRequest"}}},"description":"Initialization request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"string"}}}}}}}},"/lsp/completions":{"post":{"description":"Get code completion suggestions from the LSP server","tags":["lsp"],"summary":"Get code completions","operationId":"Completions","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LspCompletionParams"}}},"description":"Completion request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompletionList"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/lsp/did-close":{"post":{"description":"Notify the LSP server that a document has been closed","tags":["lsp"],"summary":"Notify document closed","operationId":"DidClose","requestBody":{"$ref":"#/components/requestBodies/LspDocumentRequest"},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/lsp/did-open":{"post":{"description":"Notify the LSP server that a document has been opened","tags":["lsp"],"summary":"Notify document opened","operationId":"DidOpen","requestBody":{"$ref":"#/components/requestBodies/LspDocumentRequest"},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/lsp/document-symbols":{"get":{"description":"Get symbols (functions, classes, etc.) from a document","tags":["lsp"],"summary":"Get document symbols","operationId":"DocumentSymbols","parameters":[{"description":"Language ID (e.g., python, typescript)","name":"languageId","in":"query","required":true,"schema":{"type":"string"}},{"description":"Path to project","name":"pathToProject","in":"query","required":true,"schema":{"type":"string"}},{"description":"Document URI","name":"uri","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/LspSymbol"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/lsp/start":{"post":{"description":"Start a Language Server Protocol server for the specified language","tags":["lsp"],"summary":"Start LSP server","operationId":"Start","requestBody":{"$ref":"#/components/requestBodies/LspServerRequest"},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/lsp/stop":{"post":{"description":"Stop a Language Server Protocol server","tags":["lsp"],"summary":"Stop LSP server","operationId":"Stop","requestBody":{"$ref":"#/components/requestBodies/LspServerRequest"},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/lsp/workspacesymbols":{"get":{"description":"Search for symbols across the entire workspace","tags":["lsp"],"summary":"Get workspace symbols","operationId":"WorkspaceSymbols","parameters":[{"description":"Search query","name":"query","in":"query","required":true,"schema":{"type":"string"}},{"description":"Language ID (e.g., python, typescript)","name":"languageId","in":"query","required":true,"schema":{"type":"string"}},{"description":"Path to project","name":"pathToProject","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/LspSymbol"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/port":{"get":{"description":"Get a list of all currently active ports","tags":["port"],"summary":"Get active ports","operationId":"GetPorts","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PortList"}}}}}}},"/port/{port}/in-use":{"get":{"description":"Check if a specific port is currently in use","tags":["port"],"summary":"Check if port is in use","operationId":"IsPortInUse","parameters":[{"description":"Port number (3000-9999)","name":"port","in":"path","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IsPortInUseResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/process/code-run":{"post":{"description":"Execute Python, JavaScript, or TypeScript code and return output, exit code, and artifacts","tags":["process"],"summary":"Execute code","operationId":"CodeRun","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CodeRunRequest"}}},"description":"Code execution request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CodeRunResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"408":{"description":"Request Timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/process/execute":{"post":{"description":"Execute a shell command and return the output and exit code","tags":["process"],"summary":"Execute a command","operationId":"ExecuteCommand","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExecuteRequest"}}},"description":"Command execution request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExecuteResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"408":{"description":"Request Timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/process/interpreter/context":{"get":{"description":"Returns information about all user-created interpreter contexts (excludes default context)","tags":["interpreter"],"summary":"List all user-created interpreter contexts","operationId":"ListInterpreterContexts","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListContextsResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"post":{"description":"Creates a new isolated interpreter context with optional working directory and language","tags":["interpreter"],"summary":"Create a new interpreter context","operationId":"CreateInterpreterContext","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateContextRequest"}}},"description":"Context configuration","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InterpreterContext"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/process/interpreter/context/{id}":{"delete":{"description":"Deletes an interpreter context and shuts down its worker process","tags":["interpreter"],"summary":"Delete an interpreter context","operationId":"DeleteInterpreterContext","parameters":[{"description":"Context ID","name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"string"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/process/interpreter/execute":{"get":{"description":"Executes code in a specified context (or default context if not specified) via WebSocket streaming","tags":["interpreter"],"summary":"Execute code in an interpreter context","operationId":"ExecuteInterpreterCode","responses":{"101":{"description":"Switching Protocols","headers":{"Connection":{"description":"Upgrade","schema":{"type":"string"}},"Upgrade":{"description":"websocket","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"string"}}}}}}},"/process/pty":{"get":{"description":"Get a list of all active pseudo-terminal sessions","tags":["process"],"summary":"List all PTY sessions","operationId":"ListPtySessions","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PtyListResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"post":{"description":"Create a new pseudo-terminal session with specified configuration","tags":["process"],"summary":"Create a new PTY session","operationId":"CreatePtySession","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PtyCreateRequest"}}},"description":"PTY session creation request","required":true},"responses":{"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PtyCreateResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/process/pty/{sessionId}":{"get":{"description":"Get detailed information about a specific pseudo-terminal session","tags":["process"],"summary":"Get PTY session information","operationId":"GetPtySession","parameters":[{"description":"PTY session ID","name":"sessionId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PtySessionInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"delete":{"description":"Delete a pseudo-terminal session and terminate its process","tags":["process"],"summary":"Delete a PTY session","operationId":"DeletePtySession","parameters":[{"description":"PTY session ID","name":"sessionId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/gin.H"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/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":[{"description":"PTY session ID","name":"sessionId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"101":{"description":"Switching Protocols - WebSocket connection established"},"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/process/pty/{sessionId}/resize":{"post":{"description":"Resize the terminal dimensions of a pseudo-terminal session","tags":["process"],"summary":"Resize a PTY session","operationId":"ResizePtySession","parameters":[{"description":"PTY session ID","name":"sessionId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PtyResizeRequest"}}},"description":"Resize request with new dimensions","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PtySessionInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"410":{"description":"Gone","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/process/session":{"get":{"description":"Get a list of all active shell sessions","tags":["process"],"summary":"List all sessions","operationId":"ListSessions","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Session"}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"post":{"description":"Create a new shell session for command execution","tags":["process"],"summary":"Create a new session","operationId":"CreateSession","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSessionRequest"}}},"description":"Session creation request","required":true},"responses":{"201":{"description":"Created"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/process/session/entrypoint":{"get":{"description":"Get details of an entrypoint session including its commands","tags":["process"],"summary":"Get entrypoint session details","operationId":"GetEntrypointSession","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Session"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/process/session/entrypoint/logs":{"get":{"description":"Get logs for a sandbox entrypoint session. Returns JSON with separated stdout/stderr for SDK >= 0.161.0, plain text otherwise. Supports WebSocket streaming.","tags":["process"],"summary":"Get entrypoint logs","operationId":"GetEntrypointLogs","parameters":[{"description":"Follow logs in real-time (WebSocket only)","name":"follow","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Entrypoint log content","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionCommandLogsResponse"}},"text/plain":{"schema":{"$ref":"#/components/schemas/SessionCommandLogsResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}},"text/plain":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}},"text/plain":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/process/session/{sessionId}":{"get":{"description":"Get details of a specific session including its commands","tags":["process"],"summary":"Get session details","operationId":"GetSession","parameters":[{"description":"Session ID","name":"sessionId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Session"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"delete":{"description":"Delete an existing shell session","tags":["process"],"summary":"Delete a session","operationId":"DeleteSession","parameters":[{"description":"Session ID","name":"sessionId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/process/session/{sessionId}/command/{commandId}":{"get":{"description":"Get details of a specific command within a session","tags":["process"],"summary":"Get session command details","operationId":"GetSessionCommand","parameters":[{"description":"Session ID","name":"sessionId","in":"path","required":true,"schema":{"type":"string"}},{"description":"Command ID","name":"commandId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Command"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/process/session/{sessionId}/command/{commandId}/input":{"post":{"description":"Send input data to a running command in a session for interactive execution","tags":["process"],"summary":"Send input to command","operationId":"SendInput","parameters":[{"description":"Session ID","name":"sessionId","in":"path","required":true,"schema":{"type":"string"}},{"description":"Command ID","name":"commandId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionSendInputRequest"}}},"description":"Input send request","required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"410":{"description":"Gone","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/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 >= 0.167.0, plain text otherwise. Supports WebSocket streaming.","tags":["process"],"summary":"Get session command logs","operationId":"GetSessionCommandLogs","parameters":[{"description":"Session ID","name":"sessionId","in":"path","required":true,"schema":{"type":"string"}},{"description":"Command ID","name":"commandId","in":"path","required":true,"schema":{"type":"string"}},{"description":"Follow logs in real-time (WebSocket only)","name":"follow","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Log content (JSON for new SDKs, plain text for old SDKs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionCommandLogsResponse"}},"text/plain":{"schema":{"$ref":"#/components/schemas/SessionCommandLogsResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}},"text/plain":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}},"text/plain":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}},"text/plain":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}},"text/plain":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/process/session/{sessionId}/exec":{"post":{"description":"Execute a command within an existing shell session","tags":["process"],"summary":"Execute command in session","operationId":"SessionExecuteCommand","parameters":[{"description":"Session ID","name":"sessionId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionExecuteRequest"}}},"description":"Command execution request","required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionExecuteResponse"}}}},"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionExecuteResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/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.","tags":["system"],"summary":"Get sandbox resource metrics","operationId":"GetSystemMetrics","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SystemMetrics"}}}}}}},"/user-home-dir":{"get":{"description":"Get the current user home directory path.","tags":["info"],"summary":"Get user home directory","operationId":"GetUserHomeDir","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserHomeDirResponse"}}}}}}},"/version":{"get":{"description":"Get the current daemon version","tags":["info"],"summary":"Get version","operationId":"GetVersion","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"string"}}}}}}}},"/work-dir":{"get":{"description":"Get the current working directory path. This is default directory used for running commands.","tags":["info"],"summary":"Get working directory","operationId":"GetWorkDir","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkDirResponse"}}}}}}}},"components":{"requestBodies":{"LspDocumentRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LspDocumentRequest"}}},"description":"Document request","required":true},"LspServerRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LspServerRequest"}}},"description":"LSP server request","required":true}},"securitySchemes":{"Bearer":{"description":"Type \"Bearer\" followed by a space and your API key.","type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"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":"#/components/schemas/computeruse.AccessibilityNode"}},"truncated":{"type":"boolean"}}},"AccessibilitySetValueRequest":{"type":"object","required":["id"],"properties":{"id":{"type":"string"},"value":{"type":"string"}}},"AccessibilityTreeResponse":{"type":"object","properties":{"root":{"$ref":"#/components/schemas/computeruse.AccessibilityNode"},"truncated":{"type":"boolean"}}},"Chart":{"type":"object","properties":{"elements":{"type":"array","items":{"$ref":"#/components/schemas/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":"#/components/schemas/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":"#/components/schemas/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":"#/components/schemas/CompletionItem"}}}},"ComputerUseStartResponse":{"type":"object","properties":{"message":{"type":"string"},"status":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/ProcessStatus"}}}},"ComputerUseStatusResponse":{"type":"object","properties":{"status":{"type":"string"}}},"ComputerUseStopResponse":{"type":"object","properties":{"message":{"type":"string"},"status":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/ProcessStatus"}}}},"CreateContextRequest":{"type":"object","properties":{"cwd":{"type":"string"},"language":{"type":"string"}}},"CreateSessionRequest":{"type":"object","required":["sessionId"],"properties":{"sessionId":{"type":"string"}}},"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":"#/components/schemas/DisplayInfo"}}}},"Empty":{"type":"object"},"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":"#/components/schemas/Status"},"worktree":{"$ref":"#/components/schemas/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":"#/components/schemas/FileStatus"}},"upstream":{"description":"Upstream is the upstream tracking branch (e.g. \"origin/main\"), empty when unset.","type":"string"}}},"InitializeRequest":{"type":"object","required":["token"],"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"}}},"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":"#/components/schemas/InterpreterContext"}}}},"ListRecordingsResponse":{"type":"object","required":["recordings"],"properties":{"recordings":{"type":"array","items":{"$ref":"#/components/schemas/Recording"}}}},"ListRemotesResponse":{"type":"object","required":["remotes"],"properties":{"remotes":{"type":"array","items":{"$ref":"#/components/schemas/GitRemote"}}}},"LspCompletionParams":{"type":"object","required":["languageId","pathToProject","position","uri"],"properties":{"context":{"$ref":"#/components/schemas/CompletionContext"},"languageId":{"type":"string"},"pathToProject":{"type":"string"},"position":{"$ref":"#/components/schemas/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":"#/components/schemas/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":"#/components/schemas/LspPosition"},"start":{"$ref":"#/components/schemas/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":"#/components/schemas/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"},"double":{"type":"boolean"},"x":{"type":"integer"},"y":{"type":"integer"}}},"MouseClickResponse":{"type":"object","properties":{"x":{"type":"integer"},"y":{"type":"integer"}}},"MouseDragRequest":{"type":"object","properties":{"button":{"type":"string"},"endX":{"type":"integer"},"endY":{"type":"integer"},"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","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":"#/components/schemas/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":"#/components/schemas/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":"#/components/schemas/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"}}},"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":"#/components/schemas/WindowInfo"}}}},"WorkDirResponse":{"type":"object","required":["dir"],"properties":{"dir":{"type":"string"}}},"computeruse.AccessibilityNode":{"type":"object","properties":{"actions":{"type":"array","items":{"type":"string"}},"bounds":{"$ref":"#/components/schemas/AccessibilityBounds"},"children":{"type":"array","items":{"$ref":"#/components/schemas/computeruse.AccessibilityNode"}},"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"},"role":{"type":"string"},"states":{"type":"array","items":{"type":"string"}}}},"gin.H":{"type":"object","additionalProperties":{}},"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","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","CodeLspServerNotInitialized","CodeProcessExecutionTimeout","CodeProcessNotFound","CodeSessionEnded","CodeCommandAlreadyCompleted","CodeA11yUnavailable","CodeRecordingStillActive","CodeRecordingFfmpegNotFound","CodeBadRequest","CodeInvalidRequestBody","CodeUnauthorized","CodeForbidden","CodeNotFound","CodeConflict","CodeRequestTimeout","CodeGone","CodeUnprocessableEntity","CodeInternalServerError"]},"ErrorResponse":{"description":"Error response","type":"object","required":["message","path","statusCode","timestamp"],"properties":{"code":{"allOf":[{"$ref":"#/components/schemas/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"}}}}},"tags":[{"name":"computer-use"},{"name":"server"},{"name":"file-system"},{"name":"git"},{"name":"lsp"},{"name":"port"},{"name":"process"},{"name":"interpreter"},{"name":"system"},{"name":"info"}]}