Skip to content

Releases: gastownhall/beads

v1.0.0

03 Apr 05:38

Choose a tag to compare

beads v1.0.0

Pre-compiled binaries for Linux, macOS (Intel & Apple Silicon), Windows (AMD64 & ARM64), Android/Termux (ARM64), and FreeBSD.

Installation

Homebrew (macOS/Linux):

brew install beads

Quick Install (macOS/Linux/FreeBSD):

curl -sSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/steveyegge/beads/main/install.ps1 | iex

Manual Install:
Download the appropriate binary for your platform below, extract it, and place it in your PATH.

Changelog

Features

  • 5e60961 feat(init): add --non-interactive and --role flags for CI/cloud agents
  • 29531d2 feat: GitLab sync — dedup fixes, type filtering, epic→milestone mapping, work item hierarchy (#2889)
  • 7806fbf feat: add --non-interactive flag to bd bootstrap for CI (#2942)
  • 677f7bc feat: add SlotSet/SlotGet/SlotClear to Storage interface (#2870)
  • c46be6e feat: add bd config set-many for batch config operations (#2943)
  • 4d88e4a feat: add public format package for issue rendering (#2871)
  • 08ee138 feat: add spike, story, and milestone as first-class issue types (#2923)
  • 9b90ada feat: export WispFilter type from root package (#2868)
  • 8537d94 feat: migrate custom statuses and types to normalized tables (#2961)
  • 73409d5 feat: move hook firing into storage layer via decorator (#2891)
  • dc39fdc feat: support batch dep list for multiple issue IDs (#2875)
  • bf4025b feat: support comma-separated status values in bd list --status (GH#2846) (#2929)

Bug Fixes

  • d56bf01 fix(ado): apply --types/--states/--no-create filters to push operations (#2944)
  • 9e34b07 fix(ado): create work items in initial state then transition to target
  • 20b39b3 fix(deps): migrate from lipgloss v1 to charm.land/lipgloss/v2
  • dc398f5 fix(deps): update github.com/yuin/goldmark to v1.8.2
  • 30cb4a5 fix(deps): update module github.com/cenkalti/backoff/v4 to v5 (#2857)
  • 933253e fix(dolt): add recovery guidance for diverged history errors (#2941)
  • ead8d09 fix(gitlab): resolve hardcoded work item type ID and O(n) milestone scan
  • a44d4f9 fix(init): replace 'bd onboard' references with 'bd prime' in AGENTS.md (#2902)
  • 41001f7 fix(install): redirect log functions to stderr to fix WSL platform detection
  • 5e751f8 fix(lint): suppress gosec G122 false positive in noms LOCK cleanup
  • 999f875 fix(test): remove tautological TestRoleFlagValidation
  • 59b49c4 fix: add missing //go:build cgo tags to embedded test files and cmd
  • 8725226 fix: add missing created_at index on wisp_events (GH#2760) (#2877)
  • 1f4863b fix: add whitespace trimming to env var parsing in IsAutoStartDisabled (#2955)
  • 2cd88e9 fix: address PR review feedback
  • 63c7a26 fix: adopt existing project_id when init --database targets shared server (#2925)
  • 685cb84 fix: bd bootstrap detects remote data in fresh clones (GH#2792)
  • bbc8128 fix: bump currentSchemaVersion to 11 for custom_statuses/custom_types tables
  • dbdc955 fix: clean stale noms LOCK files after bootstrap clone (bd-cmo)
  • dfa54aa fix: configure link checker root dir for docusaurus deploy
  • a2fc789 fix: make --yes/-y the primary flag in bd bootstrap, --non-interactive as alias
  • 223895b fix: make bd setup claude project-local by default and auto-setup in bd init (#2935) (#2972)
  • 0a1be38 fix: pass parent env vars to dolt-sql-server child process
  • 4e4d958 fix: prefer bootstrap for missing database recovery (#2940)
  • 2a71d7f fix: preserve spaces in embedded Dolt paths
  • 543e194 fix: prevent concurrent embedded Dolt panic with exclusive flock (#2571)
  • 33cab03 fix: recognize ado:NNNNN shorthand in IsExternalRef and ExtractIdentifier (#2966)
  • 37382b0 fix: remove bogus //nolint:gosec G122 directive (rule does not exist)
  • 870cb83 fix: remove dead rig routing code and unused variable after rebase
  • ba46bd5 fix: repair nightly test failures for TestInitCancel_E2E and dolt autostart (#2969)
  • ae77bd4 fix: replace fragile string matching with typed APIError for HTTP status checks
  • 163c27b fix: set ADO Severity field for Bug work items during sync
  • 29bef78 fix: show blocked icon for dependency-blocked issues in bd list (#2858) (#2878)
  • 265de3c fix: skip E2E test that requires Dolt server in embedded mode (#2888)
  • a097723 fix: suppress auto-backup address conflict warning (#2927)
  • baa9d02 fix: treat --shared-server as server mode for DoltMode (#2947)
  • 9d9d0e5 fix: unwrap HookFiringStore decorator before optional interface type assertions (#2937)
  • c174416 fix: update goreleaser owner to gastownhall (repo moved from steveyegge)
  • 36e063d fix: update workflow gates from steveyegge/beads to gastownhall/beads (#2936)
  • 299b5f6 fix: use ResolveCustomTypesInTx in create path to honor YAML custom types (GH#2793) (#2930)
  • 8cd2476 fix: use proper RFC3339 timezone in WIQL date formatting (bd-wz8)
  • 9f3b813 fix: use strconv.ParseBool for env var parsing in IsAutoStartDisabled (#2956)
  • ca67253 fix: validate graph plan node types against custom types (#2874)

Others

  • 15f9696 /cmd/bd/doctor: formatting
  • d326a27 /{.github,.goreleaser}: enable embedded by default on mac (#2971)
  • 44c764e /{cmd,docs,internal}: more cleanup
  • f1bf098 /{cmd,docs,internal}: remove file removal that can cause data corruption
  • 4191643 Add --explain flag to bd ready for dependency-aware reasoning
  • 5d524cf Add Integration Charter: define scope boundary for tracker integrations
  • 6863ca7 Add bd rules audit and bd rules compact commands (#2810)
  • bbd6c41 Add claude-workspace-snapshot to Claude Code Orchestration
  • 7e4da9a Add credentials file support for Dolt server passwords (#2854)
  • 2efa094 Add integration test coverage for partial failures, warnings, and self-deps
  • c5e033f Add pagination guards to Linear and context checks to Jira client
  • 9d7882c Add release stability gate for upgrade safety (GH#2951) (#2963)
  • 00b78da Add retry logic to Jira client and jitter to all tracker HTTP clients
  • 047e506 Enforce .beads/ directory permissions at runtime
  • 0383ad7 Enforce graph integrity: extend cycle detection and add bd graph check
  • ac4ee4a Expand SECURITY.md with tracker integration trust model
  • 5708a36 Fix ADO Init tests leaking environment variables
  • ca1ae15 Fix init leaving beads.role unset in edge cases (GH#2950) (#2964)
  • 5588033 Improve compaction dry-run and analyze output with per-issue details
  • 917c5f6 Improve quickstart docs with Why Beads section and --explain examples
  • 733b8fa Sanitize external tracker content for terminal display and add response size limits
  • 8d41e70 Surface sync engine warnings in SyncResult and fix silent failure paths
  • dbcc2db [codex] Fix installer ICU/CGO fallback handling (#2965)
  • d15b448 chore(deps): bump charm.land/lipgloss/v2 from 2.0.1 to 2.0.2 (#2919)
  • d02f1f9 chore(deps): bump fastmcp from 3.1.1 to 3.2.0 in /integrations/beads-mcp (#2918)
  • 7217026 ci: fix macOS smoke test temp dir with dots in name
  • edb6f58 ci: retrigger after flaky Dolt lock contention in TestEmbeddedInit
  • ad53f30 cmd/bd: honor explicit repo selection for no-db commands (#2844)
  • 73f786f github,ado: fix Retry-After jitter in retry loops
  • 82c2890 jira: add MaxPages pagi...
Read more

v0.63.3

30 Mar 16:09

Choose a tag to compare

beads v0.63.3

Pre-compiled binaries for Linux, macOS (Intel & Apple Silicon), Windows (AMD64 & ARM64), Android/Termux (ARM64), and FreeBSD.

Installation

Homebrew (macOS/Linux):

brew install beads

Quick Install (macOS/Linux/FreeBSD):

curl -sSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/steveyegge/beads/main/install.ps1 | iex

Manual Install:
Download the appropriate binary for your platform below, extract it, and place it in your PATH.

Changelog

Bug Fixes

  • b706786 fix(beads): detect embeddeddolt/ directory in database discovery (#2909)
  • 884cc11 fix(release): revert all non-Linux targets to CGO_ENABLED=0, bump v0.63.3
  • 97889d9 fix: include convoy-type formulas in bd formula list text output

v0.62.0

22 Mar 02:57

Choose a tag to compare

beads v0.62.0

Pre-compiled binaries for Linux, macOS (Intel & Apple Silicon), Windows (AMD64 & ARM64), Android/Termux (ARM64), and FreeBSD.

Installation

Homebrew (macOS/Linux):

brew install beads

Quick Install (macOS/Linux/FreeBSD):

curl -sSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/steveyegge/beads/main/install.ps1 | iex

Manual Install:
Download the appropriate binary for your platform below, extract it, and place it in your PATH.

Changelog

Features

  • 6724965 Merge PR #2638: feat: add --format json alias for --json flag
  • 39ab50d feat(ado): add Azure DevOps work item tracker package
  • 9f5741f feat(ado): add bd ado CLI commands (sync, status, projects)
  • 9a8aa55 feat(embeddeddolt): add embedded Dolt support for dep, duplicate, epic, graph, supersede, swarm (fix-merge PR #2734)
  • a44ecef feat(init): default AGENTS.md to minimal profile, add --agents-profile flag
  • 5f2d433 feat: add 'bd note' command as shorthand for appending notes
  • affb314 feat: add --exclude-type flag to bd ready and bd list
  • d6e5a5f feat: add --format json alias for --json flag
  • faa69f9 feat: audit log captures close reason; add v0.62.0 changelog and version notes
  • a44e01e feat: audit log status changes to interactions.jsonl (bd-42f)
  • 9b2c012 feat: custom status categories (active/wip/done/frozen)
  • fab29b0 feat: expose issue_type filter on MCP ready tool (PR #2660)
  • a22af2d feat: include memories in export/import round-trip
  • 0fe9c03 feat: surface quality/lifecycle commands in prime, template, and doctor (fix-merge PR #2664)

Bug Fixes

  • 679d7bf Merge PR #2651: fix: use go run for golangci-lint in pre-commit hook
  • ae28719 fix(ci): add write permissions to update-flake-lock workflow (PR #2642)
  • c847353 fix(cli): keep repo .beads config when dolt_data_dir escapes
  • e566d3a fix(config): route config unset to correct store (GH#2727)
  • 4a5cb16 fix(deps): update dolthub/driver v0.2.1 to v1.83.8 (fix-merge PR #2720)
  • e6ee4f9 fix(deps): update github.com/anthropics/anthropic-sdk-go to v1.27.1 (PR #2705)
  • 51d41e2 fix(deps): update github.com/dolthub/driver digest to 1f97424 (PR #2650)
  • 164cea7 fix(doctor): add dolt-server.activity to gitignore, prioritize gitignore fixes (GH#2723)
  • c3ee79e fix(doctor): fail closed for server-mode integrity recovery
  • e2f9f51 fix(dolt): bump schema version to 8 and commit version update (PR #2635)
  • 87c8985 fix(dolt): keep repo-local auto-started servers alive across commands
  • 60dd444 fix(dolt): verify dolt_status is clean after schema upgrade (GH#2634)
  • 71a0360 fix(hooks): increase shim timeout from 30s to 300s for chained hooks (GH#2732)
  • ec18969 fix(init): add .beads-credential-key to project-root .gitignore (GH#2695)
  • 8225a14 fix(init): add TTL to circuit breaker state and clean stale files during init
  • 0423e25 fix(mol): add cycle detection to bond traversal to prevent OOM (GH#2719)
  • f8152a1 fix(update): require explicit opt-in for empty stdin/file DESCRIPTION rewrites
  • 63432ac fix: --validate checks --acceptance field, add validation.on-close config (PR #2654)
  • 468c863 fix: Windows Dolt server lifecycle — stale state files and false auto-stop warning (GH#2670)
  • ecf15d9 fix: add .beads-credential-key to .gitignore template (PR #2681)
  • f535a18 fix: add no_history column to embedded Dolt base schemas (PR #2632)
  • 5b9e65d fix: add retry loop for Windows binary existence check after zip extraction (fix-merge PR #2753)
  • e650b1f fix: add warnings for silent database name fallback in main command path
  • e67a574 fix: bootstrap imports from git-tracked .beads/issues.jsonl
  • fabda03 fix: check BEADS_DOLT_SERVER_DATABASE env var in applyConfigDefaults
  • 2846af3 fix: correct bd human help text for adding comments (fix-merge PR #2752)
  • 0e13cb5 fix: correct version ordering in versionChanges (PR #2633)
  • 2aff244 fix: don't kill externally-managed dolt servers (GH#2641)
  • d56d290 fix: drop id from ORDER BY in GetAllEventsSince UNION ALL query (PR #2691)
  • f20b3d0 fix: load .beads/.env before noDbCommands early return
  • 93bfd45 fix: load .beads/.env before noDbCommands early return (GH#2677)
  • fe1c9d5 fix: make KillStaleServers respect server ownership
  • b70f740 fix: mark unused cfg param in checkProjectIdentityNoStore
  • 2db73f8 fix: merge duplicate v0.60.0 changelog entries into single block
  • b272e0b fix: pass repo path through fingerprint check to fix merge with main
  • 76bfcd3 fix: preserve all hooks when overriding core.hooksPath, not just managed ones
  • a153b13 fix: preserve pre-existing hooks when bd init sets core.hooksPath
  • c75c2b5 fix: prevent doctor infinite Dolt server restart loop (GH#2636)
  • a683dbc fix: prevent silent fallback to default "beads" database in openDoltDB
  • 332f641 fix: remove duplicate TestCompactTier1_DryRun (PR #2631)
  • 6468766 fix: remove hardcoded ~/gt/ paths from beads codebase (bd-h615)
  • 059ee44 fix: remove unnecessary type conversions in find_duplicates.go
  • cb98259 fix: remove unnecessary type conversions in find_duplicates.go
  • f442c08 fix: remove unnecessary type conversions in find_duplicates.go
  • b89f1b3 fix: remove unnecessary type conversions in find_duplicates.go
  • e88379f fix: remove unnecessary type conversions in haiku.go
  • 1142460 fix: remove unnecessary type conversions in haiku.go
  • 32d4178 fix: remove unnecessary type conversions in haiku.go
  • 95dfaf0 fix: remove unnecessary type conversions in haiku.go
  • 43df89b fix: repair nightly integration test compilation failures
  • dc180dd fix: replace broken SQL CAST in GetNextChildIDTx with Go-side parsing (GH#2721)
  • bcfa8a7 fix: resolve --format json collision between rootCmd persistent flag and list/dep-tree local flags
  • f73a9ca fix: serialize concurrent initSchemaOnDB with GET_LOCK to prevent journal corruption (#2672)
  • 21fe42e fix: suppress gosec G304 for filepath.Glob-sourced path in circuit breaker cleanup
  • c9d7730 fix: update test_stats fixture to match nested Stats model (PR #2659)
  • 811d736 fix: use SHOW COLUMNS in uuid_primary_keys migration to avoid server-mode crash (fix-merge PR #2751)
  • c4fbe1e fix: use SQL stored procedures for bd flatten/compact in server mode (bd-uty)
  • 6d1777a fix: use go run for golangci-lint in pre-commit hook

Others

  • 02c59bc /.github/workflows/ci.yml: skip build step
  • 4523b77 /cmd/bd/count_embedded_test.go: count tests
  • 778975c /cmd/bd/diff_embedded_test.go: diff tests
  • 44a95b3 /cmd/bd/find_duplicates_embedded_test.go: test
  • 70e7d9e /cmd/bd/gate_embedded_test.go: gate test
  • 18136bc /cmd/bd/init_embedded_test.go: fix test
  • 4b26c76 /cmd/bd/label_embedded_test.go: add label tests
  • 5b9546c /cmd/bd/list_embedded_test.go: formatting
  • 555f4b5 /cmd/bd/merge_slot_embedded_test.go: merge slot
  • e7a4922 /cmd/bd/move_embedded_test.go: move slot
  • 9273ddf /cmd/bd/promote_embedded_test.go: promote test
  • 01c193e /cmd/bd/query_embedded_test.go: add query test
  • 2163689 /cmd/bd/quick_embedded_test.go: quick test
  • ed6551d /cmd/bd/search_embedded_test.go: search test
  • 06be1de...
Read more

v0.61.0

16 Mar 02:13

Choose a tag to compare

beads v0.61.0

Pre-compiled binaries for Linux, macOS (Intel & Apple Silicon), Windows (AMD64 & ARM64), Android/Termux (ARM64), and FreeBSD.

Installation

Homebrew (macOS/Linux):

brew install beads

Quick Install (macOS/Linux/FreeBSD):

curl -sSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/steveyegge/beads/main/install.ps1 | iex

Manual Install:
Download the appropriate binary for your platform below, extract it, and place it in your PATH.

Changelog

Features

  • ad0417a Merge PR #2543: feat(dolt): CLI credential pass-through for server mode push/pull
  • ef59bd0 Merge PR #2585: feat: auto-detect beads database on git origin during init/bootstrap
  • 947d557 Merge PR #2594: feat: add --claim-next to close and --skills/--context to create
  • 22ab742 Merge PR #2600: feat: prime SSOT tasks 8-12 — init upgrade, recipe cleanup, symlink safety, staleness detection
  • ee4dc91 Merge PR #2600: feat: prime SSOT tasks 8-12 — init upgrade, recipe cleanup, symlink safety, staleness detection
  • de5f0b9 Merge PR #2622: feat: add --no-history flag to separate Dolt commit skipping from GC eligibility
  • 5689f48 feat(dolt): add CLI credential routing for federation PushTo/PullFrom/Fetch
  • 02dc8c8 feat(dolt): add CLI credential routing for server mode push
  • 1911d2d feat(dolt): extend CLI credential routing to ForcePush and Pull
  • 6edd905 feat(setup): target CLAUDE.md and GEMINI.md for hooks integrations
  • 7267cbb feat(setup): target CLAUDE.md and GEMINI.md for hooks integrations
  • 93b8529 feat: Claude and Gemini setup install minimal AGENTS.md section (#2139, tasks 5-6)
  • 6588c53 feat: Claude and Gemini setup install minimal AGENTS.md section (#2139, tasks 5-6)
  • 1ce765e feat: UUID primary keys for federation-safe events
  • ecad137 feat: add --claim-next to close and --skills/--context to create
  • 869cc17 feat: add --no-history flag to bd create — skip Dolt commits without GC eligibility
  • 6673026 feat: add --skip-agents flag and branchless/JJ docs (GH#1335)
  • 04799bc feat: add bd import command for incremental JSONL import
  • 4d14fb8 feat: auto-detect beads database on git origin during bootstrap
  • 05142d0 feat: consolidate prime SSOT section replacement into canonical ReplaceSection (bd-jfe5)
  • f79ba31 feat: explicit profile:full on all AGENTS.md integrations (#2139, task 4)
  • d115e93 feat: explicit profile:full on all AGENTS.md integrations (#2139, task 4)
  • 46816ee feat: prime SSOT tasks 1-3 — shared render API, template profiles, prefix-aware parser (#2139)
  • f78b1b2 feat: prime SSOT tasks 1-3 — shared render API, template profiles, prefix-aware parser (#2139)
  • a0720f2 feat: prime SSOT tasks 8-12 — init upgrade, recipe cleanup, symlink safety, staleness detection (#2139)
  • 809bd43 feat: prime SSOT tasks 8-12 — init upgrade, recipe cleanup, symlink safety, staleness detection (#2139)

Bug Fixes

  • 52c9dea Merge PR #2537: fix: respect BD_BACKUP_ENABLED=false to suppress backup commits (GH#2534)
  • 91d98f3 Merge PR #2538: fix: bd doctor detects committed runtime/sensitive files (GH#2535)
  • 259925c Merge PR #2564: fix(flake): Go 1.25.8 overlay + vendorHash for nix build and devShell
  • 17ca46d Merge PR #2567: fix(embeddeddolt): implement more storage methods
  • 4a1a7f9 Merge PR #2578: fix: formula extends merges child steps by ID instead of appending
  • a39ee2b Merge PR #2578: fix: formula extends merges child steps by ID instead of appending
  • 3d1f844 Merge PR #2579: fix(deps): update github.com/dolthub/driver digest to 0fe74e7
  • 76b102c Merge PR #2582: fix: allow colons in unquoted query identifier values
  • fcef544 Merge PR #2586: fix(doctor): auto-start Dolt on cold standalone checks
  • 7017954 Merge PR #2591: fix: applyConfigDefaults uses full port resolution chain
  • 62f310c Merge PR #2592: fix: read jira.pull_jql config during FetchIssues
  • 393b082 Merge PR #2593: fix: scope KillStaleServers to repo own data directory
  • c748838 Merge PR #2597: fix: complete UUID primary keys cleanup
  • 82f6a81 Merge PR #2603: fix(deps): update dependency fastmcp to v3.1.1
  • 549345f Merge PR #2604: fix: key circuit breaker on host:port instead of port only
  • 3436b7c Merge PR #2607: fix(doctor): detect server-backed runtime for concurrency check
  • b7ff054 Merge PR #2610: fix(backup): accept UUID comment and event IDs during restore
  • 0601fff Merge PR #2616: fix(doctor): use target repo for fingerprint checks
  • 66057e6 Merge PR #2618: fix: store credential key in .beads/ to avoid ghost dolt directories
  • 81fcf44 fix(deps): update dependency fastmcp to v3.1.1
  • 190e70f fix(deps): update github.com/dolthub/driver digest to 0fe74e7
  • bc28d83 fix(doctor): auto-start Dolt on cold standalone checks
  • ebff84d fix(doctor): detect server-backed runtime for concurrency check
  • 65ed43f fix(doctor): honor bare-parent beads dir for gitignore repair (beads-9f74-q9o)
  • 9f3603b fix(doctor): honor bare-parent fallback in dolt lock checks (beads-9f74-f5e)
  • 94a5524 fix(doctor): use effective beads dir for shared-server checks (beads-9f74-385)
  • 66079fd fix(flake): overlay Go 1.25.8 for devShell compatibility
  • f320e3c fix(flake): override go_1_25 and fix vendorHash
  • fd17ed1 fix(init): warn when server host defaults to localhost
  • bb45595 fix: Commit() excludes config table to prevent issue_prefix corruption (GH#2455)
  • e9bce23 fix: EnsureRunning skips Start() when explicit port indicates external server
  • 2fea62f fix: accept UUID comment and event IDs during restore
  • 273c377 fix: add timeout and prompt suppression to git ls-remote probe
  • 4856644 fix: allow colons in unquoted query identifier values
  • 1b7bb92 fix: applyConfigDefaults uses full port resolution chain
  • a45961c fix: bd context reports actual runtime Dolt port instead of default 3307
  • 350c050 fix: bd doctor detects committed runtime/sensitive files that should be gitignored (GH#2535)
  • d3cf4e9 fix: bd init fails in directories starting with a dot
  • 3024c09 fix: bd list ready rejects bare keyword with hint to use --ready (GH#2532) (#2536)
  • 7bbd928 fix: clean stale noms LOCK files before opening embedded dolt store
  • fca3d3c fix: complete UUID primary keys cleanup across codebase
  • cba968e fix: detached commit worktree test fails when default branch is not main
  • f286e39 fix: formula extends merges child steps by ID instead of appending
  • c36b4ed fix: gofmt import.go and update stale embedded dolt from_jsonl test
  • 97fb20b fix: handle BEADS_DB pointing to directory instead of file
  • c5cb9f6 fix: handle BEADS_DB pointing to directory instead of file (#2549)
  • 3158495 fix: key circuit breaker on host:port instead of port only (bd-ic2)
  • 1bb721c fix: make --title, --title-contains, --desc-contains case-insensitive
  • c51923d fix: merge user-level config under project config instead of ignoring it (GH#2375)
  • 0827ccd fix: migrate server-root remotes to database dir on store open (GH#2118)
  • b1b11d2 fix: port-0 circuit breaker poisoning prevention (fix-merge PR #2599)
  • fb51196 fix: preserve source rig's dolt_database across .beads/redirect
  • ef654a9 fix: prevent comment duplication on re-import
  • 41de7e0 fix: read jira.pull_jql config during FetchIssues
  • 4b2a3b8 fix: repair broken setupDetachedCommitBeadsWorktree test h...
Read more

v0.60.0

12 Mar 04:02

Choose a tag to compare

beads v0.60.0

Pre-compiled binaries for Linux, macOS (Intel & Apple Silicon), Windows (AMD64 & ARM64), Android/Termux (ARM64), and FreeBSD.

Installation

Homebrew (macOS/Linux):

brew install beads

Quick Install (macOS/Linux/FreeBSD):

curl -sSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/steveyegge/beads/main/install.ps1 | iex

Manual Install:
Download the appropriate binary for your platform below, extract it, and place it in your PATH.

Changelog

Features

  • 43bca27 feat: JSON-aware error output + JSONL schema validation + contract tests (GH#2499)
  • 71d7ae5 feat: add --design-file flag for reading design from files
  • 12dc4e0 feat: add --destroy-token for safe non-interactive re-init (GH#2497)
  • 9dc875a feat: add --list and --doc flags to bd help for CLI doc generation (GH#2527)
  • 0cf8666 feat: add GitHub Issues integration (tracker plugin) (GH#2373)
  • ac9ac70 feat: add bd context command and safe-first error guidance (fix-merge PR #2496)
  • 0bb3bf2 feat: add workspace identity preflight and bd bootstrap command (GH#2438, GH#2372)
  • efd7568 feat: bd bootstrap executes recovery actions instead of printing advice
  • 2df714f feat: bd done treats last arg as reason
  • 21e23bc feat: epic close guards, merge re-parenting, and progress display
  • b7cc484 feat: replace hash-derived dolt ports with OS-assigned ephemeral ports (GH#2415)
  • 5e1d4b9 feat: search external_ref in bd search (GH#2494)
  • 3a2d351 feat: support global ~/.config/beads/PRIME.md fallback (GH#2330)

Bug Fixes

  • 0c12f46 Merge PR #2390: fix(deps): update github.com/dolthub/driver digest to bbe1450
  • dbbe212 Merge PR #2408: fix(worktree): skip .gitignore append when parent directory pattern covers
  • c3e7057 Merge PR #2413: fix(deps): update opentelemetry-go monorepo to v1.42.0
  • 93841bd Merge PR #2417: fix: bd mol wisp reports wrong count when RootOnly=true
  • 3502cb4 Merge PR #2432: fix: use Root().PersistentFlags() to check --json in PersistentPreRun
  • 1d25504 Merge PR #2440: fix: replace stale 'bd sync' references in CLI help, setup generators, and docs
  • 1ffbd0f Merge PR #2443: fix(list): --json flag ignored when --tree defaults to true
  • f1e6073 Merge PR #2529: fix(deps): update github.com/dolthub/driver digest to 669bd7f
  • 8130756 fix(deps): migrate glamour to v2 (charm.land/glamour/v2)
  • 4c43d96 fix(deps): update github.com/dolthub/driver digest to 669bd7f
  • dc0b180 fix(deps): update github.com/dolthub/driver digest to bbe1450
  • 555abde fix(deps): update github.com/dolthub/driver digest to ecee5fd
  • 7f03975 fix(deps): update module golang.org/x/sync to v0.20.0
  • 1a328cb fix(deps): update module golang.org/x/sys to v0.42.0
  • db967a0 fix(deps): update module golang.org/x/term to v0.41.0
  • 8962de5 fix(deps): update opentelemetry-go monorepo to v1.42.0
  • 257c052 fix(deps): update testcontainers-go monorepo to v0.41.0
  • a333dca fix(docs): purge stale bd sync/import/--branch refs + add CI doc validation (GH#2522)
  • f7061f9 fix(docs): remove stale --branch flag and SQLite refs from QUICKSTART (GH#2522) (#2525)
  • 1fb6b95 fix(dolt): auto-commit pending changes before pull to prevent merge errors (GH#2474)
  • c195a5e fix(list): --json flag ignored when --tree defaults to true
  • 15a9d16 fix(list): --json flag ignored when --tree defaults to true
  • 44118a8 fix(list): --json flag ignored when --tree defaults to true (bd-03r)
  • 45fcd51 fix(nix): use go mod edit instead of sed for version patching
  • 656a3e5 fix(worktree): skip gitignore append when parent dir pattern already covers entry
  • f88c298 fix: Dolt test suite stability — eliminate container crashes and cascading failures (hq-33riy)
  • c9998fc fix: TestDoltStoreDependencies uses same-type issues for blocks dep (GH#1495)
  • cf9f78d fix: TestProtocol_FieldsRoundTrip timezone-aware date assertions
  • 8386380 fix: YAML config prefix takes precedence over DB in shared-server mode (GH#2469)
  • 7d06e6c fix: add BEADS_DOLT_PORT fallback in GetDoltServerPort() (GH#2486)
  • 396c944 fix: add shared Dolt server mode for multi-repo/agent setups (GH#2416)
  • 69573b8 fix: add test coverage for quoted label values with colons (bd-wnr1)
  • 1d7bf35 fix: add timeout and graceful DB-missing handling to git hook shims
  • d00c310 fix: auto-clear stale pinned flag on status transition
  • 0ba22ae fix: auto-resolve metadata merge conflicts on bd dolt pull (GH#2466)
  • 401da9d fix: backfill project_id into pre-GH#2372 Dolt stores via bd doctor --fix (GH#2490)
  • 9b04d6c fix: bd children includes closed children by default (GH#2481)
  • 12cfd5c fix: bd doctor --fix regenerates missing metadata.json (GH#2482)
  • 766fe2f fix: bd doctor detects stale .legacy hook sidecars calling removed bd hook (GH#2398)
  • 61ddbe3 fix: bd dolt remote add/list/remove operate on wrong directory (GH#2306, GH#2311)
  • d1549d9 fix: bd export crash on zero-time timestamps + stale bd sync refs (GH#2488, GH#2493)
  • 3dbf3c7 fix: bd lint accepts non-empty acceptance_criteria field without heading (GH#2468)
  • c12ccea fix: bd mol wisp reports wrong count when RootOnly=true
  • a84f7c3 fix: block bd doctor --fix at Gas Town town root (GH#2450)
  • 2c24ce6 fix: block data-dir in server mode + fix doctor --clean --json (GH#2438)
  • a5a751f fix: clean formatting drift
  • 36a3ecd fix: create .beads/ dir in server mode with external BEADS_DOLT_* env vars (GH#2519)
  • fbbaa5e fix: detect WSL and MINGW/MSYS/CYGWIN in install.sh
  • eae64ca fix: detect backup files on database-not-found and after bd init (GH#2327)
  • 4537e07 fix: exclude reparented children from molecule auto-close (GH#2480)
  • e6019d9 fix: hide --allow-stale no-op flag from help output
  • e56fc50 fix: idle-monitor preserves port across restart cycles (bd-xvg)
  • 9604d30 fix: init guard allows fresh clones with committed metadata.json (GH#2433, GH#2441)
  • 9d65ac8 fix: merge --metadata with existing metadata instead of replacing (GH#2423)
  • 141119a fix: move KillStaleServers inside flock to prevent journal corruption (GH#2430)
  • 4591600 fix: move auto-push state to local file, preventing metadata merge conflicts (GH#2466)
  • 5227eab fix: preserve dependency metadata in JSONL backups (GH#2487)
  • a7755e5 fix: prevent bd init from creating DB on another project's Dolt server (GH#2336)
  • 4df17ca fix: remove idle monitor and activity signal daemon infrastructure (GH#2452)
  • 100962f fix: remove stale 'sync' from noDbCommands breaking sync subcommands (GH#2419)
  • 3e20e7e fix: replace dangerous --force suggestion in init guard error message
  • 31bae5a fix: replace hash-derived dolt ports with OS-assigned ephemeral ports (GH#2415)
  • b7bd6d6 fix: replace stale 'bd sync' references with bd dolt push/commit (GH#2435)
  • cd2f500 fix: replace stale bd migrate --to-dolt with bd init --from-jsonl (GH#2333)
  • bdbbb4b fix: restore --allow-stale as no-op flag for gt compatibility
  • de483f4 fix: restore denormalized JSONL from bd export without data loss (GH#2479)
  • b515661 fix: skip sleep in CI/non-interactive environments
  • 5a454ae fix: suppress pre-existing gosec false positives with nolint directives
  • 2d3ce08 fix: sync CLI remotes into SQL server on store open (GH#2315)
  • 56cd587...
Read more

v0.59.0

06 Mar 00:07

Choose a tag to compare

beads v0.59.0

Pre-compiled binaries for Linux, macOS (Intel & Apple Silicon), Windows (AMD64 & ARM64), Android/Termux (ARM64), and FreeBSD.

Installation

Homebrew (macOS/Linux):

brew install beads

Quick Install (macOS/Linux/FreeBSD):

curl -sSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/steveyegge/beads/main/install.ps1 | iex

Manual Install:
Download the appropriate binary for your platform below, extract it, and place it in your PATH.

Changelog

Features

  • 57e576e Merge PR #2342: feat: surface sync.git-remote in fresh clone error flow
  • b3decc2 feat(bd): remove daemon infrastructure (w-bd-001)
  • b4b586d feat(doctor): allow suppressing specific warnings via config (GH#1095)
  • 7702ebe feat(doctor): detect fresh clone state on Dolt server
  • 1ca5e8c feat(dolt): surface sync.git-remote in database-not-found errors
  • 4e408bc feat(init): distinguish server-reachable from DB-exists in init guard
  • 7f41edd feat(nix): modernize flake for nixpkgs-25.11, fix-merge PR #2314
  • 5ea0eaa feat: add OpenCode recipe to bd setup
  • 7c8cd89 feat: add version to END marker for better future matching

Bug Fixes

  • a9a9c7a Merge PR #2293: fix(deps): update dependency fastmcp to v3
  • 6adf14b Merge PR #2300: fix: skip Docker Hub network calls when Dolt image not cached
  • 8d3de51 Merge PR #2322: fix(docs): correct misleading examples in QUICKSTART.md
  • 3b9ef20 Merge PR #2329: fix(dolt): batch all IN-clause queries to prevent full table scans
  • 1be0a41 fix(backup): default git-push to OFF, require explicit opt-in
  • 1b26227 fix(backup): default git-push to OFF, require explicit opt-in
  • d14bed5 fix(backup): skip git commits during hook runs and on feature branches
  • 0b15550 fix(circuit): reduce cooldown to 5s and add active TCP health probe
  • 6e9a86f fix(config): route backup.* keys to config.yaml so overrides are respected
  • 1b921b9 fix(dep): add cross-prefix routing to dep commands (#2296)
  • 5cc48cf fix(deps): update dependency fastmcp to v3
  • d3c845c fix(deps): update github.com/dolthub/driver digest to 37b6617
  • 2d9ad51 fix(docs): correct misleading examples in QUICKSTART.md
  • 431d840 fix(docs): disambiguate duplicate nvim-beads entry in COMMUNITY_TOOLS.md
  • 663e13b fix(doctor): correct command order in enrichFreshClone
  • 2ba09ad fix(dolt): batch all IN-clause queries to prevent full table scans
  • f06795e fix(dolt): gate CLI routing on local remote availability and extend SQL push timeout (#2295)
  • c6e4180 fix(dolt): idle-monitor single-instance lock, port config isolation, project UUID verification (GH#2367, GH#2372)
  • 11b9568 fix(dolt): retry on serialization error in TestConcurrentIssueCreation
  • 515a773 fix(dolt): use database subdirectory for CLI push/pull/fetch operations
  • 49ebfa2 fix(dolt): use database subdirectory for CLI push/pull/fetch operations (GH#2311)
  • d9a719e fix(doltserver): idle-monitor kills itself via Stop() — watchdog loop fix
  • ee6bcef fix(doltserver): log when Start() falls back to DerivePort on collision
  • 58f5989 fix(init): prevent data destruction from misleading error messages (GH#2363, GH#2372)
  • feaee93 fix(init): use DefaultConfig for port resolution during init (GH#2372)
  • 364691f fix(list): make --tree the default display mode for bd list
  • 2174032 fix(test): remove more daemon-dependent tests (maxDoltServers, idle monitor)
  • 569ca25 fix(test): remove tests for daemon infrastructure removed in b3decc2
  • 4e65285 fix(test): remove tests for daemon infrastructure removed in b3decc2
  • c8f61cb fix(tests): align tests with cross-type blocking validation
  • 16b425e fix: add contributor auto-routing fallback to show/update/close (GH#2345)
  • 049ec26 fix: add id tiebreaker to all ORDER BY clauses for deterministic ordering
  • 864bbc2 fix: address code review findings for hook marker handling
  • a304bc3 fix: commit per batch in deleteWispBatch to avoid write timeout
  • b597fa1 fix: config-aware prefix detection in ResolvePartialID
  • b1b6835 fix: config-aware prefix detection in ResolvePartialID (GH#2381)
  • 4197335 fix: deterministic ordering in SearchIssues and GetReadyWork (GH#2368)
  • a489b11 fix: handle orphaned BEGIN marker in injectHookSection (GH#2344)
  • 1ec62df fix: handle orphaned BEGIN marker in injectHookSection (GH#2344)
  • fade3b1 fix: make bd doctor --fix repair broken hook markers (GH#2344)
  • df1e6bb fix: remove dead 3-way merge config remnants (GH#2353)
  • 0e286c0 fix: restore DerivePort as standalone default in DefaultConfig
  • 2e1ea1e fix: skip Docker Hub network calls when Dolt image not cached (GH#2277)
  • bb7be24 fix: skip tombstone entries in bd init --from-jsonl
  • c21ffcb fix: warn on user-modified legacy hooks during migration
  • daaaf8e fix: warn on user-modified legacy hooks during migration (GH#2370)

Others

  • b9c549b /internal/storage/embeddeddolt/store.go: fix formatting
  • 7bfa0e4 /internal/storage/embeddeddolt: add store
  • 5404b0f /internal/storage/embeddeddolt: handle context canceled in cleanup func
  • fb22268 /internal/storage/embeddeddolt: pr feedback
  • 45b5e84 /internal/storage/embeddeddolt: refactor to use short-lived access pattern
  • f0f66ef /internal/storage/embeddeddolt: wip, add open sql and concurrency test
  • 5d159dd Merge PR #2317: Add nvim-beads by fancypantalons to COMMUNITY_TOOLS.md
  • 637c817 Merge PR #2318: docs: update GIT_INTEGRATION.md re deprecated beads-merge binary and Jujutsu integration
  • 7a53725 Merge PR #2319: docs: add fancypantalons/nvim-beads to Community Tools
  • 251680e Merge PR #2369: refactor: remove 3-way merge engine remnants (bd-hhh)
  • cd033d5 Merge remote-tracking branch 'origin/polecat/obsidian/bd-m7sy@mmaw77ig'
  • f31acbb Remove stale sync mode documentation
  • 472fb64 bd: backup 2026-03-05 22:09
  • facfd75 bd: backup 2026-03-05 22:24
  • 959aa7f chore(testutil): remove unused port field from doltServer struct (bd-m7sy)
  • c63c11a ci: retrigger
  • f7ad9dd ci: retrigger (PR was briefly closed during prior push)
  • 93a934e docs(dolt): deprecate bd migrate --to-dolt in docs
  • 95c85e3 docs(doltserver): document birthday-problem collision recovery in DerivePort
  • fff12b2 docs(troubleshooting): add circuit breaker and upgrade recovery docs
  • 3872308 refactor(tests): migrate all test files from StartTestDoltServer to container-native API
  • 76aec3c refactor(testutil): expand Dolt readiness to 5-state enum (#2304)
  • 6cb2863 refactor(testutil): remove StartTestDoltServer/TestDoltServer, add crash detection functions
  • f4c575e refactor: consolidate ExtractPrefix into types package
  • 1838b30 refactor: remove 3-way merge engine remnants (bd-hhh)
  • 570becd refactor: remove legacy daemon lock infrastructure
  • d878ff9 style: fix gofmt alignment in init_hooks_test.go
  • 246b0e8 style: fix gofmt trailing blank lines

v0.58.0

03 Mar 06:33

Choose a tag to compare

beads v0.58.0

Pre-compiled binaries for Linux, macOS (Intel & Apple Silicon), Windows (AMD64 & ARM64), Android/Termux (ARM64), and FreeBSD.

Installation

Homebrew (macOS/Linux):

brew install beads

Quick Install (macOS/Linux/FreeBSD):

curl -sSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/steveyegge/beads/main/install.ps1 | iex

Manual Install:
Download the appropriate binary for your platform below, extract it, and place it in your PATH.

Changelog

Features

  • 94b699c Merge PR #1995: feat: allow per-worktree .beads/redirect to override main repo
  • f6b04f7 Merge PR #1996: feat(query): add has_metadata_key to bd query DSL
  • 24e12a3 Merge PR #2088: feat: Add the option to use the Jira V2 api
  • 21ca845 Merge PR #2143: feat: add dolt-data-dir config for custom dolt data directory
  • a9ca7b7 Merge PR #2178: feat(dolt): SSH push/pull fallback + dual-surface remote management
  • feb8a00 Merge PR #2221: feat: phase 1 hook census and migration planning (#2217)
  • 2ec8c10 Merge PR: feat: add --backend flag to bd init with SQLite deprecation notice (bd-7xj5)
  • e688ea7 feat(backup): add 'bd backup restore' command to bootstrap from JSONL backup
  • d821109 feat(backup): add JSONL backup command and auto-backup support
  • 051a43d feat(backup): auto-enable JSONL backup when git remote exists
  • 84c9540 feat(cli): add --comment alias for bd close, --yes/-y alias for bd mol burn
  • a3dd653 feat(cli): show titles in command feedback (GH#1384)
  • 587eabb feat(doctor): bridge pending hook migrations into --fix
  • 573bdd1 feat(dolt): add 'bd dolt remote' subcommands (add/list/remove)
  • f710909 feat(dolt): auto-push to Dolt remote with 5-minute debounce
  • 20516a4 feat(dolt): dual-surface remote management (SQL + CLI)
  • a30e02a feat(init): add --database flag to configure existing server database (#2102)
  • 8cc0874 feat(init): wire sync.git-remote config into bd init for auto-bootstrap
  • 9a2eea8 feat(labels): inherit parent labels on child creation
  • e17d73a feat(linear): add Project sync support
  • 3a86e9f feat(mcp): add dedicated claim tool for atomic start-work (#2071)
  • 5f0b3be feat(protocol): lane 6 — 10 new protocol invariant tests
  • 74ffe23 feat(ready): add metadata filtering to bd ready (GH#1406)
  • 5fd7fe3 feat(regression): replace bd export with snapshot harness (list+show)
  • 52d7447 feat(show): add --current flag to show active issue (GH#2184)
  • 0467fb0 feat(test): parallelize dolt storage tests for 3.5x speedup (bd-5ua)
  • 801965a feat(test): parallelize protocol tests for 3x speedup (bd-dgp)
  • 11f5f43 feat(testutil): branch-per-test isolation for dolt, tracker, molecules (L2)
  • 982164a feat(testutil): reuse existing Dolt server via BEADS_DOLT_PORT (L1)
  • 82a5f89 feat(testutil): server crash detection + doctor branch-per-test (L2)
  • dcf5c22 feat(update): add --set-metadata and --unset-metadata flags (GH#1406)
  • ef4c996 feat(wisp): add --root-only flag to bd mol wisp create
  • 89569b9 feat: add --backend flag to bd init with SQLite deprecation notice (bd-7xj5)
  • 157135f feat: add --long flag to bd show for full-detail output (bd-unav)
  • 1c6f373 feat: add --metadata flag to bd create (GH#1406)
  • fb23623 feat: add --state as hidden alias for --status in bd list (bd-9h3w)
  • f1a299d feat: add --stdin flag as alias for --body-file - on bd create/update (bd-gz2o)
  • 0ed2e1a feat: add .dolt/ and *.db to project .gitignore on bd init (GH#2034)
  • b769a00 feat: add Dolt-native conflict detection to bd doctor validate (GH-2249)
  • 02e177b feat: add JSONL-to-Dolt migration script (GH#2276)
  • 6abc586 feat: add PreToolUse hook to block interactive cp/mv/rm prompts (bd-tm2p)
  • bd3fb06 feat: add ResetTestBranch and migrate tests to shared server + branch-per-test (bd-tk8y)
  • fecf282 feat: add bd backup init/sync for Dolt-native backups (bd-zafu)
  • 8d5e3ef feat: add bd doctor --agent mode for AI agent diagnostics (bd-6ud)
  • 6157920 feat: add bd dolt start/stop commands for server lifecycle management (bd-rbzi)
  • 97ae54d feat: add bd export command for JSONL backup (bd-xav)
  • 5e0e83a feat: add bd gc, bd compact, bd flatten for standalone Beads lifecycle (bd-kzn)
  • 0ec5d2e feat: add bd mol last-activity command for molecule progress tracking (GH-1456)
  • a7325f7 feat: add bd purge command to delete closed ephemeral beads (GH-1692)
  • ed8dc56 feat: add bd remember/memories/forget/recall for persistent agent memory
  • 0cb7936 feat: add circuit breaker for Dolt server connections (bd-05an)
  • 7228991 feat: add dolt-data-dir config for custom dolt data directory
  • 20f2d19 feat: add gofmt + golangci-lint pre-commit hook (GH#2179)
  • 9457158 feat: add has_metadata_key to bd query DSL
  • eafff36 feat: add hk (hk.jdx.dev) as supported git hook manager
  • dfd9b56 feat: add hook migration census + doctor signal (bd-w4x.1, #2217)
  • e926d52 feat: add memory instructions to bd prime output and changelog
  • 02197ee feat: add stale database detection to bd doctor and bd dolt clean-databases
  • c402711 feat: add staleness check for read-only commands against JSONL (bd-2q6d)
  • 464c952 feat: add type index on wisp_dependencies for blocker queries
  • 7dca9e7 feat: align bd preflight --check with CI checks (GH#2230)
  • 1dcaa50 feat: allow per-worktree .beads/redirect to override main repo .beads
  • dab2a20 feat: apply error wrapping to remaining bare returns in dolt storage (bd-bwk2)
  • 24ed5a3 feat: auto-migrate SQLite to Dolt on first bd command (bd-3dx)
  • 13a8daa feat: auto-migration shim: SQLite to Dolt via sqlite3 CLI (bd--3y8)
  • 4fd1f6e feat: auto-push to git remote after Dolt commits
  • 7dafce0 feat: auto-update stale hooks during bd init (GH#1466) (#2008)
  • 06eff8a feat: centralize error handling in dolt storage layer (bd-bwk2)
  • 580e7db feat: complete branch-per-test migration with dolt reset --hard (bd-tk8y)
  • 00aa5dc feat: config-driven metadata schema enforcement (GH#1416 Phase 2) (#2027)
  • 8e22d27 feat: make IsInfraType config-driven via types.infra (bd-39c)
  • 1fda04c feat: port collision fallback, idle monitor, and crash watchdog for Dolt server (test-hqvv5t, test-n99ihy)
  • 9d64fc1 feat: route infra beads (agent/rig/role/message) to dolt-ignored wisps table
  • 893f6fc feat: self-managing Dolt server for standalone users (GH#2049, GH#2050)
  • 87f3286 feat: support issue_id_mode=counter for sequential IDs (#2013)
  • 1b56f58 feat: use section markers for git hooks (GH#1380)

Bug Fixes

  • 807091e Merge PR #1893: fix: resolve pre-existing CI failures (fmt-check, tests, lint)
  • b3d2535 Merge PR #2005: fix(deps): update opentelemetry-go monorepo to v1.40.0
  • 21e52ef Merge PR #2044: fix: add missing columns to SQLite-to-Dolt migration INSERT
  • e0417d4 Merge PR #2067: fix: follow-up to GH#2002 counter-mode review
  • 0ff6443 Merge PR #2105: fix: unify hook outdated detection
  • d6f2266 Merge PR #2106: fix(routing): check local store before prefix routing
  • 4044dc1 Merge PR #2107: fix(test): clean orphaned temp dirs for all test server prefixes
  • f70dce8 Merge PR #2108: fix(storage): batch SQL IN-clause queries to prevent query explosion
  • 373149d Merge PR #2114: fix:...
Read more

v0.57.0

01 Mar 08:44

Choose a tag to compare

beads v0.57.0

Pre-compiled binaries for Linux, macOS (Intel & Apple Silicon), Windows (AMD64 & ARM64), Android/Termux (ARM64), and FreeBSD.

Installation

Homebrew (macOS/Linux):

brew install beads

Quick Install (macOS/Linux/FreeBSD):

curl -sSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/steveyegge/beads/main/install.ps1 | iex

Manual Install:
Download the appropriate binary for your platform below, extract it, and place it in your PATH.

Changelog

Features

  • 94b699c Merge PR #1995: feat: allow per-worktree .beads/redirect to override main repo
  • f6b04f7 Merge PR #1996: feat(query): add has_metadata_key to bd query DSL
  • 24e12a3 Merge PR #2088: feat: Add the option to use the Jira V2 api
  • 21ca845 Merge PR #2143: feat: add dolt-data-dir config for custom dolt data directory
  • a9ca7b7 Merge PR #2178: feat(dolt): SSH push/pull fallback + dual-surface remote management
  • feb8a00 Merge PR #2221: feat: phase 1 hook census and migration planning (#2217)
  • e688ea7 feat(backup): add 'bd backup restore' command to bootstrap from JSONL backup
  • d821109 feat(backup): add JSONL backup command and auto-backup support
  • 051a43d feat(backup): auto-enable JSONL backup when git remote exists
  • 84c9540 feat(cli): add --comment alias for bd close, --yes/-y alias for bd mol burn
  • a3dd653 feat(cli): show titles in command feedback (GH#1384)
  • 573bdd1 feat(dolt): add 'bd dolt remote' subcommands (add/list/remove)
  • f710909 feat(dolt): auto-push to Dolt remote with 5-minute debounce
  • 20516a4 feat(dolt): dual-surface remote management (SQL + CLI)
  • a30e02a feat(init): add --database flag to configure existing server database (#2102)
  • 8cc0874 feat(init): wire sync.git-remote config into bd init for auto-bootstrap
  • 9a2eea8 feat(labels): inherit parent labels on child creation
  • e17d73a feat(linear): add Project sync support
  • 3a86e9f feat(mcp): add dedicated claim tool for atomic start-work (#2071)
  • 5f0b3be feat(protocol): lane 6 — 10 new protocol invariant tests
  • 74ffe23 feat(ready): add metadata filtering to bd ready (GH#1406)
  • 5fd7fe3 feat(regression): replace bd export with snapshot harness (list+show)
  • 0467fb0 feat(test): parallelize dolt storage tests for 3.5x speedup (bd-5ua)
  • 801965a feat(test): parallelize protocol tests for 3x speedup (bd-dgp)
  • 11f5f43 feat(testutil): branch-per-test isolation for dolt, tracker, molecules (L2)
  • 982164a feat(testutil): reuse existing Dolt server via BEADS_DOLT_PORT (L1)
  • 82a5f89 feat(testutil): server crash detection + doctor branch-per-test (L2)
  • dcf5c22 feat(update): add --set-metadata and --unset-metadata flags (GH#1406)
  • ef4c996 feat(wisp): add --root-only flag to bd mol wisp create
  • 1c6f373 feat: add --metadata flag to bd create (GH#1406)
  • 0ed2e1a feat: add .dolt/ and *.db to project .gitignore on bd init (GH#2034)
  • 6abc586 feat: add PreToolUse hook to block interactive cp/mv/rm prompts (bd-tm2p)
  • bd3fb06 feat: add ResetTestBranch and migrate tests to shared server + branch-per-test (bd-tk8y)
  • fecf282 feat: add bd backup init/sync for Dolt-native backups (bd-zafu)
  • 8d5e3ef feat: add bd doctor --agent mode for AI agent diagnostics (bd-6ud)
  • 6157920 feat: add bd dolt start/stop commands for server lifecycle management (bd-rbzi)
  • 97ae54d feat: add bd export command for JSONL backup (bd-xav)
  • 5e0e83a feat: add bd gc, bd compact, bd flatten for standalone Beads lifecycle (bd-kzn)
  • 0cb7936 feat: add circuit breaker for Dolt server connections (bd-05an)
  • 7228991 feat: add dolt-data-dir config for custom dolt data directory
  • 9457158 feat: add has_metadata_key to bd query DSL
  • eafff36 feat: add hk (hk.jdx.dev) as supported git hook manager
  • dfd9b56 feat: add hook migration census + doctor signal (bd-w4x.1, #2217)
  • 02197ee feat: add stale database detection to bd doctor and bd dolt clean-databases
  • c402711 feat: add staleness check for read-only commands against JSONL (bd-2q6d)
  • 1dcaa50 feat: allow per-worktree .beads/redirect to override main repo .beads
  • dab2a20 feat: apply error wrapping to remaining bare returns in dolt storage (bd-bwk2)
  • 24ed5a3 feat: auto-migrate SQLite to Dolt on first bd command (bd-3dx)
  • 13a8daa feat: auto-migration shim: SQLite to Dolt via sqlite3 CLI (bd--3y8)
  • 4fd1f6e feat: auto-push to git remote after Dolt commits
  • 7dafce0 feat: auto-update stale hooks during bd init (GH#1466) (#2008)
  • 06eff8a feat: centralize error handling in dolt storage layer (bd-bwk2)
  • 580e7db feat: complete branch-per-test migration with dolt reset --hard (bd-tk8y)
  • 00aa5dc feat: config-driven metadata schema enforcement (GH#1416 Phase 2) (#2027)
  • 8e22d27 feat: make IsInfraType config-driven via types.infra (bd-39c)
  • 1fda04c feat: port collision fallback, idle monitor, and crash watchdog for Dolt server (test-hqvv5t, test-n99ihy)
  • 9d64fc1 feat: route infra beads (agent/rig/role/message) to dolt-ignored wisps table
  • 893f6fc feat: self-managing Dolt server for standalone users (GH#2049, GH#2050)
  • 87f3286 feat: support issue_id_mode=counter for sequential IDs (#2013)
  • 1b56f58 feat: use section markers for git hooks (GH#1380)

Bug Fixes

  • 807091e Merge PR #1893: fix: resolve pre-existing CI failures (fmt-check, tests, lint)
  • b3d2535 Merge PR #2005: fix(deps): update opentelemetry-go monorepo to v1.40.0
  • 21e52ef Merge PR #2044: fix: add missing columns to SQLite-to-Dolt migration INSERT
  • e0417d4 Merge PR #2067: fix: follow-up to GH#2002 counter-mode review
  • 0ff6443 Merge PR #2105: fix: unify hook outdated detection
  • d6f2266 Merge PR #2106: fix(routing): check local store before prefix routing
  • 4044dc1 Merge PR #2107: fix(test): clean orphaned temp dirs for all test server prefixes
  • f70dce8 Merge PR #2108: fix(storage): batch SQL IN-clause queries to prevent query explosion
  • 373149d Merge PR #2114: fix: use doltserver.DefaultConfig for port resolution
  • 088d9bf Merge PR #2116: fix: suppress git upstream warning for repos with no remotes
  • b8d9e0a Merge PR #2119: fix(migrate): skip auto-migration when backend is already Dolt
  • 2bb4cc6 Merge PR #2120: fix(doctor): auto-import JSONL issues on fresh clone migration
  • f165654 Merge PR #2124: fix(doctor): create dolt marker directory after store creation
  • a138db4 Merge PR #2135: fix(dolt): reset AUTO_INCREMENT after DOLT_PULL
  • 4dd4b9b Merge PR #2144: fix(linear): include stateId in push updates to sync status changes
  • 0b0586f Merge PR #2147: fix: sanitize hyphens to underscores in dolt_database name
  • 6af5f5a Merge PR #2148: fix: doctor checks now use hash-derived port instead of hardcoded 3307
  • e5647f7 Merge PR #2150: fix: escape # in SQLite URI paths to prevent truncation
  • f2e0284 Merge PR #2151: fix(dep): traverse blocks-type edges in dep tree and graph
  • 4ab9d55 Merge PR #2152: fix(init): stealth mode no longer creates Claude-specific settings
  • d0c3e98 Merge PR #2153: fix: honor BEADS_DOLT_SERVER_PORT and BEADS_DOLT_SERVER_HOST in store
  • 4b816c7 Merge PR #2171: fix: handle Windows connectex syscall in verifyServerTarget ECONNREFUSED check
  • 72b7847 Merge PR #2173: fix(testutil): eliminate port allocation race with flock-based coordi...
Read more

v0.56.1

23 Feb 03:41

Choose a tag to compare

beads v0.56.1

Pre-compiled binaries for Linux, macOS (Intel & Apple Silicon), Windows (AMD64 & ARM64), Android/Termux (ARM64), and FreeBSD.

Installation

Homebrew (macOS/Linux):

brew install beads

Quick Install (macOS/Linux/FreeBSD):

curl -sSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/steveyegge/beads/main/install.ps1 | iex

Manual Install:
Download the appropriate binary for your platform below, extract it, and place it in your PATH.

Changelog

Features

  • 8561884 feat(cook): support standalone expansion formula execution in bd mol wisp (#1903)
  • 1d4ff86 feat(import): add --skip-prefix-validation flag for legacy data migration
  • 0c2d95c feat(metadata): add human-readable metadata visibility to bd show and bd list --long (#1905)
  • 6e4ad9b feat(otel): opt-in OpenTelemetry instrumentation (#1940)
  • f383ce3 feat(setup): add Mux setup recipe with layered AGENTS and managed hooks
  • b2f7cc3 feat(storage): add sentinel errors ErrNotFound, ErrNotInitialized, ErrPrefixMismatch
  • 32a3bba feat: add SIGTERM/SIGHUP batch commit flush and improve commit messages
  • 836835d feat: add batch auto-commit mode for Dolt to reduce commit bloat
  • f06c280 feat: add bd migrate wisps command for SQLite-to-Dolt ephemeral data migration
  • 8244818 feat: add commit message parameter to RunInTransaction for Dolt history
  • b13720d feat: add dolt_ignore patterns and create wisps table (bd-f6b62)
  • 1ade634 feat: drop dolthub/driver dependency — binary size 168MB → 41MB
  • 87d49a6 feat: embed AGENTS.md templates with embed.FS and add --agents-template flag
  • 00e802f feat: make metadata queryable from bd list, bd search, and bd query (#1908)
  • c4010c1 feat: remove CGO build-tag bifurcation for dolt commands
  • ec62bc3 feat: remove SQLite ephemeral store code and dependencies
  • 8e5710b feat: remove embedded Dolt mode from doctor checks (server-only)
  • e2e3410 feat: remove embedded Dolt mode from init and main command paths
  • 630e102 feat: route wisp CRUD to dolt_ignored wisps table, remove SQLite ephemeral store
  • 00f546f feat: transaction isolation, retry, and batch wrapping for Dolt concurrency

Bug Fixes

  • 7269df8 fix(cook): make cookFormula atomic — single transaction for issues, labels, deps
  • e751888 fix(cook): propagate cross-expansion dependencies to expanded steps
  • 129e973 fix(dep): populate ParentID in dependency tree and show [BLOCKED] for root
  • 8f11f7d fix(deps): update dependency fastmcp to v3 (#1991)
  • effebb1 fix(deps): update dependency pydantic-settings to v2.13.1 (#1985)
  • c926c03 fix(deps): update module github.com/anthropics/anthropic-sdk-go to v1.26.0 (#1986)
  • 77a07f2 fix(doctor): check configured backend, not directory presence, for SQLite artifacts
  • 620233d fix(doctor): exclude external: deps from orphaned dependency check (#1593)
  • a0a076c fix(doctor): include database param in embedded connection string (#1924)
  • a3267ee fix(doctor): pass configured db name to remaining dolt.New() call sites
  • 6c6a93c fix(doctor): run Dolt health checks before federation checks (#1925)
  • 59c5db3 fix(doctor): use configured database name in federation checks (#1904)
  • ae4a5bb fix(dolt): add ~15 missing filter fields to searchWisps for parity with SearchIssues
  • 71b0106 fix(dolt): always apply server connection defaults in applyConfigDefaults
  • 583ed3b fix(dolt): commit writes via execContext when server runs with --no-auto-commit
  • f6d788f fix(dolt): normalize metadata and waiters in UpdateIssue
  • 0b23adc fix(dolt): persist labels, comments, and deps during batch import
  • 960dee4 fix(dolt): preserve ORDER BY in scanIssueIDs results
  • 09a1d50 fix(dolt): re-init schema after branch checkout for untracked tables
  • 94d8607 fix(hooks): use 'bd hooks run' instead of nonexistent 'bd hook' in init hook body
  • a7e1203 fix(hooks): use bd hooks run instead of nonexistent bd hook in shim templates
  • da93dbb fix(jira): use correct API v3 /search/jql endpoint
  • 373a365 fix(lint): resolve 4 golangci-lint violations in queries.go and wisps.go
  • 2bcca39 fix(list): separate parent-child deps from blocking deps in bd list
  • d54a663 fix(mcp): sanitize raw dependency records before Pydantic validation
  • 2814016 fix(mol): auto-close wisp root after squash (#1898)
  • dc715bd fix(plugin): correct inverted bd dep add argument order in docs
  • 5916bf4 fix(queries): add nil guard in GetBlockedIssues and GetEpicsEligibleForClosure
  • b4489d1 fix(ready): pass --parent filter to GetReadyWork/GetBlockedIssues and propagate blocked status to children (GH#2009, GH#1495)
  • 4bdbba9 fix(ready): respect SortPolicy and preserve result ordering (#1883)
  • 55f06f9 fix(release): prevent non-CGO bd binaries from shipping (#1870)
  • 48bfaaa fix(release): remove verify-cgo hook from CGO_ENABLED=0 builds
  • e7d0d93 fix(test): isolate regression tests from production Dolt server
  • 25cfad9 fix(test): use dynamic port in ServerModeFailsWithoutServer test
  • 6219b86 fix: CI formatting, lint, and test failures blocking release
  • 9b745dc fix: add DOLT_COMMIT to CRUD operations and fix transaction safety
  • 8380155 fix: add Limit to wisp gc/list SearchIssues to prevent OOM
  • fba7dd8 fix: add promoted wisp fallback routing and fix PromoteFromEphemeral
  • b0c8abf fix: add routing transaction for ephemeral store (bd-3wi7r5)
  • 3631aba fix: bd list --limit applies after --sort, trim whitespace in edit (GH#1237, GH#1234)
  • ff29346 fix: consolidate single-entry changelog versions to fix TestVersionChangesCoverage
  • 3790768 fix: correct help text, dead code in markdown parser, stale cgo build tags
  • da8a1bf fix: doctor lock false positive and stale bd sync references (GH#1981, GH#2007)
  • 95234e9 fix: early CGO detection with clear error for non-CGO binaries
  • 713a03a fix: ephemeral store read routing — beads created with --ephemeral now queryable
  • 6ccb0b2 fix: ephemeral store routing gaps (bd-h3hhu0, bd-n8tbnx, bd-hoio75)
  • 34fa288 fix: gofmt alignment on cache fields in DoltStore struct
  • 00d8d84 fix: gofmt formatting and doctor test expectation for auto-initialized dolt
  • d10ae6f fix: guard issue_prefix SetConfig to prevent clobber when rigs share a Dolt database
  • 6dce2f6 fix: handle "nothing to commit" race in CommitPending
  • e4c7a3b fix: handle error return from hash.Write to satisfy gosec G104
  • 200c1d2 fix: hydrate labels in getWispsByIDs for search results
  • 70f251d fix: isolate dolt package tests from production server (test-ckvw)
  • 2e425d0 fix: isolate test suite from production Dolt server (bd-2lf6)
  • 41a64b6 fix: make bond spawn+attach and squash operations atomic (bd-wvplu, bd-4kgbq)
  • 6c724d1 fix: remove dead openDoltDB function, fix stale embedded-mode message
  • f2c7d03 fix: remove stale --from-main flag from prime.go session prompts
  • bd68c87 fix: remove stale embedded Dolt references after server-only migration
  • 362608a fix: repair all cmd/bd tests broken by embedded Dolt removal (bd-9z7pf)
  • 625aeb2 fix: repo sync cross-prefix hydration and close guard consistency (GH#1945, GH#1524)
  • 0884c41 fix: resolve CI lint, format, and flaky test warnings
  • 5500634 fix: restore .beads/issues.jsonl.new accidentally deleted in rebase
  • f549c7f...
Read more

v0.55.4

20 Feb 19:52

Choose a tag to compare

beads v0.55.4

Pre-compiled binaries for Linux, macOS (Intel & Apple Silicon), Windows (AMD64 & ARM64), Android/Termux (ARM64), and FreeBSD.

Installation

Homebrew (macOS/Linux):

brew install beads

Quick Install (macOS/Linux/FreeBSD):

curl -sSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/steveyegge/beads/main/install.ps1 | iex

Manual Install:
Download the appropriate binary for your platform below, extract it, and place it in your PATH.

Changelog

Features

  • 79ab4a4 feat: add SQLite ephemeral store for wisps/molecules (bd-pedpnn)