beads

Track issues with bd/br, triage with bv, and convert plans to beads.

INSTALLATION
npx skills add https://github.com/boshu2/agentops --skill beads
Run in your project or agent environment. Adjust flags if your CLI version differs.

SKILL.md

$27

  • Treat live bd reads as authoritative. Use bd show, bd ready, bd list, and bd export to inspect current tracker state. Do not treat .beads/issues.jsonl as the primary decision source when live bd data is available.
  • Treat .beads/issues.jsonl as a git-friendly export artifact. If the repo tracks .beads/issues.jsonl and you mutate tracker state, refresh it explicitly with bd export -o .beads/issues.jsonl.
  • After closing or materially updating a child issue, reconcile the open parent in the same session. Update stale "remaining gap" notes immediately, and close the parent when the child resolved the parent's last real gap.
  • Before closing a child issue, include scoped closure proof in the bd close --reason text.

Name the touched files or explicit no-file evidence artifact, validation command(s), and parent

reconciliation outcome. Do not use generic closure reasons such as "done" or "implemented" for child beads.

  • If bd ready returns a broad umbrella issue, do not implement directly against vague parent wording. First narrow the remaining gap into an execution-ready child issue, then land the child and reconcile the parent.
  • Normalize stale queue items instead of silently skipping them. Rewrite broad or partially absorbed beads to the actual remaining gap.
  • Use this post-mutation sequence when tracker state changed:
bd ...                              # mutate tracker state

bd export -o .beads/issues.jsonl    # if tracked in git

bd vc status

bd dolt commit -m "..."             # if tracker changes are pending

bd dolt push                        # only if a Dolt remote is configured

Prerequisites

  • bd CLI: Version 0.34.0+ installed and in PATH
  • Git Repository: Current directory must be a git repo
  • Initialization: bd init run once (humans do this, not agents)

Examples

Skill Loading from /vibe

User says: /vibe

What happens:

  • Agent loads beads skill automatically via dependency
  • Agent calls bd show <id> to read issue metadata
  • Agent links validation findings to the issue being checked
  • Output references issue ID in validation report

Result: Validation report includes issue context, no manual bd lookups needed.

Skill Loading from /implement

User says: /implement ag-xyz-123

What happens:

  • Agent loads beads skill to understand issue structure
  • Agent calls bd show ag-xyz-123 to read issue body
  • Agent checks dependencies with bd output
  • Agent closes issue with bd close ag-xyz-123 after completion

Result: Issue lifecycle managed automatically during implementation.

br (beads_rust) Quick Reference

br is the Rust rewrite of bd. Commands match bd except git handling is explicit.

# Lifecycle

br create "Title" -p 1 -t task       # Create (priority 0-4)

br update <id> --status in_progress  # Claim work

br close <id> --reason "Done"        # Complete

br ready --json                      # Actionable work (not blocked)

br list --json                       # All issues

br show <id> --json                  # Issue details

# Dependencies

br dep add <child> <parent>          # child depends on parent

br dep cycles                        # MUST be empty

br dep tree <id>                     # Visualize dependencies

# Sync (EXPLICIT — never automatic)

br sync --flush-only                 # DB → JSONL (before git commit)

br sync --import-only                # JSONL → DB (after git pull)

Session ending pattern (br):

git pull --rebase

br sync --flush-only

git add .beads/ &#x26;&#x26; git commit -m "Update issues"

git push

bv Graph Triage

NEVER run bare bv. Always use --robot-* flags.

Command

Use When

bv --robot-triage

What should I work on? Full recommendations + blockers + health

bv --robot-next

Just the single top pick

bv --robot-plan

What can run concurrently? Parallel execution tracks

bv --robot-insights

Deep analysis: metrics, cycles, density, k-core

bv --robot-priority

Am I prioritizing wrong? Misalignment detection

bv --robot-alerts

Stale issues, blocking cascades, priority mismatches

Key metrics: PageRank = everything depends on this (fix first). Betweenness = bottleneck (blocks multiple paths). High both = critical bottleneck, drop everything.

Plan-to-Beads Workflow

Convert a markdown plan into fully dependency-wired beads:

  • Read the full plan, AGENTS.md, README, linked intent issue, and acceptance criteria.
  • Create beads with br create for each issue, including full context in the description.
  • For every feature, bug, or product-facing behavior, include a fenced gherkin

block or link to a filled intent issue. Mechanical chores may omit Gherkin

only when their acceptance criteria are fully command/file based.

  • Include the hexagon: boundary block from

docs/architecture/intent-to-loop-hexagon.md for substantial beads:

inbound port, bounded context, adapters, context packet, and done state.

  • Wire dependencies with br dep add / bd dep add. Do not hand-edit JSONL or

database files.

  • Polish iteratively (usually 6-9 passes) until steady-state. Check for lost

features, oversimplification, missing tests, unclear boundaries, missing e2e

coverage, and weak logging.

  • Validate: br dep cycles must be empty; run bv --robot-insights for graph

health; use bv --robot-next for the first bead. Never run bare bv.

  • Sync explicitly before commit: br sync --flush-only, then git add .beads/

and commit tracker changes when appropriate.

Beads should be so detailed that a fresh agent can implement without consulting

the original plan. Ready-to-implement beads have clear scope, explicit

dependencies, BDD or mechanical acceptance, unit/e2e test expectations, detailed

logging expectations, a named done state, and no dependency cycles.

Troubleshooting

Problem

Cause

Solution

bd/br command not found

CLI not installed or not in PATH

Install bd: brew install bd or check PATH

"not a git repository" error

bd requires git repo, current dir not initialized

Run git init or navigate to git repo root

"beads not initialized" error

.beads/ directory missing

Human runs bd init --prefix <prefix> once

Issue ID format errors

Wrong prefix or malformed ID

Check rigs.json for correct prefix

bv hangs

TUI launched without robot flag

Always use --robot-* flags

Cycles detected

Circular dependency

br dep remove to break cycle

br sync confusion

Missing --flush-only or --import-only

Always specify direction explicitly

Reference Documents

BrowserAct

Let your agent run on any real-world website

Bypass CAPTCHA & anti-bot for free. Start local, scale to cloud.

Explore BrowserAct Skills →

Stop writing automation&scrapers

Install the CLI. Run your first Skill in 30 seconds. Scale when you're ready.

Start free
free · no credit card