Quick Start
Already have beads installed? Jump to your scenario:- OSS Contributor - Keep planning out of upstream PRs
- Team Member - Shared planning on branches
- Multi-Phase Development - Separate repos per phase
- Multiple Personas - Architect vs. implementer separation
What is Multi-Repo Mode?
By default, beads stores issues in its Dolt database under.beads/ in your current repository (.beads/embeddeddolt/ in the default embedded mode). Multi-repo mode lets you:
- Route issues to different repositories based on your role (maintainer vs. contributor)
- Aggregate issues from multiple repos into a unified view
- Keep contributor planning separate from upstream projects
- Maintain data integrity everywhere - Dolt version control in every repo
When Do You Need Multi-Repo?
You DON’T need multi-repo if:
- ✅ Working solo on your own project
- ✅ Team with shared repository and trust model
- ✅ All issues belong in the project’s git history
You DO need multi-repo if:
- 🔴 Contributing to OSS - don’t pollute upstream with planning
- 🔴 Fork workflow - planning shouldn’t appear in PRs
- 🔴 Multiple work phases - design vs. implementation repos
- 🔴 Multiple personas - architect planning vs. implementer tasks
Core Concepts
1. Source Repository (source_repo)
Every issue has a source_repo field indicating which repository owns it:
.= Current repository (default)~/.beads-planning= Contributor planning repo/path/to/repo= Absolute path to another repo
2. Auto-Routing
Beads automatically routes new issues to the right repository based on your role:3. Multi-Repo Hydration
Beads can aggregate issues from multiple repositories into a unified database:OSS Contributor Workflow
Problem: You’re contributing to an OSS project but don’t want your experimental planning to appear in PRs. Solution: Use a separate planning repository that’s never committed to upstream.Setup (One-Time)
Manual Configuration
If you prefer manual setup:Daily Workflow
Proposing Issues Upstream
If you want to share a planning issue with upstream:Team Workflow
Problem: Team members working on shared repository with branches, but different levels of planning granularity. Solution: Use branch-based workflow with optional personal planning repos.Setup (Team Lead)
Setup (Team Member)
Daily Workflow
Multi-Phase Development
Problem: Project has distinct phases (planning, implementation, maintenance) that need separate issue spaces. Solution: Use separate repositories for each phase.Setup
Workflow
Multiple Personas
Problem: You work as both architect (high-level planning) and implementer (detailed tasks). Solution: Separate repositories for each persona’s work.Setup
Workflow
Configuration Reference
Routing Settings
Multi-Repo Hydration
Override Auto-Routing
Troubleshooting
Issues appearing in wrong repository
Problem:bd create routes issues to unexpected repository.
Solution:
Can’t see issues from other repos
Problem:bd list only shows issues from current repo.
Solution:
Merge conflicts
Problem: Multiple repos with conflicting changes. Solution: Dolt handles merge conflicts natively with cell-level merge. See Troubleshooting for details.Discovered issues in wrong repository
Problem: Issues created withdiscovered-from dependency appear in wrong repo.
Solution: Discovered issues automatically inherit parent’s source_repo. This is intentional. To override:
Planning repo polluting PRs
Problem: Your~/.beads-planning changes appear in PRs to upstream.
Solution: This shouldn’t happen if configured correctly. Verify:
Backward Compatibility
Migrating from Single-Repo
No migration needed! Multi-repo mode is opt-in:Disabling Multi-Repo
Best Practices
OSS Contributors
- ✅ Always use
~/.beads-planningor similar for personal planning - ✅ Never commit
.beads/changes to upstream PRs - ✅ Use descriptive prefixes (
plan-,exp-) for clarity - ❌ Don’t mix planning and implementation in the same repo
Teams
- ✅ Use
bd dolt pushto sync the shared Dolt database - ✅ Use protected branch workflow for main/master
- ✅ Review issue changes in PRs like code changes
- ❌ Don’t delete
.beads/- you lose all issue data
Multi-Phase Projects
- ✅ Use clear phase naming (
planning,impl,maint) - ✅ Link issues across phases with dependencies
- ✅ Archive completed phases periodically
- ❌ Don’t duplicate issues across phases
Next Steps
- CLI Reference: See README.md for command details
- Configuration Guide: See Configuration for all config options
- Troubleshooting: See Troubleshooting
- Multi-Repo Internals: See ROUTING.md#multi-repo-hydration
Related Issues
bd-8rd- Migration and onboarding epicbd-mlcz-bd migratecommand (planned)bd-kla1-bd init --contributorwizard - implementedbd-twlr-bd init --teamwizard - implemented