AgentSkillsCN

vi-beads

基于 Git 的问题跟踪器,适用于多会话工作,可在会话边界间保留依赖关系与持久化内存。当工作跨越多个会话、存在阻塞或依赖关系,或在上下文丢失后需要恢复上下文时使用。

SKILL.md
--- frontmatter
name: vi-beads
description: "Git-backed issue tracker for multi-session work with dependencies and persistent memory across session boundaries. Use when work spans multiple sessions, has blockers/dependencies, or needs context recovery after context loss."

Beads - Persistent Task Memory for AI Agents

Graph-based issue tracker that survives conversation compaction. Provides persistent memory for multi-session work with complex dependencies.

bd vs update_plan

bd (persistent)update_plan (ephemeral)
Multi-session workSingle-session tasks
Complex dependenciesLinear execution
Survives compactionConversation-scoped
Git-backed, team syncLocal to session

Decision test: "Will I need this context in 2 weeks?" → YES = bd

When to use bd:

  • Work spans multiple sessions or days
  • Tasks have dependencies or blockers
  • Need to survive conversation compaction
  • Exploratory/research work with fuzzy boundaries
  • Collaboration with team (git sync)

When to use update_plan:

  • Single-session linear tasks
  • Simple checklist for immediate work
  • All context is in current conversation
  • Will complete within current session

Prerequisites

bash
bd --version  # Requires v0.34.0+
  • bd CLI installed and in PATH
  • Git repository (bd requires git for sync)
  • Initialization: bd init run once (humans do this, not agents)

CLI Reference

Run bd prime for AI-optimized workflow context (auto-loaded by hooks). Run bd <command> --help for specific command usage.

Essential commands: bd ready, bd create, bd show, bd update, bd close, bd sync

Session Protocol

  1. bd ready — Find unblocked work
  2. bd show <id> — Get full context
  3. bd update <id> --status in_progress — Start work
  4. Add notes as you work (critical for compaction survival)
  5. bd close <id> --reason "..." — Complete task
  6. bd sync — Persist to git (always run at session end)

Parallel agent workflow (PRs / Coder Tasks)

When multiple agents are working in parallel, treat .beads/* as a serialized, shared write surface.

  • One writer: only the orchestrator updates/closes issues and commits .beads/issues.jsonl.
  • Workers: do not edit .beads/*; produce code changes only (branch/PR name includes the bead id).
  • After merge: orchestrator closes the bead(s), runs bd sync, and pushes the beads commit.
  • Conflicts: if .beads/issues.jsonl conflicts, resolve it, then re-run bd sync to ensure the DB and JSONL match.

Sync Branch (Protected main, worktrees)

If your repo uses protected branches or git worktree, configure a dedicated sync branch so bd can commit/push beads data without touching your current branch.

Recommended (team/shared, version-controlled): add to .beads/config.yaml:

yaml
sync-branch: beads-sync

Other options:

  • Per-user default for all repos: ~/.config/bd/config.yaml (sync-branch: ...)
  • Temporary override: BEADS_SYNC_BRANCH=...
  • Legacy/DB-backed: bd config set sync.branch <branch> (also updates sync-branch in config.yaml when possible)

Advanced Features

FeatureCLIResource
Molecules (templates)bd mol --helpMOLECULES.md
Chemistry (pour/wisp)bd pour, bd wispCHEMISTRY_PATTERNS.md
Agent beadsbd agent --helpAGENTS.md
Async gatesbd gate --helpASYNC_GATES.md
Worktreesbd worktree --helpWORKTREES.md

Resources

ResourceContent
BOUNDARIES.mdbd vs update_plan detailed comparison
CLI_REFERENCE.mdComplete command syntax
DEPENDENCIES.mdDependency system deep dive
INTEGRATION_PATTERNS.mdupdate_plan and tool integration
ISSUE_CREATION.mdWhen and how to create issues
MOLECULES.mdProto definitions, component labels
PATTERNS.mdCommon usage patterns
RESUMABILITY.mdCompaction survival guide
STATIC_DATA.mdDatabase schema reference
TROUBLESHOOTING.mdError handling and fixes
WORKFLOWS.mdStep-by-step workflow patterns
AGENTS.mdAgent bead tracking (v0.40+)
ASYNC_GATES.mdHuman-in-the-loop gates
CHEMISTRY_PATTERNS.mdMol vs Wisp decision tree
WORKTREES.mdParallel development patterns

Full Documentation