@beads/bd 0.22.0 → 0.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/CHANGELOG.md CHANGED
@@ -7,6 +7,603 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.24.0] - 2025-11-20
11
+
12
+ ### Added
13
+
14
+ - **bd doctor --fix**: Automatic repair functionality (bd-ykd9, 7806937)
15
+ - Automatically fixes issues detected by `bd doctor`
16
+ - Repairs common database inconsistencies without manual intervention
17
+
18
+ - **bd clean**: Remove temporary merge artifacts (e8355c2)
19
+ - Cleans up `.base`, `.ours`, `.theirs` snapshot files
20
+ - Helps maintain clean `.beads/` directory after merges
21
+
22
+ - **bd cleanup**: Enhanced bulk deletion command
23
+ - Delete multiple closed issues efficiently
24
+ - Improved from previous versions with better performance
25
+
26
+ - **.beads/README.md Generation**: Auto-generated during `bd init` (bd-m7ge, e1c8853)
27
+ - Provides project-specific beads documentation
28
+ - Helps new contributors understand the setup
29
+
30
+ - **blocked_issues_cache Table**: Performance optimization for GetReadyWork (62c1f42, ed23f8f)
31
+ - Caches blocked issue relationships
32
+ - Dramatically improves `bd ready` performance on large databases
33
+
34
+ - **Commit Hash in Version Output**: Enhanced version reporting (bd-hpt5, 7c96142)
35
+ - `bd version` now shows git commit hash
36
+ - Helps identify exact build for debugging
37
+
38
+ - **Auto-detection of Issue Prefix**: Scans git history to detect prefix (#277, 8f37904)
39
+ - Automatically discovers project's issue prefix
40
+ - Reduces manual configuration needed
41
+
42
+ - **external_ref Support in Daemon RPC**: Full daemon mode support (#304, 57b6ea6)
43
+ - MCP server can now set external references in daemon mode
44
+ - Parity with CLI functionality
45
+
46
+ - **Context Optimization Features**: AI agent improvements (#297, f7e80dd)
47
+ - Context propagation with graceful cancellation (bd-rtp, bd-yb8, bd-2o2, 57253f9)
48
+ - Better memory management for long-running agent sessions
49
+
50
+ ### Fixed
51
+
52
+ - **Critical: Auto-import Resurrection Bug** (bd-khnb, 0020eb4, e28e3ea, 7b6370f)
53
+ - Fixed critical bug where deleted issues were resurrected during auto-import
54
+ - Cleaned up 497+ resurrected issues from production database
55
+ - Prevents data corruption from improper JSONL replay
56
+
57
+ - **Critical: bd sync Auto-resolves Conflicts** (bd-ca0b, a1e5075)
58
+ - `bd sync` now automatically resolves conflicts instead of failing
59
+ - Dramatically improves multi-agent workflow reliability
60
+ - Eliminates manual conflict resolution in most cases
61
+
62
+ - **Critical: Content-based Timestamp Skew Prevention** (bd-lm2q, d0e7047)
63
+ - Fixed false-positive "JSONL is newer than database" warnings
64
+ - Uses content-based comparison instead of timestamp-only
65
+ - Prevents unnecessary imports that would corrupt state
66
+
67
+ - **Critical: bd sync DB Changes After Import** (81c741b)
68
+ - Ensures database changes are properly applied after import
69
+ - Fixes desync issues between JSONL and database
70
+
71
+ - **Critical: Context Propagation Lifecycle Bugs** (bd-rtp, bd-yb8, bd-2o2, 57253f9, a17e4af)
72
+ - Fixed multiple context propagation issues causing crashes
73
+ - Graceful cancellation support for long-running operations
74
+ - Improved stability for AI agent workflows
75
+
76
+ - **Critical: Race Condition in Auto-flush** (bd-52, a9b2f9f)
77
+ - Fixed race condition in auto-flush mechanism
78
+ - Prevents data loss during concurrent operations
79
+
80
+ - **Critical: Resource Leaks and Error Handling** (#327, fb65163)
81
+ - Fixed critical resource leaks in daemon mode
82
+ - Improved error handling throughout codebase
83
+
84
+ - **Critical: In-memory Database Deadlock** (bd-yvlc, 944ed10)
85
+ - Fixed deadlock in migrations when using in-memory database
86
+ - Improves test reliability
87
+
88
+ - **MCP Schema Generation Recursion Bug** (GH#346, f3a678f)
89
+ - Fixed infinite recursion in MCP schema generation
90
+ - Prevents stack overflow crashes
91
+
92
+ - **FK Constraint Failures** (bd-5arw, 345766b)
93
+ - Fixed foreign key constraint failures in AddComment and ApplyCompaction
94
+ - Improved data integrity
95
+
96
+ - **--parent Flag Behavior** (b9919fe)
97
+ - Now correctly creates parent-child dependency relationships
98
+ - Previously was creating wrong dependency type
99
+
100
+ - **Exact ID Matching Priority** (gh-316, 934ae04)
101
+ - Prefers exact ID matches over prefix matches
102
+ - Prevents ambiguous ID resolution
103
+
104
+ - **Daemon Lifetime on macOS** (GH#278, 68f9bef)
105
+ - Fixed daemon exiting after 5s on macOS due to PID 1 parent monitoring
106
+ - Daemon now runs reliably on macOS
107
+
108
+ - **Daemon Export/JSONL Sync** (GH#301, #321, 04a1996)
109
+ - Fixed daemon export leaving JSONL newer than database
110
+ - Ensures proper sync between export and database state
111
+
112
+ - **bd doctor Hash ID Detection** (GH#322, 8c1f865)
113
+ - Fixed doctor incorrectly diagnosing hash IDs as sequential
114
+ - Improved detection logic for ID format validation
115
+
116
+ - **ResolvePartialID Handling** (GH#336, 4432af0)
117
+ - Improved ResolvePartialID / ResolveID handling for `bd show`
118
+ - Better partial ID matching and error messages
119
+
120
+ - **bd sync Windows Upstream Detection** (#281, 1deaad1)
121
+ - Fixed upstream branch detection on Windows
122
+ - Improved cross-platform compatibility
123
+
124
+ - **Compact Command Daemon Mode** (#294, d9904a8)
125
+ - Fixed compact command failing with 'SQLite DB needed' error when daemon running
126
+ - Removed premature store check, uses ensureDirectMode
127
+
128
+ - **DB mtime Update After Import** (#296, 9dff345)
129
+ - Fixed DB mtime not being updated after import with 0 changes
130
+ - Prevents false staleness warnings
131
+
132
+ - **FOREIGN KEY Constraint on Non-existent Issues** (09666b4)
133
+ - Fixed constraint failures when operating on non-existent issues
134
+ - Better error handling and validation
135
+
136
+ - **Monitor WebUI Daemon Detection** (e36baee)
137
+ - Fixed monitor-webui failure to detect running daemon
138
+ - Improved daemon health checking
139
+
140
+ - **Onboard Test Deadlock on Windows** (4e22214)
141
+ - Fixed deadlock in onboard tests on Windows
142
+ - Improved test stability
143
+
144
+ - **Windows Concurrent Issue Creation** (4cd26c8)
145
+ - Fixed concurrent issue creation failures on Windows
146
+ - Better file locking on Windows
147
+
148
+ - **Missing Git Hook Message** (#306, 92f3af5)
149
+ - Improved messaging when git hooks are missing
150
+ - Clearer instructions for users
151
+
152
+ - **Prefix Detection for Hyphenated Apps** (83472ac, bd-fasa)
153
+ - Fixed prefix detection to only use first hyphen
154
+ - Handles hyphenated application names correctly
155
+
156
+ - **External Ref Migration Failures** (8be792a)
157
+ - Fixed external_ref migration failure on old databases
158
+ - Backward compatibility improvements
159
+
160
+ - **Duplicate Function Declaration** (#328, 167ab67)
161
+ - Fixed compilation failure from duplicate computeJSONLHash declaration
162
+ - Removed old version, kept simpler implementation
163
+ - Updated test to match new API
164
+
165
+ ### Changed
166
+
167
+ - **Performance Improvements** (#319, 690c73f):
168
+ - Optimized GetReadyWork to use blocked_issues_cache (ed23f8f)
169
+ - Replaced N+1 label queries with bulk fetch in `bd list` (968d9e2)
170
+ - Cache invalidation for blocked_issues_cache (614ba8a)
171
+ - Significant speedup for large databases
172
+
173
+ - **FlushManager Improvements** (445857f)
174
+ - Added constants for magic numbers
175
+ - Enhanced error logging
176
+ - Comprehensive functional tests
177
+
178
+ - **Auto-upgrade .beads/.gitignore** (#300, f4a2f87)
179
+ - Automatically upgrades .gitignore on bd operations
180
+ - Ensures latest patterns are always applied
181
+
182
+ - **Code Refactoring**:
183
+ - Extract duplicated validation logic to internal/validation (d5239ee)
184
+ - Centralize error handling patterns in storage layer (bd-bwk2, 3b2cac4)
185
+ - Extract duplicated validation and flag logic (bd-g5p7, bbfedb0)
186
+ - Improved code organization and maintainability
187
+
188
+ - **Documentation Improvements**:
189
+ - Document files created by bd init and clarify .gitattributes (721274b, e7fd1dd)
190
+ - How to resolve merge conflicts in .beads/beads.jsonl (4985a68)
191
+ - Document MCP tools loading issue in Claude Code (GH#346, 79b8dbe)
192
+ - Add uv prerequisite to Claude Code plugin docs (#293, a020c6c)
193
+ - Don't auto-install Go in Windows installer (#302, 0cba73b)
194
+
195
+ - **Improved Error Messages** (#349, 27c0c33)
196
+ - Compact error messages
197
+ - Remove bogus merge suggestion
198
+ - Add daemon/maintenance docs
199
+
200
+ - **AGENTS.md Refactoring** (21a0656)
201
+ - Extracted detailed instructions to prevent context pollution
202
+ - Better organization for AI agent consumption
203
+
204
+ - **Type Safety Improvements** (9e57cb6)
205
+ - Improved type safety in beads-mcp
206
+ - Fixed minor type issues
207
+
208
+ - **Test Improvements**:
209
+ - Fix CI regressions and stabilize tests (7b63b5a)
210
+ - Fix parallel test deadlock (1fc9bf6)
211
+ - Annotate gosec-safe file accesses (bf9b2c8)
212
+
213
+ - **Local-only Git Repo Support** (bd-biwp, 4de9f01)
214
+ - Support repositories without remote origin
215
+ - Better handling of local development workflows
216
+
217
+ - **Version Marker in Post-checkout Hook** (ad2154b)
218
+ - Add version marker to post-checkout hook
219
+ - Include in CheckGitHooks for better version tracking
220
+
221
+ ### Performance
222
+
223
+ - **GetReadyWork Optimization** (bd-5qim, 690c73f, 62c1f42, ed23f8f)
224
+ - Introduced blocked_issues_cache table
225
+ - Eliminated expensive recursive queries
226
+ - Dramatically faster for large dependency graphs
227
+
228
+ - **bd list N+1 Query Elimination** (968d9e2)
229
+ - Replaced per-issue label queries with bulk fetch
230
+ - Significant speedup when listing many labeled issues
231
+
232
+ ### Community
233
+
234
+ - **Pull Requests**:
235
+ - #338: Prevent daemon from exiting when launcher process exits (@cpdata)
236
+ - #337: Improve ResolvePartialID handling (@cpdata)
237
+ - #333: Fix doctor incorrectly diagnosing hash IDs (@cpdata)
238
+ - #327: Address critical resource leaks and error handling
239
+ - #306: Improve missing git hook message
240
+ - #304: Add external_ref support to daemon mode RPC
241
+ - #302: Windows installer improvements
242
+ - #300: Automatic .beads/.gitignore upgrade
243
+ - #297: Context optimization features for AI agents
244
+ - #296: Fix DB mtime update after import
245
+ - #294: Fix compact command in daemon mode
246
+ - #293: Add uv prerequisite documentation
247
+ - #281: Fix bd sync Windows upstream detection
248
+ - #277: Auto-detection of issue prefix from git history
249
+
250
+ - **Dependency Updates**:
251
+ - Bump github.com/anthropics/anthropic-sdk-go from 1.17.0 to 1.18.0 (#330)
252
+ - Bump golang.org/x/mod from 0.29.0 to 0.30.0 (#331)
253
+ - Bump fastmcp from 2.13.0.2 to 2.13.1 (#332)
254
+ - Bump pydantic from 2.12.0 to 2.12.4 (#285)
255
+ - Bump pydantic-settings from 2.11.0 to 2.12.0 (#286)
256
+ - Bump golangci/golangci-lint-action from 8 to 9 (#287)
257
+ - Bump golang.org/x/sys from 0.36.0 to 0.38.0 (#288)
258
+ - Bump github.com/ncruces/go-sqlite3 from 0.29.1 to 0.30.1 (#290)
259
+ - Bump github.com/google/go-cmp from 0.6.0 to 0.7.0 (#291)
260
+
261
+ ### Notes
262
+
263
+ This release represents a major stability and performance improvement with **179 commits** since 0.23.1. Key themes:
264
+ - **Reliability**: Fixed critical auto-import resurrection bug and multiple daemon issues
265
+ - **Performance**: Significant optimizations for `bd ready` and `bd list`
266
+ - **AI Agent Support**: Improved context propagation and error handling
267
+ - **Cross-platform**: Better Windows and macOS support
268
+ - **Developer Experience**: Auto-detection, better error messages, improved docs
269
+
270
+ ## [0.23.1] - 2025-11-08
271
+
272
+ ### Fixed
273
+
274
+ - **#263: Database mtime not updated after import causing false `bd doctor` warnings**
275
+ - When `bd sync --import-only` completed, SQLite WAL mode wouldn't update the main database file's mtime
276
+ - This caused `bd doctor` to incorrectly warn "JSONL is newer than database" even when perfectly synced
277
+ - Now updates database mtime after imports to prevent false warnings
278
+
279
+ - **#261: SQLite URI missing 'file:' prefix causing version detection failures**
280
+ - Without 'file:' scheme, SQLite treated `?mode=ro` as part of filename instead of connection option
281
+ - Created bogus files like `beads.db?mode=ro`
282
+ - Caused `bd doctor` to incorrectly report "version pre-0.17.5 (very old)" on modern databases
283
+
284
+ - **bd-17d5: Conflict marker false positives on JSON-encoded content**
285
+ - Issues containing JSON strings with `<<<<<<<` would trigger false conflict marker detection
286
+ - Now checks raw bytes before JSON decoding to avoid false positives
287
+
288
+ - **bd-ckvw: Schema compatibility probe prevents silent migration failures**
289
+ - Migrations could fail silently, causing cryptic "no such column" and UNIQUE constraint errors later
290
+ - Now probes schema after migrations, retries once if incomplete, and fails fast with clear error
291
+ - Daemon refuses RPC if client has newer minor version to prevent schema mismatches
292
+
293
+ - **#264/#262: Remove stale `--resolve-collisions` references**
294
+ - Docs/error messages still referenced `--resolve-collisions` flag (removed in v0.20)
295
+ - Fixed post-merge hook error messages and git-hooks README
296
+
297
+ ### Changed
298
+
299
+ - **bd-auf1: Auto-cleanup snapshot files after successful merge**
300
+ - `.beads/` no longer accumulates orphaned `.base`, `.ours`, `.theirs` snapshot files after merges
301
+
302
+ - **bd-ky74: Optimize CLI tests with in-process testing**
303
+ - Converted exec.Command() tests to in-process rootCmd.Execute() calls
304
+ - **Dramatically faster: 10+ minutes → just a few seconds**
305
+ - Improved test coverage from 20.2% to 23.3%
306
+
307
+ - **bd-6uix: Message system improvements**
308
+ - 30s HTTP timeout prevents hangs, full message reading, --importance validation, server-side filtering
309
+
310
+ - **Remove noisy version field from metadata.json**
311
+ - Eliminated redundant version mismatch warnings on every bd upgrade
312
+ - Daemon version checking via RPC is sufficient
313
+
314
+ ### Added
315
+
316
+ - Go agent example with Agent Mail support
317
+ - Agent Mail multi-workspace deployment guide and scripts
318
+
319
+ ## [0.23.0] - 2025-11-08
320
+
321
+ ### Added
322
+
323
+ - **Agent Mail Integration**: Complete Python adapter library with comprehensive documentation and multi-agent coordination tests
324
+ - Python adapter library in `integrations/agent-mail-python/`
325
+ - Agent Mail quickstart guide and comprehensive integration docs
326
+ - Multi-agent race condition tests and failure scenario tests
327
+ - Automated git traffic benchmark showing **98.5% reduction in git traffic** compared to git-only sync
328
+ - Bash-agent integration example
329
+
330
+ - **bd info --whats-new** (bd-eiz9): Agent version awareness for quick upgrade summaries
331
+ - Shows last 3 versions with workflow-impacting changes
332
+ - Supports `--json` flag for machine-readable output
333
+ - Helps agents understand what changed without re-reading full docs
334
+
335
+ - **bd hooks install** (bd-908z): Embedded git hooks command
336
+ - Replaces external install script with native command
337
+ - Git hooks now embedded in bd binary
338
+ - Works for all bd users, not just source repo users
339
+
340
+ - **bd cleanup**: Bulk deletion command for closed issues (bd-buol)
341
+ - Agent-driven compaction for large databases
342
+ - Removes closed issues older than specified threshold
343
+
344
+ ### Fixed
345
+
346
+ - **3-way JSONL Merge** (bd-jjua): Auto-invoked on conflicts
347
+ - Automatically triggers intelligent merge on JSONL conflicts
348
+ - No manual intervention required
349
+ - Warning message added to zombie issues.jsonl file
350
+
351
+ - **Auto-import on Missing Database** (ab4ec90): `bd import` now auto-initializes database when missing
352
+ - **Daemon Crash Recovery** (bd-vcg5): Panic handler with socket cleanup prevents orphaned processes
353
+ - **Stale Database Exports** (bd-srwk): ID-based staleness detection prevents exporting stale data
354
+ - **Windows MCP Subprocess Timeout** (bd-r79z): Fix for git detection on Windows
355
+ - **Daemon Orphaning** (a6c9579): Track parent PID and exit when parent dies
356
+ - **Test Pollution Prevention** (bd-z528, bd-2c5a): Safeguards to prevent test issues in production database
357
+ - **Client Self-Heal** (a236558): Auto-recovery for stale daemon.pid files
358
+ - **Post-Merge Hook Error Messages** (abb1d1c): Show actual error messages instead of silent failures
359
+ - **Auto-import During Delete** (bd-8kde): Disable auto-import during delete operations to prevent conflicts
360
+ - **MCP Workspace Context** (bd-8zf2): Auto-detect workspace from CWD
361
+ - **Import Sync Warning** (bd-u4f5): Warn when import syncs with working tree but not git HEAD
362
+ - **GH#254** (bd-tuqd): `bd init` now detects and chains with existing git hooks
363
+ - **GH#249**: Add nil storage checks to prevent RPC daemon crashes
364
+ - **GH#252**: Fix SQLite driver name mismatch causing "unknown driver" errors
365
+ - **Nested .beads Directories** (bd-eqjc): Prevent creating nested .beads directories
366
+ - **Windows SQLite Support**: Fix SQLite in releases for Windows
367
+
368
+ ### Changed
369
+
370
+ - **Agent Affordances** (observations from agents using beads):
371
+ - **bd new**: Added as alias for `bd create` command (agents often tried this)
372
+ - **bd list**: Changed default to one-line-per-issue format to prevent agent miscounting; added `--long` flag for previous detailed format
373
+
374
+ - **Developer Experience**:
375
+ - Extracted supplemental docs from AGENTS.md for better organization
376
+ - Added warning for working tree vs git HEAD sync mismatches
377
+ - Completion commands now work without database
378
+ - Config included in `bd info` JSON output
379
+ - Python cache files added to .gitignore
380
+ - RPC diagnostics available via `BD_RPC_DEBUG` env var
381
+ - Reduced RPC dial timeout from 2s to 200ms for fast-fail (bd-expt)
382
+ - Standardized daemon detection with tryDaemonLock probe (bd-wgu4)
383
+ - Improved internal/daemon test coverage to 60%
384
+
385
+ - **Code Organization**:
386
+ - Refactored snapshot management into dedicated module (bd-urob)
387
+ - Documented external_ref in content hash behavior (bd-9f4a)
388
+ - Added MCP server functions for repair commands (bd-7bbc4e6a)
389
+ - Added version number to beads-mcp startup log
390
+ - Added system requirements section for glibc compatibility in docs
391
+
392
+ - **Release Automation**:
393
+ - Automatic Homebrew formula update in release workflow
394
+ - Gitignore Formula/bd.rb (auto-generated, real source is homebrew-beads tap)
395
+
396
+ - **Other**:
397
+ - Added `docs/` directory to links (#242)
398
+ - RPC monitoring solution with web UI as implementation example (#244)
399
+ - Remove old install.sh script, replaced by `bd hooks install`
400
+ - Remove vc.db exclusion from FindDatabasePath filter
401
+
402
+ ## [0.22.1] - 2025-11-06
403
+
404
+ ### Added
405
+
406
+ - **Vendored beads-merge by @neongreen** (bd-bzfy): Native `bd merge` command for intelligent JSONL merging
407
+ - Vendored beads-merge algorithm into `internal/merge/` with full attribution and MIT license
408
+ - New `bd merge` command as native wrapper (no external binary needed)
409
+ - Same field-level 3-way merge algorithm, now built into bd
410
+ - Auto-configured during `bd init` (both interactive and `--quiet` modes)
411
+ - Thanks to @neongreen for permission to vendor: https://github.com/neongreen/mono/issues/240
412
+ - Original tool: https://github.com/neongreen/mono/tree/main/beads-merge
413
+
414
+ - **Git Hook Version Detection** (bd-iou5, 991c624): `bd info` now detects outdated git hooks
415
+ - Adds version markers to all git hook templates (pre-commit, post-merge, pre-push)
416
+ - Warns when installed hooks are outdated or missing
417
+ - Suggests running `examples/git-hooks/install.sh` to update
418
+ - Prevents issues like the `--resolve-collisions` flag error after updates
419
+
420
+ - **Public API for External Extensions** (8f676a4): Extensibility improvements for third-party tools
421
+ - **Multi-Repo Patterns Documentation** (e73f89e): Comprehensive guide for AI agents working across multiple repositories
422
+ - **Snapshot Versioning** (a891ebe): Add versioning and timestamp validation for snapshots
423
+ - `--clear-duplicate-external-refs` flag for `bd import` command (9de98cf)
424
+
425
+ ### Fixed
426
+
427
+ - **Multi-Workspace Deletion Tracking** (708a81c, e5a6c05, 4718583): Proper deletion tracking across multiple workspaces
428
+ - Fixes issue where deletions in one workspace weren't propagated to others
429
+ - Added `DeleteIssue` to Storage interface for backend extensibility (e291ee0)
430
+ - **Import/Export Deadlock** (a0d24f3): Prevent import/export from hanging when daemon is running
431
+ - **Pre-Push Hook** (3ba245e): Fix pre-push hook blocking instead of exporting
432
+ - **Hash ID Recognition** (c924731, 055f1d9): Fix `isHashID` to recognize Base36 hash IDs and IDs without a-f letters
433
+ - **Git Merge Artifacts** (41b1a21): Ignore merge artifacts in `.beads/.gitignore`
434
+ - **bd status Command** (1edf3c6): Now uses git history for recent activity detection
435
+ - **Performance**: Add raw string equality short-circuit before jsonEquals (5c1f441)
436
+
437
+ ### Changed
438
+
439
+ - **Code Organization**:
440
+ - Extract SQLite migrations into separate files (b655b29)
441
+ - Centralize BD_DEBUG logging into `internal/debug` package (95cbcf4)
442
+ - Extract `normalizeLabels` to `internal/util/strings.go` (9520e7a)
443
+ - Reorganize project structure: move Go files to `internal/beads`, docs to `docs/` (584c266)
444
+ - Remove unused `internal/daemonrunner/` package (~1,500 LOC) (a7ec8a2)
445
+
446
+ - **Testing**:
447
+ - Optimize test suite with `testing.Short()` guards for faster local testing (11fa142, 0f4b03e)
448
+ - Add comprehensive tests for merge driver auto-config (6424ebd)
449
+ - Add comprehensive tests for 3-way merge functionality (14b2d34)
450
+ - Add edge case tests for `getMultiRepoJSONLPaths()` (78c9d74)
451
+
452
+ - **CI/CD**:
453
+ - Separate Homebrew update workflow with PAT support (739786e)
454
+ - Add manual trigger to Homebrew workflow for testing (563c12b)
455
+ - Fix Linux checksums extraction in Homebrew workflow (c47f40b)
456
+ - Add script to automate Nix vendorHash updates (#235)
457
+
458
+ ### Performance
459
+
460
+ - Cache `getMultiRepoJSONLPaths()` to avoid redundant calls (7afb143)
461
+
462
+ ## [0.22.0] - 2025-11-05
463
+
464
+ ### Added
465
+
466
+ - **Intelligent Merge Driver** (bd-omx1, 52c5059): Auto-configured git merge driver for JSONL conflict resolution
467
+ - Vendors beads-merge algorithm for field-level 3-way merging
468
+ - Automatically configured during `bd init` (both interactive and `--quiet` modes)
469
+ - Matches issues by identity (id + created_at + created_by)
470
+ - Smart field merging: timestamps→max, dependencies→union, status/priority→3-way
471
+ - Eliminates most git merge conflicts in `.beads/beads.jsonl`
472
+
473
+ - **Onboarding Wizards** (b230a22): New `bd init` workflows for different collaboration models
474
+ - `bd init --contributor`: OSS contributor wizard (separate planning repo)
475
+ - `bd init --team`: Team collaboration wizard (branch-based workflow)
476
+ - Interactive setup with fork detection and remote configuration
477
+ - Auto-configures sync settings for each workflow
478
+
479
+ - **Migration Tools** (349817a): New `bd migrate-issues` command for cross-repo issue migration
480
+ - Migrate issues between repositories while preserving dependencies
481
+ - Source filtering (by label, priority, status, type)
482
+ - Automatic remote repo detection and push
483
+ - Complete multi-repo workflow documentation
484
+
485
+ - **Multi-Phase Development Guide** (3ecc16e): Comprehensive workflow examples
486
+ - Multi-phase development (feature → integration → deployment)
487
+ - Multiple personas (designer, frontend dev, backend dev)
488
+ - Best practices for complex projects
489
+
490
+ - **Dependency Status** (3acaf1d): Show blocker status in `bd show` output
491
+ - Displays "Blocked by N open issues" when dependencies exist
492
+ - Shows "Ready to work (no blockers)" when unblocked
493
+
494
+ - **DevContainer Support** (247e659): Automatic bd setup in GitHub Codespaces
495
+ - Pre-configured Go environment with bd pre-installed
496
+ - Auto-detects existing `.beads/` and imports on startup
497
+
498
+ - **Landing the Plane Protocol** (095e40d): Session-ending checklist for AI agents
499
+ - Quality gates, sync procedures, git cleanup
500
+ - Ensures clean handoff between sessions
501
+
502
+ ### Fixed
503
+
504
+ - **SearchIssues N+1 Query** (bd-5ots, e90e485): Eliminated N+1 query bug in label loading
505
+ - Batch-loads labels for all issues in one query
506
+ - Significant performance improvement for `bd list` with many labeled issues
507
+
508
+ - **Sync Validation** (bd-9bsx, 5438485): Prevent infinite dirty loop in auto-sync
509
+ - Added export verification to detect write failures
510
+ - Ensures JSONL line count matches database after export
511
+
512
+ - **bd edit Direct Mode** (GH #227, d4c73c3): Force `bd edit` to always use direct mode
513
+ - Prevents daemon interference with interactive editor sessions
514
+ - Resolves hang issues when editing in terminals
515
+
516
+ - **SQLite Driver on arm64 macOS** (f9771cd): Fixed missing SQLite driver in arm64 builds
517
+ - Explicitly imports CGO-enabled sqlite driver
518
+ - Resolves "database driver not found" errors on Apple Silicon
519
+
520
+ - **external_ref Type Handling** (e1e58ef): Handle both string and *string in UpdateIssue RPC
521
+ - Fixes type mismatch errors in MCP server
522
+ - Ensures consistent API behavior
523
+
524
+ - **Windows Test Stability** (2ac28b0, 8c5e51e): Skip flaky concurrent tests on Windows
525
+ - Prevents false failures in CI/CD
526
+ - Improves overall test suite reliability
527
+
528
+ ### Changed
529
+
530
+ - **Test Suite Performance** (0fc4da7): Optimized test suite for 15-18x speedup
531
+ - Reduced redundant database operations
532
+ - Parallelized independent test cases
533
+ - Faster CI/CD builds
534
+
535
+ - **Priority Format** (b8785d3): Added support for P-prefix priority format (P0-P4)
536
+ - Accepts both `--priority 1` and `--priority P1`
537
+ - More intuitive for GitHub/Jira users
538
+
539
+ - **--label Alias** (85ca8c3): Added `--label` as alias for `--labels` in `bd create`
540
+ - Both singular and plural forms now work
541
+ - Improved CLI ergonomics
542
+
543
+ - **--parent Flag in Daemon Mode** (fc89f15): Added `--parent` support in daemon RPC
544
+ - MCP server can now set parent relationships
545
+ - Parity with CLI functionality
546
+
547
+ ### Documentation
548
+
549
+ - **Multi-Repo Migration Guide** (9e60ed1): Complete documentation for multi-repo workflows
550
+ - OSS contributors, teams, multi-phase development
551
+ - Addresses common questions about fork vs branch workflows
552
+
553
+ - **beads-merge Setup Instructions** (527e491): Enhanced merge driver documentation
554
+ - Installation guide for standalone binary
555
+ - Jujutsu configuration examples
556
+
557
+ ## [0.21.9] - 2025-11-05
558
+
559
+ ### Added
560
+
561
+ - **Epic/Child Filtering** (bd-zkl, fbe790a): New `bd list` filters for hierarchical issue queries
562
+ - `--ancestor <id>`: Filter by ancestor issue (shows all descendants)
563
+ - `--parent <id>`: Filter by direct parent issue
564
+ - `--epic <id>`: Alias for `--ancestor` (more intuitive for epic-based workflows)
565
+ - `ancestor_id` field added to issue type for efficient epic hierarchy queries
566
+
567
+ - **Advanced List Filters**: Pattern matching, date ranges, and empty checks
568
+ - **Pattern matching**: `--title-contains`, `--desc-contains`, `--notes-contains` (case-insensitive substring)
569
+ - **Date ranges**: `--created-after/before`, `--updated-after/before`, `--closed-after/before`
570
+ - **Empty checks**: `--empty-description`, `--no-assignee`, `--no-labels`
571
+ - **Priority ranges**: `--priority-min`, `--priority-max`
572
+
573
+ - **Database Migration** (bd-bb08, 3bde4b0): Added `ON DELETE CASCADE` to `child_counters` table
574
+ - Prevents orphaned child counter records when issues are deleted
575
+ - Comprehensive migration tests ensure data integrity
576
+
577
+ ### Fixed
578
+
579
+ - **Import Timestamp Preservation** (8b9a486): Fixed critical bug where `closed_at` timestamps were lost during sync
580
+ - Ensures closed issues retain their original completion timestamps
581
+ - Prevents issue resurrection timestamps from overwriting real closure times
582
+
583
+ - **Import Config Respect** (7292c85): Import now respects `import.missing_parents` config setting
584
+ - Previously ignored config for parent resurrection behavior
585
+ - Now correctly honors user's preference for handling missing parents
586
+
587
+ - **GoReleaser Homebrew Tap** (37ed10c): Fixed homebrew tap to point to `steveyegge/homebrew-beads`
588
+ - Automated homebrew formula updates now work correctly
589
+ - Resolves brew installation issues
590
+
591
+ - **npm Package Versioning** (626d51d): Added npm-package to version bump script
592
+ - Ensures `@beads/bd` npm package stays in sync with CLI releases
593
+ - Prevents version mismatches across distribution channels
594
+
595
+ - **Linting** (52cf2af): Fixed golangci-lint errors
596
+ - Added proper error handling
597
+ - Added gosec suppressions for known-safe operations
598
+
599
+ ### Changed
600
+
601
+ - **RPC Filter Parity** (510ca17): Comprehensive test coverage for CLI vs RPC filter behavior
602
+ - Ensures MCP server and CLI have identical filtering semantics
603
+ - Validates all new filters work correctly in both modes
604
+
605
+ ## [0.21.8] - 2025-11-05
606
+
10
607
  ### Added
11
608
 
12
609
  - **Parent Resurrection** (bd-58c0): Automatic resurrection of deleted parent issues from JSONL history
@@ -24,6 +621,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
24
621
  ### Fixed
25
622
 
26
623
  - **JSONL Resurrection Logic**: Fixed to use LAST occurrence instead of FIRST (append-only semantics)
624
+ - **Version Bump Script**: Added `--tag` and `--push` flags to automate release tagging
625
+ - Addresses confusion where version bump doesn't trigger GitHub release
626
+ - New usage: `./scripts/bump-version.sh X.Y.Z --commit --tag --push`
27
627
 
28
628
  ## [0.21.7] - 2025-11-04
29
629
 
package/bin/README.md CHANGED
@@ -58,6 +58,7 @@ Agents report that they enjoy working with Beads, and they will use it spontaneo
58
58
  - 🤖 **Agent-friendly** - `--json` flags for programmatic integration
59
59
  - 📦 **Git-versioned** - JSONL records stored in git, synced across machines
60
60
  - 🌍 **Distributed by design** - Agents on multiple machines share one logical database via git
61
+ - 🚀 **Optional Agent Mail** - Real-time multi-agent coordination (<100ms vs 2-5s git sync, 98.5% reduction in git traffic)
61
62
  - 🔐 **Protected branch support** - Works with GitHub/GitLab protected branches via separate sync branch
62
63
  - 🏗️ **Extensible** - Add your own tables to the SQLite database
63
64
  - 🔍 **Multi-project isolation** - Each project gets its own database, auto-discovered by directory
@@ -67,6 +68,22 @@ Agents report that they enjoy working with Beads, and they will use it spontaneo
67
68
  - ⚡ **High performance** - Batch operations for bulk imports (1000 issues in ~950ms)
68
69
  - 🗜️ **Memory decay** - Semantic compaction gracefully reduces old closed issues
69
70
 
71
+ ## Requirements
72
+
73
+ **Linux users:** Beads requires **glibc 2.32+** (Ubuntu 22.04+, Debian 11+, RHEL 9+, or equivalent).
74
+
75
+ - ✅ **Supported:** Ubuntu 22.04+ (Jammy), Debian 11+ (Bullseye), Fedora 34+, RHEL 9+
76
+ - ❌ **Not supported:** Ubuntu 20.04 (glibc 2.31), Debian 10 (glibc 2.28), CentOS 7, RHEL 8
77
+
78
+ **Ubuntu 20.04 users:** Standard support ended April 2025. Please upgrade to Ubuntu 22.04+ or build from source:
79
+ ```bash
80
+ git clone https://github.com/steveyegge/beads.git
81
+ cd beads
82
+ go build -o bd ./cmd/bd
83
+ ```
84
+
85
+ **macOS/Windows:** No special requirements.
86
+
70
87
  ## Installation
71
88
 
72
89
  **npm (Node.js environments, Claude Code for Web):**
@@ -74,20 +91,23 @@ Agents report that they enjoy working with Beads, and they will use it spontaneo
74
91
  npm install -g @beads/bd
75
92
  ```
76
93
 
77
- **Quick install (all platforms):**
94
+ **Quick install (macOS / Linux):**
78
95
  ```bash
79
96
  curl -fsSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash
80
97
  ```
81
98
 
99
+ **Quick install (Windows - PowerShell):**
100
+ ```powershell
101
+ irm https://raw.githubusercontent.com/steveyegge/beads/main/install.ps1 | iex
102
+ ```
103
+
82
104
  **Homebrew (macOS/Linux):**
83
105
  ```bash
84
106
  brew tap steveyegge/beads
85
107
  brew install bd
86
108
  ```
87
109
 
88
- **Other platforms and methods:** See [INSTALLING.md](INSTALLING.md) for Windows, Arch Linux, and manual installation.
89
-
90
- **IDE Integration:** See [INSTALLING.md](INSTALLING.md) for Claude Code plugin and MCP server setup.
110
+ For full, platform-specific instructions (Windows, Arch Linux, manual builds, IDE integrations, etc.) see the canonical guide in [docs/INSTALLING.md](docs/INSTALLING.md).
91
111
 
92
112
  **Claude Code for Web:** See [npm-package/CLAUDE_CODE_WEB.md](npm-package/CLAUDE_CODE_WEB.md) for SessionStart hook setup.
93
113
 
@@ -102,6 +122,12 @@ Beads is designed for **AI coding agents** to use on your behalf. Setup takes 30
102
122
  # In your project root:
103
123
  bd init
104
124
 
125
+ # For OSS contributors (fork workflow):
126
+ bd init --contributor
127
+
128
+ # For team members (branch workflow):
129
+ bd init --team
130
+
105
131
  # For protected branches (GitHub/GitLab):
106
132
  bd init --branch beads-metadata
107
133
 
@@ -109,6 +135,7 @@ bd init --branch beads-metadata
109
135
  # - Create .beads/ directory with database
110
136
  # - Import existing issues from git (if any)
111
137
  # - Prompt to install git hooks (recommended: say yes)
138
+ # - Prompt to configure git merge driver (recommended: say yes)
112
139
  # - Auto-start daemon for sync
113
140
 
114
141
  # Then tell your agent about bd:
@@ -123,10 +150,39 @@ echo "BEFORE ANYTHING ELSE: run 'bd onboard' and follow the instructions" >> AGE
123
150
  3. Update CLAUDE.md with a note (if present)
124
151
  4. Remove the bootstrap instruction
125
152
 
126
- **For agents setting up repos:** Use `bd init --quiet` for non-interactive setup (auto-installs git hooks, no prompts).
153
+ **For agents setting up repos:** Use `bd init --quiet` for non-interactive setup (auto-installs git hooks and merge driver, no prompts).
127
154
 
128
155
  **For new repo clones:** Run `bd init` (or `bd init --quiet` for agents) to import existing issues from `.beads/issues.jsonl` automatically.
129
156
 
157
+ **Git merge driver:** During `bd init`, beads configures git to use `bd merge` for intelligent JSONL merging. This prevents conflicts when multiple branches modify issues. Skip with `--skip-merge-driver` if needed. To configure manually later:
158
+ ```bash
159
+ git config merge.beads.driver "bd merge %A %O %L %R"
160
+ git config merge.beads.name "bd JSONL merge driver"
161
+ echo ".beads/beads.jsonl merge=beads" >> .gitattributes
162
+ ```
163
+
164
+ ### Files Created by `bd init`
165
+
166
+ **`bd init` creates these files in your repository:**
167
+
168
+ **Should be committed to git:**
169
+ - `.gitattributes` - Configures git merge driver for intelligent JSONL merging (critical for team collaboration)
170
+ - `.beads/beads.jsonl` - Issue data in JSONL format (source of truth, synced via git)
171
+ - `.beads/config.yaml` - Repository configuration template
172
+ - `.beads/README.md` - Documentation about beads for repository visitors
173
+ - `.beads/metadata.json` - Database metadata
174
+
175
+ **Should be in `.gitignore` (local-only):**
176
+ - `.beads/beads.db` - SQLite cache (auto-synced with JSONL)
177
+ - `.beads/beads.db-*` - SQLite journal files
178
+ - `.beads/bd.sock` / `.beads/bd.pipe` - Daemon communication socket
179
+ - `.beads/.exclusive-lock` - Daemon lock file
180
+ - `.git/beads-worktrees/` - Git worktrees (only created when using protected branch workflows)
181
+
182
+ The `.gitignore` entries are automatically created inside `.beads/.gitignore` by `bd init`, but your project's root `.gitignore` should also exclude the database and daemon files if you want to keep your git status clean.
183
+
184
+ **Using devcontainers?** Open the repository in a devcontainer (GitHub Codespaces or VS Code Remote Containers) and bd will be automatically installed with git hooks configured. See [.devcontainer/README.md](.devcontainer/README.md) for details.
185
+
130
186
  Most tasks will be created and managed by agents during conversations. You can check on things with:
131
187
 
132
188
  ```bash
@@ -163,6 +219,34 @@ bd update <issue-id> --status in_progress --json
163
219
  bd close <issue-id> --reason "Implemented" --json
164
220
  ```
165
221
 
222
+ ## Configuring Your Own AGENTS.md
223
+
224
+ **Recommendation for project maintainers:** Add a session-ending protocol to your project's `AGENTS.md` file to ensure agents properly manage issue tracking and sync the database before finishing work.
225
+
226
+ This pattern has proven invaluable for maintaining database hygiene and preventing lost work. Here's what to include (adapt for your workflow):
227
+
228
+ **1. File/update issues for remaining work**
229
+ - Agents should proactively create issues for discovered bugs, TODOs, and follow-up tasks
230
+ - Close completed issues and update status for in-progress work
231
+
232
+ **2. Run quality gates (if applicable)**
233
+ - Tests, linters, builds - only if code changes were made
234
+ - File P0 issues if builds are broken
235
+
236
+ **3. Sync the issue tracker carefully**
237
+ - Work methodically to ensure local and remote issues merge safely
238
+ - Handle git conflicts thoughtfully (sometimes accepting remote and re-importing)
239
+ - Goal: clean reconciliation where no issues are lost
240
+
241
+ **4. Verify clean state**
242
+ - All changes committed and pushed
243
+ - No untracked files remain
244
+
245
+ **5. Choose next work**
246
+ - Provide a formatted prompt for the next session with context
247
+
248
+ See the ["Landing the Plane"](AGENT_INSTRUCTIONS.md#landing-the-plane) section in this project's documentation for a complete example you can adapt. The key insight: explicitly reminding agents to maintain issue tracker hygiene prevents the common problem of agents creating issues during work but forgetting to sync them at session end.
249
+
166
250
  ## The Magic: Distributed Database via Git
167
251
 
168
252
  Here's the crazy part: **bd acts like a centralized database, but it's actually distributed via git.**
@@ -387,6 +471,32 @@ bd list --assignee alice # Filter by assignee
387
471
  bd list --label=backend,urgent # Filter by labels (AND)
388
472
  bd list --label-any=frontend,backend # Filter by labels (OR)
389
473
 
474
+ # Advanced filters
475
+ bd list --title-contains "auth" # Search title
476
+ bd list --desc-contains "implement" # Search description
477
+ bd list --notes-contains "TODO" # Search notes
478
+ bd list --id bd-123,bd-456 # Specific IDs (comma-separated)
479
+
480
+ # Date range filters (YYYY-MM-DD or RFC3339)
481
+ bd list --created-after 2024-01-01 # Created after date
482
+ bd list --created-before 2024-12-31 # Created before date
483
+ bd list --updated-after 2024-06-01 # Updated after date
484
+ bd list --updated-before 2024-12-31 # Updated before date
485
+ bd list --closed-after 2024-01-01 # Closed after date
486
+ bd list --closed-before 2024-12-31 # Closed before date
487
+
488
+ # Empty/null checks
489
+ bd list --empty-description # Issues with no description
490
+ bd list --no-assignee # Unassigned issues
491
+ bd list --no-labels # Issues with no labels
492
+
493
+ # Priority ranges
494
+ bd list --priority-min 0 --priority-max 1 # P0 and P1 only
495
+ bd list --priority-min 2 # P2 and below
496
+
497
+ # Combine multiple filters
498
+ bd list --status open --priority 1 --label-any urgent,critical --no-assignee
499
+
390
500
  # JSON output for agents
391
501
  bd info --json
392
502
  bd list --json
@@ -479,7 +589,7 @@ bd list --label backend,auth # AND: must have ALL labels
479
589
  bd list --label-any frontend,ui # OR: must have AT LEAST ONE
480
590
  ```
481
591
 
482
- **See [LABELS.md](LABELS.md) for complete label documentation and best practices.**
592
+ **See [docs/LABELS.md](docs/LABELS.md) for complete label documentation and best practices.**
483
593
 
484
594
  ### Deleting Issues
485
595
 
@@ -521,18 +631,28 @@ bd config list --json
521
631
  bd config unset jira.url
522
632
  ```
523
633
 
524
- **See [CONFIG.md](CONFIG.md) for complete configuration documentation.**
634
+ **See [docs/CONFIG.md](docs/CONFIG.md) for complete configuration documentation.**
525
635
 
526
636
  ### Compaction (Memory Decay)
527
637
 
528
- Beads uses AI to compress old closed issues, keeping databases lightweight as they age:
638
+ Beads provides **agent-driven compaction** - your AI agent decides what to compress, no API keys required:
529
639
 
530
640
  ```bash
531
- bd compact --dry-run --all # Preview candidates
532
- bd compact --days 90 # Compact closed issues older than 90 days
641
+ # Agent-driven workflow (recommended)
642
+ bd compact --analyze --json # Get candidates with full content
643
+ bd compact --apply --id bd-42 --summary summary.txt
644
+
645
+ # Legacy AI-powered workflow (requires ANTHROPIC_API_KEY)
646
+ bd compact --auto --dry-run --all # Preview candidates
647
+ bd compact --auto --all # Auto-compact all eligible issues
533
648
  ```
534
649
 
535
- This is agentic memory decay - your database naturally forgets fine-grained details while preserving essential context.
650
+ **How it works:**
651
+ 1. Use `--analyze` to export candidates (closed 30+ days) with full content
652
+ 2. Summarize the content using any LLM (Claude, GPT, local model, etc.)
653
+ 3. Use `--apply` to persist the summary and mark as compacted
654
+
655
+ This is agentic memory decay - your database naturally forgets fine-grained details while preserving essential context. The agent has full control over compression quality.
536
656
 
537
657
  ### Export/Import
538
658
 
@@ -564,6 +684,10 @@ bd daemons health
564
684
  bd daemons stop /path/to/workspace
565
685
  bd daemons stop 12345 # By PID
566
686
 
687
+ # Restart a specific daemon
688
+ bd daemons restart /path/to/workspace
689
+ bd daemons restart 12345 # By PID
690
+
567
691
  # View daemon logs
568
692
  bd daemons logs /path/to/workspace -n 100
569
693
  bd daemons logs 12345 -f # Follow mode
@@ -580,6 +704,39 @@ bd daemons killall --force # Force kill if graceful fails
580
704
 
581
705
  See [commands/daemons.md](commands/daemons.md) for complete documentation.
582
706
 
707
+ ### Web Interface
708
+
709
+ A standalone web interface for real-time issue monitoring is available as an example:
710
+
711
+ ```bash
712
+ # Build the monitor-webui
713
+ cd examples/monitor-webui
714
+ go build
715
+
716
+ # Start web UI on localhost:8080
717
+ ./monitor-webui
718
+
719
+ # Custom port and host
720
+ ./monitor-webui -port 3000
721
+ ./monitor-webui -host 0.0.0.0 -port 8080 # Listen on all interfaces
722
+ ```
723
+
724
+ The monitor provides:
725
+ - **Real-time table view** of all issues with filtering by status and priority
726
+ - **Click-through details** - Click any issue to view full details in a modal
727
+ - **Live updates** - WebSocket connection for real-time changes via daemon RPC
728
+ - **Responsive design** - Mobile-friendly card view on small screens
729
+ - **Statistics dashboard** - Quick overview of issue counts and ready work
730
+ - **Clean UI** - Simple, fast interface styled with milligram.css
731
+
732
+ The monitor is particularly useful for:
733
+ - **Team visibility** - Share a dashboard view of project status
734
+ - **AI agent supervision** - Watch your coding agent create and update issues in real-time
735
+ - **Quick browsing** - Faster than CLI for exploring issue details
736
+ - **Mobile access** - Check project status from your phone
737
+
738
+ See [examples/monitor-webui/](examples/monitor-webui/) for complete documentation.
739
+
583
740
  ## Examples
584
741
 
585
742
  Check out the **[examples/](examples/)** directory for:
@@ -594,24 +751,28 @@ Check out the **[examples/](examples/)** directory for:
594
751
 
595
752
  For advanced usage, see:
596
753
 
597
- - **[ADVANCED.md](ADVANCED.md)** - Prefix renaming, merging duplicates, daemon configuration
598
- - **[CONFIG.md](CONFIG.md)** - Configuration system for integrations
599
- - **[EXTENDING.md](EXTENDING.md)** - Database extension patterns
600
- - **[ADVANCED.md](ADVANCED.md)** - JSONL format and merge strategies
754
+ - **[docs/ADVANCED.md](docs/ADVANCED.md)** - Prefix renaming, merging duplicates, daemon configuration
755
+ - **[docs/CONFIG.md](docs/CONFIG.md)** - Configuration system for integrations
756
+ - **[docs/EXTENDING.md](docs/EXTENDING.md)** - Database extension patterns
757
+ - **[docs/ADVANCED.md](docs/ADVANCED.md)** - JSONL format and merge strategies
601
758
 
602
759
  ## Documentation
603
760
 
604
761
  - **[README.md](README.md)** - You are here! Core features and quick start
605
- - **[INSTALLING.md](INSTALLING.md)** - Complete installation guide for all platforms
606
- - **[QUICKSTART.md](QUICKSTART.md)** - Interactive tutorial (`bd quickstart`)
607
- - **[FAQ.md](FAQ.md)** - Frequently asked questions
608
- - **[TROUBLESHOOTING.md](TROUBLESHOOTING.md)** - Common issues and solutions
609
- - **[ADVANCED.md](ADVANCED.md)** - Advanced features and use cases
610
- - **[LABELS.md](LABELS.md)** - Complete label system guide
611
- - **[CONFIG.md](CONFIG.md)** - Configuration system
612
- - **[EXTENDING.md](EXTENDING.md)** - Database extension patterns
613
- - **[ADVANCED.md](ADVANCED.md)** - JSONL format analysis
614
- - **[PLUGIN.md](PLUGIN.md)** - Claude Code plugin documentation
762
+ - **[docs/INSTALLING.md](docs/INSTALLING.md)** - Complete installation guide for all platforms
763
+ - **[docs/QUICKSTART.md](docs/QUICKSTART.md)** - Interactive tutorial (`bd quickstart`)
764
+ - **[docs/AGENT_MAIL_QUICKSTART.md](docs/AGENT_MAIL_QUICKSTART.md)** - 5-minute Agent Mail setup guide
765
+ - **[docs/AGENT_MAIL.md](docs/AGENT_MAIL.md)** - Complete Agent Mail integration guide
766
+ - **[docs/MULTI_REPO_MIGRATION.md](docs/MULTI_REPO_MIGRATION.md)** - Multi-repo workflow guide (OSS, teams, multi-phase)
767
+ - **[docs/MULTI_REPO_AGENTS.md](docs/MULTI_REPO_AGENTS.md)** - Multi-repo patterns for AI agents
768
+ - **[docs/FAQ.md](docs/FAQ.md)** - Frequently asked questions
769
+ - **[docs/TROUBLESHOOTING.md](docs/TROUBLESHOOTING.md)** - Common issues and solutions
770
+ - **[docs/ADVANCED.md](docs/ADVANCED.md)** - Advanced features and use cases
771
+ - **[docs/LABELS.md](docs/LABELS.md)** - Complete label system guide
772
+ - **[docs/CONFIG.md](docs/CONFIG.md)** - Configuration system
773
+ - **[docs/EXTENDING.md](docs/EXTENDING.md)** - Database extension patterns
774
+ - **[docs/ADVANCED.md](docs/ADVANCED.md)** - JSONL format analysis
775
+ - **[docs/PLUGIN.md](docs/PLUGIN.md)** - Claude Code plugin documentation
615
776
  - **[CONTRIBUTING.md](CONTRIBUTING.md)** - Contribution guidelines
616
777
  - **[SECURITY.md](SECURITY.md)** - Security policy
617
778
 
package/bin/bd CHANGED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@beads/bd",
3
- "version": "0.22.0",
3
+ "version": "0.24.0",
4
4
  "description": "Beads issue tracker - lightweight memory system for coding agents with native binary support",
5
5
  "main": "bin/bd.js",
6
6
  "bin": {