Skip to main content
Patterns for coordinating work between multiple AI agents.

Work Assignment

Assigning and Claiming Work

Assign work to a specific agent, or claim it atomically for yourself:

Checking Assigned Work

Handoff Patterns

Sequential Handoff

Agent A completes work, hands off to Agent B:

Parallel Work

Multiple agents work on different issues:

Fan-Out / Fan-In

Split work, then merge:
If bd-epic carries a size/effort label, see Labels for keeping it off the parts.
For structured epic fan-out, bd swarm creates and tracks a swarm molecule from an epic (bd swarm create, bd swarm status).

Agent Discovery

Beads has no agent registry — assignees are plain strings. To see which agents are active, group in-progress work by assignee:

Conflict Prevention

Atomic Claims

--claim is atomic: when multiple agents pull from the same ready queue, the first claim wins, and repeating a claim you already hold is idempotent. Prefer claiming over assigning when agents self-select work:

Merge Slots

Serialize conflict-prone work (such as merge-queue conflict resolution) with a merge slot — an exclusive-access primitive only one agent can hold at a time. Each project has one merge slot bead, named from the issue prefix (e.g. bd-merge-slot):

Communication Patterns

Via Comments

Via Labels

Coordinating Across Repositories

Agents can coordinate work that spans repositories:
Multi-repo routing, aggregated views, and contributor/team workflows are covered in Routing and Multi-Repo Migration.

Best Practices

  1. Clear ownership - Assign or claim work so every issue has one owner
  2. Document handoffs - Use comments to explain context
  3. Use labels for status - needs-review, blocked, ready
  4. Avoid conflicts - Claim atomically; use merge slots to serialize conflict-prone work
  5. Monitor progress - Regular status checks
  6. Sync at session end - Run bd dolt push so other agents see your updates