Beads: Gedächtnis für deinen AI Assistant
Wie du Arbeitskontext über Sessions hinweg bewahrst und mit anderen teilst
Die Herausforderung – Agenten vergessen alles!
Wer regelmäßig mit AI Coding Assistants wie Claude Code, Cursor oder GitHub Copilot arbeitet, kennt das Dilemma: Nach jeder Session beginnt alles von vorn. Der Agent weiß nicht mehr, woran ihr gestern gearbeitet habt, welche Entscheidungen getroffen wurden oder welche Aufgaben noch offen sind.
Die Symptome
- Kontextverlust nach Compaction: Lange Gespräche werden zusammengefasst, Details gehen verloren
- Wiederholte Erklärungen: “Wie war nochmal die Architekturentscheidung für das Caching?”
- Verstreute Notizen: Design-Entscheidungen landen in Markdown-Dateien, Slack-Threads, Jira-Tickets – überall, nur nicht dort, wo der Agent sie findet
- Kein Workflow-Gedächtnis: Welche Schritte gehören zu einem Release? Jedes Mal neu erklären
Was wir eigentlich brauchen
Ein System, das:
- Im Repository lebt – dort, wo der Agent Zugriff hat
- Strukturiert ist – nicht nur Freitext, sondern durchsuchbare Felder
- Abhängigkeiten versteht – “Task B erst nach Task A”
- Wiederverwendbar ist – einmal definierte Workflows immer wieder nutzen
Die Perlenkette – Git-backed Issue Tracking für Agenten
Beads (bd) ist ein Issue-Tracker, der genau diese Lücke füllt. Issues werden lokal in SQLite gespeichert und via JSONL-Dateien mit Git synchronisiert.
📖 Eine ausführliche Dokumentation findest du hier:
Beads: A Deep Exploration
Die Chemie-Metapher
Beads nutzt eine eingängige Analogie für den Arbeitslebenszyklus:
| Phase | Name | Bedeutung |
|---|---|---|
| Fest (Solid) | Proto | Eingefrorene Vorlage, wiederverwendbar |
| Flüssig (Liquid) | Mol | Echte Arbeit, persistiert in Git |
| Gasförmig (Vapor) | Wisp | Wegwerf-Arbeit, hinterlässt keine Spuren |
Der typische Agenten-Workflow
bd ready # Was ist bereit zur Bearbeitung?
bd show <id> # Voller Kontext zum Issue
bd update <id> --status in_progress # Arbeit beginnen
bd update <id> --notes "Erkenntnisse" # Learnings festhalten
bd close <id> --reason "Done" # Abschließen
bd sync # Mit Git synchronisierenDer Agent fragt bd ready, bekommt nur unblockierte Aufgaben, arbeitet sie ab, dokumentiert Erkenntnisse – und beim nächsten Session-Start ist alles wieder da.
Wiederverwenden und Teilen
Der eigentliche Mehrwert entsteht, wenn du Workflows nicht jedes Mal neu definierst, sondern einmal erstellst und immer wieder nutzt.
Protos: Vorlagen aus echter Arbeit
Du hast ein Epic mit Unteraufgaben erfolgreich abgeschlossen? Mach eine Vorlage daraus:
bd mol distill <epic-id> release-workflowAb jetzt kannst du diesen Workflow jederzeit neu instanziieren:
bd mol pour release-workflow --var version=2.0 # Persistente Arbeit
bd mol wisp release-workflow --var version=test # Wegwerf-InstanzDas Problem: Protos sind nicht portabel
Protos leben in der lokalen Datenbank deines Repositories. Wenn dein Freund in einem anderen Projekt arbeitet, kommt er nicht ran.
Die Lösung: Formulas
Formulas sind portable TOML-Dateien, die Workflow-Templates beschreiben:
[molecule]
name = "release-workflow"
description = "Standard Release-Prozess"
[[issues]]
id = "root"
title = "Release {{version}}"
type = "epic"
[[issues]]
id = "build"
title = "Build erstellen"
type = "task"
parent = "root"
[[issues]]
id = "test"
title = "Tests durchführen"
type = "task"
parent = "root"
needs = ["build"]
[[issues]]
id = "deploy"
title = "Deployment"
type = "task"
parent = "root"
needs = ["test"]Teilen über Repository-Grenzen
Option 1: Direkt verschicken
# Als Gist hochladen
gh gist create .beads/formulas/release-workflow.formula.toml
# Link an Freund schickenOption 2: Gemeinsames Formula-Repository
team-formulas/
├── release-workflow.formula.toml
├── bug-triage.formula.toml
└── onboarding.formula.tomlJeder bindet das Repo ein und hat Zugriff auf alle Team-Workflows.
Option 3: Git Submodule
git submodule add git@github.com:team/formulas.git .beads/shared-formulasDer Merksatz
Protos sind lokal, Formulas sind global.
- Proto = Vorlage in der Datenbank eines Repos (schnell erstellt, nicht portabel)
- Formula = TOML-Datei (portabel, versionierbar, teilbar)
Fazit
AI Coding Assistants sind mächtige Werkzeuge – aber ohne Gedächtnis bleiben sie auf Einzelsessions beschränkt. Beads löst dieses Problem elegant:
- Kontext überlebt Sessions – Issues persistieren in Git
- Abhängigkeiten steuern den Workflow –
bd readyzeigt nur, was wirklich bearbeitbar ist - Einmal definieren, immer wieder nutzen – Protos und Formulas für wiederkehrende Abläufe
- Team-übergreifend teilen – Formulas als portable Workflow-Definitionen
Der Agent vergisst nicht mehr. Er weiß, was zu tun ist, warum es zu tun ist, und in welcher Reihenfolge. Das ist der Unterschied zwischen einem Tool und einem echten Assistenten.
Weiterführende Links: