Walkthroughs
Three requests, end to end

What happens when you ask it something

Three everyday requests traced through the same seven components: a connector write, a routine, and a task that needs the computer. The behaviour comes from the talk and the docs; the wiring between components is our reading, and each step is tagged.

3 use cases7 componentsTags: Talk xAI docs Cursor eng Inferred
00Components

The seven components in every diagram

Each diagram has one column per component. Arrows are calls between them; boxes inside a column are work that component does on its own. S2S marks a service-to-service call between server-side components: an authenticated internal call that carries the user and Bot IDs from the workflow, never from the model.

You

The person, and the surfaces you use: the desktop and mobile apps, Slack, email, voice.

  • Sends requests and answers the Bot. xAI docs
  • Approves risky actions on approval cards. xAI docs
  • Takes over the computer's screen for passwords, 2FA, CAPTCHAs and payments. xAI docs
Router

The entry point on the server side. Every piece of incoming work passes through it before a turn starts.

  • De-duplicates: apps tag each message with a unique ID, so a retried send isn't processed twice. Talk
  • Picks the Bot and conversation, and records where the wake-up came from. Talk
  • Queues per conversation, one turn at a time. Your own 1:1 messages skip the line and can stop the turn; quick bursts become one turn. TalkxAI docs
  • Verifies the sender (Slack's signature, your app session, a webhook's key) and maps the channel account, such as your Slack user, to your Cursor user. Inferred
  • Starts a new Temporal workflow, or passes the message to one that's already running. How the router itself is built isn't documented. InferredUnknown
Agent workflow

The agent loop: a Temporal workflow, one per task, executed by worker processes on server pods. Helper agents are workflows of their own.

  • Builds the prompt and calls the model; each model call is an activity with its own timeouts and retries. TalkCursor eng
  • Runs every tool call as an activity and records each step, so a crash resumes where it stopped. Cursor eng
  • Carries the user and Bot IDs for the whole turn; nothing later takes identity from the model. Inferred
  • Replies through SendToUser, or stays quiet. Talk
Tool router

Our name for the application code that decides where a tool runs. In our model it runs inside the tool-call activity, on the same Temporal worker pods: Temporal schedules, retries and records the call, but doesn't route it. It could also be a separate service the activity calls. No source names or describes it.

  • Sends server tools (connectors, memory, SendToUser, and most likely routines) to backend services, and computer tools (shell, files, browser) to the computer. xAI docsInferred
  • Decides whether a call may wake a sleeping computer. TalkInferred
  • Passes risky actions to the review model, a separate model that allows them, asks you, or denies them. xAI docs
Backend services

Server-side services the loop calls with S2S calls. They hold the long-lived data and the outside connections.

  • Connector layer: calls Salesforce, Gmail, Drive and other apps with your sign-in, server-side. Tokens never reach the model or the computer. xAI docs
  • Routines service and scheduler: store routines in the Bot's profile and fire them on time. xAI docsInferred
  • VM control plane (the "hypervisor" service): wakes, snapshots, resets and recreates computers. TalkInferred
  • Conversation store and memory: the append-only log every app reads, plus memory and settings. TalkCursor eng
Outside service

Systems outside Cursor's cloud.

  • Apps reached through their APIs or MCP servers, from the backend, with your token. xAI docs
  • Websites with no connector, reached through the browser on the computer. xAI docs
  • With OAuth connectors they apply your permissions and see you, not a Bot. Bots have no identity of their own (Team Bots' key-based plugins use the Bot's credential). xAI docs
Computer

The user's Firecracker VM, shared by all of that user's Bots. Asleep unless a tool needs it.

  • A command runner (worker) that executes tool calls; it most likely dials out to the server. TalkCursor engInferred
  • A file server for files and the live desktop view, plus one screen and Chrome per Bot. Talk
  • /workspace on a durable disk; sleeps as a snapshot and is restored in place on the next tool call that may wake it. xAI docsTalk
01Connector write

"Add a new lead in Salesforce"

You ask from Slack. The Bot writes to Salesforce as you, through a connector. The computer is never touched.

