General Questions
What is bd?
What is bd?
Why not just use GitHub Issues?
Why not just use GitHub Issues?
-
Typed Dependencies with Semantics - bd has four types (
blocks,related,parent-child,discovered-from) with different behaviors. GH only has “blocks/blocked by” links. -
Deterministic Ready-Work Detection -
bd readycomputes transitive blocking offline in ~10ms, no network required. GH has no built-in “ready” concept. - Git-First, Offline, Branch-Scoped Task Memory - bd works offline, issues live on branches, hash IDs prevent collisions on merge.
- AI-Resolvable Conflicts & Duplicate Merge - Automatic collision resolution, duplicate merge with dependency consolidation.
- Version-Controlled SQL Database - Full SQL queries against local Dolt database with native version control.
-
Agent-Native APIs - Consistent
--jsonon all commands, dedicated MCP server with auto workspace detection.
How is this different from Taskwarrior?
How is this different from Taskwarrior?
- Explicit agent semantics:
discovered-fromdependency type,bd readyfor queue management - JSON-first design: Every command has
--jsonoutput - Git-native sync: No sync server setup required
- Dolt merge: Cell-level merge with AI-resolvable conflicts
- SQL database: Full SQL queries against Dolt database
Can I use bd without AI agents?
Can I use bd without AI agents?
bd ready command is useful for anyone managing dependencies. Think of it as “Taskwarrior meets git.”Is this production-ready?
Is this production-ready?
- ⚠️ Alpha software - No 1.0 release yet
- ⚠️ API may change - Command flags may evolve before 1.0
- ✅ Safe for development - Use for development/internal projects
- ✅ Data is portable -
bd exportproduces human-readable JSONL - 📈 Rapid iteration - Expect frequent updates
- ✅ AI-assisted development workflows
- ✅ Internal team projects
- ✅ Personal productivity with dependency tracking
- ❌ Mission-critical production systems (wait for 1.0)
- ❌ Large enterprise deployments
Usage Questions
Why hash-based IDs? Why not sequential?
Why hash-based IDs? Why not sequential?
- 4 chars (0-500 issues):
bd-a1b2 - 5 chars (500-1,500 issues):
bd-f14c3 - 6 chars (1,500+ issues):
bd-3e7a5b
What are hierarchical child IDs?
What are hierarchical child IDs?
bd-a3f8e9.1, bd-a3f8e9.2) provide human-readable structure for epics and subtasks.Example:- Parent hash ensures unique namespace
- Sequential child IDs are human-friendly
- Up to 3 levels of nesting supported
- Clear visual grouping in issue lists
Should I run bd init or have my agent do it?
Should I run bd init or have my agent do it?
Do I need to run export/import manually?
Do I need to run export/import manually?
bd import and bd export commands exist for data migration and portability, not for day-to-day sync.Can I track issues for multiple projects?
Can I track issues for multiple projects?
.beads/ directory with its own Dolt database. bd auto-discovers the correct database based on your current directory.Per-project Dolt servers - Each project gets its own Dolt server (LSP model) for complete isolation.Limitation: Issues cannot reference issues in other projects. Each database is isolated by design.What happens if two agents work on the same issue?
What happens if two agents work on the same issue?
- Have agents claim work with
bd update <id> --claim - Query by assignee:
bd ready --assignee agent-name - Review git diffs before merging
bd dolt start) which supports concurrent writes natively.Why Dolt instead of plain files?
Why Dolt instead of plain files?
- ✅ Version-controlled SQL: Full SQL queries with native version control
- ✅ Cell-level merge: Concurrent changes merge automatically at the field level
- ✅ Multi-writer: Server mode supports concurrent agents
- ✅ Native branching: Dolt branches independent of git branches
- ✅ Portable:
bd exportproduces JSONL for migration
Performance Questions
How does bd handle scale?
How does bd handle scale?
- Commands complete in under 100ms
- Full-text search is instant
- Dependency graphs traverse quickly
- Dolt database stays compact with garbage collection
What if my database gets too large?
What if my database gets too large?
Use Case Questions
Can I use bd for non-code projects?
Can I use bd for non-code projects?
- Writing projects (chapters as issues)
- Research projects (papers, experiments)
- Home projects (renovations with blocking tasks)
- Any workflow with dependencies
Can I use bd with multiple AI agents simultaneously?
Can I use bd with multiple AI agents simultaneously?
- Query ready work:
bd ready --assignee agent-name - Assign issues:
bd update <id> --assignee agent-name - Start work:
bd update <id> --status in_progress - Create discovered work:
bd create "Found issue" --deps discovered-from:<parent-id> - Sync via git commits
Does bd work offline?
Does bd work offline?
- All queries run against local Dolt database
- No network required for any commands
- Sync happens via git push/pull when online
- Full functionality available without internet
Technical Questions
What dependencies does bd have?
What dependencies does bd have?
- Language: Go 1.24+
- Database: Dolt (server mode)
- Optional: Git (for version control)
Does bd support Windows?
Does bd support Windows?
- No MSYS or MinGW required
- PowerShell install script
- Works with Windows paths and filesystem
- Dolt server uses TCP instead of Unix sockets
Can I use bd with git worktrees?
Can I use bd with git worktrees?
Getting Help
Where can I get more help?
Where can I get more help?
- Documentation: Check out our comprehensive guides
- GitHub Issues: Report bugs or request features
- GitHub Discussions: Ask questions
How can I contribute?
How can I contribute?
- Code contribution guidelines
- How to run tests
- Development workflow
- Issue and PR templates