feat: add llms.txt standard support for AI agent discoverability (#784)
Cherry-picked website/, scripts/generate-llms-full.sh, and deploy-docs.yml from joyshmitz's PR. Fixed workflow to trigger on main branch instead of docs/docusaurus-site. Features: - Docusaurus documentation site with llms.txt support - Environment-variable driven config (defaults to steveyegge org) - Automated llms-full.txt generation from docs - GitHub Pages deployment workflow Co-authored-by: joyshmitz <joyshmitz@users.noreply.github.com> 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> Executed-By: beads/crew/dave Rig: beads Role: crew
This commit is contained in:
157
website/docs/multi-agent/coordination.md
Normal file
157
website/docs/multi-agent/coordination.md
Normal file
@@ -0,0 +1,157 @@
|
||||
---
|
||||
id: coordination
|
||||
title: Agent Coordination
|
||||
sidebar_position: 3
|
||||
---
|
||||
|
||||
# Agent Coordination
|
||||
|
||||
Patterns for coordinating work between multiple AI agents.
|
||||
|
||||
## Work Assignment
|
||||
|
||||
### Pinning Work
|
||||
|
||||
Assign work to a specific agent:
|
||||
|
||||
```bash
|
||||
# Pin issue to agent
|
||||
bd pin bd-42 --for agent-1
|
||||
|
||||
# Pin and start work
|
||||
bd pin bd-42 --for agent-1 --start
|
||||
|
||||
# Unpin work
|
||||
bd unpin bd-42
|
||||
```
|
||||
|
||||
### Checking Pinned Work
|
||||
|
||||
```bash
|
||||
# What's on my hook?
|
||||
bd hook
|
||||
|
||||
# What's on agent-1's hook?
|
||||
bd hook --agent agent-1
|
||||
|
||||
# JSON output
|
||||
bd hook --json
|
||||
```
|
||||
|
||||
## Handoff Patterns
|
||||
|
||||
### Sequential Handoff
|
||||
|
||||
Agent A completes work, hands off to Agent B:
|
||||
|
||||
```bash
|
||||
# Agent A
|
||||
bd close bd-42 --reason "Ready for review"
|
||||
bd pin bd-42 --for agent-b
|
||||
|
||||
# Agent B picks up
|
||||
bd hook # Sees bd-42
|
||||
bd update bd-42 --status in_progress
|
||||
```
|
||||
|
||||
### Parallel Work
|
||||
|
||||
Multiple agents work on different issues:
|
||||
|
||||
```bash
|
||||
# Coordinator
|
||||
bd pin bd-42 --for agent-a --start
|
||||
bd pin bd-43 --for agent-b --start
|
||||
bd pin bd-44 --for agent-c --start
|
||||
|
||||
# Each agent works independently
|
||||
# Coordinator monitors progress
|
||||
bd list --status in_progress --json
|
||||
```
|
||||
|
||||
### Fan-Out / Fan-In
|
||||
|
||||
Split work, then merge:
|
||||
|
||||
```bash
|
||||
# Fan-out
|
||||
bd create "Part A" --parent bd-epic
|
||||
bd create "Part B" --parent bd-epic
|
||||
bd create "Part C" --parent bd-epic
|
||||
|
||||
bd pin bd-epic.1 --for agent-a
|
||||
bd pin bd-epic.2 --for agent-b
|
||||
bd pin bd-epic.3 --for agent-c
|
||||
|
||||
# Fan-in: wait for all parts
|
||||
bd dep add bd-merge bd-epic.1 bd-epic.2 bd-epic.3
|
||||
```
|
||||
|
||||
## Agent Discovery
|
||||
|
||||
Find available agents:
|
||||
|
||||
```bash
|
||||
# List known agents (if using agent registry)
|
||||
bd agents list
|
||||
|
||||
# Check agent status
|
||||
bd agents status agent-1
|
||||
```
|
||||
|
||||
## Conflict Prevention
|
||||
|
||||
### File Reservations
|
||||
|
||||
Prevent concurrent edits:
|
||||
|
||||
```bash
|
||||
# Reserve files before editing
|
||||
bd reserve auth.go --for agent-1
|
||||
|
||||
# Check reservations
|
||||
bd reservations list
|
||||
|
||||
# Release when done
|
||||
bd reserve --release auth.go
|
||||
```
|
||||
|
||||
### Issue Locking
|
||||
|
||||
```bash
|
||||
# Lock issue for exclusive work
|
||||
bd lock bd-42 --for agent-1
|
||||
|
||||
# Unlock when done
|
||||
bd unlock bd-42
|
||||
```
|
||||
|
||||
## Communication Patterns
|
||||
|
||||
### Via Comments
|
||||
|
||||
```bash
|
||||
# Agent A leaves note
|
||||
bd comment add bd-42 "Completed API, needs frontend integration"
|
||||
|
||||
# Agent B reads
|
||||
bd show bd-42 --full
|
||||
```
|
||||
|
||||
### Via Labels
|
||||
|
||||
```bash
|
||||
# Mark for review
|
||||
bd update bd-42 --add-label "needs-review"
|
||||
|
||||
# Agent B filters
|
||||
bd list --label-any needs-review
|
||||
```
|
||||
|
||||
## Best Practices
|
||||
|
||||
1. **Clear ownership** - Always pin work to specific agent
|
||||
2. **Document handoffs** - Use comments to explain context
|
||||
3. **Use labels for status** - `needs-review`, `blocked`, `ready`
|
||||
4. **Avoid conflicts** - Use reservations for shared files
|
||||
5. **Monitor progress** - Regular status checks
|
||||
72
website/docs/multi-agent/index.md
Normal file
72
website/docs/multi-agent/index.md
Normal file
@@ -0,0 +1,72 @@
|
||||
---
|
||||
id: index
|
||||
title: Multi-Agent
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Multi-Agent Coordination
|
||||
|
||||
Beads supports coordination between multiple AI agents and repositories.
|
||||
|
||||
## Overview
|
||||
|
||||
Multi-agent features enable:
|
||||
- **Routing** - Automatic issue routing to correct repositories
|
||||
- **Cross-repo dependencies** - Dependencies across repository boundaries
|
||||
- **Agent coordination** - Work assignment and handoff between agents
|
||||
|
||||
## Key Concepts
|
||||
|
||||
### Routes
|
||||
|
||||
Routes define which repository handles which issues:
|
||||
|
||||
```jsonl
|
||||
{"pattern": "frontend/*", "target": "frontend-repo"}
|
||||
{"pattern": "backend/*", "target": "backend-repo"}
|
||||
{"pattern": "*", "target": "main-repo"}
|
||||
```
|
||||
|
||||
### Work Assignment
|
||||
|
||||
Pin work to specific agents:
|
||||
|
||||
```bash
|
||||
bd pin bd-42 --for agent-1 --start
|
||||
bd hook --agent agent-1 # Show pinned work
|
||||
```
|
||||
|
||||
### Cross-repo Dependencies
|
||||
|
||||
Track dependencies across repositories:
|
||||
|
||||
```bash
|
||||
bd dep add bd-42 external:other-repo/bd-100
|
||||
```
|
||||
|
||||
## Architecture
|
||||
|
||||
```
|
||||
┌─────────────────┐
|
||||
│ Main Repo │
|
||||
│ (coordinator) │
|
||||
└────────┬────────┘
|
||||
│ routes
|
||||
┌────┴────┐
|
||||
│ │
|
||||
┌───▼───┐ ┌───▼───┐
|
||||
│Frontend│ │Backend│
|
||||
│ Repo │ │ Repo │
|
||||
└────────┘ └────────┘
|
||||
```
|
||||
|
||||
## Getting Started
|
||||
|
||||
1. **Single repo**: Standard beads workflow
|
||||
2. **Multi-repo**: Configure routes and cross-repo deps
|
||||
3. **Multi-agent**: Add work assignment and handoff
|
||||
|
||||
## Navigation
|
||||
|
||||
- [Routing](/multi-agent/routing) - Auto-routing configuration
|
||||
- [Coordination](/multi-agent/coordination) - Agent coordination patterns
|
||||
116
website/docs/multi-agent/routing.md
Normal file
116
website/docs/multi-agent/routing.md
Normal file
@@ -0,0 +1,116 @@
|
||||
---
|
||||
id: routing
|
||||
title: Routing
|
||||
sidebar_position: 2
|
||||
---
|
||||
|
||||
# Multi-Repo Routing
|
||||
|
||||
Automatic issue routing across repositories.
|
||||
|
||||
## Overview
|
||||
|
||||
Routing enables:
|
||||
- Issues created in one repo routed to another
|
||||
- Pattern-based routing rules
|
||||
- Fallback to default repository
|
||||
|
||||
## Configuration
|
||||
|
||||
Create `.beads/routes.jsonl`:
|
||||
|
||||
```jsonl
|
||||
{"pattern": "frontend/**", "target": "frontend-repo", "priority": 10}
|
||||
{"pattern": "backend/**", "target": "backend-repo", "priority": 10}
|
||||
{"pattern": "docs/**", "target": "docs-repo", "priority": 5}
|
||||
{"pattern": "*", "target": "main-repo", "priority": 0}
|
||||
```
|
||||
|
||||
## Route Fields
|
||||
|
||||
| Field | Description |
|
||||
|-------|-------------|
|
||||
| `pattern` | Glob pattern to match |
|
||||
| `target` | Target repository |
|
||||
| `priority` | Higher = checked first |
|
||||
|
||||
## Pattern Matching
|
||||
|
||||
Patterns match against:
|
||||
- Issue title
|
||||
- Labels
|
||||
- Explicit path prefix
|
||||
|
||||
**Examples:**
|
||||
```jsonl
|
||||
{"pattern": "frontend/*", "target": "frontend"}
|
||||
{"pattern": "*api*", "target": "backend"}
|
||||
{"pattern": "label:docs", "target": "docs-repo"}
|
||||
```
|
||||
|
||||
## Commands
|
||||
|
||||
```bash
|
||||
# Show routing table
|
||||
bd routes list
|
||||
bd routes list --json
|
||||
|
||||
# Test routing
|
||||
bd routes test "Fix frontend button"
|
||||
bd routes test --label frontend
|
||||
|
||||
# Add route
|
||||
bd routes add "frontend/**" --target frontend-repo --priority 10
|
||||
|
||||
# Remove route
|
||||
bd routes remove "frontend/**"
|
||||
```
|
||||
|
||||
## Auto-Routing
|
||||
|
||||
When creating issues, beads checks routes:
|
||||
|
||||
```bash
|
||||
bd create "Fix frontend button alignment" -t bug
|
||||
# Auto-routed to frontend-repo based on title match
|
||||
```
|
||||
|
||||
Override with explicit target:
|
||||
|
||||
```bash
|
||||
bd create "Fix button" --repo backend-repo
|
||||
```
|
||||
|
||||
## Cross-Repo Dependencies
|
||||
|
||||
Track dependencies across repos:
|
||||
|
||||
```bash
|
||||
# In frontend-repo
|
||||
bd dep add bd-42 external:backend-repo/bd-100
|
||||
|
||||
# View cross-repo deps
|
||||
bd dep tree bd-42 --cross-repo
|
||||
```
|
||||
|
||||
## Hydration
|
||||
|
||||
Pull related issues from other repos:
|
||||
|
||||
```bash
|
||||
# Hydrate issues from related repos
|
||||
bd hydrate
|
||||
|
||||
# Preview hydration
|
||||
bd hydrate --dry-run
|
||||
|
||||
# Hydrate specific repo
|
||||
bd hydrate --from backend-repo
|
||||
```
|
||||
|
||||
## Best Practices
|
||||
|
||||
1. **Use specific patterns** - Avoid overly broad matches
|
||||
2. **Set priorities** - Ensure specific patterns match first
|
||||
3. **Default fallback** - Always have a `*` pattern with lowest priority
|
||||
4. **Test routes** - Use `bd routes test` before committing
|
||||
Reference in New Issue
Block a user