Noureddine RAMDI / Beads: a distributed graph issue tracker for multi-agent AI workflows

Created Sun, 26 Apr 2026 23:47:28 +0000 Modified Sat, 06 Jun 2026 19:20:19 +0000

gastownhall/beads

Beads (bd) addresses a concrete problem in AI agent workflows: managing long-running tasks without losing context or creating merge conflicts in multi-agent environments. Instead of simple flat markdown lists, beads uses a distributed graph structure with version-controlled SQL storage, tailored specifically for AI coding agents.

what beads is and how it works

At its core, beads is a CLI-based distributed graph issue tracker built in Go. It replaces traditional flat task lists with a dependency-aware graph that allows tasks to relate to each other in meaningful ways — including hierarchical IDs for epics and relationship types like relates_to, duplicates, supersedes, and replies_to. This structure supports a knowledge graph style of task management.

The backend relies on Dolt, a version-controlled SQL database, which provides git-like branching and merging on a cell-level granularity. This is key because it lets multiple agents work concurrently without locking or manual conflict resolution, thanks to hash-based IDs that prevent merge conflicts by design.

Beads supports multiple storage modes: an embedded single-writer mode for simpler setups, or a server-based multi-writer mode suited for collaborative multi-agent environments. It is cross-platform, supporting macOS, Linux, Windows, and FreeBSD.

why beads stands out technically

The most interesting feature of beads is its semantic compaction mechanism. AI agents face a context window limitation — they can only keep so much information active before older context is lost. Beads addresses this by summarizing closed tasks, effectively implementing a form of “memory decay” that conserves context while preserving essential information. This semantic compaction helps agents manage long-horizon workflows without losing critical task history.

Under the hood, beads uses Dolt’s advanced merge and branching capabilities to handle multi-agent concurrency elegantly. Hash-based IDs mean tasks are globally unique and immutable, dramatically reducing merge conflicts common in distributed task management.

The Go codebase is surprisingly clean and pragmatic for a complex system like this. The CLI interface is straightforward, with commands and flags well organized for practical usage. The tradeoff is the added complexity of integrating Dolt, which may be unfamiliar territory for many developers. Also, while the graph model is powerful, it requires a shift in mindset compared to traditional issue trackers.

quick start with beads

# Install beads CLI (system-wide - don't clone this repo into your project)
curl -fsSL https://raw.githubusercontent.com/gastownhall/beads/main/scripts/install.sh | bash

## Installation

brew install beads           # macOS / Linux (recommended)
npm install -g @beads/bd     # Node.js users

Other methods include install script, go install, from source, Windows, and Arch AUR. The project supports macOS, Linux, Windows, and FreeBSD. For complete installation details, consult docs/INSTALLING.md.

Security is taken seriously; the install scripts verify release checksums, and manual verification is recommended before first use.

verdict

Beads targets developers and teams working with AI coding agents who need robust, conflict-free task management over long periods and across multiple agents. Its strength lies in addressing the context window problem via semantic compaction and using Dolt’s version-controlled SQL backend for concurrency without locking.

The tradeoff is a steeper learning curve compared to simpler task trackers, especially if you’re not familiar with version-controlled SQL databases or graph-based task models. Also, the CLI-centric interface may not suit everyone, and integrating beads into existing workflows requires some adaptation.

Overall, beads is worth exploring if your AI agent workflows are complex and long-running enough to demand a scalable, multi-agent-aware task graph that prevents merge conflicts and manages context efficiently.


→ GitHub Repo: gastownhall/beads ⭐ 21,570 · Go