Fleet

Distributed workers with capability matching and project-scoped dispatch. Fleet is the horizontal-scale story for Sagewai: workers register with capability labels (model support, pool, project_id), the dispatcher routes tasks to workers whose labels match, and cross-tenant credentials never leak — a worker tagged project_id=health-prod physically cannot claim a task tagged project_id=fin-prod.

What you can do with it

  • Scale workers horizontally. Add more workers to a pool; the dispatcher picks them up automatically.
  • Match by capability. A task that needs claude-3-5-sonnet and pool=production only routes to workers that advertise both labels.
  • Enforce per-tenant isolation. Tag workers with project_id; the dispatcher refuses cross-tenant claims at the dispatch boundary, not in policy.
  • Onboard workers in bulk. Enrollment keys come with pool and model restrictions baked in; one key onboards N workers with the right labels pre-set.
  • Heartbeat and revocation. Workers go offline cleanly; pending tasks reroute. A revoked worker is locked out at the next dispatch attempt.
  • Run heterogeneous fleets. Some workers on Docker, some on Kubernetes, some on Lambda — the dispatcher picks the right one per task.

See it in action

Primary example — multi-tenant fleet

Production multitenancy — Example 33 ships the full multi-tenant fleet integration: two tenants, four workers, mixed-tenant tasks, dispatcher refuses cross-tenant claims. Output prints the cross-tenant attempt being rejected at the dispatch boundary.

Stress test under load

Observability and cost — Example 40 runs 20+ workers under mixed load with the mission-control HUD streaming live state. Useful for sanity-checking your fleet config before going to production.

Pattern examples

Where to go to ship it

See also

  • Security overview — the credential model that makes Fleet safe for multi-tenant production.
  • Observatory — per-tenant cost rollups and live worker state pair with Fleet.
  • All products — the other components.