Youapp, Slack
Routeringress + queue
Agent workflowTemporal: model + loop
Tool routerrouting + review model
Backend servicesconnectors, vault, routines, VM control plane
Outside serviceSalesforce, Gmail, Drive, websites
Computerthe user's VM
1message in Slack
2verify Slack, map to your Cursor user
3start turn as you
4model picks "create record"
5toolCall activity
6approval card (if asked)
7S2S: create record as user ID
8API call with your token
9result
10reply in Slack
asleep the whole time
  1. 1
    You → RouterYou write "Add a new lead in Salesforce: Jane Doe at Acme" in a Slack DM to the Bot. xAI docs
  2. 2
    RouterThe router checks Slack's signature, looks up which Cursor user your Slack account is linked to, and queues the message in that conversation. Inferred
  3. 3
    Router → Agent workflowA workflow starts with your user ID and Bot ID in its context. Nothing later takes identity from the model. Inferred
  4. 4
    Agent workflowThe model picks the Salesforce "create record" tool and loads its details on demand. Talk
  5. 5
    Agent workflow → Tool routerThe workflow runs the call as an activity. Connectors are called from the server side, so the computer stays asleep. xAI docs
  6. 6
    Tool router → YouThe review model checks the write. If it asks, you get an approval card and tap Allow. Whether the card can show in Slack or only in the app isn't documented. xAI docsUnknown
  7. 7
    Tool router → Backend servicesService-to-service call: the tool-call activity calls the connector layer and passes your user ID from the workflow context. Your Salesforce sign-in is used there, server-side; the model and the computer never get the token. xAI docsInferred
  8. 8
    Backend services → Outside serviceSalesforce creates the lead with your permissions. It's recorded as created by you, through the connected app. Inferred
  9. 9
    Outside service → Agent workflowThe result comes back to the workflow and into the model. Inferred
  10. 10
    Agent workflow → YouThe model replies through SendToUser, and the reply shows up in your Slack DM. Talk

What this shows

  • Identity comes from Slack plus the stored account link, never from the message text.
  • The token never leaves the backend: not to the model, not to the computer.
02Routine

"Every Monday, summarize my emails"

Creating the routine is one tool call. Each Monday, the scheduler starts a fresh turn on its own.

