Beads
Beads je CLI nástroj pro task tracking a perzistentní paměť AI coding agentů. Podle README nahrazuje volné markdown plány dependency-aware grafem nad Dolt databází, takže stav práce zůstává uložený i mimo krátkodobý kontext jedné session.
- Hlavní binárka:
bd - Jazyk: Go
- Licence: MIT
- Datové úložiště: Dolt
- Dokumentace: gastownhall.github.io/beads
Co projekt řeší
Beads míří na workflow, kde běžný TODO seznam nebo markdown plán přestává stačit. README vyzdvihuje hlavně tyto problémy:
- agent ztrácí kontext při delší nebo restartované session
- tasky potřebují explicitní závislosti, prioritu a audit trail
- při práci ve více větvích nebo s více agenty vznikají kolize v ručně vedených plánech
- je potřeba strojově čitelný stav, ne jen volný text pro člověka
Výsledkem je databázově uložený graf tasků, který jde dobře číst jak člověkem, tak agentem.
Jak funguje
Tasky, závislosti a identita
Beads funguje jako issue tracker orientovaný na agenty. Každý task má vlastní ID typu bd-a1b2, lze ho claimnout, uzavřít, navazovat na další tasky a číst přes JSON výstup.
Projekt podporuje i hierarchické ID pro větší celky práce:
bd-a3f8jako epicbd-a3f8.1jako taskbd-a3f8.1.1jako sub-task
Kromě blokujících závislostí umí i další typy vztahů jako relates_to, duplicates, supersedes nebo replies_to. README také zmiňuje message issue typ s vláknem zpráv a compaction, tedy průběžné zkracování staré uzavřené historie kvůli úspoře kontextového okna.
Storage mode
Dokumentace popisuje dva základní režimy:
- Embedded mode je výchozí. Dolt běží in-process, data jsou v
.beads/embeddeddolt/a režim je vhodný hlavně pro single-writer workflow. - Server mode používá externí
dolt sql-server, data ukládá do.beads/dolt/a hodí se tam, kde je potřeba více současných writerů.
Instalace a bootstrap
README výslovně upozorňuje, že Beads se instaluje jako globální CLI a neklonuje se do každého projektu zvlášť. Základní instalace vypadá takto:
brew install beads # nebo npm install -g @beads/bd
Po instalaci se nástroj inicializuje v konkrétním projektu:
cd your-project
bd init
Součástí doporučeného bootstrapu je i doplnění instrukce do AGENTS.md, aby agent věděl, že má používat právě bd pro task tracking.
Typické příkazy
Základní sada příkazů z README vypadá takto:
bd ready bd create "Title" -p 0 bd update bd-a1b2 --claim bd dep add bd-a1b3 bd-a1b2 bd show bd-a1b2
Zjednodušeně to znamená:
bd readyvypíše tasky bez otevřených blockerůbd createzaloží nový task s prioritoubd update –claimtask atomicky přiřadí a přepne do stavu in progressbd dep addvytvoří závislost mezi dvěma taskybd showzobrazí detail tasku a audit trail
Zajímavé režimy použití
README popisuje několik režimů, které jsou pro agentické workflow praktické:
- Stealth mode přes
bd init –stealthumožní používat Beads lokálně bez commitování metadat do hlavního repozitáře. - Git-free usage funguje i bez gitu, pokud se nastaví
BEADS_DIRa použije se–stealth. - Contributor mode přes
bd init –contributoroddělí planning issues do samostatného úložiště, což je užitečné hlavně při práci z forku na open-source projektu.
To dává smysl hlavně tam, kde agent nebo člověk potřebuje evidovat práci mimo hlavní historii repozitáře.
Vztah ke Gas Town
Ve wiki už je samostatný článek Gas Town. Ten používá Beads jako perzistentní vrstvu pro evidenci tasků, convoye a dlouhodobý stav práce nad agenty a worktree.
Samotný Beads je ale použitelný i mimo Gas Town. Je to samostatný nástroj pro task tracking a paměť agentů, zatímco Gas Town nad ním staví širší orchestration vrstvu.
Praktické poznámky
Beads není jen textový wrapper nad TODO souborem. Je to databázově orientovaný task tracker s důrazem na JSON výstupy, závislosti a merge-safe identifikátory. Z README je také vidět, že projekt řeší i bezpečnost instalace — například doporučuje ověření checksumů release balíčků a popisuje rozdíly mezi embedded a server režimem.
Pro jednodušší solo workflow typicky stačí embedded mode. Jakmile ale nad jedním stavem práce zapisuje více agentů současně, dává smysl přemýšlet o server mode a explicitnější koordinaci.