beads v0.21.4
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
Bug Fixes
- 2b08695 fix: Address all errcheck and misspell linter errors
- d86f359 fix: DetectCycles SQL bug and add comprehensive tests
- d240439 fix: Resolve Windows test failures and lint warnings
- 20b21fd fix: Resolve import test failures and add git to Nix build
- 15affbe fix: Suppress gosec warnings with nolint comments
- a2361f8 fix: Update golangci-lint config to v2 format
- e1c248b fix: Use correct bd binary path for Windows tests
- defc90d fix: bd migrate respects config.json database name and fixes I/O errors
Others
- 98ecaec AGENTS.md: Strongly recommend git hooks installation
- 01f13a6 Add 'bd comment' as alias for 'bd comments add' (bd-d3f0)
- fd93a29 Add 'bd status' command for issue database overview (bd-28db)
- 3d46170 Add --json flag to stale command
- c45d4c9 Add 0.21.4 release notes
- cfce2b1 Add GitClient interface to daemonrunner/git.go for testability
- 2493693 Add MCP tools for migration inspection (bd-627d Phase 3)
- ed1eca9 Add circular dependency detection to bd doctor
- edf1f71 Add comprehensive protected branch workflow documentation (bd-5ce8)
- c5b2fbb Add comprehensive sync-branch test coverage (bd-0e74)
- c399d17 Add comprehensive tests for migrations.go and batch_ops.go (bd-3b7f)
- 4ee5b2c Add conflict marker detection to bd import/validate
- c65cfa1 Add dependency and dependent counts to bd list JSON output (#198)
- 178a43d Add external_ref UNIQUE constraint and validation
- dfc8e48 Add git hooks check to bd doctor
- 1abe4e7 Add migration inspection tools for AI agents (bd-627d Phase 2)
- b55c62f Add missing runtime import in autoimport.go
- edb9c9e Add panic recovery to RPC handleConnection (bd-1048)
- 9c38082 Add pre-push hook to prevent stale JSONL exports
- e5a3f8c Add quoting guidance to AGENTS.md and SKILL.md
- 95560dc Add refactoring issues for sqlite.go and daemon.go
- f73651a Add sync.branch configuration support (bd-b7d2)
- 6e89073 Add test coverage for daemon lifecycle and config modules
- fa5fd1b Add test issue
- 70358d0 Add two-repo daemon auto-import test for bd-09b5f2f5
- a49a341 Brew formula update for beads version v0.21.2
- 4846958 Close bd-2530 and bd-373c
- 839a487 Close bd-5f26: daemon.go refactoring complete
- ce9a516 Close daemon refactoring tasks and create sqlite.go refactor epic
- 712fb77 Complete sync branch daemon tests (bd-7bd2, bd-502e)
- 248cce4 Document and enforce private memory test isolation pattern (bd-2e80)
- 38bdd3e Document migration inspection commands in user docs
- d46177d Enhance bd onboard with AI planning docs management guidance
- 50a324d Fix #202: Add dependency_type to bd show --json output (#203)
- e5f1e4b Fix --json flag shadowing issue causing test failures
- 09bd4d3 Fix CI test failures (bd-1231)
- 8304ca7 Fix GH #153: set_context hangs with stdio transport
- 1036b0b Fix TestMetricsSnapshot/uptime flakiness on Windows
- 21a29bc Fix TestScripts failures - add bd binary to PATH
- ad53c0b Fix Windows CI: use forward slashes in git hook shell scripts
- 9f9b8bb Fix Windows test failures: path handling and bd binary references
- 86c6456 Fix all gosec, misspell, and unparam linter errors
- 1b75a06 Fix all remaining linter errors - golangci-lint passes
- 0599cb7 Fix bd doctor --json flag not working (bd-6049)
- d12b5b7 Fix bd doctor to respect custom database names from config.json
- 0116008 Fix bd migrate to detect and set issue_prefix config
- a708c32 Fix bd-11e0: Auto-upgrade database version in daemon instead of exiting
- 537844c Fix bd-36870264: Prevent nested .beads directories with path canonicalization
- 8a04cd3 Fix bd-47f1: bd import now flushes JSONL immediately for daemon visibility
- d80e7a5 Fix bd-6c68: preserve actual daemon failure reasons in bd info
- e8e9e72 Fix bd-8931: Prevent daemon corruption from git conflicts
- 5fabb5f Fix bd-c6cf: Force full export when export_hashes is cleared
- f8ef180 Fix bd-e652: Improve bd doctor daemon health checks
- 8bbb710 Fix branchExists test after signature change
- b5839b6 Fix compilation errors in internal/daemonrunner package
- 0215e73 Fix config system: rename config.json → metadata.json, fix config.yaml loading
- 0cfe741 Fix config version update in migrate command
- 3b68569 Fix critical double-release race in importInProgress flag
- 7421f52 Fix daemon race condition: prevent stale exports
- 94fc772 Fix gosec warnings: tighten file permissions and add exclusions (bd-b47c034e)
- 21ab565 Fix hyphenated issue prefix detection (#199)
- 9099032 Fix remaining Windows test failures
- 6ecfd04 Implement BEADS_DIR environment variable (bd-e16b)
- 25ef5a7 Implement bd daemons restart command
- 55c722a Implement external_ref as primary matching key for import updates (bd-1022)
- c6bf633 Implement git worktree management with sparse checkout (bd-a4b5)
- 50cb273 Import beads JSONL updates
- 18ae8ab Improve Windows git path normalization
- 69e2144 Improve cmd/bd test coverage to 42.9%
- 88fd7b2 Improve git operations: use --ff-only for pull, make commit idempotent
- f84c259 Improve set_context timeout handling - fail instead of guessing path
- 334ef71 Merge commit 'ebfb94e'
- 2615c72 Merge remote changes
- 8fccf0d Merge remote changes
- 0539455 Merge remote changes to beads.jsonl
- 1880278 Merge remote-tracking branch 'origin/main'
- 0bae0d3 Merge wasm-port-bd-44d0 to main
- 7e5b382 Only flush JSONL on import if there were actual changes
- 3ae3e5b Optimize test suite performance (bd-e05d)
- 3fc8922 Refactor daemon runtime into internal/daemonrunner package
- eb00ab8 Refactor daemon.go for testability and maintainability (bd-2b34)
- b5db80c Refactor sqlite.go: Extract hash IDs, batch ops, validators (bd-90a5, bd-c796, bd-d9e0)
- 2275650 Refactor: Extract path canonicalization into utils.CanonicalizePath()
- 7d6d64d Refactor: Replace manual transaction handling with withTx() helper
- 2da7487 Refactor: consolidate ID generation and shared helpers (bd-0702, bd-1445)
- 7032d7d Refactor: separate process/lock/PID concerns into process.go (bd-d33c)
- 7ba3fd5 Remove separate-branch-epic.md - filed as bd-a101 epic with 7 child issues
- 46ba735 Set issue prefix to 'bd'
- 172129b Skip TestDatabaseReinitialization on Windows
- 5d046d2 Sync JSONL from main repo to converge databases
- 14f2802 Sync databases after daemon race condition fix
- 43fd90b Update beads issue database
- b0513d8 Update beads issue database
- 8ba063a Update beads.jsonl (bd-a4b5 closed)
- 94f2dc1 WIP: Extract daemon runtime into internal/daemonrunner
- d163b79 bd sync: 2025-11-01 11:07:43
- 1bdf6e0 bd sync: 2025-11-01 12:24:02
- 965e6af bd sync: 2025-11-01 16:56:12
- cbe70aa bd sync: 2025-11-01 17:00
- 87c60d1 bd sync: 2025-11-01 17:05:41
- 4879b1a bd sync: 2025-11-01 19:14:04
- 72c4c90 bd sync: 2025-11-01 19:20:28
- a4b9ae5 bd sync: 2025-11-01 19:28:32
- 3733b12 bd sync: 2025-11-01 19:29:40
- 6076651 bd sync: 2025-11-01 20:02:23
- daef76d bd sync: 2025-11-01 20:11:00
- 0c1738c bd sync: 2025-11-01 20:11:52
- b0bbe44 bd sync: 2025-11-01 20:18:26
- c83560d bd sync: 2025-11-01 20:29:22
- ce4d756 bd sync: 2025-11-01 21:45:12
- 8cc1bb4 bd sync: 2025-11-01 21:49:42
- 7c1ff83 bd sync: 2025-11-01 22:01:28
- 05b2d2b bd sync: 2025-11-01 22:01:47
- 50edb73 bd sync: 2025-11-01 22:18:58
- 43ed423 bd sync: 2025-11-01 22:20:19
- 6ef3ba1 bd sync: 2025-11-01 22:21:05
- 123a0fa bd sync: 2025-11-01 22:34:01
- 440d9bf bd sync: 2025-11-01 22:39:37
- 39b49ca bd sync: 2025-11-01 22:41:02
- 9c62d54 bd sync: 2025-11-01 22:53:45
- 988521d bd sync: 2025-11-01 22:56:11
- 83f04c9 bd sync: 2025-11-01 23:25:13
- 6ec5fc1 bd sync: 2025-11-01 23:25:54
- ac64f9b bd sync: 2025-11-01 23:32:03
- 0105256 bd sync: 2025-11-01 23:33:09
- 784f7bc bd sync: 2025-11-01 23:34:17
- edf1fba bd sync: 2025-11-01 23:37:07
- 7834957 bd sync: 2025-11-01 23:45:49
- b8c5559 bd sync: 2025-11-01 23:47:31
- efd68fb bd sync: 2025-11-02 09:02:35
- 9003913 bd sync: 2025-11-02 09:29:15
- 361f463 bd sync: 2025-11-02 09:29:37
- f25e06f bd sync: 2025-11-02 10:42:10
- 1c5dc7f bd sync: 2025-11-02 11:17:39
- 4387757 bd sync: 2025-11-02 12:31:58
- 79fa6d2 bd sync: 2025-11-02 12:32:23
- 2ab65d2 bd sync: 2025-11-02 12:40:49
- dfd2ad6 bd sync: 2025-11-02 12:55:58
- d1e022d bd sync: 2025-11-02 13:11:24
- c810a49 bd sync: 2025-11-02 14:03:00
- b627b0c bd sync: 2025-11-02 14:21:09
- cb17916 bd sync: 2025-11-02 14:36:37
- a488b8a bd sync: 2025-11-02 14:38:24
- c3e3aa4 bd sync: 2025-11-02 14:49:34
- 8c5d237 bd sync: 2025-11-02 15:27:00
- 3a210cd bd sync: 2025-11-02 15:28:14
- a3aeaf5 bd sync: 2025-11-02 15:30:16
- d8c66f5 bd sync: 2025-11-02 15:32:34
- f4628f6 bd sync: 2025-11-02 15:33:57
- 4d3a39a bd sync: 2025-11-02 15:35:01
- 065a22b bd sync: 2025-11-02 15:35:05
- bdd4d18 bd sync: 2025-11-02 15:35:22
- 0bf60f3 bd sync: 2025-11-02 15:36:50
- 9bb293e bd sync: 2025-11-02 15:37:49
- ebfb94e bd sync: 2025-11-02 15:37:49
- 18bd4f9 bd sync: 2025-11-02 15:39:07
- 5aaa9ed bd sync: 2025-11-02 15:47:54
- 15c86b7 bd sync: 2025-11-02 15:55:58
- 32a8650 bd sync: 2025-11-02 16:04:23
- 10029d0 bd sync: 2025-11-02 16:24:39
- b1ec428 bd sync: 2025-11-02 16:40:03
- ec8289e bd sync: 2025-11-02 16:40:27
- 439f09a bd sync: 2025-11-02 16:43:24
- 1451e4e bd sync: 2025-11-02 17:03:39
- 1f90f46 bd sync: 2025-11-02 17:05:09
- 6353873 bd sync: 2025-11-02 17:08:39
- 31c39f1 bd sync: 2025-11-02 17:12:48
- e3a7a95 bd sync: 2025-11-02 17:15:30
- 5b1f9a6 bd sync: 2025-11-02 17:20:26
- 386b15b bd sync: 2025-11-02 17:31:45
- 9f9167c bd sync: 2025-11-02 18:35:59
- 0ac905e bd sync: 2025-11-02 19:11:16
- b37e8b7 bd sync: 2025-11-02 19:37:13
- 8efaefe bd sync: 2025-11-02 21:31:13
- 2aef84b bd sync: 2025-11-02 21:31:29
- d2e3a43 bd sync: 2025-11-02 21:31:38
- f7667c0 bd sync: 2025-11-02 21:41:43
- 756e462 bd sync: Add bd-a101 epic and 7 child issues for separate branch support
- 2794087 bd sync: apply rename detection from import
- 233af06 bd sync: apply rename detection from import
- 10b89d6 bd sync: apply rename detection from import
- 130b8ee bd sync: apply rename detection from import
- 1578aff bd sync: apply rename detection from import
- 9d23805 bd sync: apply rename detection from import
- 3a5889f bd sync: apply rename detection from import
- f0beba3 bd sync: apply rename detection from import
- ba88669 bd sync: manual export to fix divergence
- 2ff800d bd-627d: Design agent-supervised migration safety framework
- a126deb bd-b245: Add migration registry and simplify New()
- 55ff80c updated instructions