Beads (bd)
A distributed graph issue tracker for AI coding agents, powered by Dolt, providing persistent structured memory and dependency-aware task tracking for long-horizon agentic workflows.
At a Glance
About Beads (bd)
Beads (CLI: bd) is an open-source, distributed graph issue tracker built specifically for AI coding agents. Developed by the gastownhall organization and written in Go, it replaces ad-hoc markdown plans with a version-controlled, dependency-aware task graph backed by Dolt — a Git-like SQL database. The project reached v1.0.4 as of May 2026 and has accumulated over 23,000 stars on GitHub according to the repository metadata.
What It Is
Beads is a CLI tool that gives coding agents persistent, structured memory across long-horizon tasks. Instead of losing context between sessions or relying on fragile markdown TODO lists, agents interact with a Dolt-powered SQL graph that tracks tasks, dependencies, priorities, and project memories. The core command set (bd ready, bd create, bd update, bd close, bd prime, bd remember) is designed to be called directly by agents like Claude Code, Codex CLI, Factory.ai Droid, Cursor, and others.
How the Agent Memory Model Works
The central concept is a dependency-aware issue graph where tasks carry hash-based IDs (e.g., bd-a1b2) to prevent merge collisions in multi-agent or multi-branch workflows. Key design choices include:
bd primeinjects workflow context and persistent project memories into the agent's context window at the start of a session.bd remember "insight"stores durable project knowledge that survives session boundaries.- Compaction applies semantic "memory decay" to summarize old closed tasks, preserving context window budget.
- Hierarchical IDs support epics, tasks, and sub-tasks (
bd-a3f8,bd-a3f8.1,bd-a3f8.1.1). - Graph link types (
relates_to,duplicates,supersedes,replies_to) enable knowledge graph construction.
Storage Architecture
Beads uses Dolt as its database engine in two modes. Embedded mode (default) runs Dolt in-process with no external server; data lives in .beads/embeddeddolt/ and is single-writer with file locking. Server mode connects to an external dolt sql-server and supports multiple concurrent writers. Cross-machine sync uses bd dolt push / bd dolt pull against refs/dolt/data. A .beads/issues.jsonl export exists for interchange and backup but is not the source of truth. Git-free usage is also supported via the BEADS_DIR environment variable and --stealth mode, making Beads usable in CI/CD, monorepos, and non-git VCS environments like Sapling or Jujutsu.
Agent and IDE Integration
Beads ships first-class setup commands for major agent environments:
bd setup claude— installs hooks and settings for Claude Codebd setup codex— creates/updatesAGENTS.mdfor Codex CLIbd setup cursor— configures Cursor IDEbd setup factory— targets Factory.ai Droidbd setup mux— for mux-based workflows
For unsupported agents, bd onboard prints a minimal snippet to paste into any agent instruction file. An MCP server is also available via the beads-mcp PyPI package, and an npm package (@beads/bd) is published for Node.js users.
Update: v1.0.4
The repository metadata shows the latest release is v1.0.4, published May 9, 2026, with the last push on May 18, 2026 — indicating active development. The project was created in October 2025 and has grown rapidly, with the repository listing 346 open issues and 1,577 forks. Installation is available via Homebrew (brew install beads), npm, an install script, go install, and AUR for Arch Linux. Windows 11 is also supported with antivirus false-positive guidance documented.
Community Discussions
Be the first to start a conversation about Beads (bd)
Share your experience with Beads (bd), ask questions, or help others learn from your insights.
Pricing
Open Source
Fully free and open-source under the MIT License. Free to use, modify, and distribute.
- Full CLI feature set
- Dolt-powered distributed graph issue tracker
- Embedded and server storage modes
- MCP server support
- All agent integrations
Capabilities
Key Features
- Dolt-powered version-controlled SQL database with branching and merge
- Dependency-aware task graph with hash-based IDs
- Agent-optimized JSON output and auto-ready task detection
- Persistent project memory via bd remember and bd prime
- Semantic memory compaction (memory decay) for context window management
- Graph link types: relates_to, duplicates, supersedes, replies_to
- Hierarchical task IDs for epics, tasks, and sub-tasks
- Embedded and server storage modes
- Cross-machine sync via Dolt remotes
- Git-free usage with BEADS_DIR and stealth mode
- First-class setup for Claude Code, Codex CLI, Cursor, Factory.ai, and more
- MCP server via beads-mcp PyPI package
- Atomic task claiming with bd update --claim
- Messaging issue type with threading and ephemeral lifecycle
- Contributor and maintainer workflow modes for open-source projects
- Backup and migration between storage modes via bd backup
