跳到主要内容

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