Beads (bd) — コーディングエージェントのためのメモリ拡張
概要
Beadsは、Claude Code、GitHub CopilotなどのAIコーディングエージェントに永続的で構造化されたメモリシステムを提供するオープンソースCLIツール(bd)です。セッション間で失われるフラットなMarkdownファイルやインコンテキストのスクラッチパッドに依存するのではなく、Beadsはバージョン管理されたSQLデータベースをバックエンドとした依存関係を認識するタスクグラフを提供します。これにより、エージェントは複数のセッション、ブランチ、さらには複数の協力エージェントにわたって、長期間のタスクを確実に計画、追跡、実行できます。
プロジェクトは主にGo(91.9%)で記述されており、Python(5.5%)とShell(1.1%)がそれに続きます。macOS、Linux、Windows、FreeBSDをサポートしています。
解決するコア問題
AIコーディングエージェントは、2つの重大な制限に悩まされています。
- 短いコンテキストウィンドウ — 長いタスクは忘れられたり切り詰められたりします。
- 永続的なタスク状態がない — Markdownで書かれた計画は壊れやすく、構造化されておらず、失われやすいです。
Beadsは、構造化された外部メモリとして機能することで、これら両方の問題に対処します。タスクはデータベース(Dolt搭載)に保存され、gitでバージョン管理され、シンプルなCLIとJSON出力経由でエージェントに公開されます。
主要機能
🔷 Dolt搭載ストレージ
Beadsは、セルレベルのマージ、ネイティブブランチ、Doltリモート経由の同期を備えたバージョン管理SQLデータベースであるDoltを使用しています。これは、タスクデータベース自体が完全なgitのような履歴を持つことを意味します。
🤖 エージェント最適化インターフェース
すべてのコマンドはデフォルトでJSON出力を生成するため、エージェントがプログラムで結果を解析するのが容易になります。bd readyコマンドは、オープンなブロッカーがないタスクを自動検出して、次に何をすべきかをエージェントにガイドします。
🔗 依存関係グラフ
タスクは、型付けされた関係でリンクできます。
blocks/blocked_byrelates_toduplicatessupersedesreplies_to
これは、単なるフラットなリストではなく、真のナレッジグラフを形成します。
🧠 セマンティックメモリ圧縮
古いクローズされたタスクは、重要な履歴を保持しながらコンテキストウィンドウの使用量を減らすために、自動的に要約されます(「メモリ減衰」)。
💬 メッセージングシステム
組み込みのmessage課題タイプは、スレッドディスカッション(--thread)、一時的なライフサイクル、エージェント間のメール委任をサポートします。
🪢 階層的なタスクID
タスクは、ハッシュベースのIDを介してエピック/タスク/サブタスクのネストをサポートします。
bd-a3f8 (Epic)
bd-a3f8.1 (Task)
bd-a3f8.1.1 (Sub-task)
ハッシュベースのIDは、マルチエージェントワークフローでのマージコンフリクトを防ぎます。
🥷 ステルスモード
bd init --stealthを使用すると、メインリポジトリにファイルをコミットせずにBeadsをローカルで使用できます。共有プロジェクトやオープンソースプロジェクトでの個人使用に最適です。
👥 コントリビューター vs マネージャーロール
- コントリビューター(フォークされたリポジトリ):
bd init --contributorは、計画課題を個別の個人リポジトリにルーティングし、実験的な作業をPRから分離します。 - マネージャー:Beadsは、SSH URLまたは認証済みHTTPS経由でマネージャーロールを自動検出します。
基本的なCLIコマンド
| コマンド | 説明 |
|---|---|
bd init |
プロジェクトでBeadsを初期化します |
bd ready |
オープンなブロッカーがないタスクをリストします |
bd create "Title" -p 0 |
P0(最優先)タスクを作成します |
bd update <id> --claim |
タスクをアトミックに取得します(担当者と進行中を設定) |
bd dep add <child> <parent> |
タスクを依存関係でリンクします |
bd show <id> |
タスクの詳細と監査証跡を表示します |
インストール
# ワンライナーインストール
curl -fsSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash
# またはnpm経由で
npm install -g @beads/bd
# またはHomebrew経由で
brew install beads
# またはGo経由で
go install github.com/steveyegge/beads/cmd/bd@latest
その後、プロジェクトで初期化します。
cd your-project
bd init
echo "Use 'bd' for task tracking" >> AGENTS.md
統合
Beadsは主要なAIコーディングエージェントおよびIDEと統合されています。
- Claude Code (Anthropic)
- GitHub Copilot
- Cursor, Windsurf, Amp およびその他のMCP互換ツール
- MCPサーバーはPyPIの
beads-mcp経由で利用可能
コミュニティ構築の拡張機能には、ターミナルUI、Webダッシュボード、エディタプラグイン、ネイティブアプリが含まれます。完全なリストについては、docs/COMMUNITY_TOOLS.mdを参照してください。
プロジェクト統計(2026年初頭現在)
| メトリック | 値 |
|---|---|
| GitHubスター | 17,300+ |
| フォーク | 1,100+ |
| コントリビューター | 258 |
| リリース | 78 |
| 主要言語 | Go |
| ライセンス | MIT |
対象ユーザー
- 自律的なコーディングパイプラインを構築するAIエージェント開発者
- Claude Code、Copilot、またはCursorを使用し、より良いタスク追跡を求める個人開発者
- 共有コードベースでマルチエージェントワークフローを実行するチーム
- アップストリームリポジトリを汚染することなく個人タスク管理を必要とするオープンソースコントリビューター
まとめ
Beadsは、AIコーディングエージェントエコシステムにおける重要なギャップ、すなわち永続的で構造化されたバージョン管理されたメモリを埋めます。グラフベースのタスクモデルとgitネイティブのSQLバックエンド、そしてエージェントフレンドリーなCLIを組み合わせることで、コーディングエージェントがコンテキスト制限を超える複雑なマルチセッションプロジェクトに取り組めるようにします。MITライセンス、マルチプラットフォームサポート、そして活発なコミュニティにより、AIコーディングツールを真剣に扱うすべての人にとって実用的な選択肢となっています。