bd help --doc config.
Manage configuration settings for external integrations and preferences.
Configuration is stored per-project in the beads database and is version-control-friendly.
Common namespaces:
- export.* Auto-export settings (stored in config.yaml)
- import.* JSONL import settings (stored in config.yaml)
- jira.* Jira integration settings
- linear.* Linear integration settings
- github.* GitHub integration settings
- gitlab.* GitLab integration settings
- ado.* Azure DevOps integration settings
- notion.* Notion integration settings
- custom.* Custom integration settings
- status.* Issue status configuration
- doctor.suppress.* Suppress specific bd doctor warnings (GH#1095)
bd config apply
Reconcile actual system state to match declared configuration. Runs drift detection and then fixes any mismatches it finds:- hooks Reinstall git hooks if missing or outdated
- remote Add/update Dolt origin remote to match federation.remote
- server Start Dolt server if dolt.shared-server is enabled
bd config drift
Detect drift between declared configuration and actual system state. This is a read-only diagnostic that answers “is my environment consistent with my config?” — no mutations are performed. Checks:- hooks Git hooks installed and up-to-date
- remote Dolt remote matches federation.remote config
- server Server state matches dolt.shared-server config
bd config get
Get a configuration valuebd config list
List all configurationbd config set
Set a configuration valuebd config set-many
Set multiple configuration values at once with a single auto-commit and auto-push. Each argument must be in key=value format. All values are validated before any writes occur. This is faster and less noisy than separate ‘bd config set’ calls, especially in CI. Examples: bd config set-many ado.state_map.open=New ado.state_map.closed=Closed bd config set-many jira.url=https://example.atlassian.net jira.project=PROJbd config show
Display a unified view of all effective configuration across all sources with annotations showing where each value comes from. Sources (by precedence for Viper-managed keys):- env Environment variable (BD_* or BEADS_*)
- config.yaml Project config file (.beads/config.yaml)
- default Built-in default value
- metadata Connection settings from .beads/metadata.json
- database Integration config stored in the Dolt database
- git Git config (e.g., beads.role)
bd config unset
Delete a configuration valuebd config validate
Validate sync-related configuration settings. Checks:- federation.sovereignty is valid (T1, T2, T3, T4, or empty)
- federation.remote is set for Dolt sync
- Remote URL format is valid (dolthub://, gs://, s3://, az://, file://)
- routing.mode is valid (auto, maintainer, contributor, explicit) Examples: bd config validate bd config validate —json