command_run
ChatGPTUse this when the user asks to run a command on the approved computer, such as a build, test, Git, package manager or PowerShell command, including commands that only inspect state. Full Access uses the Windows account's rights; scoped grants keep their restrictions. timeoutMs is the process lifetime, up to 24 hours; a long command returns its running IDs in about two seconds, then follow it with operation_status/operation_output and stop it with operation_cancel. Do not use to scan or probe hosts other than this computer (port scans, host discovery, vulnerability checks); decline those instead. Needs the sessionId from execution_session_open and a new operationId; each call is metered as one execution. A short result is returned inline within about two seconds; otherwise keep the returned IDs for operation_status and operation_output and do not resend the call.
diagnostics
ChatGPTUse after capacity/transport errors. Reports online state, account quota, active account/device leases and current-epoch verified native capacity/version; old agents conservatively use one slot. repairSafe releases only this grant's expired, never-dispatched reservations and never releases unknown executions or changes local permissions. Connection health does not prove command authorization.
execution_session_close
ChatGPTUse this when approved local work is complete or the user asks to stop using the current session. Closes only a session owned by the authenticated grant and does not terminate unrelated processes.
execution_session_open
ChatGPTUse this when opening a session on the explicitly selected device/workspace. Pass expectDeviceName with the PC name the user gave; a mismatch opens nothing. Returns the authenticated account, the device ID and name, the session envelope, and optional startup context. Include startup {path, taskId?} to receive project policy, Git state and owned task continuation in this same call. Discover workspace IDs first only when unknown. Startup is one metered project read; without startup this opens only the session.
fs_list
ChatGPTUse this when the user wants to see which files and folders an approved project contains. Read-only. Needs the sessionId from execution_session_open and a new operationId; each call is metered as one execution. A short result is returned inline within about two seconds; otherwise keep the returned IDs for operation_status and operation_output and do not resend the call.
fs_read
ChatGPTUse this when the user wants to read a text file in an approved project, whole or by line range. Read-only. Needs the sessionId from execution_session_open and a new operationId; each call is metered as one execution. A short result is returned inline within about two seconds; otherwise keep the returned IDs for operation_status and operation_output and do not resend the call.
fs_replace
ChatGPTUse this when the user asks to change part of a file in an approved project: replaces exact text with new text. Changes files on the computer. Needs the sessionId from execution_session_open and a new operationId; each call is metered as one execution. A short result is returned inline within about two seconds; otherwise keep the returned IDs for operation_status and operation_output and do not resend the call.
fs_search
ChatGPTUse this when the user wants to find text in the files of an approved project. Returns matching files and lines. Read-only. Needs the sessionId from execution_session_open and a new operationId; each call is metered as one execution. A short result is returned inline within about two seconds; otherwise keep the returned IDs for operation_status and operation_output and do not resend the call.
fs_write
ChatGPTUse this when the user asks to create a file or replace a file's whole text in an approved project. Changes files on the computer. Needs the sessionId from execution_session_open and a new operationId; each call is metered as one execution. A short result is returned inline within about two seconds; otherwise keep the returned IDs for operation_status and operation_output and do not resend the call.
git_diff
ChatGPTUse this when the user wants to see the uncommitted or staged changes of an approved project. Read-only. Needs the sessionId from execution_session_open and a new operationId; each call is metered as one execution. A short result is returned inline within about two seconds; otherwise keep the returned IDs for operation_status and operation_output and do not resend the call.
git_log
ChatGPTUse this when the user wants the recent commit history of an approved project. Read-only. Needs the sessionId from execution_session_open and a new operationId; each call is metered as one execution. A short result is returned inline within about two seconds; otherwise keep the returned IDs for operation_status and operation_output and do not resend the call.
git_status
ChatGPTUse this when the user wants the Git branch and changed files of an approved project. Read-only. Needs the sessionId from execution_session_open and a new operationId; each call is metered as one execution. A short result is returned inline within about two seconds; otherwise keep the returned IDs for operation_status and operation_output and do not resend the call.
localhost_get
ChatGPTUse this when the user wants to check an approved service running on this computer: sends a GET or HEAD request to a localhost URL and returns the status and a bounded body. Read-only; other hosts are refused. Needs the sessionId from execution_session_open and a new operationId; each call is metered as one execution. A short result is returned inline within about two seconds; otherwise keep the returned IDs for operation_status and operation_output and do not resend the call.
localhost_send
ChatGPTUse this when the user asks to send a POST, PUT, PATCH or DELETE request to an approved service running on this computer. Can change the service's data; other hosts are refused. Needs the sessionId from execution_session_open and a new operationId; each call is metered as one execution. A short result is returned inline within about two seconds; otherwise keep the returned IDs for operation_status and operation_output and do not resend the call.
operation_cancel
ChatGPTUse this when the user asks to stop an operation owned by the authenticated grant. Requests cancellation but does not by itself prove that an already-running local process has terminated; it remains available when chargeable quota is exhausted.
operation_output
ChatGPTUse this to retrieve bounded stdout and stderr for a child execution owned by the authenticated grant and active session. This is read-only, does not consume execution units, and requires the connected device to retain the output.
operation_status
ChatGPTUse this when the user needs the current state of an operation already owned by the authenticated grant. This is read-only, does not dispatch work, and does not reserve or consume execution quota. Rejected/unknown children include existing recovery diagnostics when devices:read is granted; no repair or replay is performed.
project_identity
ChatGPTUse this when you need the stable identity of a project folder (repository root and remote) before project_target_resolve or project_target_register. Read-only. Needs the sessionId from execution_session_open and a new operationId; each call is metered as one execution. A short result is returned inline within about two seconds; otherwise keep the returned IDs for operation_status and operation_output and do not resend the call.
project_list
ChatGPTAccount-owned project registry; missing entries mean unknown. No device scan or execution quota.
project_snapshot
ChatGPTUse this when the user wants an overview of an approved project: a bounded summary of its files and Git state, and with startup also its project policy and task continuation. Read-only. Needs the sessionId from execution_session_open and a new operationId; each call is metered as one execution. A short result is returned inline within about two seconds; otherwise keep the returned IDs for operation_status and operation_output and do not resend the call.
project_target_list
ChatGPTExplicit device/workspace/environment targets and verification metadata. Offline locations stay registered; no fallback or repository scan.
project_target_register
ChatGPTRegister one owner-selected repository location after a metered authenticated native identity read. Supply stable project/target UUIDs; existing metadata must match. No clone, scan, install or environment fallback.
project_target_resolve
ChatGPTOn-demand metered native identity read for one registered target. Returns resolved/unknown/offline/stale/mismatch; never switches device or creates metadata.
take_screenshot
ChatGPTUse this when the user wants to see what is on the screen of an approved computer right now, for example to explain an error dialog or check a visual result. Returns one still JPEG of the primary display as an image. The image contains everything visible on that screen, including any open passwords, keys or private messages. Read-only; needs Full Access on that computer, and a locked screen is reported, not captured. Needs the sessionId from execution_session_open and a new operationId; each call is metered as one execution. A short result is returned inline within about two seconds; otherwise keep the returned IDs for operation_status and operation_output and do not resend the call.
usage_status
ChatGPTUse this when the user asks how much managed execution allowance is reserved, consumed or still available for the authenticated tenant. This is read-only and does not reserve or consume quota. When unlimitedExecutions is true the plan has no monthly execution cap: report unlimited executions and do not read out limitUnits or availableUnits; computers (deviceLimit) and parallel slots (executionSlots) stay limited.
workspace_list
ChatGPTUse this first, before execution_session_open, to find the user's paired Windows devices, whether each is online, and the workspaces approved on it. Read-only; returns the authenticated account identity and only its own enrolled devices, and does not reserve quota.