Add npm package for bd with native binaries (bd-febc)

Implements @beads/bd npm package for easy installation in Node.js
environments, especially Claude Code for Web.

Features:
- Automatic platform-specific binary download during postinstall
- CLI wrapper that invokes native bd binary
- Full feature parity with standalone bd
- Works with SessionStart hooks for auto-installation

Package structure:
- bin/bd.js: Node.js CLI wrapper
- scripts/postinstall.js: Downloads correct binary from GitHub releases
- scripts/test.js: Verification tests
- Comprehensive documentation (6 guides)

Published to npm: https://www.npmjs.com/package/@beads/bd

Benefits vs WASM:
- Full SQLite support (no custom VFS)
- Better performance (native vs WASM)
- Simpler implementation and maintenance
- All commands work identically

Closes bd-febc, bd-be7a, bd-e2e6, bd-f282, bd-87a0, bd-b54c

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Steve Yegge
2025-11-03 11:41:18 -08:00
parent e7be0a2869
commit da921e1829
15 changed files with 1741 additions and 6 deletions

52
npm-package/package.json Normal file
View File

@@ -0,0 +1,52 @@
{
"name": "@beads/bd",
"version": "0.21.5",
"description": "Beads issue tracker - lightweight memory system for coding agents with native binary support",
"main": "bin/bd.js",
"bin": {
"bd": "bin/bd.js"
},
"scripts": {
"postinstall": "node scripts/postinstall.js",
"test": "node scripts/test.js"
},
"keywords": [
"issue-tracker",
"dependency-tracking",
"ai-agent",
"coding-agent",
"claude",
"sqlite",
"git",
"project-management"
],
"author": "Steve Yegge",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/steveyegge/beads.git",
"directory": "npm-package"
},
"bugs": {
"url": "https://github.com/steveyegge/beads/issues"
},
"homepage": "https://github.com/steveyegge/beads#readme",
"engines": {
"node": ">=14.0.0"
},
"os": [
"darwin",
"linux",
"win32"
],
"cpu": [
"x64",
"arm64"
],
"files": [
"bin/",
"scripts/",
"README.md",
"LICENSE"
]
}