beadmaster
v0.2.0
Published
Sync task management systems for AI coding agents (Task Master ↔ Beads)
Maintainers
Readme
Beadmaster
Sync task management systems for AI coding agents
Beadmaster bridges Task Master and Beads, letting you use Task Master for AI-powered planning and Beads for execution tracking.
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Task Master │ ←──→│ Beadmaster │←──→ │ Beads │
│ (planning) │ │ (sync) │ │ (execution) │
└─────────────┘ └─────────────┘ └─────────────┘Why?
| Tool | Strength | Weakness | |------|----------|----------| | Task Master | AI PRD parsing, complexity analysis | No dependency graphs | | Beads | Dependencies, discovered-from links | No AI task generation |
Beadmaster gives you both: use Task Master's AI to break down PRDs, then track execution in Beads with full dependency awareness.
Installation
npm install -g beadmaster
# or
npx beadmasterQuick Start
# Initialize in your project (creates .beadmaster/, optionally updates docs)
beadmaster init # Basic setup
beadmaster init --docs # Also append instructions to AGENTS.md
# Check what's available
beadmaster status
# One-time import from Task Master → Beads
beadmaster import --dry-run # Preview
beadmaster import # Execute
# Ongoing bidirectional sync
beadmaster sync --dry-run # Preview
beadmaster sync # Execute
# Manual linking
beadmaster link 85 shadow-work-abc
beadmaster unlink 85
# List all links
beadmaster linksCommands
beadmaster init
Initialize Beadmaster in your project. Creates .beadmaster/ directory and optionally appends usage instructions to your documentation.
beadmaster init # Basic setup
beadmaster init --docs # Also append to AGENTS.md
beadmaster init --claude # Append to CLAUDE.md instead
beadmaster init --docs -f # Force overwrite existing sectionOutput:
Initializing Beadmaster
────────────────────────────────────────
✓ Created .beadmaster/
✓ Task Master detected
✓ Beads detected
✓ Appended Beadmaster docs to AGENTS.md
Next steps:
beadmaster sync --dry-run # Preview sync
beadmaster sync # Execute syncbeadmaster status
Show sync status and system availability.
Beadmaster Status
────────────────────────────────
✓ Task Master (.taskmaster/tasks/tasks.json)
✓ Beads (.beads/issues.jsonl)
○ Link Store (.beadmaster/links.json)
12 active linksbeadmaster sync
Bidirectional sync between Task Master and Beads.
beadmaster sync # Full sync
beadmaster sync --dry-run # Preview changes
beadmaster sync --tm-to-beads # One direction only
beadmaster sync --beads-to-tm # Other directionWhat it does:
- Finds TM tasks without beads → creates beads
- Finds status mismatches → updates the older one
- Auto-links by convention (
TM-85:in bead title) - Reports conflicts for manual resolution
beadmaster import
One-time import from Task Master to Beads. Use this for initial setup.
beadmaster import --dry-run # See what would be created
beadmaster import # Create beads for all TM tasksbeadmaster link <tm-id> <bead-id>
Manually link a Task Master task to a Bead.
beadmaster link 85 shadow-work-abc
beadmaster link TM-85 shadow-work-abc # Also accepts TM- prefixbeadmaster unlink <identifier>
Remove a link by Task Master ID or Bead ID.
beadmaster unlink 85
beadmaster unlink shadow-work-abcbeadmaster links
List all current links.
beadmaster links # Human-readable
beadmaster links --json # JSON outputLinking Convention
Beadmaster auto-detects links from bead titles:
| Pattern | Example |
|---------|---------|
| TM-XX: | TM-85: Core architecture setup |
| [TM-XX] | [TM-85] Core architecture setup |
| (TM-XX) | Core architecture (TM-85) |
When you create beads with these patterns, Beadmaster automatically links them.
How Sync Works
Task Master Beads
│ │
│ ┌─────────────────┐ │
├──→│ Link Store │←─────┤
│ │ (.beadmaster/) │ │
│ └─────────────────┘ │
│ │
▼ ▼
┌───────┐ ┌───────┐
│TM-85 │ ←──── link ────→│sw-abc │
│pending│ │open │
└───────┘ └───────┘
│ │
└──── status sync ──────────→│
(newer wins) │Conflict Resolution:
- If timestamps differ → newer wins
- If timestamps equal → reported as conflict
- Manual override:
--forceflag
File Locations
| File | Purpose |
|------|---------|
| .taskmaster/tasks/tasks.json | Task Master tasks |
| .beads/issues.jsonl | Beads issues |
| .beadmaster/links.json | Link mappings |
Programmatic API
import { SyncEngine } from 'beadmaster';
const engine = new SyncEngine('/path/to/project');
// Check status
const status = engine.getStatus();
console.log(status); // { taskmaster: true, beads: true, linkStore: false }
// Sync
const result = engine.sync({ dryRun: true });
console.log(result.created, result.updated, result.conflicts);
// Manual linking
engine.link(85, 'shadow-work-abc');
engine.unlink('85');Recommended Workflow
Planning Phase: Use Task Master to parse PRDs and generate tasks
task-master parse-prd docs/prd.txtInitial Import: Create beads for all tasks
beadmaster importExecution Phase: Work entirely in Beads
bd ready # Find work bd update sw-abc --status in_progress # ... do work ... bd close sw-abc --reason "Done"Periodic Sync: Keep Task Master updated
beadmaster sync
Integration with AI Agents
Beadmaster is designed for AI coding agents like Claude Code and Codex. Add to your AGENTS.md:
### Task Sync Workflow
Use Beadmaster to sync Task Master (planning) with Beads (execution):
\`\`\`bash
# Before starting work
beadmaster sync --dry-run
# After completing tasks
beadmaster sync
\`\`\`
Convention: Name beads as `TM-<id>: <title>` for auto-linking.Contributing
Contributions welcome! Please read CONTRIBUTING.md first.
License
MIT
