beads-br
Made by JeffLocal-first issue tracker (beads_rust) for AI agents. Use when tracking tasks, managing dependencies, finding ready work, or syncing issues to git via JSONL.
Works With
Quality and Utility come from canonical skill metadata. Community ratings appear separately as stars when subscriber reviews exist.
Subscribe to download
Public previews are available, but downloads, CLI sync, and premium content require an active subscription.
Sign In to Subscribe- Full skill content with deterministic versioning
- CLI sync + local search index
- Access to Jeffrey’s premium library
Save to your account
Saved skills live in your cloud list. Run jsm sync on each machine to pull them locally.
What's New with this Skill
1Updates, enhancements, and release notes for this skill.
New: Beads (br), a local-first issue tracker that never touches your git repo
br is a Rust rewrite of the beads tracker built around one rule: br never runs git commands. Sync and commit are explicit. SQLite for fast queries, JSONL for git history, and a short lifecycle: init, create, update, close, with dep for dependencies and sync --flush-only for exports. br dep cycles must return empty before any session ends. br ready was broken in 0.1.8 in some workspaces; the workaround is bv --recipe actionable --robot-plan plus br list --json.
- Non-invasive by design: br never invokes git. You commit .beads/ yourself; br only touches that directory
- Always pass --json in agent contexts so output is structured; never run bare bv, which launches a TUI that blocks the terminal
- Six-command lifecycle: init, create, update, dep, close, sync. br sync --flush-only writes JSONL; you git add .beads/ && git commit yourself
- br dep enforces a DAG: br dep add <child> <parent>, br dep tree <id> to visualize, and br dep cycles must return empty before a planning session ends
- Known issue in br 0.1.8: br ready broken in some workspaces (internal SQL bug). Workaround: bv --recipe actionable --robot-plan + br list --json
- Worktree fix when sync fails with "main is already checked out": create a dedicated sync branch, set it with br config set sync.branch beads-sync, and never check it out directly
- Composes with bv (graph-aware triage on the same data) and beads-workflow (the planning-to-bead pipeline)
Most issue trackers want to be the canonical source of truth. br doesn't. Issues live in a local SQLite database for fast queries and a JSONL file for git history. br owns neither; your git workflow does. That separation is the whole skill.
The agent rules are short. Always pass --json so output is structured for parsing. Never run bare bv (it launches an interactive TUI and blocks the session; use bv --robot-* flags). Sync is explicit: br sync --flush-only flushes SQLite to JSONL, then you git add .beads/ and git commit and git push. Git is your job; br only touches .beads/.