Skip to main content

Dispatch

Dispatch is a task routing system that sends work to the appropriate execution environment. It manages runs, approvals, artifacts, and device capabilities across multiple routes.

Overview​

Dispatch routes tasks to one of four execution environments:

RouteDescription
cloud-knowledgeCloud-based knowledge queries
cloud-codeCloud-based code execution
desktop-localLocal desktop execution via paired device
inlineInline execution in the current session

Run Lifecycle​

Each dispatch run follows a status flow:

queued → running → waiting_approval → completed/failed/cancelled
StatusDescription
queuedRun is waiting to be picked up
runningRun is actively executing
waiting_approvalRun is paused pending user approval
completedRun finished successfully
failedRun encountered an error
cancelledRun was cancelled by user

Approvals​

Some runs require explicit approval before proceeding. The approval workflow:

  1. Run enters waiting_approval state
  2. User sees approval request with details
  3. User approves or rejects
  4. Run continues or cancels accordingly

Approval requests include:

  • Title and description of the action
  • Request payload (sanitized)
  • Device that will execute the action

Artifacts​

Runs can produce artifacts — files or data created during execution:

FieldDescription
nameArtifact filename
kindType classification
mimeTypeContent MIME type
sizeBytesFile size
downloadUrlURL to retrieve the artifact

Device Capabilities​

Desktop-local runs execute on paired devices. Each device reports its capabilities:

CapabilityDescription
shellCan execute shell commands
browserAutomationCan control a browser
desktopAutomationCan automate desktop applications
local_filesCan access local filesystem
reachableFoldersDirectories the device can access

Device Permissions​

Devices declare permissions that gate certain operations:

{
"permissions": {
"local_files": true,
"shell": true,
"browser_automation": false,
"desktop_automation": false
}
}

Thread View​

The Dispatch UI shows a thread of entries:

  • Messages — User/assistant messages in the dispatch conversation
  • Runs — Dispatch runs with status and details
  • Approvals — Pending and completed approval requests
  • Artifacts — Files produced by runs