What is a Worker

A Worker is the atomic unit of work in Bom Agent. It takes one natural-language request and orchestrates CLI calls, tool runs, and memory access.

A Worker's responsibilities

Each Worker handles four things.

  • CLI calls — Claude Code · Codex with priority failover
  • Tool execution — 21 bundled MCP tools (bom-av, bom-desktop, bom-pdf, etc.)
  • Memory graph access — recall prior context
  • Live stream — push progress to the UI in real time

Worker threads

Workers are split into threads. Messages in the same thread share context; a new thread starts fresh.

  • Home thread — one-shot, single task
  • Worker-page threads — multi-turn, persisted
  • Pack run thread — runs the steps inside a Pack
  • Automation thread — kicked off by a schedule
Tip

Long conversations belong in the Worker page; one-off tasks belong in Home.

Cancel & resume

Hitting cancel raises OperationCanceledException, which stops tool calls mid-flight but lets in-progress tools settle. Partial output (text, tool blocks) is preserved.

Note

Step-based work like Pack runs can be resumed with the same RunId after a cancel.