{"owner":"agent-infra","repo":"sandbox","hasSpec":true,"specFile":"website/docs/public/v1/openapi.json","branch":"HEAD","format":"json","version":"3.1.0","title":"FastAPI","description":"\n- Browser\n    - CDP: [/cdp/json/version](/cdp/json/version)\n- Jupyter\n    - Notebook: [/jupyter](/jupyter)\n- MCP\n    - Streamable HTTP: [/mcp](/mcp) or [/v1/mcp](/v1/mcp)\n","pathsCount":123,"endpoints":[{"method":"GET","path":"/v1/sandbox","summary":"Get Sandbox Context"},{"method":"GET","path":"/v1/sandbox/packages/python","summary":"Python Packages"},{"method":"GET","path":"/v1/sandbox/packages/nodejs","summary":"Nodejs Packages"},{"method":"POST","path":"/v1/sandbox/hooks","summary":"Register Hook"},{"method":"GET","path":"/v1/sandbox/hooks","summary":"List Hooks"},{"method":"DELETE","path":"/v1/sandbox/hooks/{name}","summary":"Remove Hook"},{"method":"GET","path":"/v1/sandbox/observe/status","summary":"Observe Status"},{"method":"GET","path":"/v1/sandbox/observe/live","summary":"Observe Live"},{"method":"POST","path":"/v1/sandbox/observe/start","summary":"Observe Start"},{"method":"POST","path":"/v1/sandbox/observe/stop","summary":"Observe Stop"},{"method":"POST","path":"/v1/sandbox/observe/export","summary":"Observe Export"},{"method":"GET","path":"/v1/sandbox/observe/reports","summary":"Observe Reports"},{"method":"GET","path":"/v1/sandbox/observe/reports/{report_id}","summary":"Observe Report Download"},{"method":"DELETE","path":"/v1/sandbox/observe/reports/{report_id}","summary":"Observe Report Delete"},{"method":"POST","path":"/v1/shell/exec","summary":"Exec Command"},{"method":"POST","path":"/v1/shell/view","summary":"View Shell"},{"method":"POST","path":"/v1/shell/wait","summary":"Wait For Process"},{"method":"POST","path":"/v1/shell/write","summary":"Write To Process"},{"method":"POST","path":"/v1/shell/kill","summary":"Kill Process"},{"method":"POST","path":"/v1/shell/sessions/create","summary":"Create Session"},{"method":"POST","path":"/v1/shell/sessions/update","summary":"Update Session"},{"method":"GET","path":"/v1/shell/terminal-url","summary":"Get Terminal Url"},{"method":"GET","path":"/v1/shell/sessions/stats","summary":"Get Session Stats"},{"method":"GET","path":"/v1/shell/sessions","summary":"List Sessions"},{"method":"DELETE","path":"/v1/shell/sessions","summary":"Cleanup All Sessions"},{"method":"DELETE","path":"/v1/shell/sessions/{session_id}","summary":"Cleanup Session"},{"method":"POST","path":"/v1/bash/exec","summary":"Exec"},{"method":"POST","path":"/v1/bash/output","summary":"Output"},{"method":"POST","path":"/v1/bash/write","summary":"Write"},{"method":"POST","path":"/v1/bash/kill","summary":"Kill"},{"method":"GET","path":"/v1/bash/sessions","summary":"Sessions"},{"method":"POST","path":"/v1/bash/sessions/create","summary":"Create Session"},{"method":"POST","path":"/v1/bash/sessions/{session_id}/close","summary":"Close Session"},{"method":"POST","path":"/v1/file/read","summary":"Read File"},{"method":"POST","path":"/v1/file/write","summary":"Write File"},{"method":"POST","path":"/v1/file/replace","summary":"Replace In File"},{"method":"POST","path":"/v1/file/search","summary":"Search In File"},{"method":"POST","path":"/v1/file/find","summary":"Find Files"},{"method":"POST","path":"/v1/file/grep","summary":"Grep Files"},{"method":"POST","path":"/v1/file/glob","summary":"Glob Files"},{"method":"POST","path":"/v1/file/upload","summary":"Upload File"},{"method":"GET","path":"/v1/file/download","summary":"Download File"},{"method":"POST","path":"/v1/file/list","summary":"List Path"},{"method":"POST","path":"/v1/file/str_replace_editor","summary":"Str Replace Editor"},{"method":"POST","path":"/v1/jupyter/execute","summary":"Execute Jupyter Code"},{"method":"GET","path":"/v1/jupyter/info","summary":"Jupyter Info"},{"method":"GET","path":"/v1/jupyter/sessions","summary":"List Sessions"},{"method":"DELETE","path":"/v1/jupyter/sessions","summary":"Cleanup All Sessions"},{"method":"DELETE","path":"/v1/jupyter/sessions/{session_id}","summary":"Cleanup Session"},{"method":"POST","path":"/v1/jupyter/sessions/create","summary":"Create Jupyter Session"},{"method":"POST","path":"/v1/nodejs/execute","summary":"Execute Nodejs Code"},{"method":"GET","path":"/v1/nodejs/info","summary":"Nodejs Info"},{"method":"POST","path":"/v1/nodejs/sessions","summary":"Create Nodejs Session"},{"method":"GET","path":"/v1/nodejs/sessions","summary":"List Nodejs Sessions"},{"method":"GET","path":"/v1/nodejs/sessions/{session_id}","summary":"Get Nodejs Session"},{"method":"PATCH","path":"/v1/nodejs/sessions/{session_id}","summary":"Update Nodejs Session"},{"method":"DELETE","path":"/v1/nodejs/sessions/{session_id}","summary":"Delete Nodejs Session"},{"method":"GET","path":"/v1/mcp/{server_name}/tools","summary":"List Mcp Tools"},{"method":"POST","path":"/v1/mcp/{server_name}/tools/{tool_name}","summary":"Execute Mcp Tool"},{"method":"GET","path":"/v1/mcp/servers","summary":"List Mcp Servers"},{"method":"GET","path":"/v1/browser/info","summary":"Get Browser Info"},{"method":"GET","path":"/v1/browser/screenshot","summary":"Take Screenshot"},{"method":"POST","path":"/v1/browser/actions","summary":"Execute Action"},{"method":"POST","path":"/v1/browser/config","summary":"Set Config"},{"method":"POST","path":"/v1/browser/page/navigate","summary":"Navigate"},{"method":"POST","path":"/v1/browser/page/back","summary":"Go Back"},{"method":"POST","path":"/v1/browser/page/forward","summary":"Go Forward"},{"method":"POST","path":"/v1/browser/page/reload","summary":"Reload"},{"method":"POST","path":"/v1/browser/page/click","summary":"Click"},{"method":"POST","path":"/v1/browser/page/fill","summary":"Fill"},{"method":"POST","path":"/v1/browser/page/type","summary":"Type Text"},{"method":"POST","path":"/v1/browser/page/press_key","summary":"Press Key"},{"method":"POST","path":"/v1/browser/page/hot_key","summary":"Hot Key"},{"method":"POST","path":"/v1/browser/page/hover","summary":"Hover"},{"method":"POST","path":"/v1/browser/page/select_option","summary":"Select Option"},{"method":"POST","path":"/v1/browser/page/check","summary":"Check"},{"method":"POST","path":"/v1/browser/page/uncheck","summary":"Uncheck"},{"method":"POST","path":"/v1/browser/page/upload_file","summary":"Upload File"},{"method":"POST","path":"/v1/browser/page/fill_form","summary":"Fill Form"},{"method":"POST","path":"/v1/browser/page/scroll","summary":"Scroll"},{"method":"POST","path":"/v1/browser/page/scroll_to","summary":"Scroll To"},{"method":"POST","path":"/v1/browser/page/scroll_to_element","summary":"Scroll To Element"},{"method":"GET","path":"/v1/browser/page/screenshot","summary":"Page Screenshot"},{"method":"POST","path":"/v1/browser/page/record","summary":"Page Record"},{"method":"GET","path":"/v1/browser/page/html","summary":"Get Html"},{"method":"GET","path":"/v1/browser/page/text","summary":"Get Text"},{"method":"GET","path":"/v1/browser/page/markdown","summary":"Get Markdown"},{"method":"GET","path":"/v1/browser/page/elements","summary":"Get Interactive Elements"},{"method":"GET","path":"/v1/browser/page/console","summary":"Get Console Logs"},{"method":"POST","path":"/v1/browser/page/console/export","summary":"Export Console Logs"},{"method":"POST","path":"/v1/browser/page/evaluate","summary":"Evaluate"},{"method":"POST","path":"/v1/browser/page/find_text","summary":"Find Text"},{"method":"POST","path":"/v1/browser/page/wait","summary":"Wait"},{"method":"GET","path":"/v1/browser/tabs","summary":"List Tabs"},{"method":"POST","path":"/v1/browser/tabs","summary":"Create Tab"},{"method":"DELETE","path":"/v1/browser/tabs/{index}","summary":"Close Tab"},{"method":"PUT","path":"/v1/browser/tabs/{index}/activate","summary":"Activate Tab"},{"method":"GET","path":"/v1/browser/cookies","summary":"Get Cookies"},{"method":"POST","path":"/v1/browser/cookies","summary":"Set Cookies"},{"method":"DELETE","path":"/v1/browser/cookies","summary":"Clear Cookies"}],"spec":{"openapi":"3.1.0","info":{"title":"FastAPI","description":"\n- Browser\n    - CDP: [/cdp/json/version](/cdp/json/version)\n- Jupyter\n    - Notebook: [/jupyter](/jupyter)\n- MCP\n    - Streamable HTTP: [/mcp](/mcp) or [/v1/mcp](/v1/mcp)\n","version":"1.9.4"},"paths":{"/v1/sandbox":{"get":{"tags":["sandbox"],"summary":"Get Sandbox Context","description":"Get sandbox environment information","operationId":"get_sandbox_context_v1_sandbox_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SandboxResponse"}}}}},"x-fern-sdk-group-name":"sandbox","x-fern-sdk-method-name":"get_context"}},"/v1/sandbox/packages/python":{"get":{"tags":["sandbox"],"summary":"Python Packages","description":"Get installed Python packages","operationId":"python_packages_v1_sandbox_packages_python_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}}},"x-fern-sdk-group-name":"sandbox","x-fern-sdk-method-name":"get_python_packages"}},"/v1/sandbox/packages/nodejs":{"get":{"tags":["sandbox"],"summary":"Nodejs Packages","description":"Get installed Node.js packages","operationId":"nodejs_packages_v1_sandbox_packages_nodejs_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}}},"x-fern-sdk-group-name":"sandbox","x-fern-sdk-method-name":"get_nodejs_packages"}},"/v1/sandbox/hooks":{"post":{"tags":["sandbox"],"summary":"Register Hook","description":"Register a lifecycle hook. Currently supported events: shutdown.","operationId":"register_hook_v1_sandbox_hooks_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterHookRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_SandboxHook_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"sandbox","x-fern-sdk-method-name":"register_hook"},"get":{"tags":["sandbox"],"summary":"List Hooks","description":"List registered lifecycle hooks, optionally filtered by event.","operationId":"list_hooks_v1_sandbox_hooks_get","parameters":[{"name":"event","in":"query","required":false,"schema":{"type":"string","default":"shutdown","title":"Event"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_list_SandboxHook__"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"sandbox","x-fern-sdk-method-name":"list_hooks"}},"/v1/sandbox/hooks/{name}":{"delete":{"tags":["sandbox"],"summary":"Remove Hook","description":"Remove a hook by name. ENV hooks cannot be removed.","operationId":"remove_hook_v1_sandbox_hooks__name__delete","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"sandbox","x-fern-sdk-method-name":"remove_hook"}},"/v1/sandbox/observe/status":{"get":{"tags":["sandbox"],"summary":"Observe Status","operationId":"observe_status_v1_sandbox_observe_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ObservationStatus_"}}}}},"x-fern-sdk-group-name":"sandbox","x-fern-sdk-method-name":"observe_status"}},"/v1/sandbox/observe/live":{"get":{"tags":["sandbox"],"summary":"Observe Live","operationId":"observe_live_v1_sandbox_observe_live_get","parameters":[{"name":"top_rows","in":"query","required":false,"schema":{"type":"integer","default":10,"title":"Top Rows"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ObservationLiveSnapshot_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"sandbox","x-fern-sdk-method-name":"observe_live"}},"/v1/sandbox/observe/start":{"post":{"tags":["sandbox"],"summary":"Observe Start","operationId":"observe_start_v1_sandbox_observe_start_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ObserveStartRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ObservationStartResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"sandbox","x-fern-sdk-method-name":"observe_start"}},"/v1/sandbox/observe/stop":{"post":{"tags":["sandbox"],"summary":"Observe Stop","operationId":"observe_stop_v1_sandbox_observe_stop_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ObserveStopRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ObservationStopResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"sandbox","x-fern-sdk-method-name":"observe_stop"}},"/v1/sandbox/observe/export":{"post":{"tags":["sandbox"],"summary":"Observe Export","operationId":"observe_export_v1_sandbox_observe_export_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ObserveExportRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ObservationExportResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"sandbox","x-fern-sdk-method-name":"observe_export"}},"/v1/sandbox/observe/reports":{"get":{"tags":["sandbox"],"summary":"Observe Reports","operationId":"observe_reports_v1_sandbox_observe_reports_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_list_ObservationReportInfo__"}}}}},"x-fern-sdk-group-name":"sandbox","x-fern-sdk-method-name":"observe_reports"}},"/v1/sandbox/observe/reports/{report_id}":{"get":{"tags":["sandbox"],"summary":"Observe Report Download","operationId":"observe_report_download_v1_sandbox_observe_reports__report_id__get","parameters":[{"name":"report_id","in":"path","required":true,"schema":{"type":"string","title":"Report Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/gzip":{"schema":{"type":"string","format":"binary"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"sandbox","x-fern-sdk-method-name":"observe_report_download"},"delete":{"tags":["sandbox"],"summary":"Observe Report Delete","operationId":"observe_report_delete_v1_sandbox_observe_reports__report_id__delete","parameters":[{"name":"report_id","in":"path","required":true,"schema":{"type":"string","title":"Report Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ObservationReportInfo_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"sandbox","x-fern-sdk-method-name":"observe_report_delete"}},"/v1/shell/exec":{"post":{"tags":["shell"],"summary":"Exec Command","description":"Execute command in the specified shell session\nSupports SSE streaming if Accept header contains 'text/event-stream'","operationId":"exec_command_v1_shell_exec_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShellExecRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ShellCommandResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"shell","x-fern-sdk-method-name":"exec_command"}},"/v1/shell/view":{"post":{"tags":["shell"],"summary":"View Shell","description":"View output of the specified shell session\nSupports SSE streaming if Accept header contains 'text/event-stream'","operationId":"view_shell_v1_shell_view_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShellViewRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ShellViewResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"shell","x-fern-sdk-method-name":"view"}},"/v1/shell/wait":{"post":{"tags":["shell"],"summary":"Wait For Process","description":"Wait for the process in the specified shell session to return","operationId":"wait_for_process","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShellWaitRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ShellWaitResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"shell","x-fern-sdk-method-name":"wait_for_process"}},"/v1/shell/write":{"post":{"tags":["shell"],"summary":"Write To Process","description":"Write input to the process in the specified shell session","operationId":"write_to_process","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShellWriteToProcessRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ShellWriteResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"shell","x-fern-sdk-method-name":"write_to_process"}},"/v1/shell/kill":{"post":{"tags":["shell"],"summary":"Kill Process","description":"Terminate the process in the specified shell session","operationId":"kill_shell_process","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShellKillProcessRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ShellKillResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"shell","x-fern-sdk-method-name":"kill_process"}},"/v1/shell/sessions/create":{"post":{"tags":["shell"],"summary":"Create Session","description":"Create a new shell session and return its ID\nIf id already exists, return the existing session","operationId":"create_shell_session","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShellCreateSessionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ShellCreateSessionResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"shell","x-fern-sdk-method-name":"create_session"}},"/v1/shell/sessions/update":{"post":{"tags":["shell"],"summary":"Update Session","description":"Update shell session configuration (e.g., no_change_timeout)","operationId":"update_shell_session","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShellUpdateSessionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"shell","x-fern-sdk-method-name":"update_session"}},"/v1/shell/terminal-url":{"get":{"tags":["shell"],"summary":"Get Terminal Url","description":"Create a new shell session and return the terminal URL","operationId":"get_terminal_url","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_str_"}}}}},"x-fern-sdk-group-name":"shell","x-fern-sdk-method-name":"get_terminal_url"}},"/v1/shell/sessions/stats":{"get":{"tags":["shell"],"summary":"Get Session Stats","description":"Return aggregate statistics for shell sessions.","operationId":"get_shell_session_stats","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ShellSessionStats_"}}}}},"x-fern-sdk-group-name":"shell","x-fern-sdk-method-name":"get_session_stats"}},"/v1/shell/sessions":{"get":{"tags":["shell"],"summary":"List Sessions","description":"List all active shell sessions","operationId":"list_shell_sessions","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ActiveShellSessionsResult_"}}}}},"x-fern-sdk-group-name":"shell","x-fern-sdk-method-name":"list_sessions"},"delete":{"tags":["shell"],"summary":"Cleanup All Sessions","description":"Cleanup all active shell sessions","operationId":"cleanup_all_sessions","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}}},"x-fern-sdk-group-name":"shell","x-fern-sdk-method-name":"cleanup_all_sessions"}},"/v1/shell/sessions/{session_id}":{"delete":{"tags":["shell"],"summary":"Cleanup Session","description":"Manually cleanup a specific shell session","operationId":"cleanup_shell_session","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"shell","x-fern-sdk-method-name":"cleanup_session"}},"/v1/bash/exec":{"post":{"tags":["bash"],"summary":"Exec","description":"Execute a bash command.\n\nStatus values in `data.status`:\n- `running`: the process is still executing. Returned immediately for\n  `async_mode=true`, or when sync mode hits `timeout` before completion.\n- `completed`: the process exited and `exit_code` is available. This does\n  not imply success; non-zero shell exit codes still use `completed`.\n- `timed_out`: the process exceeded `hard_timeout` and was force-killed.\n- `killed`: the process was terminated by `/v1/bash/kill`, session cleanup,\n  or an internal execution failure before normal completion.\n\nHow to consume the result:\n- Treat `status` as lifecycle state, not success/failure.\n- If `status=running`, keep polling `/v1/bash/output` with the returned\n  `session_id`, `command_id`, `offset`, and `stderr_offset`.\n- If `status=completed`, check `exit_code`: `0` means success, non-zero\n  means the command finished but failed.\n- If `status=timed_out` or `status=killed`, show the current output as a\n  partial result and surface the command as interrupted.\n- Empty `stdout` or `stderr` does not mean the command did not run.\n\n- async_mode=true: returns immediately with RUNNING status\n- async_mode=false + timeout: waits up to timeout, then returns RUNNING if not done\n- async_mode=false + no timeout: waits until command completes\n- hard_timeout: kills the process after this many seconds\n- env: extra environment variables for this command only","operationId":"exec","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BashExecRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_BashExecResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"bash","x-fern-sdk-method-name":"exec"}},"/v1/bash/output":{"post":{"tags":["bash"],"summary":"Output","description":"Read output from a bash session using offset-based streaming.\n\n`data.command.status` uses the same command-status values as `/v1/bash/exec`:\n`running`, `completed`, `timed_out`, or `killed`.\n\nRecommended consumption pattern:\n- Start with `/v1/bash/exec`.\n- If the command is still `running`, call `/v1/bash/output` repeatedly.\n- Reuse the returned `offset` and `stderr_offset` to fetch only new data.\n- Stop polling when `data.command.status` is no longer `running`.\n- Use the final `exit_code` to decide whether the command succeeded.\n\n- offset/stderr_offset: byte offsets to read from (use values from previous response)\n- wait=true: long-poll until new output arrives or wait_timeout","operationId":"output","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BashOutputRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_BashOutputResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"bash","x-fern-sdk-method-name":"output"}},"/v1/bash/write":{"post":{"tags":["bash"],"summary":"Write","description":"Write input to a bash session's stdin.","operationId":"write","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BashWriteRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"bash","x-fern-sdk-method-name":"write"}},"/v1/bash/kill":{"post":{"tags":["bash"],"summary":"Kill","description":"Send a signal to a bash session's process.","operationId":"kill","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BashKillRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"bash","x-fern-sdk-method-name":"kill"}},"/v1/bash/sessions":{"get":{"tags":["bash"],"summary":"Sessions","description":"List all active bash sessions.\n\nSession status values:\n- `ready`: session exists and can accept commands\n- `closed`: session has been closed and cannot be reused","operationId":"sessions","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_list_BashSessionInfo__"}}}}},"x-fern-sdk-group-name":"bash","x-fern-sdk-method-name":"sessions"}},"/v1/bash/sessions/create":{"post":{"tags":["bash"],"summary":"Create Session","description":"Create a new bash session.","operationId":"create_session","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BashSessionCreateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_BashSessionInfo_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"bash","x-fern-sdk-method-name":"create_session"}},"/v1/bash/sessions/{session_id}/close":{"post":{"tags":["bash"],"summary":"Close Session","description":"Close a bash session.","operationId":"close_session","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"bash","x-fern-sdk-method-name":"close_session"}},"/v1/file/read":{"post":{"tags":["file"],"summary":"Read File","description":"Read file content","operationId":"read_file","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileReadRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_Union_FileReadResult__FileOperationError__"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"read_file"}},"/v1/file/write":{"post":{"tags":["file"],"summary":"Write File","description":"Write file content (supports both text and binary files)\n\nFor binary files, set encoding to 'base64' and provide base64-encoded content.\nFor text files, use default 'utf-8' encoding.","operationId":"write_file","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileWriteRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_Union_FileWriteResult__FileOperationError__"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"write_file"}},"/v1/file/replace":{"post":{"tags":["file"],"summary":"Replace In File","description":"Replace string in file","operationId":"replace_in_file","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileReplaceRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_Union_FileReplaceResult__FileOperationError__"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"replace_in_file"}},"/v1/file/search":{"post":{"tags":["file"],"summary":"Search In File","description":"Search in file content","operationId":"search_in_file","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileSearchRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_Union_FileSearchResult__FileOperationError__"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"search_in_file"}},"/v1/file/find":{"post":{"tags":["file"],"summary":"Find Files","description":"Find files by name pattern","operationId":"find_files_v1_file_find_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileFindRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_Union_FileFindResult__FileOperationError__"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"find_files"}},"/v1/file/grep":{"post":{"tags":["file"],"summary":"Grep Files","description":"Multi-file content search (grep) with regex or fixed string support","operationId":"grep_files","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileGrepRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_Union_FileGrepResult__FileOperationError__"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"grep_files"}},"/v1/file/glob":{"post":{"tags":["file"],"summary":"Glob Files","description":"Enhanced file glob matching with optional metadata","operationId":"glob_files","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileGlobRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_Union_FileGlobResult__FileOperationError__"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"glob_files"}},"/v1/file/upload":{"post":{"tags":["file"],"summary":"Upload File","description":"Upload file using streaming","operationId":"upload_file","requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_upload_file"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_Union_FileUploadResult__FileOperationError__"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"upload_file"}},"/v1/file/download":{"get":{"tags":["file"],"summary":"Download File","description":"Download a file.\n\nWhen ``change_policy=abort``, the server aborts the download if the source\nfile changes before streaming starts or while bytes are being sent.","operationId":"download_file","parameters":[{"name":"path","in":"query","required":true,"schema":{"type":"string","title":"Path"}},{"name":"change_policy","in":"query","required":false,"schema":{"$ref":"#/components/schemas/FileDownloadChangePolicy","default":"ignore"}}],"responses":{"200":{"description":"Successful Response","content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"}}}},"409":{"description":"File changed before or during download when change_policy=abort"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"download_file"}},"/v1/file/list":{"post":{"tags":["file"],"summary":"List Path","description":"List path contents with flexible options","operationId":"list_path_v1_file_list_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileListRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_Union_FileListResult__FileOperationError__"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"list_path"}},"/v1/file/str_replace_editor":{"post":{"tags":["file"],"summary":"Str Replace Editor","description":"An filesystem editor tool that allows the agent to\n- view\n- create\n- navigate\n- edit files\nThe tool parameters are defined by Anthropic and are not editable.","operationId":"str_replace_editor_v1_file_str_replace_editor_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StrReplaceEditorRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_Union_StrReplaceEditorResult__FileOperationError__"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"str_replace_editor"}},"/v1/jupyter/execute":{"post":{"tags":["jupyter"],"summary":"Execute Jupyter Code","description":"Execute Python code using Jupyter kernel with session persistence\n\nThis endpoint allows you to execute Python code and get results back.\nYou can optionally specify a kernel_name.\nIf omitted, the runtime default resolved from `PYTHON_VERSION` is used.\nUse session_id to maintain variable state across multiple requests.\nSessions automatically expire after 30 minutes of inactivity.","operationId":"jupyter_execute_code","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JupyterExecuteRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_JupyterExecuteResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-method-name":"execute_code","x-fern-sdk-group-name":"jupyter"}},"/v1/jupyter/info":{"get":{"tags":["jupyter"],"summary":"Jupyter Info","description":"Get information about available Jupyter kernels","operationId":"get_jupyter_info","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_JupyterInfoResponse_"}}}}},"x-fern-sdk-group-name":"jupyter","x-fern-sdk-method-name":"get_info"}},"/v1/jupyter/sessions":{"get":{"tags":["jupyter"],"summary":"List Sessions","description":"List all active Jupyter sessions","operationId":"list_jupyter_sessions","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ActiveSessionsResult_"}}}}},"x-fern-sdk-group-name":"jupyter","x-fern-sdk-method-name":"list_sessions"},"delete":{"tags":["jupyter"],"summary":"Cleanup All Sessions","description":"Cleanup all active sessions","operationId":"delete_jupyter_sessions","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}}},"x-fern-sdk-group-name":"jupyter","x-fern-sdk-method-name":"delete_sessions"}},"/v1/jupyter/sessions/{session_id}":{"delete":{"tags":["jupyter"],"summary":"Cleanup Session","description":"Manually cleanup a specific session","operationId":"delete_jupyter_session","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"jupyter","x-fern-sdk-method-name":"delete_session"}},"/v1/jupyter/sessions/create":{"post":{"tags":["jupyter"],"summary":"Create Jupyter Session","description":"Create a new Jupyter session","operationId":"create_jupyter_session","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JupyterCreateSessionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_JupyterCreateSessionResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"jupyter","x-fern-sdk-method-name":"create_session"}},"/v1/nodejs/execute":{"post":{"tags":["nodejs"],"summary":"Execute Nodejs Code","description":"Execute JavaScript code using Node.js\n\nThis endpoint allows you to execute JavaScript code and get results back.\n\nFor stateless execution (default):\n- Each request creates a fresh execution environment\n- Environment is cleaned up automatically after execution\n\nFor stateful execution (stateful=True):\n- Uses persistent REPL session that maintains state between requests\n- Variables, functions, and imports persist across calls\n- Returns session_id to continue the session in subsequent requests\n- Supports async/await at top level","operationId":"execute_nodejs_code","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NodeJSExecuteRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_NodeJSExecuteResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"nodejs","x-fern-sdk-method-name":"execute_code"}},"/v1/nodejs/info":{"get":{"tags":["nodejs"],"summary":"Nodejs Info","description":"Get information about Node.js REPL runtime, including installed packages\n\nReturns Node.js version, npm version, and lists of installed packages\nfrom both the runtime directory and global npm directory.","operationId":"get_nodejs_info","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_NodeJSRuntimeInfo_"}}}}},"x-fern-sdk-group-name":"nodejs","x-fern-sdk-method-name":"get_info"}},"/v1/nodejs/sessions":{"post":{"tags":["nodejs"],"summary":"Create Nodejs Session","description":"Create a new Node.js REPL session\n\nCreates a new persistent REPL session with configurable working directory\nand idle timeout. Use the returned session_id in subsequent execute requests.","operationId":"create_nodejs_session","parameters":[{"name":"version","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Node.js version to target: \"node20\", \"node22\", \"node24\", or aliases \"20\", \"22\", \"24\"","title":"Version"},"description":"Node.js version to target: \"node20\", \"node22\", \"node24\", or aliases \"20\", \"22\", \"24\""}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NodeJSCreateSessionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_NodeJSCreateSessionResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"nodejs","x-fern-sdk-method-name":"create_session"},"get":{"tags":["nodejs"],"summary":"List Nodejs Sessions","description":"List all active Node.js REPL sessions\n\nReturns information about all active sessions including their state,\nworking directory, and idle time.","operationId":"list_nodejs_sessions","parameters":[{"name":"version","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Node.js version to target: \"node20\", \"node22\", \"node24\", or aliases \"20\", \"22\", \"24\"","title":"Version"},"description":"Node.js version to target: \"node20\", \"node22\", \"node24\", or aliases \"20\", \"22\", \"24\""}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_NodeJSSessionListResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"nodejs","x-fern-sdk-method-name":"list_sessions"}},"/v1/nodejs/sessions/{session_id}":{"get":{"tags":["nodejs"],"summary":"Get Nodejs Session","description":"Get information about a specific Node.js REPL session\n\nReturns detailed information about a session including its state,\nworking directory, creation time, and idle time.","operationId":"get_nodejs_session","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"version","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Node.js version to target: \"node20\", \"node22\", \"node24\", or aliases \"20\", \"22\", \"24\"","title":"Version"},"description":"Node.js version to target: \"node20\", \"node22\", \"node24\", or aliases \"20\", \"22\", \"24\""}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_NodeJSSessionResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"nodejs","x-fern-sdk-method-name":"get_session"},"patch":{"tags":["nodejs"],"summary":"Update Nodejs Session","description":"Update a Node.js REPL session configuration\n\nUpdates session properties like maximum idle time or working directory.","operationId":"update_nodejs_session","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"version","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Node.js version to target: \"node20\", \"node22\", \"node24\", or aliases \"20\", \"22\", \"24\"","title":"Version"},"description":"Node.js version to target: \"node20\", \"node22\", \"node24\", or aliases \"20\", \"22\", \"24\""}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NodeJSUpdateSessionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_NodeJSUpdateSessionResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"nodejs","x-fern-sdk-method-name":"update_session"},"delete":{"tags":["nodejs"],"summary":"Delete Nodejs Session","description":"Delete a Node.js REPL session\n\nTerminates the session and releases all associated resources.","operationId":"delete_nodejs_session","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"version","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Node.js version to target: \"node20\", \"node22\", \"node24\", or aliases \"20\", \"22\", \"24\"","title":"Version"},"description":"Node.js version to target: \"node20\", \"node22\", \"node24\", or aliases \"20\", \"22\", \"24\""}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_NodeJSDeleteSessionResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"nodejs","x-fern-sdk-method-name":"delete_session"}},"/v1/mcp/{server_name}/tools":{"get":{"tags":["mcp"],"summary":"List Mcp Tools","description":"List all available tools from the specified MCP server\n\nArgs:\n    server_name: The name of the MCP server as defined in mcp-servers.json\n\nReturns:\n    Response containing the list of available tools with their descriptions and parameters","operationId":"list_mcp_tools_v1_mcp__server_name__tools_get","parameters":[{"name":"server_name","in":"path","required":true,"schema":{"type":"string","description":"Name of the MCP server","title":"Server Name"},"description":"Name of the MCP server"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ListToolsResultModel_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/mcp/{server_name}/tools/{tool_name}":{"post":{"tags":["mcp"],"summary":"Execute Mcp Tool","description":"Execute a specific tool on the specified MCP server\n\nArgs:\n    server_name: The name of the MCP server as defined in mcp-servers.json\n    tool_name: The name of the tool to execute\n    arguments: Tool arguments dictionary\n\nReturns:\n    Response containing the tool execution results","operationId":"execute_mcp_tool_v1_mcp__server_name__tools__tool_name__post","parameters":[{"name":"server_name","in":"path","required":true,"schema":{"type":"string","description":"Name of the MCP server","title":"Server Name"},"description":"Name of the MCP server"},{"name":"tool_name","in":"path","required":true,"schema":{"type":"string","description":"Name of the tool to execute","title":"Tool Name"},"description":"Name of the tool to execute"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Arguments"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_CallToolResultModel_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/mcp/servers":{"get":{"tags":["mcp"],"summary":"List Mcp Servers","description":"List all configured MCP servers\n\nReturns:\n    Response containing the list of configured and filtered MCP servers","operationId":"list_mcp_servers_v1_mcp_servers_get","parameters":[{"name":"include_hidden","in":"query","required":false,"schema":{"type":"boolean","description":"Whether to include hidden MCP servers in the response","default":false,"title":"Include Hidden"},"description":"Whether to include hidden MCP servers in the response"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_List_str__"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/info":{"get":{"tags":["browser"],"summary":"Get Browser Info","description":"Get information about browser, like cdp url, viewport size, etc.","operationId":"get_browser_info_v1_browser_info_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_BrowserInfoResult_"}}}}},"x-fern-sdk-group-name":"browser","x-fern-sdk-method-name":"get_info"}},"/v1/browser/screenshot":{"get":{"tags":["browser"],"summary":"Take Screenshot","description":"Take a screenshot of the current display.\n\nReturns:\n    StreamingResponse: PNG or JPEG image data with proper headers including display and screenshot dimensions","operationId":"take_screenshot_v1_browser_screenshot_get","parameters":[{"name":"format","in":"query","required":false,"schema":{"enum":["png","jpg","jpeg"],"type":"string","default":"png","title":"Format"}},{"name":"quality","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","maximum":100,"minimum":0},{"type":"null"}],"title":"Quality"}}],"responses":{"200":{"description":"Screenshot image","content":{"image/png":{},"image/jpeg":{}},"headers":{"x-screen-width":{"description":"Screen width","schema":{"type":"string"}},"x-screen-height":{"description":"Screen height","schema":{"type":"string"}},"x-image-width":{"description":"Image width","schema":{"type":"string"}},"x-image-height":{"description":"Image height","schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser","x-fern-sdk-method-name":"screenshot"}},"/v1/browser/actions":{"post":{"tags":["browser"],"summary":"Execute Action","description":"Execute a validated action on the current display.","operationId":"execute_action_v1_browser_actions_post","requestBody":{"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/MoveToAction"},{"$ref":"#/components/schemas/MoveRelAction"},{"$ref":"#/components/schemas/ClickAction"},{"$ref":"#/components/schemas/MouseDownAction"},{"$ref":"#/components/schemas/MouseUpAction"},{"$ref":"#/components/schemas/RightClickAction"},{"$ref":"#/components/schemas/DoubleClickAction"},{"$ref":"#/components/schemas/DragToAction"},{"$ref":"#/components/schemas/DragRelAction"},{"$ref":"#/components/schemas/ScrollAction"},{"$ref":"#/components/schemas/TypingAction"},{"$ref":"#/components/schemas/PressAction"},{"$ref":"#/components/schemas/KeyDownAction"},{"$ref":"#/components/schemas/KeyUpAction"},{"$ref":"#/components/schemas/HotkeyAction"},{"$ref":"#/components/schemas/WaitAction"}],"title":"Action","discriminator":{"propertyName":"action_type","mapping":{"MOVE_TO":"#/components/schemas/MoveToAction","MOVE_REL":"#/components/schemas/MoveRelAction","CLICK":"#/components/schemas/ClickAction","MOUSE_DOWN":"#/components/schemas/MouseDownAction","MOUSE_UP":"#/components/schemas/MouseUpAction","RIGHT_CLICK":"#/components/schemas/RightClickAction","DOUBLE_CLICK":"#/components/schemas/DoubleClickAction","DRAG_TO":"#/components/schemas/DragToAction","DRAG_REL":"#/components/schemas/DragRelAction","SCROLL":"#/components/schemas/ScrollAction","TYPING":"#/components/schemas/TypingAction","PRESS":"#/components/schemas/PressAction","KEY_DOWN":"#/components/schemas/KeyDownAction","KEY_UP":"#/components/schemas/KeyUpAction","HOTKEY":"#/components/schemas/HotkeyAction","WAIT":"#/components/schemas/WaitAction"}}}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser","x-fern-sdk-method-name":"execute_action"}},"/v1/browser/config":{"post":{"tags":["browser"],"summary":"Set Config","description":"Execute a validated action on the current display.","operationId":"set_config_v1_browser_config_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserConfigRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser","x-fern-sdk-method-name":"set_config"}},"/v1/browser/page/navigate":{"post":{"tags":["browser"],"summary":"Navigate","description":"Navigate the current page to a URL.","operationId":"navigate_v1_browser_page_navigate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NavigateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_dict_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"navigate"}},"/v1/browser/page/back":{"post":{"tags":["browser"],"summary":"Go Back","description":"Go back in browser history.","operationId":"go_back_v1_browser_page_back_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"back"}},"/v1/browser/page/forward":{"post":{"tags":["browser"],"summary":"Go Forward","description":"Go forward in browser history.","operationId":"go_forward_v1_browser_page_forward_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"forward"}},"/v1/browser/page/reload":{"post":{"tags":["browser"],"summary":"Reload","description":"Reload the current page.","operationId":"reload_v1_browser_page_reload_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"reload"}},"/v1/browser/page/click":{"post":{"tags":["browser"],"summary":"Click","description":"Click an element by selector, index, or coordinates.","operationId":"click_v1_browser_page_click_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClickRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"click"}},"/v1/browser/page/fill":{"post":{"tags":["browser"],"summary":"Fill","description":"Fill an input field.","operationId":"fill_v1_browser_page_fill_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FillRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"fill"}},"/v1/browser/page/type":{"post":{"tags":["browser"],"summary":"Type Text","description":"Type text with optional delay between keystrokes.","operationId":"type_text_v1_browser_page_type_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TypeTextRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"type_text"}},"/v1/browser/page/press_key":{"post":{"tags":["browser"],"summary":"Press Key","description":"Press a single key.","operationId":"press_key_v1_browser_page_press_key_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KeyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"press_key"}},"/v1/browser/page/hot_key":{"post":{"tags":["browser"],"summary":"Hot Key","description":"Press a key combination.","operationId":"hot_key_v1_browser_page_hot_key_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HotKeyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"hot_key"}},"/v1/browser/page/hover":{"post":{"tags":["browser"],"summary":"Hover","description":"Hover over an element by selector or coordinates.","operationId":"hover_v1_browser_page_hover_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HoverRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"hover"}},"/v1/browser/page/select_option":{"post":{"tags":["browser"],"summary":"Select Option","description":"Select an option in a dropdown.","operationId":"select_option_v1_browser_page_select_option_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SelectOptionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"select_option"}},"/v1/browser/page/check":{"post":{"tags":["browser"],"summary":"Check","description":"Check a checkbox.","operationId":"check_v1_browser_page_check_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"check"}},"/v1/browser/page/uncheck":{"post":{"tags":["browser"],"summary":"Uncheck","description":"Uncheck a checkbox.","operationId":"uncheck_v1_browser_page_uncheck_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"uncheck"}},"/v1/browser/page/upload_file":{"post":{"tags":["browser"],"summary":"Upload File","description":"Upload files to a file input element.","operationId":"upload_file_v1_browser_page_upload_file_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadFileRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"upload_file"}},"/v1/browser/page/fill_form":{"post":{"tags":["browser"],"summary":"Fill Form","description":"Batch fill multiple form fields.","operationId":"fill_form_v1_browser_page_fill_form_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FormFillRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"fill_form"}},"/v1/browser/page/scroll":{"post":{"tags":["browser"],"summary":"Scroll","description":"Scroll the page in a direction.","operationId":"scroll_v1_browser_page_scroll_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScrollRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"scroll"}},"/v1/browser/page/scroll_to":{"post":{"tags":["browser"],"summary":"Scroll To","description":"Scroll to an absolute position.","operationId":"scroll_to_v1_browser_page_scroll_to_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScrollToRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"scroll_to"}},"/v1/browser/page/scroll_to_element":{"post":{"tags":["browser"],"summary":"Scroll To Element","description":"Scroll an element into view.","operationId":"scroll_to_element_v1_browser_page_scroll_to_element_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScrollToElementRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"scroll_to_element"}},"/v1/browser/page/screenshot":{"get":{"tags":["browser"],"summary":"Page Screenshot","description":"Capture a page screenshot.","operationId":"page_screenshot_v1_browser_page_screenshot_get","parameters":[{"name":"full_page","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Full Page"}},{"name":"format","in":"query","required":false,"schema":{"type":"string","default":"png","title":"Format"}},{"name":"quality","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Quality"}}],"responses":{"200":{"description":"Page-level screenshot via Playwright","content":{"image/png":{}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"screenshot"}},"/v1/browser/page/record":{"post":{"tags":["browser"],"summary":"Page Record","description":"Record page screencast (once/start/pause/resume/stop/status).","operationId":"page_record_v1_browser_page_record_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_dict_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"record"}},"/v1/browser/page/html":{"get":{"tags":["browser"],"summary":"Get Html","description":"Get the page HTML content.","operationId":"get_html_v1_browser_page_html_get","parameters":[{"name":"outer","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Outer"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_str_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"get_html"}},"/v1/browser/page/text":{"get":{"tags":["browser"],"summary":"Get Text","description":"Get all visible text from the page.","operationId":"get_text_v1_browser_page_text_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_str_"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"get_text"}},"/v1/browser/page/markdown":{"get":{"tags":["browser"],"summary":"Get Markdown","description":"Get the page content as Markdown using Readability and Turndown.","operationId":"get_markdown_v1_browser_page_markdown_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_dict_"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"get_markdown"}},"/v1/browser/page/elements":{"get":{"tags":["browser"],"summary":"Get Interactive Elements","description":"Get all interactive elements on the page.","operationId":"get_interactive_elements_v1_browser_page_elements_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_list_"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"get_elements"}},"/v1/browser/page/console":{"get":{"tags":["browser"],"summary":"Get Console Logs","description":"Get captured browser console log messages.","operationId":"get_console_logs_v1_browser_page_console_get","parameters":[{"name":"clear","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Clear"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_list_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"get_console"}},"/v1/browser/page/console/export":{"post":{"tags":["browser"],"summary":"Export Console Logs","description":"Export console logs to a JSON file.","operationId":"export_console_logs_v1_browser_page_console_export_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportConsoleLogsRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"export_console"}},"/v1/browser/page/evaluate":{"post":{"tags":["browser"],"summary":"Evaluate","description":"Execute JavaScript and return the result.","operationId":"evaluate_v1_browser_page_evaluate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EvaluateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"evaluate"}},"/v1/browser/page/find_text":{"post":{"tags":["browser"],"summary":"Find Text","description":"Find text occurrences on the page.","operationId":"find_text_v1_browser_page_find_text_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FindTextRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_list_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"find_text"}},"/v1/browser/page/wait":{"post":{"tags":["browser"],"summary":"Wait","description":"Unified wait: selector, load, url, network_idle, download, function, response, request, or timeout.","operationId":"wait_v1_browser_page_wait_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/app__models__browser_sdk__WaitRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.page","x-fern-sdk-method-name":"wait"}},"/v1/browser/tabs":{"get":{"tags":["browser"],"summary":"List Tabs","description":"List all open browser tabs.","operationId":"list_tabs_v1_browser_tabs_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_list_"}}}}},"x-fern-sdk-group-name":"browser.tabs","x-fern-sdk-method-name":"list"},"post":{"tags":["browser"],"summary":"Create Tab","description":"Create a new browser tab.","operationId":"create_tab_v1_browser_tabs_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePageRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.tabs","x-fern-sdk-method-name":"create"}},"/v1/browser/tabs/{index}":{"delete":{"tags":["browser"],"summary":"Close Tab","description":"Close a browser tab by index.","operationId":"close_tab_v1_browser_tabs__index__delete","parameters":[{"name":"index","in":"path","required":true,"schema":{"type":"integer","title":"Index"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.tabs","x-fern-sdk-method-name":"close"}},"/v1/browser/tabs/{index}/activate":{"put":{"tags":["browser"],"summary":"Activate Tab","description":"Activate (bring to front) a browser tab by index.","operationId":"activate_tab_v1_browser_tabs__index__activate_put","parameters":[{"name":"index","in":"path","required":true,"schema":{"type":"integer","title":"Index"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.tabs","x-fern-sdk-method-name":"activate"}},"/v1/browser/cookies":{"get":{"tags":["browser"],"summary":"Get Cookies","description":"Get browser cookies, optionally filtered by URLs (comma-separated).","operationId":"get_cookies_v1_browser_cookies_get","parameters":[{"name":"urls","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Urls"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_list_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.cookies","x-fern-sdk-method-name":"get_cookies"},"post":{"tags":["browser"],"summary":"Set Cookies","description":"Set browser cookies.","operationId":"set_cookies_v1_browser_cookies_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CookieSetRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.cookies","x-fern-sdk-method-name":"set_cookies"},"delete":{"tags":["browser"],"summary":"Clear Cookies","description":"Clear all browser cookies.","operationId":"clear_cookies_v1_browser_cookies_delete","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}}},"x-fern-sdk-group-name":"browser.cookies","x-fern-sdk-method-name":"clear_cookies"}},"/v1/browser/state/save":{"post":{"tags":["browser"],"summary":"Save State","description":"Save browser state (cookies, localStorage, etc.) to a file.","operationId":"save_state_v1_browser_state_save_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StateSaveRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.state","x-fern-sdk-method-name":"save"}},"/v1/browser/state/load":{"post":{"tags":["browser"],"summary":"Load State","description":"Load browser state from a previously saved file.","operationId":"load_state_v1_browser_state_load_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StateLoadRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.state","x-fern-sdk-method-name":"load"}},"/v1/browser/network/headers":{"post":{"tags":["browser"],"summary":"Set Extra Headers","description":"Set extra HTTP headers for all subsequent requests.","operationId":"set_extra_headers_v1_browser_network_headers_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HeadersRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.network","x-fern-sdk-method-name":"set_headers"}},"/v1/browser/network/scoped_headers":{"post":{"tags":["browser"],"summary":"Set Scoped Headers","description":"Set HTTP headers scoped to a specific origin.","operationId":"set_scoped_headers_v1_browser_network_scoped_headers_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScopedHeadersRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.network","x-fern-sdk-method-name":"set_scoped_headers"}},"/v1/browser/network/route":{"post":{"tags":["browser"],"summary":"Add Route","description":"Add a network route to mock or abort matching requests.","operationId":"add_route_v1_browser_network_route_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NetworkRouteRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.network","x-fern-sdk-method-name":"add_route"},"delete":{"tags":["browser"],"summary":"Remove Route","description":"Remove a previously added network route.","operationId":"remove_route_v1_browser_network_route_delete","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NetworkRouteRemoveRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.network","x-fern-sdk-method-name":"remove_route"}},"/v1/browser/network/requests":{"get":{"tags":["browser"],"summary":"Get Requests","description":"Get tracked network requests.","operationId":"get_requests_v1_browser_network_requests_get","parameters":[{"name":"filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Filter"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_list_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.network","x-fern-sdk-method-name":"get_requests"}},"/v1/browser/network/export_har":{"post":{"tags":["browser"],"summary":"Export Har","description":"Export tracked network requests as a HAR file.","operationId":"export_har_v1_browser_network_export_har_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportHarRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.network","x-fern-sdk-method-name":"export_har"}},"/v1/browser/captcha/detect":{"get":{"tags":["browser"],"summary":"Detect Captcha","description":"Detect CAPTCHA on the current page.","operationId":"detect_captcha_v1_browser_captcha_detect_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}}},"x-fern-sdk-group-name":"browser.captcha","x-fern-sdk-method-name":"detect"}},"/v1/browser/captcha/wait":{"post":{"tags":["browser"],"summary":"Wait For Captcha","description":"Wait for CAPTCHA to be resolved.","operationId":"wait_for_captcha_v1_browser_captcha_wait_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CaptchaWaitRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_CaptchaWaitResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser.captcha","x-fern-sdk-method-name":"wait"}},"/v1/browser/restart":{"post":{"tags":["browser"],"summary":"Restart","description":"Restart the browser session.\n\n- **soft** (default): Reconnect the Playwright session only.\n- **hard**: Restart the browser process via supervisorctl, optionally\n  updating URL blocklist/allowlist policies before restart.","operationId":"restart_v1_browser_restart_post","requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/RestartRequest"},{"type":"null"}],"title":"Req"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"browser","x-fern-sdk-method-name":"restart"}},"/v1/browser/proxy.pac":{"get":{"tags":["browser"],"summary":"Get Proxy Pac","description":"Return the current PAC file for proxy split-routing (if configured).","operationId":"get_proxy_pac_v1_browser_proxy_pac_get","responses":{"200":{"description":"Proxy Auto-Configuration file","content":{"application/x-ns-proxy-autoconfig":{}}}},"x-fern-sdk-group-name":"browser","x-fern-sdk-method-name":"get_proxy_pac"}},"/v1/code/execute":{"post":{"tags":["code"],"summary":"Execute Code","description":"Run code through the unified runtime, dispatching to Python, Node.js, or future language executors","operationId":"execute_code_v1_code_execute_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CodeExecuteRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_CodeExecuteResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"code","x-fern-sdk-method-name":"execute_code"}},"/v1/code/info":{"get":{"tags":["code"],"summary":"Code Info","description":"Return metadata about supported code runtimes\n\nNote: Version info is cached at service level (first call only runs subprocess).","operationId":"code_info_v1_code_info_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_CodeInfoResponse_"}}}}},"x-fern-sdk-group-name":"code","x-fern-sdk-method-name":"get_info"}},"/v1/util/convert_to_markdown":{"post":{"tags":["util"],"summary":"Convert To Markdown","description":"Convert a given URI to Markdown format","operationId":"convert_to_markdown_v1_util_convert_to_markdown_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UtilConvertToMarkdownRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"util","x-fern-sdk-method-name":"convert_to_markdown"}},"/v1/skills/register":{"post":{"tags":["skills"],"summary":"Register Skills","operationId":"register_skills","requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_register_skills"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_SkillRegistrationResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"skills","x-fern-sdk-method-name":"register_skills"}},"/v1/skills/metadatas":{"get":{"tags":["skills"],"summary":"List Skills Metadata","operationId":"list_skills_metadata","parameters":[{"name":"names","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Names"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_SkillMetadataCollection_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"skills","x-fern-sdk-method-name":"list_metadata"}},"/v1/skills":{"delete":{"tags":["skills"],"summary":"Clear Skills","operationId":"clear_skills","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_dict_"}}}}},"x-fern-sdk-group-name":"skills","x-fern-sdk-method-name":"clear_skills"}},"/v1/skills/{name}":{"delete":{"tags":["skills"],"summary":"Delete Skill","operationId":"delete_skill","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_SkillMetadata_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"skills","x-fern-sdk-method-name":"delete_skill"}},"/v1/skills/{name}/content":{"get":{"tags":["skills"],"summary":"Get Skill Content","operationId":"get_skill_content","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_SkillContentResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"skills","x-fern-sdk-method-name":"get_content"}},"/v1/proxy/mappings":{"get":{"tags":["proxy"],"summary":"List Mappings","description":"List all proxy domain-to-port mappings.","operationId":"list_proxy_mappings","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_list_ProxyMappingRoute__"}}}}},"x-fern-sdk-group-name":"proxy","x-fern-sdk-method-name":"list_mappings"},"post":{"tags":["proxy"],"summary":"Add Mapping","description":"Add or update a proxy mapping. Supports wildcards in host (*.example.com).","operationId":"add_proxy_mapping","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProxyMappingAddRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ProxyMappingRoute_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"proxy","x-fern-sdk-method-name":"add_mapping"}},"/v1/proxy/mappings/{source}":{"delete":{"tags":["proxy"],"summary":"Remove Mapping","description":"Remove a proxy mapping by source pattern.","operationId":"remove_proxy_mapping","parameters":[{"name":"source","in":"path","required":true,"schema":{"type":"string","title":"Source"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"proxy","x-fern-sdk-method-name":"remove_mapping"}},"/v1/proxy/excludes":{"get":{"tags":["proxy"],"summary":"List Excludes","description":"List all proxy bypass/exclude patterns.","operationId":"list_proxy_excludes","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_list_str__"}}}}},"x-fern-sdk-group-name":"proxy","x-fern-sdk-method-name":"list_excludes"},"post":{"tags":["proxy"],"summary":"Add Exclude","description":"Add a bypass/exclude pattern. Matched domains connect directly.","operationId":"add_proxy_exclude","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProxyBypassRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"proxy","x-fern-sdk-method-name":"add_exclude"},"delete":{"tags":["proxy"],"summary":"Remove Exclude","description":"Remove a bypass/exclude pattern.","operationId":"remove_proxy_exclude","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProxyBypassRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"proxy","x-fern-sdk-method-name":"remove_exclude"}},"/v1/proxy/diagnose":{"get":{"tags":["proxy"],"summary":"Diagnose","description":"Diagnose how a URL would be routed through the proxy.","operationId":"diagnose_proxy","parameters":[{"name":"url","in":"query","required":true,"schema":{"type":"string","description":"URL to diagnose routing for","title":"Url"},"description":"URL to diagnose routing for"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ProxyDiagnoseResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"proxy","x-fern-sdk-method-name":"diagnose"}},"/v1/proxy/health":{"get":{"tags":["proxy"],"summary":"Health Check","description":"Check proxy subsystem health: GOST alive, nginx alive, config consistency.","operationId":"proxy_health_check","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ProxyHealthCheck_"}}}}},"x-fern-sdk-group-name":"proxy","x-fern-sdk-method-name":"health"}},"/v1/proxy/upstream":{"get":{"tags":["proxy"],"summary":"Get Upstream","description":"Get the current upstream proxy configuration.","operationId":"get_proxy_upstream","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_Union_ProxyUpstreamInfo__NoneType__"}}}}},"x-fern-sdk-group-name":"proxy","x-fern-sdk-method-name":"get_upstream"},"put":{"tags":["proxy"],"summary":"Set Upstream","description":"Set or update the upstream proxy. Supports user:pass@host:port format.\n\nTakes effect immediately — no browser restart needed.","operationId":"set_proxy_upstream","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProxyUpstreamUpdateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_ProxyUpstreamInfo_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"proxy","x-fern-sdk-method-name":"set_upstream"},"delete":{"tags":["proxy"],"summary":"Remove Upstream","description":"Remove upstream proxy (switch to direct mode).","operationId":"remove_proxy_upstream","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}}},"x-fern-sdk-group-name":"proxy","x-fern-sdk-method-name":"remove_upstream"}},"/v1/display/record":{"post":{"tags":["display"],"summary":"Record","description":"Control display screen recording (start/stop/status).\n\nRecords the entire X11 desktop using ffmpeg x11grab,\nincluding browser UI, multiple tabs, popups, terminal, etc.","operationId":"record_v1_display_record_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DisplayRecordRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_DisplayRecordResult_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"display","x-fern-sdk-method-name":"record"}},"/v1/file/watch":{"get":{"tags":["file-watch"],"summary":"List Watches","operationId":"list_watches_v1_file_watch_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"watch_list"},"post":{"tags":["file-watch"],"summary":"Create Watch","operationId":"create_watch_v1_file_watch_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWatchRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"watch_create"}},"/v1/file/watch/{watcher_id}/events":{"get":{"tags":["file-watch"],"summary":"Watch Events","operationId":"watch_events_v1_file_watch__watcher_id__events_get","parameters":[{"name":"watcher_id","in":"path","required":true,"schema":{"type":"string","title":"Watcher Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"watch_events"}},"/v1/file/watch/{watcher_id}/poll":{"post":{"tags":["file-watch"],"summary":"Poll Events","operationId":"poll_events_v1_file_watch__watcher_id__poll_post","parameters":[{"name":"watcher_id","in":"path","required":true,"schema":{"type":"string","title":"Watcher Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"watch_poll"}},"/v1/file/watch/wait":{"post":{"tags":["file-watch"],"summary":"Wait For File","operationId":"wait_for_file_v1_file_watch_wait_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/app__schemas__file_watch__WaitRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"watch_wait"}},"/v1/file/watch/{watcher_id}":{"delete":{"tags":["file-watch"],"summary":"Stop Watch","operationId":"stop_watch_v1_file_watch__watcher_id__delete","parameters":[{"name":"watcher_id","in":"path","required":true,"schema":{"type":"string","title":"Watcher Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-fern-sdk-group-name":"file","x-fern-sdk-method-name":"watch_stop"}},"/tickets":{"post":{"tags":["auth"],"summary":"Create Ticket","description":"Create and return a short-lived authentication ticket.\n\nThis is a non-idempotent action; each call creates a new, unique ticket.","operationId":"create_ticket_tickets_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Create Ticket Tickets Post"}}}}},"x-fern-sdk-group-name":"auth","x-fern-sdk-method-name":"create_ticket"}},"/auth":{"get":{"tags":["auth"],"summary":"Authenticate Request","description":"Authenticate a request using ticket or JWT.\n\nThis endpoint receives authentication subrequests (e.g., from Nginx auth_request).\nIt validates the request based on either a ticket in the 'x-original-uri'\nheader or a JWT in the 'Authorization' header.","operationId":"authenticate_request_auth_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"type":"object","title":"Response Authenticate Request Auth Get"}}}}},"x-fern-sdk-group-name":"auth","x-fern-sdk-method-name":"authenticate"}}},"components":{"schemas":{"ActionData":{"properties":{"status":{"type":"string","const":"success","title":"Status"},"action_performed":{"type":"string","title":"Action Performed"}},"type":"object","required":["status","action_performed"],"title":"ActionData","description":"Inner data for action response."},"ActionResponse":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message"},"data":{"anyOf":[{"$ref":"#/components/schemas/ActionData"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"},"status":{"type":"string","const":"success","title":"Status","default":"success"},"action_performed":{"type":"string","title":"Action Performed","default":""}},"type":"object","title":"ActionResponse","description":"Response model for browser actions.\n\nInherits from Response for unified API format, with backward compatibility:\n- Old format: resp.json()['status'], resp.json()['action_performed']\n- New format: resp.json()['success'], resp.json()['message'], resp.json()['data']"},"ActiveSessionsResult":{"properties":{"sessions":{"additionalProperties":{"$ref":"#/components/schemas/SessionInfo"},"type":"object","title":"Sessions","description":"Map of session ID to session info"}},"type":"object","required":["sessions"],"title":"ActiveSessionsResult","description":"Active sessions result"},"ActiveShellSessionsResult":{"properties":{"sessions":{"additionalProperties":{"$ref":"#/components/schemas/ShellSessionInfo"},"type":"object","title":"Sessions","description":"Map of session ID to session info"}},"type":"object","required":["sessions"],"title":"ActiveShellSessionsResult","description":"Active shell sessions result"},"Annotations":{"properties":{"audience":{"anyOf":[{"items":{"type":"string","enum":["user","assistant"]},"type":"array"},{"type":"null"}],"title":"Audience"},"priority":{"anyOf":[{"type":"number","maximum":1,"minimum":0},{"type":"null"}],"title":"Priority"}},"additionalProperties":true,"type":"object","title":"Annotations"},"AudioContent":{"properties":{"type":{"type":"string","const":"audio","title":"Type"},"data":{"type":"string","title":"Data"},"mimeType":{"type":"string","title":"Mimetype"},"annotations":{"anyOf":[{"$ref":"#/components/schemas/Annotations"},{"type":"null"}]},"_meta":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Meta"}},"additionalProperties":true,"type":"object","required":["type","data","mimeType"],"title":"AudioContent","description":"Audio content for a message."},"AvailableTool":{"properties":{"name":{"type":"string","title":"Name","description":"Tool’s command / binary name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","description":"Tool’s functionality description","default":""}},"type":"object","required":["name"],"title":"AvailableTool","description":"Describe an available command-line tool."},"BashCommandInfo":{"properties":{"command_id":{"type":"string","title":"Command Id","description":"Unique command identifier"},"command":{"type":"string","title":"Command","description":"The command string"},"status":{"$ref":"#/components/schemas/CommandStatus","description":"Command execution status. Possible values: `pending` (accepted but not started yet; typically internal-only), `running` (still executing), `completed` (process exited and `exit_code` is available; a non-zero shell exit code still uses `completed`), `timed_out` (process was force-killed after `hard_timeout`), `killed` (process was terminated by kill/cleanup or an internal execution failure)."},"exit_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Exit Code","description":"Exit code (when completed)"}},"type":"object","required":["command_id","command","status"],"title":"BashCommandInfo","description":"Serializable command status info (for API responses)."},"BashCommandStatus":{"type":"string","enum":["running","completed","no_change_timeout","hard_timeout","terminated"],"title":"BashCommandStatus","description":"Shell command execution status (compatible with OpenHands)"},"BashExecRequest":{"properties":{"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"Target session ID. If not provided or empty, a new session is created automatically. Reuse the same session_id to continue the same bash session. Only API-level session state is preserved across calls. Note: `cd` or `export` inside a command do NOT affect subsequent calls."},"command":{"type":"string","title":"Command","description":"Shell command to execute"},"exec_dir":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Exec Dir","description":"Working directory (absolute path). Takes effect on every call — if the session already exists, its default working directory is updated for subsequent calls. Use this instead of `cd` when later commands should run in a different directory."},"env":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"title":"Env","description":"Extra environment variables to inject for this command only. Variables exported inside the command do not persist to later calls."},"async_mode":{"type":"boolean","title":"Async Mode","description":"If true, return immediately with running status. Use /output to poll results.","default":false},"timeout":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Timeout","description":"HTTP timeout (seconds). Only effective when async_mode=false. If the command does not complete within this time, HTTP returns running status and the command continues in the background. Use /output to get results."},"hard_timeout":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Hard Timeout","description":"Hard execution timeout (seconds). When reached, the process is killed and status becomes timed_out. None means no limit."},"max_output_length":{"type":"integer","title":"Max Output Length","description":"Maximum character length for stdout/stderr in the response. When output exceeds this limit, middle truncation is applied (head and tail preserved, middle replaced with a marker). Only effective in sync mode (async_mode=false). Set to 0 to disable truncation.","default":50000}},"type":"object","required":["command"],"title":"BashExecRequest","description":"Request for POST /v1/bash/exec — execute a command."},"BashExecResult":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Session identifier"},"command_id":{"type":"string","title":"Command Id","description":"Unique command identifier"},"command":{"type":"string","title":"Command","description":"The executed command"},"status":{"$ref":"#/components/schemas/CommandStatus","description":"Command execution status. Possible values: `pending` (accepted but not started yet; typically internal-only), `running` (still executing), `completed` (process exited and `exit_code` is available; a non-zero shell exit code still uses `completed`), `timed_out` (process was force-killed after `hard_timeout`), `killed` (process was terminated by kill/cleanup or an internal execution failure)."},"stdout":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stdout","description":"Stdout output up to this point"},"stderr":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stderr","description":"Stderr output up to this point"},"exit_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Exit Code","description":"Exit code (when completed)"},"offset":{"type":"integer","title":"Offset","description":"Current stdout offset for subsequent /output calls","default":0},"stderr_offset":{"type":"integer","title":"Stderr Offset","description":"Current stderr offset","default":0}},"type":"object","required":["session_id","command_id","command","status"],"title":"BashExecResult","description":"Result of exec_command — returned by POST /v1/bash/exec."},"BashKillRequest":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Target session ID"},"signal":{"type":"string","title":"Signal","description":"Signal to send: SIGTERM, SIGKILL, or SIGINT","default":"SIGTERM"}},"type":"object","required":["session_id"],"title":"BashKillRequest","description":"Request for POST /v1/bash/kill — kill a session or its current command."},"BashOutputRequest":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Target session ID"},"command_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Command Id","description":"Target a specific async command. If not set, uses session-level output."},"offset":{"type":"integer","title":"Offset","description":"Stdout byte offset to read from","default":0},"stderr_offset":{"type":"integer","title":"Stderr Offset","description":"Stderr byte offset to read from","default":0},"wait":{"type":"boolean","title":"Wait","description":"If true, long-poll until new output is available or wait_timeout is reached.","default":false},"wait_timeout":{"type":"number","title":"Wait Timeout","description":"Max seconds to wait for new output when wait=true.","default":30}},"type":"object","required":["session_id"],"title":"BashOutputRequest","description":"Request for POST /v1/bash/output — read output with offset."},"BashOutputResult":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Session identifier"},"stdout":{"type":"string","title":"Stdout","description":"New stdout data since last offset","default":""},"stderr":{"type":"string","title":"Stderr","description":"New stderr data since last offset","default":""},"offset":{"type":"integer","title":"Offset","description":"Current stdout offset (use for next request)","default":0},"stderr_offset":{"type":"integer","title":"Stderr Offset","description":"Current stderr offset (use for next request)","default":0},"command":{"anyOf":[{"$ref":"#/components/schemas/BashCommandInfo"},{"type":"null"}],"description":"Current or most recent command status"}},"type":"object","required":["session_id"],"title":"BashOutputResult","description":"Result of get_output — returned by POST /v1/bash/output."},"BashSessionCreateRequest":{"properties":{"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"Session ID. Auto-generated if not provided or empty."},"exec_dir":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Exec Dir","description":"Initial default working directory for the new session (absolute path). Later /exec calls may update it with exec_dir."},"snapshot_path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Snapshot Path","description":"Path to a shell snapshot script to source on session init. This is an initialization snapshot only; command-side env changes are not written back after each exec."}},"type":"object","title":"BashSessionCreateRequest","description":"Request for POST /v1/bash/sessions/create — create a new session."},"BashSessionInfo":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Session identifier"},"status":{"$ref":"#/components/schemas/SessionStatus","description":"Session status. Possible values: `ready` (session can accept commands), `closed` (session is closed and cannot accept new commands)."},"working_dir":{"type":"string","title":"Working Dir","description":"Working directory"},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"Creation timestamp"},"last_used_at":{"type":"string","format":"date-time","title":"Last Used At","description":"Last used timestamp"},"current_command":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Current Command","description":"Currently executing command"},"command_count":{"type":"integer","title":"Command Count","description":"Total commands executed","default":0}},"type":"object","required":["session_id","status","working_dir","created_at","last_used_at"],"title":"BashSessionInfo","description":"Session info for listing — returned by GET /v1/bash/sessions."},"BashWriteRequest":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Target session ID"},"command_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Command Id","description":"Target a specific async command. If not set, writes to current command."},"input":{"type":"string","title":"Input","description":"Content to write to the process stdin"}},"type":"object","required":["session_id","input"],"title":"BashWriteRequest","description":"Request for POST /v1/bash/write — write to stdin."},"BlobResourceContents":{"properties":{"uri":{"type":"string","minLength":1,"format":"uri","title":"Uri"},"mimeType":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mimetype"},"_meta":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Meta"},"blob":{"type":"string","title":"Blob"}},"additionalProperties":true,"type":"object","required":["uri","blob"],"title":"BlobResourceContents","description":"Binary contents of a resource."},"Body_register_skills":{"properties":{"file":{"anyOf":[{"type":"string","format":"binary"},{"type":"null"}],"title":"File"},"path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Path"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"}},"type":"object","title":"Body_register_skills"},"Body_upload_file":{"properties":{"file":{"type":"string","format":"binary","title":"File"},"path":{"type":"string","title":"Path"}},"type":"object","required":["file"],"title":"Body_upload_file"},"BrowserConfigRequest":{"properties":{"resolution":{"anyOf":[{"$ref":"#/components/schemas/Resolution"},{"type":"null"}],"description":"The desired screen resolution, allowed values are: 1920x1080, 640x480, 1360x768, 1280x720, 800x600, 1024x768, 1280x800, 1920x1200, 1280x960, 1400x1050, 1680x1050, 1280x1024, 1600x1200."}},"type":"object","title":"BrowserConfigRequest","description":"Browser configuration request"},"BrowserInfoResult":{"properties":{"user_agent":{"type":"string","title":"User Agent","description":"User agent"},"cdp_url":{"type":"string","title":"Cdp Url","description":"Browser CDP URL"},"vnc_url":{"type":"string","title":"Vnc Url","description":"VNC URL"},"cdp_ui_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cdp Ui Url","description":"CDP UI URL (browser-ui)"},"viewport":{"$ref":"#/components/schemas/BrowserViewport","description":"Display size (from xrandr / env vars)"},"page_viewport":{"anyOf":[{"$ref":"#/components/schemas/BrowserViewport"},{"type":"null"}],"description":"Actual Chrome page viewport (window.innerWidth/Height via CDP). Smaller than viewport because Chrome UI chrome takes space."}},"type":"object","required":["user_agent","cdp_url","vnc_url","viewport"],"title":"BrowserInfoResult","description":"Browser Info result"},"BrowserViewport":{"properties":{"width":{"type":"integer","title":"Width","description":"Viewport width"},"height":{"type":"integer","title":"Height","description":"Viewport height"}},"type":"object","required":["width","height"],"title":"BrowserViewport"},"CaptchaWaitRequest":{"properties":{"timeout":{"type":"number","title":"Timeout","default":60},"poll_interval":{"type":"number","title":"Poll Interval","default":2}},"type":"object","title":"CaptchaWaitRequest"},"CaptchaWaitResult":{"properties":{"resolved":{"type":"boolean","title":"Resolved"}},"type":"object","required":["resolved"],"title":"CaptchaWaitResult"},"CheckRequest":{"properties":{"selector":{"type":"string","title":"Selector"}},"type":"object","required":["selector"],"title":"CheckRequest"},"ClickAction":{"properties":{"action_type":{"type":"string","const":"CLICK","title":"Action Type","default":"CLICK"},"x":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"X"},"y":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Y"},"button":{"type":"string","enum":["left","right","middle"],"title":"Button","default":"left"},"num_clicks":{"type":"integer","enum":[1,2,3],"title":"Num Clicks","default":1}},"type":"object","title":"ClickAction"},"ClickRequest":{"properties":{"selector":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Selector"},"index":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Index"},"x":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"X"},"y":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Y"},"button":{"type":"string","title":"Button","default":"left"},"click_count":{"type":"integer","title":"Click Count","default":1}},"type":"object","title":"ClickRequest"},"CodeExecuteRequest":{"properties":{"language":{"$ref":"#/components/schemas/Language","description":"Target runtime language"},"code":{"type":"string","title":"Code","description":"Source code to execute"},"timeout":{"anyOf":[{"type":"integer","maximum":300,"minimum":1},{"type":"null"}],"title":"Timeout","description":"Execution timeout in seconds"},"cwd":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cwd","description":"Current working directory for code execution"},"stateful":{"type":"boolean","title":"Stateful","description":"Enable stateful execution using Jupyter kernel. When True, variables and state persist across requests with the same session_id.","default":false},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"Session ID for stateful execution. Required when stateful=True to maintain state across requests. Auto-generated if not provided."}},"type":"object","required":["language","code"],"title":"CodeExecuteRequest","description":"Unified code execution request model"},"CodeExecuteResponse":{"properties":{"language":{"$ref":"#/components/schemas/Language","description":"Runtime language that executed the code"},"status":{"type":"string","title":"Status","description":"Execution status indicator"},"outputs":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Outputs","description":"Structured execution outputs"},"code":{"type":"string","title":"Code","description":"Echo of executed code"},"stdout":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stdout","description":"Captured standard output stream"},"stderr":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stderr","description":"Captured standard error stream"},"exit_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Exit Code","description":"Process exit code when applicable"},"traceback":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Traceback","description":"Captured error traceback lines when available"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"Session ID for stateful execution (only present when stateful=True)"}},"type":"object","required":["language","status","code"],"title":"CodeExecuteResponse","description":"Unified code execution response model"},"CodeInfoResponse":{"properties":{"languages":{"items":{"$ref":"#/components/schemas/CodeLanguageInfo"},"type":"array","title":"Languages","description":"List of supported languages and metadata"}},"type":"object","required":["languages"],"title":"CodeInfoResponse","description":"Unified code information response"},"CodeLanguageInfo":{"properties":{"language":{"$ref":"#/components/schemas/Language","description":"Supported language identifier"},"description":{"type":"string","title":"Description","description":"Human readable runtime description"},"runtime_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Runtime Version","description":"Primary runtime version identifier"},"default_timeout":{"type":"integer","maximum":300,"minimum":1,"title":"Default Timeout","description":"Default timeout in seconds","default":30},"max_timeout":{"type":"integer","maximum":300,"minimum":1,"title":"Max Timeout","description":"Maximum allowed timeout in seconds","default":300},"details":{"additionalProperties":true,"type":"object","title":"Details","description":"Additional runtime specific metadata"}},"type":"object","required":["language","description"],"title":"CodeLanguageInfo","description":"Metadata about a supported code runtime"},"CommandStatus":{"type":"string","enum":["pending","running","completed","timed_out","killed"],"title":"CommandStatus","description":"Status of a bash command execution."},"ConsoleRecord":{"properties":{"ps1":{"type":"string","title":"Ps1","description":"Command prompt"},"command":{"type":"string","title":"Command","description":"Executed command"},"output":{"type":"string","title":"Output","description":"Command output","default":""}},"type":"object","required":["ps1","command"],"title":"ConsoleRecord","description":"Shell command console record model"},"CookieSetRequest":{"properties":{"cookies":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Cookies"}},"type":"object","required":["cookies"],"title":"CookieSetRequest"},"CreatePageRequest":{"properties":{"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url"}},"type":"object","title":"CreatePageRequest"},"CreateWatchRequest":{"properties":{"path":{"type":"string","title":"Path","description":"Path of the file or directory to watch"},"recursive":{"type":"boolean","title":"Recursive","description":"Whether to recursively watch subdirectories","default":true},"exclude":{"items":{"type":"string"},"type":"array","title":"Exclude","description":"Directory or glob patterns to exclude","default":[".git","node_modules","__pycache__",".venv","*.pyc","*.pyo",".DS_Store","*.swp","*.swo"]},"debounce":{"type":"integer","maximum":5000,"minimum":50,"title":"Debounce","description":"Debounce window in milliseconds","default":300},"include_patterns":{"items":{"type":"string"},"type":"array","title":"Include Patterns","description":"Glob filters; empty means all events are included","default":[]}},"type":"object","required":["path"],"title":"CreateWatchRequest"},"DependencyCommandResult":{"properties":{"command":{"items":{"type":"string"},"type":"array","title":"Command","description":"Executed dependency command"},"success":{"type":"boolean","title":"Success","description":"Whether the command succeeded"},"stdout":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stdout","description":"Standard output from command"},"stderr":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stderr","description":"Standard error from command"}},"type":"object","required":["command","success"],"title":"DependencyCommandResult"},"DisplayRecordRequest":{"properties":{"action":{"type":"string","enum":["start","stop","status"],"title":"Display Record Action","description":"Recording action: start, stop, or status"},"save_path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Save Path","description":"Output file path (default: /tmp/recordings/recording_{timestamp}.mp4)"},"fps":{"type":"integer","maximum":30,"exclusiveMinimum":0,"title":"Fps","description":"Frames per second","default":5},"crf":{"type":"integer","maximum":51,"minimum":0,"title":"Crf","description":"H.264 CRF quality (0=lossless, 51=worst)","default":28},"max_duration":{"type":"number","exclusiveMinimum":0,"title":"Max Duration","description":"Max recording duration in seconds","default":600},"width":{"anyOf":[{"type":"integer","exclusiveMinimum":0},{"type":"null"}],"title":"Width","description":"Video width in pixels (auto-detected from X11 if omitted)"},"height":{"anyOf":[{"type":"integer","exclusiveMinimum":0},{"type":"null"}],"title":"Height","description":"Video height in pixels (auto-detected from X11 if omitted)"}},"type":"object","required":["action"],"title":"DisplayRecordRequest"},"DisplayRecordResult":{"properties":{"status":{"type":"string","enum":["idle","recording","stopped"],"title":"Status"},"save_path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Save Path"},"duration":{"type":"number","title":"Duration","default":0},"file_size_bytes":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"File Size Bytes"}},"type":"object","required":["status"],"title":"DisplayRecordResult"},"DoubleClickAction":{"properties":{"action_type":{"type":"string","const":"DOUBLE_CLICK","title":"Action Type","default":"DOUBLE_CLICK"},"x":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"X"},"y":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Y"}},"type":"object","title":"DoubleClickAction"},"DragRelAction":{"properties":{"action_type":{"type":"string","const":"DRAG_REL","title":"Action Type","default":"DRAG_REL"},"x_offset":{"type":"number","title":"X Offset","description":"Relative current position x-axis drag movement"},"y_offset":{"type":"number","title":"Y Offset","description":"Relative current position y-axis drag movement"}},"type":"object","required":["x_offset","y_offset"],"title":"DragRelAction"},"DragToAction":{"properties":{"action_type":{"type":"string","const":"DRAG_TO","title":"Action Type","default":"DRAG_TO"},"x":{"type":"number","title":"X","description":"Target x-coordinate for drag"},"y":{"type":"number","title":"Y","description":"Target y-coordinate for drag"}},"type":"object","required":["x","y"],"title":"DragToAction"},"EmbeddedResource":{"properties":{"type":{"type":"string","const":"resource","title":"Type"},"resource":{"anyOf":[{"$ref":"#/components/schemas/TextResourceContents"},{"$ref":"#/components/schemas/BlobResourceContents"}],"title":"Resource"},"annotations":{"anyOf":[{"$ref":"#/components/schemas/Annotations"},{"type":"null"}]},"_meta":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Meta"}},"additionalProperties":true,"type":"object","required":["type","resource"],"title":"EmbeddedResource","description":"The contents of a resource, embedded into a prompt or tool call result.\n\nIt is up to the client how best to render embedded resources for the benefit\nof the LLM and/or the user."},"EvaluateRequest":{"properties":{"expression":{"type":"string","title":"Expression"}},"type":"object","required":["expression"],"title":"EvaluateRequest"},"ExportConsoleLogsRequest":{"properties":{"save_path":{"type":"string","title":"Save Path"},"clear":{"type":"boolean","title":"Clear","default":false}},"type":"object","required":["save_path"],"title":"ExportConsoleLogsRequest"},"ExportHarRequest":{"properties":{"save_path":{"type":"string","title":"Save Path"}},"type":"object","required":["save_path"],"title":"ExportHarRequest"},"FileContentEncoding":{"type":"string","enum":["utf-8","base64","raw"],"title":"FileContentEncoding","description":"File content encoding type"},"FileDownloadChangePolicy":{"type":"string","enum":["ignore","abort"],"title":"FileDownloadChangePolicy","description":"How the download endpoint reacts when the source file changes."},"FileFindRequest":{"properties":{"path":{"type":"string","title":"Path","description":"Directory path to search"},"glob":{"type":"string","title":"Glob","description":"Filename pattern (glob syntax)"}},"type":"object","required":["path","glob"],"title":"FileFindRequest","description":"File find request"},"FileFindResult":{"properties":{"path":{"type":"string","title":"Path","description":"Path of the search directory"},"files":{"items":{"type":"string"},"type":"array","title":"Files","description":"List of found files","default":[]}},"type":"object","required":["path"],"title":"FileFindResult","description":"File find result"},"FileGlobRequest":{"properties":{"path":{"type":"string","title":"Path","description":"Base directory path"},"pattern":{"type":"string","title":"Pattern","description":"Glob pattern (**, *, ?, [...])"},"exclude":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Exclude","description":"Glob patterns to exclude"},"include_hidden":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Include Hidden","description":"Whether to include hidden files","default":false},"files_only":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Files Only","description":"Only return files (not directories)","default":true},"include_metadata":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Include Metadata","description":"Whether to include size and modified time","default":true},"max_results":{"anyOf":[{"type":"integer","maximum":50000,"minimum":1},{"type":"null"}],"title":"Max Results","description":"Maximum number of results","default":5000},"sort_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sort By","description":"Sort by: path, name, size, modified","default":"path"},"sort_desc":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Sort Desc","description":"Sort in descending order","default":false}},"type":"object","required":["path","pattern"],"title":"FileGlobRequest","description":"Enhanced file glob request"},"FileGlobResult":{"properties":{"path":{"type":"string","title":"Path","description":"Base directory path"},"pattern":{"type":"string","title":"Pattern","description":"Glob pattern used"},"files":{"items":{"$ref":"#/components/schemas/GlobFileInfo"},"type":"array","title":"Files","description":"List of matched files","default":[]},"total_count":{"type":"integer","title":"Total Count","description":"Total number of matches","default":0},"truncated":{"type":"boolean","title":"Truncated","description":"Whether results were truncated","default":false}},"type":"object","required":["path","pattern"],"title":"FileGlobResult","description":"Enhanced glob result"},"FileGrepRequest":{"properties":{"path":{"type":"string","title":"Path","description":"File or directory path to search"},"pattern":{"type":"string","title":"Pattern","description":"Search pattern (regex or fixed string)"},"include":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Include","description":"File glob filters to include (e.g., [\"*.py\", \"*.ts\"])"},"exclude":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Exclude","description":"Glob patterns to exclude (e.g., [\"node_modules\", \"*.min.js\"])"},"case_insensitive":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Case Insensitive","description":"Case insensitive search","default":false},"fixed_strings":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Fixed Strings","description":"Treat pattern as literal string, not regex","default":false},"context_before":{"anyOf":[{"type":"integer","maximum":20,"minimum":0},{"type":"null"}],"title":"Context Before","description":"Number of lines before each match (-B)","default":0},"context_after":{"anyOf":[{"type":"integer","maximum":20,"minimum":0},{"type":"null"}],"title":"Context After","description":"Number of lines after each match (-A)","default":0},"max_results":{"anyOf":[{"type":"integer","maximum":10000,"minimum":1},{"type":"null"}],"title":"Max Results","description":"Maximum number of matches to return","default":500},"max_file_size":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Max File Size","description":"Skip files larger than this size (e.g., 1M, 500K)","default":"1M"},"multiline":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Multiline","description":"Enable multiline matching where . matches newlines and patterns can span lines (rg -U --multiline-dotall)","default":false},"offset":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"title":"Offset","description":"Skip first N matches before returning results (for pagination)","default":0},"type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type","description":"File type filter using ripgrep type aliases (e.g., \"py\", \"js\", \"rust\", \"go\"). Maps to rg --type."},"recursive":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Recursive","description":"Search recursively","default":true}},"type":"object","required":["path","pattern"],"title":"FileGrepRequest","description":"File grep (multi-file content search) request"},"FileGrepResult":{"properties":{"path":{"type":"string","title":"Path","description":"Search directory path"},"pattern":{"type":"string","title":"Pattern","description":"Search pattern used"},"matches":{"items":{"$ref":"#/components/schemas/GrepMatch"},"type":"array","title":"Matches","description":"List of matches","default":[]},"match_count":{"type":"integer","title":"Match Count","description":"Total number of matches","default":0},"files_searched":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Files Searched","description":"Number of files searched"},"files_matched":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Files Matched","description":"Number of files with matches"},"truncated":{"type":"boolean","title":"Truncated","description":"Whether results were truncated","default":false}},"type":"object","required":["path","pattern"],"title":"FileGrepResult","description":"Multi-file grep result"},"FileInfo":{"properties":{"name":{"type":"string","title":"Name","description":"File name"},"path":{"type":"string","title":"Path","description":"Full file path"},"is_directory":{"type":"boolean","title":"Is Directory","description":"Whether it's a directory"},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Size","description":"File size in bytes"},"modified_time":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Modified Time","description":"Last modified time (ISO format)"},"permissions":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Permissions","description":"File permissions"},"extension":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Extension","description":"File extension"}},"type":"object","required":["name","path","is_directory"],"title":"FileInfo","description":"File information"},"FileListRequest":{"properties":{"path":{"type":"string","title":"Path","description":"Directory path to list"},"recursive":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Recursive","description":"Whether to list recursively","default":false},"show_hidden":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Show Hidden","description":"Whether to show hidden files","default":true},"file_types":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"File Types","description":"Filter by file extensions (e.g., ['.py', '.txt'])"},"max_depth":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Depth","description":"Maximum depth for recursive listing"},"include_size":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Include Size","description":"Whether to include file size information","default":true},"include_permissions":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Include Permissions","description":"Whether to include file permissions","default":false},"sort_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sort By","description":"Sort by: name, size, modified, type","default":"name"},"sort_desc":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Sort Desc","description":"Sort in descending order","default":false}},"type":"object","required":["path"],"title":"FileListRequest","description":"File list request"},"FileListResult":{"properties":{"path":{"type":"string","title":"Path","description":"Listed directory path"},"files":{"items":{"$ref":"#/components/schemas/FileInfo"},"type":"array","title":"Files","description":"List of files and directories","default":[]},"total_count":{"type":"integer","title":"Total Count","description":"Total number of items","default":0},"directory_count":{"type":"integer","title":"Directory Count","description":"Number of directories","default":0},"file_count":{"type":"integer","title":"File Count","description":"Number of files","default":0}},"type":"object","required":["path"],"title":"FileListResult","description":"File list result"},"FileOperationError":{"properties":{"path":{"type":"string","title":"Path","description":"Path used for the file operation"},"operation":{"type":"string","title":"Operation","description":"File operation name"},"message":{"type":"string","title":"Message","description":"Human-readable error message"},"error_type":{"type":"string","title":"Error Type","description":"Normalized file error category"},"retryable":{"type":"boolean","title":"Retryable","description":"Whether retrying may succeed","default":false},"errno":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Errno","description":"Original OS errno when available"},"errno_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Errno Name","description":"Original OS errno symbolic name when available"},"exception_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Exception Type","description":"Original Python exception type when available"}},"type":"object","required":["path","operation","message","error_type"],"title":"FileOperationError","description":"Structured file-tool execution error."},"FileReadRequest":{"properties":{"file":{"type":"string","title":"File","description":"Absolute file path"},"start_line":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Start Line","description":"Start line (0-based)"},"end_line":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"End Line","description":"End line (not inclusive)"},"sudo":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Sudo","description":"Whether to use sudo privileges","default":false}},"type":"object","required":["file"],"title":"FileReadRequest","description":"File read request"},"FileReadResult":{"properties":{"content":{"type":"string","title":"Content","description":"File content"},"file":{"type":"string","title":"File","description":"Path of the read file"}},"type":"object","required":["content","file"],"title":"FileReadResult","description":"File read result"},"FileReplaceRequest":{"properties":{"file":{"type":"string","title":"File","description":"Absolute file path"},"old_str":{"type":"string","title":"Old Str","description":"Original string to replace"},"new_str":{"type":"string","title":"New Str","description":"New string to replace with"},"sudo":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Sudo","description":"Whether to use sudo privileges","default":false}},"type":"object","required":["file","old_str","new_str"],"title":"FileReplaceRequest","description":"File content replacement request"},"FileReplaceResult":{"properties":{"file":{"type":"string","title":"File","description":"Path of the operated file"},"replaced_count":{"type":"integer","title":"Replaced Count","description":"Number of replacements","default":0}},"type":"object","required":["file"],"title":"FileReplaceResult","description":"File content replacement result"},"FileSearchRequest":{"properties":{"file":{"type":"string","title":"File","description":"Absolute file path"},"regex":{"type":"string","title":"Regex","description":"Regular expression pattern"},"sudo":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Sudo","description":"Whether to use sudo privileges","default":false}},"type":"object","required":["file","regex"],"title":"FileSearchRequest","description":"File content search request"},"FileSearchResult":{"properties":{"file":{"type":"string","title":"File","description":"Path of the searched file"},"matches":{"items":{"type":"string"},"type":"array","title":"Matches","description":"List of matched content","default":[]},"line_numbers":{"items":{"type":"integer"},"type":"array","title":"Line Numbers","description":"List of matched line numbers","default":[]}},"type":"object","required":["file"],"title":"FileSearchResult","description":"File content search result"},"FileUploadResult":{"properties":{"file_path":{"type":"string","title":"File Path","description":"Path of the uploaded file"},"file_size":{"type":"integer","title":"File Size","description":"Size of the uploaded file in bytes"},"success":{"type":"boolean","title":"Success","description":"Whether upload was successful"}},"type":"object","required":["file_path","file_size","success"],"title":"FileUploadResult","description":"File upload result"},"FileWriteRequest":{"properties":{"file":{"type":"string","title":"File","description":"Absolute file path"},"content":{"type":"string","title":"Content","description":"Content to write (text or base64 encoded for binary)"},"encoding":{"anyOf":[{"$ref":"#/components/schemas/FileContentEncoding"},{"type":"null"}],"description":"Content encoding: utf-8 for text, base64 for binary data","default":"utf-8"},"append":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Append","description":"Whether to use append mode","default":false},"leading_newline":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Leading Newline","description":"Whether to add leading newline (only for text mode)","default":false},"trailing_newline":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Trailing Newline","description":"Whether to add trailing newline (only for text mode)","default":false},"sudo":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Sudo","description":"Whether to use sudo privileges","default":false}},"type":"object","required":["file","content"],"title":"FileWriteRequest","description":"File write request - supports both text and binary content"},"FileWriteResult":{"properties":{"file":{"type":"string","title":"File","description":"Path of the written file"},"bytes_written":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Bytes Written","description":"Number of bytes written"}},"type":"object","required":["file"],"title":"FileWriteResult","description":"File write result"},"FillRequest":{"properties":{"selector":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Selector"},"index":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Index"},"text":{"type":"string","title":"Text"}},"type":"object","required":["text"],"title":"FillRequest"},"FindTextRequest":{"properties":{"keyword":{"type":"string","title":"Keyword"}},"type":"object","required":["keyword"],"title":"FindTextRequest"},"FormFillRequest":{"properties":{"items":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Items"}},"type":"object","required":["items"],"title":"FormFillRequest"},"GlobFileInfo":{"properties":{"path":{"type":"string","title":"Path","description":"Full file path"},"name":{"type":"string","title":"Name","description":"File name"},"is_directory":{"type":"boolean","title":"Is Directory","description":"Whether it's a directory","default":false},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Size","description":"File size in bytes"},"modified_time":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Modified Time","description":"Last modified time (ISO format)"}},"type":"object","required":["path","name"],"title":"GlobFileInfo","description":"Glob matched file info"},"GrepMatch":{"properties":{"file":{"type":"string","title":"File","description":"File path containing the match"},"line_number":{"type":"integer","title":"Line Number","description":"Line number (1-based)"},"line_content":{"type":"string","title":"Line Content","description":"Content of the matched line"},"context_before":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Context Before","description":"Lines before the match"},"context_after":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Context After","description":"Lines after the match"}},"type":"object","required":["file","line_number","line_content"],"title":"GrepMatch","description":"Single grep match"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HeadersRequest":{"properties":{"headers":{"additionalProperties":{"type":"string"},"type":"object","title":"Headers"}},"type":"object","required":["headers"],"title":"HeadersRequest"},"HotKeyRequest":{"properties":{"keys":{"items":{"type":"string"},"type":"array","title":"Keys"}},"type":"object","required":["keys"],"title":"HotKeyRequest"},"HotkeyAction":{"properties":{"action_type":{"type":"string","const":"HOTKEY","title":"Action Type","default":"HOTKEY"},"keys":{"items":{"type":"string"},"type":"array","minItems":1,"title":"Keys"}},"type":"object","required":["keys"],"title":"HotkeyAction"},"HoverRequest":{"properties":{"selector":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Selector"},"x":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"X"},"y":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Y"}},"type":"object","title":"HoverRequest"},"Icon":{"properties":{"src":{"type":"string","title":"Src"},"mimeType":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mimetype"},"sizes":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Sizes"}},"additionalProperties":true,"type":"object","required":["src"],"title":"Icon","description":"An icon for display in user interfaces."},"ImageContent":{"properties":{"type":{"type":"string","const":"image","title":"Type"},"data":{"type":"string","title":"Data"},"mimeType":{"type":"string","title":"Mimetype"},"annotations":{"anyOf":[{"$ref":"#/components/schemas/Annotations"},{"type":"null"}]},"_meta":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Meta"}},"additionalProperties":true,"type":"object","required":["type","data","mimeType"],"title":"ImageContent","description":"Image content for a message."},"JupyterCreateSessionRequest":{"properties":{"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"Unique identifier for the session, auto-generated if not provided"},"kernel_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kernel Name","description":"Kernel name: 'python3', 'python3.10', 'python3.11', 'python3.12'. Defaults to the runtime Python version resolved from PYTHON_VERSION."},"cwd":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cwd","description":"Current working directory for the session"}},"type":"object","title":"JupyterCreateSessionRequest","description":"Jupyter session creation request model"},"JupyterCreateSessionResponse":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Unique identifier of the created session"},"kernel_name":{"type":"string","title":"Kernel Name","description":"Name of the kernel associated with the session"},"message":{"type":"string","title":"Message","description":"Status message about session creation"}},"type":"object","required":["session_id","kernel_name","message"],"title":"JupyterCreateSessionResponse","description":"Jupyter session creation response model"},"JupyterExecuteRequest":{"properties":{"code":{"type":"string","title":"Code","description":"Python code to execute"},"timeout":{"anyOf":[{"type":"integer","maximum":300,"minimum":1},{"type":"null"}],"title":"Timeout","description":"Execution timeout in seconds","default":30},"kernel_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kernel Name","description":"Kernel name: 'python3', 'python3.10', 'python3.11', 'python3.12'. Defaults to the runtime Python version resolved from PYTHON_VERSION."},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"Session ID to maintain kernel state across requests"},"cwd":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cwd","description":"Current working directory for the kernel"}},"type":"object","required":["code"],"title":"JupyterExecuteRequest","description":"Jupyter code execution request model"},"JupyterExecuteResponse":{"properties":{"kernel_name":{"type":"string","title":"Kernel Name","description":"Name of the kernel used for execution"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"Session ID for this kernel instance"},"status":{"type":"string","title":"Status","description":"Execution status: ok, error, or timeout"},"execution_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Execution Count","description":"Execution count from the kernel"},"outputs":{"items":{"$ref":"#/components/schemas/JupyterOutput"},"type":"array","title":"Outputs","description":"List of execution outputs"},"code":{"type":"string","title":"Code","description":"The executed code"},"msg_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Msg Id","description":"Message ID from Jupyter kernel"}},"type":"object","required":["kernel_name","status","outputs","code"],"title":"JupyterExecuteResponse","description":"Jupyter code execution response model"},"JupyterInfoResponse":{"properties":{"default_kernel":{"type":"string","title":"Default Kernel","description":"Default kernel name"},"available_kernels":{"items":{"type":"string"},"type":"array","title":"Available Kernels","description":"List of available kernel names"},"active_sessions":{"type":"integer","title":"Active Sessions","description":"Number of active sessions"},"session_timeout_seconds":{"type":"integer","title":"Session Timeout Seconds","description":"Session timeout in seconds"},"max_sessions":{"type":"integer","title":"Max Sessions","description":"Maximum number of concurrent sessions"},"description":{"type":"string","title":"Description","description":"Service description"},"kernel_detection":{"type":"string","title":"Kernel Detection","description":"Kernel detection strategy"}},"type":"object","required":["default_kernel","available_kernels","active_sessions","session_timeout_seconds","max_sessions","description","kernel_detection"],"title":"JupyterInfoResponse","description":"Jupyter service information response model"},"JupyterOutput":{"properties":{"output_type":{"type":"string","title":"Output Type","description":"Type of output: stream, execute_result, display_data, or error"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name","description":"Stream name (stdout/stderr) for stream outputs"},"text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Text","description":"Text content for stream outputs"},"data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Data","description":"Output data for execute_result/display_data"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata","description":"Output metadata"},"execution_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Execution Count","description":"Execution count for execute_result"},"ename":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ename","description":"Error name for error outputs"},"evalue":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Evalue","description":"Error value for error outputs"},"traceback":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Traceback","description":"Error traceback for error outputs"}},"type":"object","required":["output_type"],"title":"JupyterOutput","description":"Jupyter execution output model"},"KeyDownAction":{"properties":{"action_type":{"type":"string","const":"KEY_DOWN","title":"Action Type","default":"KEY_DOWN"},"key":{"type":"string","title":"Key"}},"type":"object","required":["key"],"title":"KeyDownAction"},"KeyRequest":{"properties":{"key":{"type":"string","title":"Key"}},"type":"object","required":["key"],"title":"KeyRequest"},"KeyUpAction":{"properties":{"action_type":{"type":"string","const":"KEY_UP","title":"Action Type","default":"KEY_UP"},"key":{"type":"string","title":"Key"}},"type":"object","required":["key"],"title":"KeyUpAction"},"Language":{"type":"string","enum":["python","javascript"],"title":"Language","description":"Supported programming languages for code execution"},"MouseDownAction":{"properties":{"action_type":{"type":"string","const":"MOUSE_DOWN","title":"Action Type","default":"MOUSE_DOWN"},"button":{"type":"string","enum":["left","right","middle"],"title":"Button","default":"left"}},"type":"object","title":"MouseDownAction"},"MouseUpAction":{"properties":{"action_type":{"type":"string","const":"MOUSE_UP","title":"Action Type","default":"MOUSE_UP"},"button":{"type":"string","enum":["left","right","middle"],"title":"Button","default":"left"}},"type":"object","title":"MouseUpAction"},"MoveRelAction":{"properties":{"action_type":{"type":"string","const":"MOVE_REL","title":"Action Type","default":"MOVE_REL"},"x_offset":{"type":"number","title":"X Offset","description":"Relative current position x-axis movement"},"y_offset":{"type":"number","title":"Y Offset","description":"Relative current position y-axis movement"}},"type":"object","required":["x_offset","y_offset"],"title":"MoveRelAction"},"MoveToAction":{"properties":{"action_type":{"type":"string","const":"MOVE_TO","title":"Action Type","default":"MOVE_TO"},"x":{"type":"number","title":"X","description":"Target x-coordinate"},"y":{"type":"number","title":"Y","description":"Target y-coordinate"}},"type":"object","required":["x","y"],"title":"MoveToAction"},"NavigateRequest":{"properties":{"url":{"type":"string","title":"Url"},"wait_until":{"type":"string","enum":["load","domcontentloaded","networkidle","commit"],"title":"Wait Until","default":"load"},"timeout":{"type":"number","title":"Timeout","default":30}},"type":"object","required":["url"],"title":"NavigateRequest"},"NetworkRouteRemoveRequest":{"properties":{"url_pattern":{"type":"string","title":"Url Pattern"}},"type":"object","required":["url_pattern"],"title":"NetworkRouteRemoveRequest"},"NetworkRouteRequest":{"properties":{"url_pattern":{"type":"string","title":"Url Pattern"},"response":{"anyOf":[{"$ref":"#/components/schemas/RouteResponseModel"},{"type":"null"}]},"abort":{"type":"boolean","title":"Abort","default":false}},"type":"object","required":["url_pattern"],"title":"NetworkRouteRequest"},"NodeJSCreateSessionRequest":{"properties":{"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"Custom session ID (auto-generated if not provided)"},"cwd":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cwd","description":"Working directory for the session"},"max_idle_time":{"anyOf":[{"type":"integer","maximum":86400,"minimum":60},{"type":"null"}],"title":"Max Idle Time","description":"Maximum idle time in seconds (default 24 hours)","default":86400}},"type":"object","title":"NodeJSCreateSessionRequest"},"NodeJSCreateSessionResponse":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Session ID"},"created":{"type":"boolean","title":"Created","description":"Whether the session was newly created"},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Additional message (e.g., if session already exists)"},"session":{"anyOf":[{"$ref":"#/components/schemas/NodeJSSessionInfo"},{"type":"null"}],"description":"Session information (if created)"}},"type":"object","required":["session_id","created"],"title":"NodeJSCreateSessionResponse"},"NodeJSDeleteSessionResponse":{"properties":{"deleted":{"type":"boolean","title":"Deleted","description":"Whether the session was deleted"}},"type":"object","required":["deleted"],"title":"NodeJSDeleteSessionResponse"},"NodeJSExecuteRequest":{"properties":{"code":{"type":"string","title":"Code","description":"JavaScript code to execute"},"timeout":{"anyOf":[{"type":"integer","maximum":300,"minimum":1},{"type":"null"}],"title":"Timeout","description":"Execution timeout in seconds","default":30},"stdin":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stdin","description":"Standard input for the process"},"files":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"title":"Files","description":"Additional files to create in execution directory"},"stateful":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Stateful","description":"Enable stateful execution with persistent REPL session","default":false},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"Session ID for stateful execution (reuse existing session)"},"cwd":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cwd","description":"Working directory for code execution"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version","description":"Node.js version to use: \"node20\", \"node22\", \"node24\", or aliases \"20\", \"22\", \"24\""}},"type":"object","required":["code"],"title":"NodeJSExecuteRequest"},"NodeJSExecuteResponse":{"properties":{"language":{"type":"string","const":"javascript","title":"Language","description":"Language that was executed (always 'javascript')"},"status":{"type":"string","title":"Status","description":"Execution status: ok, error, or timeout"},"execution_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Execution Count","description":"Execution count"},"outputs":{"items":{"$ref":"#/components/schemas/NodeJSOutput"},"type":"array","title":"Outputs","description":"List of execution outputs","default":[]},"code":{"type":"string","title":"Code","description":"Code that was executed"},"stdout":{"type":"string","title":"Stdout","description":"Standard output","default":""},"stderr":{"type":"string","title":"Stderr","description":"Standard error","default":""},"exit_code":{"type":"integer","title":"Exit Code","description":"Process exit code"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"Session ID for stateful execution (use this to continue the session)"}},"type":"object","required":["language","status","code","exit_code"],"title":"NodeJSExecuteResponse"},"NodeJSOutput":{"properties":{"output_type":{"type":"string","title":"Output Type","description":"Type of output: stream, error, or execute_result"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name","description":"Stream name (stdout/stderr) for stream outputs"},"text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Text","description":"Text content for stream outputs"},"ename":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ename","description":"Error name for error outputs"},"evalue":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Evalue","description":"Error value for error outputs"},"traceback":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Traceback","description":"Error traceback for error outputs"},"data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Data","description":"Data for execute_result outputs"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata","description":"Metadata for outputs"}},"type":"object","required":["output_type"],"title":"NodeJSOutput"},"NodeJSPackageInfo":{"properties":{"name":{"type":"string","title":"Name","description":"Package name"},"version":{"type":"string","title":"Version","description":"Package version"}},"type":"object","required":["name","version"],"title":"NodeJSPackageInfo","description":"Package information"},"NodeJSRuntimeInfo":{"properties":{"node_version":{"type":"string","title":"Node Version","description":"Node.js version"},"npm_version":{"type":"string","title":"Npm Version","description":"npm version"},"supported_languages":{"items":{"type":"string"},"type":"array","title":"Supported Languages","description":"List of supported languages"},"description":{"type":"string","title":"Description","description":"Service description"},"runtime_directory":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Runtime Directory","description":"Runtime directory path"},"global_npm_directory":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Global Npm Directory","description":"Global npm directory path"},"runtime_packages":{"items":{"$ref":"#/components/schemas/NodeJSPackageInfo"},"type":"array","title":"Runtime Packages","description":"Pre-installed runtime packages","default":[]},"global_packages":{"items":{"$ref":"#/components/schemas/NodeJSPackageInfo"},"type":"array","title":"Global Packages","description":"Globally installed npm packages","default":[]},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error","description":"Error message if runtime info retrieval failed"},"available_versions":{"items":{"type":"string"},"type":"array","title":"Available Versions","description":"Available Node.js versions (e.g., node20, node22, node24)","default":[]},"current_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Current Version","description":"Currently active Node.js version"}},"type":"object","required":["node_version","npm_version","supported_languages","description"],"title":"NodeJSRuntimeInfo","description":"NodeJS runtime information model"},"NodeJSSessionInfo":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Session ID"},"cwd":{"type":"string","title":"Cwd","description":"Working directory"},"created_at":{"type":"number","title":"Created At","description":"Session creation timestamp (ms since epoch)"},"last_used":{"type":"number","title":"Last Used","description":"Last activity timestamp (ms since epoch)"},"max_idle_time":{"type":"integer","title":"Max Idle Time","description":"Maximum idle time in milliseconds"},"age_seconds":{"type":"integer","title":"Age Seconds","description":"Seconds since last activity"},"state":{"type":"string","title":"State","description":"Session state: IDLE or EXECUTING"}},"type":"object","required":["session_id","cwd","created_at","last_used","max_idle_time","age_seconds","state"],"title":"NodeJSSessionInfo"},"NodeJSSessionListResponse":{"properties":{"sessions":{"additionalProperties":{"$ref":"#/components/schemas/NodeJSSessionInfo"},"type":"object","title":"Sessions","description":"Map of session ID to session info","default":{}}},"type":"object","title":"NodeJSSessionListResponse"},"NodeJSSessionResponse":{"properties":{"session":{"$ref":"#/components/schemas/NodeJSSessionInfo","description":"Session information"}},"type":"object","required":["session"],"title":"NodeJSSessionResponse"},"NodeJSUpdateSessionRequest":{"properties":{"max_idle_time":{"anyOf":[{"type":"integer","maximum":86400,"minimum":60},{"type":"null"}],"title":"Max Idle Time","description":"New maximum idle time in seconds"},"cwd":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cwd","description":"New working directory"}},"type":"object","title":"NodeJSUpdateSessionRequest"},"NodeJSUpdateSessionResponse":{"properties":{"updated":{"type":"boolean","title":"Updated","description":"Whether the update was successful"},"session":{"$ref":"#/components/schemas/NodeJSSessionInfo","description":"Updated session information"}},"type":"object","required":["updated","session"],"title":"NodeJSUpdateSessionResponse"},"ObservationCgroupSnapshot":{"properties":{"cpu_usage_pct":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Cpu Usage Pct"},"cpu_usage_usec":{"type":"integer","title":"Cpu Usage Usec","default":0},"cpu_nr_periods":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Cpu Nr Periods"},"cpu_nr_throttled":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Cpu Nr Throttled"},"cpu_throttled_usec":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Cpu Throttled Usec"},"mem_current_bytes":{"type":"integer","title":"Mem Current Bytes","default":0},"mem_max_bytes":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Mem Max Bytes"},"mem_usage_pct":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Mem Usage Pct"},"oom":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Oom"},"oom_kill":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Oom Kill"},"memory_anon_bytes":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Memory Anon Bytes"},"memory_file_bytes":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Memory File Bytes"},"memory_shmem_bytes":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Memory Shmem Bytes"},"memory_slab_bytes":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Memory Slab Bytes"}},"type":"object","title":"ObservationCgroupSnapshot"},"ObservationDiskSnapshot":{"properties":{"path":{"type":"string","title":"Path"},"used_bytes":{"type":"integer","title":"Used Bytes"},"total_bytes":{"type":"integer","title":"Total Bytes"},"free_bytes":{"type":"integer","title":"Free Bytes"},"usage_pct":{"type":"number","title":"Usage Pct"},"inode_used":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Inode Used"},"inode_total":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Inode Total"},"inode_usage_pct":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Inode Usage Pct"}},"type":"object","required":["path","used_bytes","total_bytes","free_bytes","usage_pct"],"title":"ObservationDiskSnapshot"},"ObservationEvent":{"properties":{"ts":{"type":"string","format":"date-time","title":"Ts"},"type":{"type":"string","title":"Type"},"message":{"type":"string","title":"Message","default":""},"data":{"additionalProperties":true,"type":"object","title":"Data"}},"type":"object","required":["ts","type"],"title":"ObservationEvent"},"ObservationExportResult":{"properties":{"report_id":{"type":"string","title":"Report Id"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"reason":{"type":"string","title":"Reason","default":"manual"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"path":{"type":"string","title":"Path"},"size_bytes":{"type":"integer","title":"Size Bytes"}},"type":"object","required":["report_id","created_at","path","size_bytes"],"title":"ObservationExportResult"},"ObservationLiveSnapshot":{"properties":{"captured_at":{"type":"string","format":"date-time","title":"Captured At"},"mode":{"type":"string","enum":["off","guardrail","capture"],"title":"ObservationMode"},"cgroup":{"$ref":"#/components/schemas/ObservationCgroupSnapshot"},"disk":{"items":{"$ref":"#/components/schemas/ObservationDiskSnapshot"},"type":"array","title":"Disk"},"top_processes":{"items":{"$ref":"#/components/schemas/ObservationProcessSnapshot"},"type":"array","title":"Top Processes"},"recent_events":{"items":{"$ref":"#/components/schemas/ObservationEvent"},"type":"array","title":"Recent Events"}},"type":"object","required":["captured_at","mode","cgroup"],"title":"ObservationLiveSnapshot"},"ObservationProcessSnapshot":{"properties":{"pid":{"type":"integer","title":"Pid"},"user":{"type":"string","title":"User"},"comm":{"type":"string","title":"Comm"},"rss_bytes":{"type":"integer","title":"Rss Bytes"},"rss_mib":{"type":"number","title":"Rss Mib"},"cpu_pct":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Cpu Pct"},"threads":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Threads"},"fds":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Fds"},"state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"State"},"uptime_sec":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Uptime Sec"},"ppid":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Ppid"}},"type":"object","required":["pid","user","comm","rss_bytes","rss_mib"],"title":"ObservationProcessSnapshot"},"ObservationReportInfo":{"properties":{"report_id":{"type":"string","title":"Report Id"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"reason":{"type":"string","title":"Reason","default":"manual"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"path":{"type":"string","title":"Path"},"size_bytes":{"type":"integer","title":"Size Bytes"}},"type":"object","required":["report_id","created_at","path","size_bytes"],"title":"ObservationReportInfo"},"ObservationStartResult":{"properties":{"session_id":{"type":"string","title":"Session Id"},"mode":{"type":"string","enum":["off","guardrail","capture"],"title":"ObservationMode"},"started_at":{"type":"string","format":"date-time","title":"Started At"},"ends_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Ends At"},"interval_seconds":{"type":"number","title":"Interval Seconds"},"runtime_dir":{"type":"string","title":"Runtime Dir"}},"type":"object","required":["session_id","mode","started_at","interval_seconds","runtime_dir"],"title":"ObservationStartResult"},"ObservationStatus":{"properties":{"mode":{"type":"string","enum":["off","guardrail","capture"],"title":"ObservationMode"},"running":{"type":"boolean","title":"Running"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"started_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Started At"},"ends_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Ends At"},"interval_seconds":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Interval Seconds"},"last_sample_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Sample At"},"runtime_dir":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Runtime Dir"},"report_count":{"type":"integer","title":"Report Count","default":0}},"type":"object","required":["mode","running"],"title":"ObservationStatus"},"ObservationStopResult":{"properties":{"session_id":{"type":"string","title":"Session Id"},"stopped":{"type":"boolean","title":"Stopped"},"report_ready":{"type":"boolean","title":"Report Ready"}},"type":"object","required":["session_id","stopped","report_ready"],"title":"ObservationStopResult"},"ObserveExportRequest":{"properties":{"idempotency_key":{"anyOf":[{"type":"string","maxLength":128},{"type":"null"}],"title":"Idempotency Key","description":"Optional key for idempotent retries of the same export request"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"Optional session id to export"},"reason":{"type":"string","title":"Reason","description":"Export reason","default":"manual"}},"type":"object","title":"ObserveExportRequest"},"ObserveStartRequest":{"properties":{"mode":{"type":"string","enum":["guardrail","capture"],"title":"ObserveStartMode","default":"capture"},"idempotency_key":{"anyOf":[{"type":"string","maxLength":128},{"type":"null"}],"title":"Idempotency Key","description":"Optional key for idempotent retries of the same start request"},"duration_seconds":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Duration Seconds","description":"Optional session duration in seconds"},"interval_seconds":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Interval Seconds","description":"Sampling interval in seconds"},"include_processes":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Include Processes","description":"Whether to sample process rows"},"include_disk":{"type":"boolean","title":"Include Disk","description":"Whether to sample disk usage","default":true}},"type":"object","title":"ObserveStartRequest"},"ObserveStopRequest":{"properties":{"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"Optional active session id to stop"}},"type":"object","title":"ObserveStopRequest"},"PollRequest":{"properties":{"cursor":{"type":"integer","minimum":0,"title":"Cursor","description":"Cursor returned by the previous call; only events with seq > cursor are returned","default":0},"limit":{"type":"integer","maximum":1000,"minimum":1,"title":"Limit","description":"Maximum number of events to return","default":100},"timeout":{"type":"integer","maximum":60,"minimum":0,"title":"Timeout","description":"Long-poll wait time in seconds; 0 returns immediately","default":0}},"type":"object","title":"PollRequest"},"PressAction":{"properties":{"action_type":{"type":"string","const":"PRESS","title":"Action Type","default":"PRESS"},"key":{"type":"string","title":"Key"}},"type":"object","required":["key"],"title":"PressAction"},"ProxyBypassRequest":{"properties":{"pattern":{"type":"string","title":"Pattern","description":"Bypass pattern: domain (*.example.com, .example.com) or CIDR (10.0.0.0/8)","examples":["*.internal.company.com","10.0.0.0/8",".byted.org"]}},"type":"object","required":["pattern"],"title":"ProxyBypassRequest"},"ProxyDiagnoseResult":{"properties":{"url":{"type":"string","title":"Url"},"matched_mapping":{"anyOf":[{"$ref":"#/components/schemas/ProxyMappingRoute"},{"type":"null"}]},"resolved_target":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resolved Target"},"target_reachable":{"type":"boolean","title":"Target Reachable","default":false},"route":{"type":"string","title":"Route"}},"type":"object","required":["url","route"],"title":"ProxyDiagnoseResult"},"ProxyHealthCheck":{"properties":{"healthy":{"type":"boolean","title":"Healthy","description":"Overall health status"},"gost_alive":{"type":"boolean","title":"Gost Alive","description":"GOST proxy process is reachable via API"},"nginx_alive":{"type":"boolean","title":"Nginx Alive","description":"nginx process is running"},"config_consistent":{"type":"boolean","title":"Config Consistent","description":"Domain sets in proxy-map.json, gost-hosts.txt, and nginx conf are consistent"},"inconsistencies":{"items":{"type":"string"},"type":"array","title":"Inconsistencies","description":"List of inconsistency details (empty when config_consistent is true)"}},"type":"object","required":["healthy","gost_alive","nginx_alive","config_consistent"],"title":"ProxyHealthCheck"},"ProxyMappingAddRequest":{"properties":{"source":{"type":"string","title":"Source","description":"Source pattern: [protocol://]host[:port][/path], supports wildcard *","examples":["myapp.com","api.myapp.com/v1/*","*.staging.app.com"]},"target":{"type":"string","title":"Target","description":"Target address: [host:]port[/path]. Host defaults to 127.0.0.1","examples":[":3000","127.0.0.1:8081/v1/","192.168.1.5:3000"]}},"type":"object","required":["source","target"],"title":"ProxyMappingAddRequest"},"ProxyMappingRoute":{"properties":{"source":{"type":"string","title":"Source","description":"Source pattern: [protocol://]host[:port][/path], supports wildcard * in host","examples":["myapp.com","api.myapp.com/v1/*","*.staging.app.com"]},"target":{"type":"string","title":"Target","description":"Target address: [host:]port[/path]. Host defaults to 127.0.0.1","examples":["127.0.0.1:3000",":8081/v1/","192.168.1.5:3000"]},"source_host":{"type":"string","title":"Source Host","description":"Extracted host from source (used for GOST hosts)"},"source_path":{"type":"string","title":"Source Path","description":"Extracted path from source (used for nginx location)","default":"/"},"internal_port":{"type":"integer","title":"Internal Port","description":"Internal nginx listen port for this domain group"}},"type":"object","required":["source","target","source_host","internal_port"],"title":"ProxyMappingRoute"},"ProxyUpstreamInfo":{"properties":{"addr":{"type":"string","title":"Addr","description":"Upstream proxy address (host:port)","examples":["proxy.example.com:3128"]},"username":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Username","description":"Proxy auth username (if authenticated)"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Password","description":"Proxy auth password (if authenticated)"}},"type":"object","required":["addr"],"title":"ProxyUpstreamInfo"},"ProxyUpstreamUpdateRequest":{"properties":{"server":{"type":"string","title":"Server","description":"Upstream proxy server. Supports plain host:port or user:pass@host:port","examples":["proxy.example.com:3128","user:token@proxy.example.com:8080"]},"auth_cmd":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Auth Cmd","description":"Optional shell command to obtain proxy credentials. The command stdout should be \"username:password\". When set, the result is injected into the server URL, replacing any inline credentials.","examples":["echo -n \"ZTI_${TCE_PSM}:$(cat $SEC_TOKEN_PATH)\"","/opt/scripts/get-proxy-auth.sh"]}},"type":"object","required":["server"],"title":"ProxyUpstreamUpdateRequest"},"RecordRequest":{"properties":{"action":{"type":"string","enum":["once","start","pause","resume","stop","status"],"title":"Record Action","default":"once"},"save_path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Save Path"},"duration":{"type":"number","exclusiveMinimum":0,"title":"Duration","default":10},"fps":{"type":"integer","exclusiveMinimum":0,"title":"Fps","default":15},"quality":{"type":"integer","maximum":100,"minimum":0,"title":"Quality","default":80}},"type":"object","title":"RecordRequest"},"RegisterHookRequest":{"properties":{"name":{"type":"string","maxLength":64,"pattern":"^[a-zA-Z0-9_-]+$","title":"Name","description":"Unique name for this hook"},"event":{"type":"string","title":"Event","description":"Lifecycle event: \"shutdown\"","default":"shutdown"},"command":{"type":"string","maxLength":4096,"title":"Command","description":"Shell command to execute"},"timeout":{"type":"number","title":"Timeout","description":"Per-hook timeout in seconds","default":10},"priority":{"type":"integer","title":"Priority","description":"Execution priority (lower = earlier). Same priority hooks run in parallel","default":100}},"type":"object","required":["name","command"],"title":"RegisterHookRequest"},"Resolution":{"properties":{"width":{"type":"integer","exclusiveMinimum":0,"title":"Width","description":"Screen width in pixels."},"height":{"type":"integer","exclusiveMinimum":0,"title":"Height","description":"Screen height in pixels."}},"type":"object","required":["width","height"],"title":"Resolution"},"ResourceLink":{"properties":{"name":{"type":"string","title":"Name"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"uri":{"type":"string","minLength":1,"format":"uri","title":"Uri"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"mimeType":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mimetype"},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Size"},"icons":{"anyOf":[{"items":{"$ref":"#/components/schemas/Icon"},"type":"array"},{"type":"null"}],"title":"Icons"},"annotations":{"anyOf":[{"$ref":"#/components/schemas/Annotations"},{"type":"null"}]},"_meta":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Meta"},"type":{"type":"string","const":"resource_link","title":"Type"}},"additionalProperties":true,"type":"object","required":["name","uri","type"],"title":"ResourceLink","description":"A resource that the server is capable of reading, included in a prompt or tool call result.\n\nNote: resource links returned by tools are not guaranteed to appear in the results of `resources/list` requests."},"Response":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{},{"type":"null"}],"title":"Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response","description":"Generic response model for API interface return results"},"Response_ActiveSessionsResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ActiveSessionsResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ActiveSessionsResult]"},"Response_ActiveShellSessionsResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ActiveShellSessionsResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ActiveShellSessionsResult]"},"Response_BashExecResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/BashExecResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[BashExecResult]"},"Response_BashOutputResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/BashOutputResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[BashOutputResult]"},"Response_BashSessionInfo_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/BashSessionInfo"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[BashSessionInfo]"},"Response_BrowserInfoResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/BrowserInfoResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[BrowserInfoResult]"},"Response_CallToolResultModel_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"properties":{"_meta":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Meta"},"content":{"items":{"anyOf":[{"$ref":"#/components/schemas/TextContent"},{"$ref":"#/components/schemas/ImageContent"},{"$ref":"#/components/schemas/AudioContent"},{"$ref":"#/components/schemas/ResourceLink"},{"$ref":"#/components/schemas/EmbeddedResource"}]},"type":"array","title":"Content"},"structuredContent":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Structuredcontent"},"isError":{"type":"boolean","title":"Iserror","default":false}},"additionalProperties":true,"type":"object","required":["content"],"title":"CallToolResult","description":"The server's response to a tool call."},{"type":"null"}],"title":"ResponseCallToolResultModel_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[CallToolResultModel]"},"Response_CaptchaWaitResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/CaptchaWaitResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[CaptchaWaitResult]"},"Response_CodeExecuteResponse_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/CodeExecuteResponse"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[CodeExecuteResponse]"},"Response_CodeInfoResponse_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/CodeInfoResponse"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[CodeInfoResponse]"},"Response_DisplayRecordResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/DisplayRecordResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[DisplayRecordResult]"},"Response_JupyterCreateSessionResponse_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/JupyterCreateSessionResponse"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[JupyterCreateSessionResponse]"},"Response_JupyterExecuteResponse_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/JupyterExecuteResponse"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[JupyterExecuteResponse]"},"Response_JupyterInfoResponse_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/JupyterInfoResponse"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[JupyterInfoResponse]"},"Response_ListToolsResultModel_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"properties":{"_meta":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Meta"},"nextCursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Nextcursor"},"tools":{"items":{"$ref":"#/components/schemas/Tool"},"type":"array","title":"Tools"}},"additionalProperties":true,"type":"object","required":["tools"],"title":"ListToolsResult","description":"The server's response to a tools/list request from the client."},{"type":"null"}],"title":"ResponseListToolsResultModel_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ListToolsResultModel]"},"Response_List_str__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"ResponseList_str_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[List[str]]"},"Response_NodeJSCreateSessionResponse_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/NodeJSCreateSessionResponse"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[NodeJSCreateSessionResponse]"},"Response_NodeJSDeleteSessionResponse_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/NodeJSDeleteSessionResponse"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[NodeJSDeleteSessionResponse]"},"Response_NodeJSExecuteResponse_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/NodeJSExecuteResponse"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[NodeJSExecuteResponse]"},"Response_NodeJSRuntimeInfo_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/NodeJSRuntimeInfo"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[NodeJSRuntimeInfo]"},"Response_NodeJSSessionListResponse_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/NodeJSSessionListResponse"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[NodeJSSessionListResponse]"},"Response_NodeJSSessionResponse_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/NodeJSSessionResponse"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[NodeJSSessionResponse]"},"Response_NodeJSUpdateSessionResponse_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/NodeJSUpdateSessionResponse"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[NodeJSUpdateSessionResponse]"},"Response_ObservationExportResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ObservationExportResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ObservationExportResult]"},"Response_ObservationLiveSnapshot_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ObservationLiveSnapshot"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ObservationLiveSnapshot]"},"Response_ObservationReportInfo_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ObservationReportInfo"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ObservationReportInfo]"},"Response_ObservationStartResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ObservationStartResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ObservationStartResult]"},"Response_ObservationStatus_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ObservationStatus"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ObservationStatus]"},"Response_ObservationStopResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ObservationStopResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ObservationStopResult]"},"Response_ProxyDiagnoseResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ProxyDiagnoseResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ProxyDiagnoseResult]"},"Response_ProxyHealthCheck_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ProxyHealthCheck"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ProxyHealthCheck]"},"Response_ProxyMappingRoute_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ProxyMappingRoute"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ProxyMappingRoute]"},"Response_ProxyUpstreamInfo_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ProxyUpstreamInfo"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ProxyUpstreamInfo]"},"Response_SandboxHook_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/SandboxHook"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[SandboxHook]"},"Response_ShellCommandResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ShellCommandResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ShellCommandResult]"},"Response_ShellCreateSessionResponse_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ShellCreateSessionResponse"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ShellCreateSessionResponse]"},"Response_ShellKillResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ShellKillResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ShellKillResult]"},"Response_ShellSessionStats_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ShellSessionStats"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ShellSessionStats]"},"Response_ShellViewResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ShellViewResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ShellViewResult]"},"Response_ShellWaitResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ShellWaitResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ShellWaitResult]"},"Response_ShellWriteResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ShellWriteResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[ShellWriteResult]"},"Response_SkillContentResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/SkillContentResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[SkillContentResult]"},"Response_SkillMetadataCollection_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/SkillMetadataCollection"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[SkillMetadataCollection]"},"Response_SkillMetadata_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/SkillMetadata"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[SkillMetadata]"},"Response_SkillRegistrationResult_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/SkillRegistrationResult"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[SkillRegistrationResult]"},"Response_Union_FileFindResult__FileOperationError__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/FileFindResult"},{"$ref":"#/components/schemas/FileOperationError"},{"type":"null"}],"title":"ResponseUnion_FileFindResult_FileOperationError_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[Union[FileFindResult, FileOperationError]]"},"Response_Union_FileGlobResult__FileOperationError__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/FileGlobResult"},{"$ref":"#/components/schemas/FileOperationError"},{"type":"null"}],"title":"ResponseUnion_FileGlobResult_FileOperationError_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[Union[FileGlobResult, FileOperationError]]"},"Response_Union_FileGrepResult__FileOperationError__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/FileGrepResult"},{"$ref":"#/components/schemas/FileOperationError"},{"type":"null"}],"title":"ResponseUnion_FileGrepResult_FileOperationError_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[Union[FileGrepResult, FileOperationError]]"},"Response_Union_FileListResult__FileOperationError__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/FileListResult"},{"$ref":"#/components/schemas/FileOperationError"},{"type":"null"}],"title":"ResponseUnion_FileListResult_FileOperationError_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[Union[FileListResult, FileOperationError]]"},"Response_Union_FileReadResult__FileOperationError__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/FileReadResult"},{"$ref":"#/components/schemas/FileOperationError"},{"type":"null"}],"title":"ResponseUnion_FileReadResult_FileOperationError_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[Union[FileReadResult, FileOperationError]]"},"Response_Union_FileReplaceResult__FileOperationError__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/FileReplaceResult"},{"$ref":"#/components/schemas/FileOperationError"},{"type":"null"}],"title":"ResponseUnion_FileReplaceResult_FileOperationError_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[Union[FileReplaceResult, FileOperationError]]"},"Response_Union_FileSearchResult__FileOperationError__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/FileSearchResult"},{"$ref":"#/components/schemas/FileOperationError"},{"type":"null"}],"title":"ResponseUnion_FileSearchResult_FileOperationError_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[Union[FileSearchResult, FileOperationError]]"},"Response_Union_FileUploadResult__FileOperationError__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/FileUploadResult"},{"$ref":"#/components/schemas/FileOperationError"},{"type":"null"}],"title":"ResponseUnion_FileUploadResult_FileOperationError_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[Union[FileUploadResult, FileOperationError]]"},"Response_Union_FileWriteResult__FileOperationError__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/FileWriteResult"},{"$ref":"#/components/schemas/FileOperationError"},{"type":"null"}],"title":"ResponseUnion_FileWriteResult_FileOperationError_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[Union[FileWriteResult, FileOperationError]]"},"Response_Union_ProxyUpstreamInfo__NoneType__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/ProxyUpstreamInfo"},{"type":"null"}],"description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[Union[ProxyUpstreamInfo, NoneType]]"},"Response_Union_StrReplaceEditorResult__FileOperationError__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"$ref":"#/components/schemas/StrReplaceEditorResult"},{"$ref":"#/components/schemas/FileOperationError"},{"type":"null"}],"title":"ResponseUnion_StrReplaceEditorResult_FileOperationError_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[Union[StrReplaceEditorResult, FileOperationError]]"},"Response_dict_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Responsedict_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[dict]"},"Response_list_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Responselist_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[list]"},"Response_list_BashSessionInfo__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"items":{"$ref":"#/components/schemas/BashSessionInfo"},"type":"array"},{"type":"null"}],"title":"Responselist_BashSessionInfo_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[list[BashSessionInfo]]"},"Response_list_ObservationReportInfo__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"items":{"$ref":"#/components/schemas/ObservationReportInfo"},"type":"array"},{"type":"null"}],"title":"Responselist_ObservationReportInfo_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[list[ObservationReportInfo]]"},"Response_list_ProxyMappingRoute__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"items":{"$ref":"#/components/schemas/ProxyMappingRoute"},"type":"array"},{"type":"null"}],"title":"Responselist_ProxyMappingRoute_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[list[ProxyMappingRoute]]"},"Response_list_SandboxHook__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"items":{"$ref":"#/components/schemas/SandboxHook"},"type":"array"},{"type":"null"}],"title":"Responselist_SandboxHook_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[list[SandboxHook]]"},"Response_list_str__":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Responselist_str_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[list[str]]"},"Response_str_":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Responsestr_Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"}},"type":"object","title":"Response[str]"},"RestartRequest":{"properties":{"mode":{"type":"string","enum":["soft","hard"],"title":"RestartMode","default":"hard"},"url_blocklist":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Url Blocklist"},"url_allowlist":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Url Allowlist"},"allow_file_selection_dialogs":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Allow File Selection Dialogs","description":"Control whether web pages can open file picker dialogs. Send null to remove the explicit policy and restore the browser default."},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale"}},"type":"object","title":"RestartRequest"},"RightClickAction":{"properties":{"action_type":{"type":"string","const":"RIGHT_CLICK","title":"Action Type","default":"RIGHT_CLICK"},"x":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"X"},"y":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Y"}},"type":"object","title":"RightClickAction"},"RouteResponseModel":{"properties":{"status":{"type":"integer","title":"Status","default":200},"headers":{"additionalProperties":{"type":"string"},"type":"object","title":"Headers"},"body":{"type":"string","title":"Body","default":""},"content_type":{"type":"string","title":"Content Type","default":"text/plain"}},"type":"object","title":"RouteResponseModel"},"RuntimeEnv":{"properties":{"python":{"items":{"$ref":"#/components/schemas/ToolSpec"},"type":"array","title":"Python"},"nodejs":{"items":{"$ref":"#/components/schemas/ToolSpec"},"type":"array","title":"Nodejs"}},"type":"object","required":["python","nodejs"],"title":"RuntimeEnv","description":"version, path, etc. (python3, python3.11, python3.12, pip3, pip, uv, jupyter)"},"SandboxDetail":{"properties":{"system":{"$ref":"#/components/schemas/SystemEnv"},"runtime":{"$ref":"#/components/schemas/RuntimeEnv"},"utils":{"items":{"$ref":"#/components/schemas/ToolCategory"},"type":"array","title":"Utils"}},"type":"object","required":["system","runtime","utils"],"title":"SandboxDetail","description":"system environment info"},"SandboxHook":{"properties":{"name":{"type":"string","title":"Name","description":"Unique name for this hook"},"event":{"type":"string","title":"Event","description":"Lifecycle event: \"shutdown\"","default":"shutdown"},"command":{"type":"string","maxLength":4096,"title":"Command","description":"Shell command to execute"},"timeout":{"type":"number","title":"Timeout","description":"Per-hook timeout in seconds","default":10},"priority":{"type":"integer","title":"Priority","description":"Execution priority (lower = earlier). Same priority hooks run in parallel","default":100},"source":{"type":"string","title":"Source","description":"Registration source: \"env\" or \"api\"","default":"api"}},"type":"object","required":["name","command"],"title":"SandboxHook","description":"A registered lifecycle hook."},"SandboxResponse":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the operation was successful","default":true},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Operation result message","default":"Operation successful"},"data":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Data","description":"Data returned from the operation"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"Context hint for AI agents (e.g. tab changes)"},"home_dir":{"type":"string","title":"Home Dir"},"workspace":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Workspace"},"version":{"type":"string","title":"Version"},"detail":{"$ref":"#/components/schemas/SandboxDetail"}},"type":"object","required":["home_dir","version","detail"],"title":"SandboxResponse"},"ScopedHeadersRequest":{"properties":{"origin":{"type":"string","title":"Origin"},"headers":{"additionalProperties":{"type":"string"},"type":"object","title":"Headers"}},"type":"object","required":["origin","headers"],"title":"ScopedHeadersRequest"},"ScrollAction":{"properties":{"action_type":{"type":"string","const":"SCROLL","title":"Action Type","default":"SCROLL"},"dx":{"type":"integer","title":"Dx","default":0},"dy":{"type":"integer","title":"Dy","default":0}},"type":"object","title":"ScrollAction"},"ScrollRequest":{"properties":{"direction":{"type":"string","title":"Direction","default":"down"},"amount":{"type":"integer","title":"Amount","default":300}},"type":"object","title":"ScrollRequest"},"ScrollToElementRequest":{"properties":{"selector":{"type":"string","title":"Selector"}},"type":"object","required":["selector"],"title":"ScrollToElementRequest"},"ScrollToRequest":{"properties":{"x":{"type":"integer","title":"X","default":0},"y":{"type":"integer","title":"Y","default":0}},"type":"object","title":"ScrollToRequest"},"SelectOptionRequest":{"properties":{"selector":{"type":"string","title":"Selector"},"value":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Value"},"label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Label"},"index":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Index"}},"type":"object","required":["selector"],"title":"SelectOptionRequest"},"SessionInfo":{"properties":{"kernel_name":{"type":"string","title":"Kernel Name","description":"Kernel name"},"last_used":{"type":"number","title":"Last Used","description":"Last used timestamp"},"age_seconds":{"type":"integer","title":"Age Seconds","description":"Age of session in seconds"}},"type":"object","required":["kernel_name","last_used","age_seconds"],"title":"SessionInfo","description":"Active session information"},"SessionStatus":{"type":"string","enum":["ready","closed"],"title":"SessionStatus","description":"Status of a pipe bash session."},"ShellCommandResult":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Shell session ID"},"command":{"type":"string","title":"Command","description":"Executed command"},"status":{"$ref":"#/components/schemas/BashCommandStatus","description":"Command execution status"},"output":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Output","description":"Command execution output, only has value when status is completed"},"console":{"anyOf":[{"items":{"$ref":"#/components/schemas/ConsoleRecord"},"type":"array"},{"type":"null"}],"title":"Console","description":"Console command records"},"exit_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Exit Code","description":"Command execution exit code, only has value when status is completed"}},"type":"object","required":["session_id","command","status"],"title":"ShellCommandResult","description":"Shell command execution result model"},"ShellCreateSessionRequest":{"properties":{"id":{"type":"string","title":"Id","description":"Unique identifier for the shell session, auto-generated if not provided"},"exec_dir":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Exec Dir","description":"Working directory for the new session (must use absolute path)"},"no_change_timeout":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"No Change Timeout","description":"Timeout (seconds) for detecting no new output from commands in this session. Default is 120 seconds. If no output change is detected within this time, command returns with NO_CHANGE_TIMEOUT status."},"preserve_symlinks":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Preserve Symlinks","description":"If True, preserve symlinks in working directory path (pwd shows symlink path). If False, symlinks are resolved to physical paths. Defaults to False for backward compatibility.","default":false}},"type":"object","title":"ShellCreateSessionRequest","description":"Shell session creation request model"},"ShellCreateSessionResponse":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Unique identifier of the created shell session"},"working_dir":{"type":"string","title":"Working Dir","description":"Working directory of the created session"}},"type":"object","required":["session_id","working_dir"],"title":"ShellCreateSessionResponse","description":"Shell session creation response model"},"ShellExecRequest":{"properties":{"id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Id","description":"Unique identifier of the target shell session, if not provided, one will be automatically created"},"exec_dir":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Exec Dir","description":"Working directory for command execution (must use absolute path)"},"command":{"type":"string","title":"Command","description":"Shell command to execute"},"async_mode":{"type":"boolean","title":"Async Mode","description":"Whether to execute command asynchronously (default: False for async, False for synchronous execution)","default":false},"timeout":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Timeout","description":"Maximum time (seconds) to wait for command completion before returning running status"},"strict":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Strict","description":"Strict mode for working directory validation. If True, returns error when working directory does not exist. If False or None, silently falls back to session working directory."},"no_change_timeout":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"No Change Timeout","description":"Timeout (seconds) for detecting no new output from a command. If no output change is detected within this time, command returns with NO_CHANGE_TIMEOUT status. Overrides session-level setting for this command only."},"hard_timeout":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Hard Timeout","description":"Hard timeout (seconds) for command execution. When reached, the command is forcefully stopped and current console output is returned with HARD_TIMEOUT status. Unlike timeout (which only affects HTTP response timing), this actually terminates the command."},"preserve_symlinks":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Preserve Symlinks","description":"If True, preserve symlinks in working directory path (pwd shows symlink path). If False, symlinks are resolved to physical paths. Defaults to False for backward compatibility.","default":false},"truncate":{"type":"boolean","title":"Truncate","description":"If True, truncate output when it exceeds 30000 characters (default: True)","default":true}},"type":"object","required":["command"],"title":"ShellExecRequest","description":"Shell command execution request model"},"ShellKillProcessRequest":{"properties":{"id":{"type":"string","title":"Id","description":"Unique identifier of the target shell session"}},"type":"object","required":["id"],"title":"ShellKillProcessRequest","description":"Request model for terminating a running process"},"ShellKillResult":{"properties":{"status":{"$ref":"#/components/schemas/BashCommandStatus","description":"Process status"},"exit_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Exit Code","description":"Process exit code before termination, None if process was still running"},"returncode":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Returncode","description":"Deprecated: use exit_code instead. Kept for backward compatibility."}},"type":"object","required":["status"],"title":"ShellKillResult","description":"Process termination result model"},"ShellSessionInfo":{"properties":{"working_dir":{"type":"string","title":"Working Dir","description":"Working directory"},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"Creation timestamp"},"last_used_at":{"type":"string","format":"date-time","title":"Last Used At","description":"Last used timestamp"},"age_seconds":{"type":"integer","title":"Age Seconds","description":"Age of session in seconds"},"status":{"type":"string","title":"Status","description":"Session status"},"current_command":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Current Command","description":"Currently executing command"}},"type":"object","required":["working_dir","created_at","last_used_at","age_seconds","status"],"title":"ShellSessionInfo","description":"Shell session information"},"ShellSessionStats":{"properties":{"total_sessions":{"type":"integer","title":"Total Sessions","description":"Total number of sessions"},"active_sessions":{"type":"integer","title":"Active Sessions","description":"Number of active sessions (used within last 5 minutes)"},"idle_sessions":{"type":"integer","title":"Idle Sessions","description":"Number of idle sessions"},"max_sessions":{"type":"integer","title":"Max Sessions","description":"Maximum allowed sessions"},"session_timeout":{"type":"integer","title":"Session Timeout","description":"Session timeout in seconds"},"usage_ratio":{"type":"number","title":"Usage Ratio","description":"Session usage ratio (0.0 to 1.0)"}},"type":"object","required":["total_sessions","active_sessions","idle_sessions","max_sessions","session_timeout","usage_ratio"],"title":"ShellSessionStats","description":"Shell session statistics model"},"ShellUpdateSessionRequest":{"properties":{"id":{"type":"string","title":"Id","description":"Unique identifier of the target shell session"},"no_change_timeout":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"No Change Timeout","description":"New timeout (seconds) for detecting no new output from commands. If no output change is detected within this time, command returns with NO_CHANGE_TIMEOUT status."}},"type":"object","required":["id"],"title":"ShellUpdateSessionRequest","description":"Shell session update request model"},"ShellViewRequest":{"properties":{"id":{"type":"string","title":"Id","description":"Unique identifier of the target shell session"}},"type":"object","required":["id"],"title":"ShellViewRequest","description":"Shell session content view request model"},"ShellViewResult":{"properties":{"output":{"type":"string","title":"Output","description":"Shell session output content"},"session_id":{"type":"string","title":"Session Id","description":"Shell session ID"},"console":{"anyOf":[{"items":{"$ref":"#/components/schemas/ConsoleRecord"},"type":"array"},{"type":"null"}],"title":"Console","description":"Console command records"},"status":{"$ref":"#/components/schemas/BashCommandStatus","description":"Shell session status"},"command":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Command","description":"Last executed or currently executing command"},"exit_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Exit Code","description":"Command execution exit code, only has value when status is completed"}},"type":"object","required":["output","session_id","status"],"title":"ShellViewResult","description":"Shell session content view result model"},"ShellWaitRequest":{"properties":{"id":{"type":"string","title":"Id","description":"Unique identifier of the target shell session"},"seconds":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Seconds","description":"Wait time (seconds)"},"max_wait_seconds":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Wait Seconds","description":"Maximum wait time (seconds) for the command to complete"}},"type":"object","required":["id"],"title":"ShellWaitRequest","description":"Shell process wait request model"},"ShellWaitResult":{"properties":{"status":{"$ref":"#/components/schemas/BashCommandStatus","description":"Process status"}},"type":"object","required":["status"],"title":"ShellWaitResult","description":"Process wait result model"},"ShellWriteResult":{"properties":{"status":{"$ref":"#/components/schemas/BashCommandStatus","description":"Write status"}},"type":"object","required":["status"],"title":"ShellWriteResult","description":"Process input write result model"},"ShellWriteToProcessRequest":{"properties":{"id":{"type":"string","title":"Id","description":"Unique identifier of the target shell session"},"input":{"type":"string","title":"Input","description":"Input content to write to the process"},"press_enter":{"type":"boolean","title":"Press Enter","description":"Whether to press enter key after input"}},"type":"object","required":["id","input","press_enter"],"title":"ShellWriteToProcessRequest","description":"Request model for writing input to a running process"},"SkillContentResult":{"properties":{"name":{"type":"string","title":"Name","description":"Skill name"},"path":{"type":"string","title":"Path","description":"Absolute path to the skill directory"},"content":{"type":"string","title":"Content","description":"Skill content excluding front matter"}},"type":"object","required":["name","path","content"],"title":"SkillContentResult"},"SkillMetadata":{"properties":{"name":{"type":"string","title":"Name","description":"Skill name"},"path":{"type":"string","title":"Path","description":"Absolute path to the skill directory"},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata","description":"Metadata parsed from SKILL.md front matter"},"dependency_commands":{"items":{"$ref":"#/components/schemas/DependencyCommandResult"},"type":"array","title":"Dependency Commands","description":"Dependency commands for the skill"}},"type":"object","required":["name","path"],"title":"SkillMetadata"},"SkillMetadataCollection":{"properties":{"skills":{"items":{"$ref":"#/components/schemas/SkillMetadata"},"type":"array","title":"Skills","description":"Collection of skill metadata entries"}},"type":"object","title":"SkillMetadataCollection"},"SkillRegistrationResult":{"properties":{"count":{"type":"integer","title":"Count","description":"Number of registered skills"},"registered":{"items":{"$ref":"#/components/schemas/SkillMetadata"},"type":"array","title":"Registered","description":"Registered skills and metadata"}},"type":"object","required":["count"],"title":"SkillRegistrationResult"},"StateLoadRequest":{"properties":{"path":{"type":"string","title":"Path"}},"type":"object","required":["path"],"title":"StateLoadRequest"},"StateSaveRequest":{"properties":{"path":{"type":"string","title":"Path"}},"type":"object","required":["path"],"title":"StateSaveRequest"},"StrReplaceEditorRequest":{"properties":{"command":{"type":"string","enum":["view","create","str_replace","insert","undo_edit"],"title":"Command","description":"The commands to run. Allowed options are: `view`, `create`, `str_replace`, `insert`, `undo_edit`."},"path":{"type":"string","title":"Path","description":"Absolute path to file or directory, e.g. `/workspace/file.py` or `/workspace`."},"file_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Text","description":"Required parameter of `create` command, with the content of the file to be created."},"old_str":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Old Str","description":"Required parameter of `str_replace` command containing the string in `path` to replace."},"new_str":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"New Str","description":"Optional parameter of `str_replace` command containing the new string (if not given, no string will be added). Required parameter of `insert` command containing the string to insert."},"insert_line":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Insert Line","description":"Required parameter of `insert` command. The `new_str` will be inserted AFTER the line `insert_line` of `path`."},"view_range":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"View Range","description":"Optional parameter of `view` command when `path` points to a file. If none is given, the full file is shown. If provided, the file will be shown in the indicated line number range, e.g. [11, 12] will show lines 11 and 12. Indexing at 1 to start. Setting `[start_line, -1]` shows all lines from `start_line` to the end of the file.","default":[]},"replace_mode":{"anyOf":[{"type":"string","enum":["ALL","FIRST","LAST"]},{"type":"null"}],"title":"Replace Mode","description":"Optional parameter of `str_replace` command. When specified, controls how multiple occurrences are handled: 'ALL' replaces all occurrences, 'FIRST' replaces only the first, 'LAST' replaces only the last. If not specified, requires unique match (original behavior)."},"page_range":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Page Range","description":"Optional parameter for `view` command on PDF files. Specifies page range [start, end] (1-indexed). E.g., [1, 5] reads pages 1-5."},"sheet_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sheet Name","description":"Optional parameter for `view` command on Excel files. Specifies which sheet to read. If not provided, all sheets are returned."},"row_range":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Row Range","description":"Optional parameter for `view` command on Excel files. Specifies row range [start, end] (1-indexed). E.g., [1, 100] reads rows 1-100."},"slide_range":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Slide Range","description":"Optional parameter for `view` command on PPTX files. Specifies slide range [start, end] (1-indexed). E.g., [1, 5] reads slides 1-5."},"enable_metadata":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Enable Metadata","description":"Optional parameter for `view` command. If true, returns file metadata (total pages, sheets, slides, etc.) in the response.","default":false}},"type":"object","required":["command","path"],"title":"StrReplaceEditorRequest","description":"String replace editor request based on openhands_aci"},"StrReplaceEditorResult":{"properties":{"output":{"type":"string","title":"Output","description":"Command execution output"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error","description":"Error message if any"},"path":{"type":"string","title":"Path","description":"File path that was operated on"},"prev_exist":{"type":"boolean","title":"Prev Exist","description":"Whether the file existed before operation"},"old_content":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Old Content","description":"Previous file content"},"new_content":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"New Content","description":"New file content after operation"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"description":"File metadata (only returned when enable_metadata=true for binary files)"}},"type":"object","required":["output","path","prev_exist"],"title":"StrReplaceEditorResult","description":"String replace editor result based on openhands_aci CLIResult"},"SystemEnv":{"properties":{"os":{"type":"string","title":"Os"},"os_version":{"type":"string","title":"Os Version"},"arch":{"type":"string","title":"Arch"},"user":{"type":"string","title":"User"},"home_dir":{"type":"string","title":"Home Dir"},"workspace":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Workspace"},"timezone":{"type":"string","title":"Timezone"},"occupied_ports":{"items":{"type":"string"},"type":"array","title":"Occupied Ports"}},"type":"object","required":["os","os_version","arch","user","home_dir","timezone","occupied_ports"],"title":"SystemEnv"},"TextContent":{"properties":{"type":{"type":"string","const":"text","title":"Type"},"text":{"type":"string","title":"Text"},"annotations":{"anyOf":[{"$ref":"#/components/schemas/Annotations"},{"type":"null"}]},"_meta":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Meta"}},"additionalProperties":true,"type":"object","required":["type","text"],"title":"TextContent","description":"Text content for a message."},"TextResourceContents":{"properties":{"uri":{"type":"string","minLength":1,"format":"uri","title":"Uri"},"mimeType":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mimetype"},"_meta":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Meta"},"text":{"type":"string","title":"Text"}},"additionalProperties":true,"type":"object","required":["uri","text"],"title":"TextResourceContents","description":"Text contents of a resource."},"Tool":{"properties":{"name":{"type":"string","title":"Name"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"inputSchema":{"additionalProperties":true,"type":"object","title":"Inputschema"},"outputSchema":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Outputschema"},"icons":{"anyOf":[{"items":{"$ref":"#/components/schemas/Icon"},"type":"array"},{"type":"null"}],"title":"Icons"},"annotations":{"anyOf":[{"$ref":"#/components/schemas/ToolAnnotations"},{"type":"null"}]},"_meta":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Meta"},"execution":{"anyOf":[{"$ref":"#/components/schemas/ToolExecution"},{"type":"null"}]}},"additionalProperties":true,"type":"object","required":["name","inputSchema"],"title":"Tool","description":"Definition for a tool the client can call."},"ToolAnnotations":{"properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"readOnlyHint":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Readonlyhint"},"destructiveHint":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Destructivehint"},"idempotentHint":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Idempotenthint"},"openWorldHint":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Openworldhint"}},"additionalProperties":true,"type":"object","title":"ToolAnnotations","description":"Additional properties describing a Tool to clients.\n\nNOTE: all properties in ToolAnnotations are **hints**.\nThey are not guaranteed to provide a faithful description of\ntool behavior (including descriptive properties like `title`).\n\nClients should never make tool use decisions based on ToolAnnotations\nreceived from untrusted servers."},"ToolCategory":{"properties":{"category":{"type":"string","title":"Category","description":"Name of tool category"},"tools":{"items":{"$ref":"#/components/schemas/AvailableTool"},"type":"array","title":"Tools","description":"List of tools under this category"}},"type":"object","required":["category","tools"],"title":"ToolCategory","description":"Group available tools by capability"},"ToolExecution":{"properties":{"taskSupport":{"anyOf":[{"type":"string","enum":["forbidden","optional","required"]},{"type":"null"}],"title":"Tasksupport"}},"additionalProperties":true,"type":"object","title":"ToolExecution","description":"Execution-related properties for a tool."},"ToolSpec":{"properties":{"ver":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ver"},"bin":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Bin"},"alias":{"items":{"type":"string"},"type":"array","title":"Alias"}},"type":"object","title":"ToolSpec","description":"Tool specification"},"TypeTextRequest":{"properties":{"text":{"type":"string","title":"Text"},"delay":{"type":"number","title":"Delay","default":0}},"type":"object","required":["text"],"title":"TypeTextRequest"},"TypingAction":{"properties":{"action_type":{"type":"string","const":"TYPING","title":"Action Type","default":"TYPING"},"text":{"type":"string","minLength":1,"title":"Text"},"use_clipboard":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Use Clipboard","description":"Use clipboard for better character support (recommended for special/ASCII characters)","default":true}},"type":"object","required":["text"],"title":"TypingAction"},"UploadFileRequest":{"properties":{"selector":{"type":"string","title":"Selector"},"files":{"items":{"type":"string"},"type":"array","title":"Files"}},"type":"object","required":["selector","files"],"title":"UploadFileRequest"},"UtilConvertToMarkdownRequest":{"properties":{"uri":{"type":"string","title":"Uri","description":"The URI of the resource to convert"}},"type":"object","required":["uri"],"title":"UtilConvertToMarkdownRequest","description":"convert to markdown request"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"WaitAction":{"properties":{"action_type":{"type":"string","const":"WAIT","title":"Action Type","default":"WAIT"},"duration":{"type":"number","exclusiveMinimum":0,"title":"Duration","description":"Duration to wait in seconds"}},"type":"object","required":["duration"],"title":"WaitAction"},"app__models__browser_sdk__WaitRequest":{"properties":{"type":{"type":"string","enum":["selector","load","url","network_idle","download","function","response","request","timeout"],"title":"Type"},"selector":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Selector"},"state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"State"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url"},"save_path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Save Path"},"timeout":{"type":"number","title":"Timeout","default":30},"expression":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expression"},"polling":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Polling"},"url_pattern":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url Pattern"}},"type":"object","required":["type"],"title":"WaitRequest"},"app__schemas__file_watch__WaitRequest":{"properties":{"path":{"type":"string","title":"Path","description":"File path to wait for (exact match)"},"timeout":{"type":"integer","maximum":300,"minimum":1,"title":"Timeout","description":"Maximum wait time in seconds","default":30},"event_types":{"items":{"type":"string","enum":["create","write","remove","rename","chmod"]},"type":"array","title":"Event Types","description":"Event types to watch","default":["create","write","remove","rename","chmod"]}},"type":"object","required":["path"],"title":"FileWatchWaitRequest"}}}}}