beads v0.30.0
Pre-compiled binaries for Linux, macOS (Intel & Apple Silicon), and Windows.
Installation
Homebrew (macOS/Linux):
brew install steveyegge/beads/bdQuick Install (macOS/Linux):
curl -sSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bashWindows (PowerShell):
irm https://raw.githubusercontent.com/steveyegge/beads/main/install.ps1 | iexManual Install:
Download the appropriate binary for your platform below, extract it, and place it in your PATH.
Changelog
Features
- 933764e feat(beads): add bd reset epic with implementation plan (gh-479)
- f88a0d0 feat(cli): add 'bd thanks' command to thank contributors
- fc23dca feat(cli): add --lock-timeout flag for SQLite busy_timeout control (#536)
- 4254c3f feat(config): add BD_NO_INSTALL_HOOKS environment variable to disable git hook installation (#500)
- 8b64917 feat(doctor): add configuration value validation (bd-alz)
- a0f4a9c feat(doctor): add tombstone health checks (bd-s3v)
- 711dd9c feat(importer): add ConvertedToTombstone counter (bd-wucl)
- f1e5a62 feat(mcp): Add compaction config and extended context engineering docs
- 700dca2 feat(mcp): Add context engineering optimizations (#481)
- 975443e feat(merge): add tombstone support for 3-way merge (bd-0ih)
- 09a9ffa feat(prime): add --stealth flag for flush-only workflow
- e72fe12 feat(reset): add integration tests and doctor reset suggestion
- 88153f2 feat(reset): implement bd reset CLI command with unit tests
- ca9d306 feat(reset): implement core reset package for bd reset command
- 5c49c25 feat(tombstone): add P2 code review improvements (bd-saa, bd-1bu, bd-nyt)
- 2adba0d feat(tombstone): implement delete-to-tombstone and TTL expiration (bd-3b4, bd-olt)
- 08d8353 feat(tombstones): add migrate-tombstones command and compact pruning
- 08e43d9 feat(types): add tombstone support for inline soft-delete (bd-fbj)
- e01b741 feat: add Git worktree compatibility (PR #478)
- 6789e4f feat: add hooks to plugin.json, eliminating need for global install
- f4b8a7a feat: change deletions TTL default from 7 to 3 days
Bug Fixes
- 519a0ff fix(autoimport): use proper YAML parsing for sync-branch config (bd-0rh)
- ae7cd93 fix(ci): restore Windows smoke tests (reverted by #478)
- f83a8f5 fix(ci): update nix vendorHash and fix integration test compilation
- 7a10377 fix(ci): use R:\workspace as working directory for RAM disk tests
- 5ec2038 fix(ci): use RAM disk for temp/cache only, not workspace
- 7d35f9b fix(ci): use copy-workspace to move code to RAM disk
- 074da99 fix(ci): use correct version tag for setup-ramdisk action
- a61ca25 fix(cleanup): resolve CHECK constraint failure and add tombstone pruning
- 45328d6 fix(doctor): detect sync-branch hook incompatibility (#532)
- 1e20d70 fix(doctor): include tombstones in getCurrentJSONLIDs to prevent corruption (#552)
- 493ebb4 fix(doctor): make sync-branch warning optional
- 9057aeb fix(gitignore): switch to whitelist approach for .beads/.gitignore (#473)
- 24917f2 fix(importer): use zero for unknown priority in convertDeletionToTombstone (bd-9auw)
- 0d2dc53 fix(init): bootstrap from sync-branch when configured (bd-0is)
- ce11955 fix(init): use correct gitRef in error message, remove unused var
- 0b400c7 fix(install): re-sign binary on macOS to avoid Gatekeeper delays
- 3a4da4e fix(lint): address errcheck and De Morgan's law violations in doctor/fix
- 7535dc8 fix(lint): resolve all golangci-lint errors
- 9db756f fix(memory): implement GetReadyWork/GetBlockedIssues + child counters
- 386ab82 fix(merge): fix tombstone handling edge cases (bd-ki14, bd-ig5, bd-6x5, bd-1sn)
- 38ecec0 fix(nix): update vendorHash for Go dependencies
- 76568e8 fix(prime): document priority format to prevent Claude using 'medium'
- 3d48458 fix(setup): auto-allowlist bd commands in Claude Code (#511)
- 7fd11f3 fix(setup): correct allowedTools pattern from "bd:*" to "bd *"
- 18b1eb2 fix(sqlite): handle deleted_at TEXT column scanning properly
- de7b511 fix(stealth): use project-specific paths in global gitignore (#538)
- 2651620 fix(storage): persist close_reason to issues table on close (#551)
- 59e32e3 fix(sync): add multi-repo support to hash update after restore
- a612c57 fix(sync): include tombstones when building ID map during import
- 26b8013 fix(sync): merge instead of overwrite in SyncJSONLToWorktree (bd-52q)
- e5068df fix(sync): preserve tombstones in sanitizeJSONLWithDeletions (bd-kzxd)
- 97500a8 fix(sync): prevent daemon race condition from dirtying working directory
- 6985ea9 fix(sync): protect local issues from git-history-backfill during sync (#485)
- 3a97492 fix(sync): protect locally exported issues from sanitization (bd-3ee1)
- 947e718 fix(sync): support external BEADS_DIR in separate git repository
- 2c6748f fix(tombstone): clear closed_at when converting closed issue to tombstone
- b689ea1 fix(types): add tombstone validation and block direct status update (bd-md2, bd-y68)
- 0423fc6 fix: Add commit and branch to bd version output (github #503)
- e0734e2 fix: NixOS symlink compatibility for mtime and permission checks (#459)
- 46abe8c fix: add .local_version to GitignoreTemplate
- e7991b9 fix: add retry with rebase for concurrent push conflicts
- 6267f3b fix: add test parallelism and increase Windows CI timeout
- 6c84d36 fix: bd onboard hangs on Windows (GH #531)
- 5d71ca6 fix: improve JSONL-only mode detection and error messages (GH #534)
- 4a245fc fix: increase Windows CI timeout to 45m
- 07c97a2 fix: make bd onboard output generic, not beads-specific (#465)
- 4f44265 fix: make hook tests worktree-aware by using getGitDir()
- 76f7341 fix: resolve CI lint errors and Windows test timeout
- 2fd1d1f fix: resolve golangci-lint warnings
- e701e34 fix: resolve symlink paths in autoimport.go for macOS
- a711550 fix: restore bd-2e0 lost in sync corruption
- df84e3f fix: skip symlink/permissions tests on Windows
- e59474e fix: split Windows CI into parallel jobs with continue-on-error
- 49bfdc2 fix: use proper YAML parsing for no-db mode detection (bd-r6k2)
Others
- e3a7659 Add Smithery badge
- 8af0846 Enable daemon RPC support for delete operations to trigger auto-sync, Fix for issue #527 (#528)
- a22d949 Fix bd-in7q: prevent migrate-tombstones from corrupting deletions manifest (#554)
- eb988fc Fix daemon auto-sync delete mutation not reflected in sync branch (#537)
- c9dc027 Fix daemon sync branch commit failing with pre-commit hooks
- eaec440 Fix integration test compilation errors in cmd/bd
- 2bd661b Make beads claude code skill installable via marketplace (#468)
- 21e276d Merge remote-tracking branch 'origin/main' into fix/nodb-mode-547
- a60972c Merge remote-tracking branch 'origin/main' into performance-fix
- 056b989 Update pre-commit hook regression test for proper isolation
- 8052f3d Update slash commands to use beads: prefix (#467)
- af22371 beads: sync
- 6cefaf2 beads: sync local state
- fdb722b chore(beads): add preflight epic (bd-lfak) and namespace design (bd-umbf)
- 85d4d1b chore(beads): close bd-0rh
- b59a464 chore(beads): update issue tracking
- 020eb31 chore(beads): update issue tracking (bd-0ih closed)
- 33a5455 chore(deps): bump actions/setup-node from 4 to 6 (#489)
- d8241aa chore(deps): bump fastmcp in /integrations/beads-mcp (#495)
- e4d7a9a chore(deps): bump github.com/anthropics/anthropic-sdk-go (#490)
- dd84ebd chore(deps): bump github.com/ncruces/go-sqlite3 from 0.30.1 to 0.30.3 (#493)
- 52d434c chore(deps): bump github.com/spf13/cobra from 1.10.1 to 1.10.2 (#491)
- ad93f1e chore(deps): bump golang.org/x/mod from 0.30.0 to 0.31.0 (#494)
- 2672cc1 chore(deps): bump golang.org/x/term from 0.37.0 to 0.38.0 (#496)
- d98186f chore(deps): bump pydantic in /integrations/beads-mcp (#492)
- b350b4c ci(windows): add RAM disk for faster test I/O
- 24ff319 ci(windows): checkout and run tests entirely on RAM disk
- 337305e debug(ci): add output to see where files land on RAM disk
- 2046ccf docs(README): add Dicklesworthstone/beads_viewer TUI
- 7949b42 docs(beads): refine bd reset implementation tasks after review
- f4864c9 feat(import/export): add tombstone support (bd-dve)
- 4a7d7b0 feat(setup claude): add --stealth flag
- 322f734 fix(bump-version): update default.nix version (#502)
- 8e58c30 fix(sync,blocked): add safety guards for issue deletion and include status=blocked in bd blocked
- 520e100 fix/doc: Go version inconsistencies and broken documentation links (#535)
- d1bd7ac perf(ci): replace Windows full tests with smoke tests (bd-bmev)
- 335887e perf: fix stale startlock delay and add comprehensive benchmarks (#484)
- ac5491a revert(ci): remove RAM disk experiment from Windows CI
- 48dec1f sync beads
- 99b2e7e test(autoimport): add unit tests for getLocalSyncBranch (bd-6y5)
- 213ed65 test(doctor): add tests for export diagnostics feature (bd-9cc)
- cda4c42 test(export): add test for tombstone inclusion in JSONL export (bd-yk8w)
- 6f3309b test(lockfile): improve coverage from 42% to 98%
- 32f646a test(tombstones): add unit tests for tombstone functionality (bd-fmo, bd-hp0m)