Youapp, Slack
Routeringress + queue
Agent workflowTemporal: model + loop
Tool routerrouting + review model
Backend servicesconnectors, vault, routines, VM control plane
Outside serviceSalesforce, Gmail, Drive, websites
Computerthe user's VM
1"every Monday, summarize…"
2start turn as you
3create_routine(schedule, instruction)
4toolCall activity
5limits + review
6you confirm
7S2S: save routine + schedule
8next run: Mon 08:00
9confirmation
Each Monday
10scheduler fires
11S2S: trigger (owner + Bot)
12new turn, stored instruction
13Gmail tool calls
14S2S: read mail (owner's Gmail)
15read last week's email
16messages
17summarize; worth sending?
18summary
asleep the whole time
  1. 1
    You → RouterYou ask the Bot in a chat. xAI docs
  2. 2
    Router → Agent workflowA workflow starts with your user ID and Bot ID. Inferred
  3. 3
    Agent workflowThe model turns the request into a structured call: schedule, time zone, and the instruction to run each time (a stored prompt). Inferred
  4. 4
    Agent workflow → Tool routerThe workflow runs it as an activity. It's a server tool. Inferred
  5. 5
    Tool routerChecks: at least 5 minutes between runs, at most 50 routines per Bot. The review model sees it as an automation write. xAI docs
  6. 6
    Tool router → YouThe Bot confirms the schedule and details with you in the conversation; new routines need your OK. xAI docsTalk
  7. 7
    Tool router → Backend servicesService-to-service call to the routines service, carrying your user ID and Bot ID from the workflow. It saves the routine to the Bot's profile and registers the schedule. xAI docsInferred
  8. 8
    Backend services → Agent workflowThe result goes back to the model. xAI docs
  9. 9
    Agent workflow → YouThe Bot confirms the routine and shows its next run. xAI docs
  10. Each Monday
  11. 10
    Backend servicesThe scheduler fires a trigger tagged "routine". Inferred
  12. 11
    Backend services → RouterService-to-service call: the scheduler sends the trigger to the same router your messages go through, carrying the routine owner and Bot. Inferred
  13. 12
    Router → Agent workflowA new workflow starts, with the stored instruction as its input. Inferred
  14. 13
    Agent workflow → Tool routerThe model calls the Gmail tools. They're server tools. Inferred
  15. 14
    Tool router → Backend servicesService-to-service call to the connector layer with the owner's user ID. Which account a routine uses isn't documented; the owner's own Gmail is our reading (the docs only say routines count against whoever set them up). xAI docsInferred
  16. 15
    Backend services → Outside serviceGmail returns the messages. Inferred
  17. 16
    Outside service → Agent workflowThey come back into the model. Inferred
  18. 17
    Agent workflowThe model writes the summary and decides whether it's worth messaging you. Talk
  19. 18
    Agent workflow → YouYou get the summary. The run is recorded as succeeded or failed (the last 20 runs are kept). If a run needs an approval, the card expires after about 10 minutes and the action doesn't run. xAI docs

What this shows

  • A routine is a stored prompt plus a schedule. Every run is a normal turn.
  • Creating and running it both stay on the server. Gmail is a connector, so the computer isn't needed.
03Computer use

"Get last month's invoice from the vendor portal and put it in Drive"

No connector exists for the portal, so the Bot uses the browser on its computer. The VM control plane wakes the computer, you get the screen for 2FA, a connector uploads the file, and the control plane puts the computer back to sleep.

Youapp, Slack
Routeringress + queue
Agent workflowTemporal: model + loop
Tool routerrouting + review model
Backend servicesconnectors, vault, routines, VM control plane
Outside serviceSalesforce, Gmail, Drive, websites
Computerthe user's VM
1request in the app
2start turn as you
3no connector → computer-use helper
4browser tool call
5S2S: wake the computer
6restore snapshot
7worker reconnects (same ID)
8open portal in Chrome
9load portal
10asks for a 2FA code
11take-over request
12you type the code on the live desktop
13download invoice to /workspace
14short report: file path
15Drive upload
16S2S: upload file as user ID
17upload
18file link
19reply with the link
20idle: sync, snapshot, stop
  1. 1
    You → RouterYou ask the Bot from the desktop app. xAI docs
  2. 2
    Router → Agent workflowA workflow starts with your user ID and Bot ID. Inferred
  3. 3
    Agent workflowThere's no connector for the portal, so the work goes to the computer-use helper (its own workflow). xAI docsTalkCursor eng
  4. 4
    Agent workflow → Tool routerThe helper asks for the browser. Talk
  5. 5
    Tool router → Backend servicesThe computer is asleep. Service-to-service call to the VM control plane (the "hypervisor" service) to wake it. TalkInferred
  6. 6
    Backend services → ComputerThe control plane has the Firecracker host restore the VM's snapshot in place: memory, disk and logins. How it talks to the host isn't documented. TalkUnknown
  7. 7
    Computer → Tool routerThe worker inside the VM reconnects to the server under the same ID, so the waiting call can be delivered. Cursor engInferred
  8. 8
    Tool router → ComputerThe Bot's own screen opens the portal in Chrome. Talk
  9. 9
    Computer → Outside serviceThe portal loads and asks for a login. Inferred
  10. 10
    Outside serviceThe login needs a code the Bot can't have. xAI docs
  11. 11
    Agent workflow → YouYou get a request to take over the screen. xAI docs
  12. 12
    You → ComputerYou type the code yourself on the live desktop; the model doesn't type it or receive it. That your app connects straight to the computer for this is our reading. xAI docsInferred
  13. 13
    ComputerThe helper finds the invoice and downloads it, most likely into /workspace (where downloads land isn't documented). Inferred
  14. 14
    Computer → Agent workflowThe helper reports back to the main agent with the file path, not the screenshots. TalkInferred
  15. 15
    Agent workflow → Tool routerThe main agent calls the Drive tool, a server tool. Inferred
  16. 16
    Tool router → Backend servicesThe file is read from the computer through the worker. Then a service-to-service call to the connector layer, with your user ID from the workflow, uploads it with your Drive sign-in. Inferred
  17. 17
    Backend services → Outside serviceDrive stores the file. Inferred
  18. 18
    Outside service → Agent workflowThe link comes back to the model. Inferred
  19. 19
    Agent workflow → YouYou get the reply with the Drive link. Talk
  20. 20
    Backend services → ComputerA few idle minutes later the computer goes back to sleep: files sync to cloud storage, then the VM is snapshotted and stopped. That the control plane drives this is our reading. TalkInferred

What this shows

  • The computer only wakes for the part that needs a browser. Connectors still do the upload.
  • You handle the 2FA step yourself, on the live desktop. The model doesn't type or receive the code.
04Compared

The three side by side

What each request touches.

Use caseComputerConnectorsYour approvalSchedulerWhose identity
Salesforce leadstays asleepSalesforceApproval card, if the review model asksNoSlack account linked to your Cursor user
Weekly email summarystays asleepGmailYou confirm the routineYes, each MondayThe routine owner
Vendor invoice to Drivewakes, then sleepsDrive (browser for the portal)You take over for 2FANoYou, in the app