From core
Guides Bees CLI for SQLite-backed local issue tracking, dependency management, ready-task queries, and AI exports via markdown/JSONL.
npx claudepluginhub vinnie357/claude-skills --plugin coreThis skill uses the workspace's default tool permissions.
This skill activates when working with Bees for issue tracking, dependency management, and AI-augmented workflows.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
This skill activates when working with Bees for issue tracking, dependency management, and AI-augmented workflows.
Activate when:
bees prime)bees sync)Bees is a lightweight, local-first issue tracker designed for AI-augmented development:
bees prime outputs markdown for LLM context, bees sync exports JSONLbees ready, supports blocks/related/parent-child.beads symlink.bees/ directoryAdd to your mise.toml:
[tools."github:ctxshift/bees"]
version = "latest"
[tools."github:ctxshift/bees".platforms]
linux-x64 = { asset_pattern = "bees-linux-x86_64.tar.gz" }
linux-arm64 = { asset_pattern = "bees-linux-aarch64.tar.gz" }
macos-arm64 = { asset_pattern = "bees-macos-aarch64.tar.gz" }
macos-x64 = { asset_pattern = "bees-macos-x86_64.tar.gz" }
See templates/mise.toml for the full mise task definitions.
Download from GitHub Releases:
| Platform | Asset |
|---|---|
| Linux x86_64 | bees-linux-x86_64.tar.gz |
| Linux aarch64 | bees-linux-aarch64.tar.gz |
| macOS aarch64 | bees-macos-aarch64.tar.gz |
| macOS x86_64 | bees-macos-x86_64.tar.gz |
Requires Zig 0.15.0+:
git clone https://github.com/ctxshift/bees.git
cd bees
zig build -Doptimize=ReleaseSafe
bees init
Creates the .bees/ directory with SQLite database and configuration.
bees create "Implement user authentication"
bees list
bees show <id>
bees close <id>
bees ready
Returns issues with no unresolved dependencies.
Create a new issue:
bees create "Title"
bees create "Title" -d "Description text"
bees create "Title" -l "bug,priority:high"
bees create "Title" -a "alice" -o "bob"
bees create "Title" -p <parent-id>
Flags:
-d / --description: Issue description-l / --labels: Comma-separated labels-a / --assignee: Assignee name-o / --owner: Owner name-p / --parent: Parent issue IDList issues with filtering:
bees list
bees list --status open
bees list --status closed
bees list --labels "bug"
bees list --assignee "alice"
bees list --json
Show issue details:
bees show <id>
bees show <id> --json
Update issue fields:
bees update <id> -d "Updated description"
bees update <id> -a "bob"
bees update <id> --status in_progress
Close an issue:
bees close <id>
bees close <id> -r "Completed in PR #42"
The -r flag adds a closing reason.
List issues with no unresolved dependencies:
bees ready
bees ready --json
bees ready --labels "priority:high"
Manage dependencies between issues:
bees dep add <id> <blocker-id> # id depends on blocker-id
bees dep add <id> <related-id> -t related # related relationship
bees dep remove <id> <blocker-id>
bees dep list <id>
Dependency types (via -t flag):
blocks (default): Blocker relationshiprelated: Related issue, no blockingparent: Parent-child hierarchyManage labels on issues:
bees label add <id> "bug,priority:high"
bees label remove <id> "wip"
Add and list comments on issues:
bees comment add <id> "Working on this now"
bees comment list <id>
View and set configuration:
bees config # Show current config
bees config set key value # Set a config value
bees config get key # Get a config value
Export issues to JSONL format:
bees sync
Writes issues from the SQLite database to issues.jsonl in the .bees/ directory. This is a one-directional export (database to JSONL).
Generate markdown output for LLM context:
bees prime
bees prime --status open
bees prime --labels "sprint:current"
Outputs a formatted markdown summary of issues suitable for including in AI agent prompts.
Bees supports three relationship types between issues:
| Type | Flag | Behavior |
|---|---|---|
| blocks | -t blocks (default) | Prevents bees ready from showing dependent issue |
| related | -t related | Informational link, no blocking |
| parent | -t parent | Parent-child hierarchy |
bees ready returns issues where:
openblocks dependencies remainBees detects circular dependencies and rejects them:
bees dep add taskA taskB
bees dep add taskB taskA # Error: would create cycle
Export all issues to JSONL for external tooling:
bees sync
# Writes .bees/issues.jsonl
The JSONL file contains one JSON object per line, compatible with standard data processing tools.
Generate a markdown summary for LLM context windows:
bees prime
Output includes issue titles, descriptions, labels, dependencies, and status in a readable markdown format. Pipe directly into agent prompts or save to file.
All list commands support --json for machine-readable output:
bees list --json
bees ready --json
bees show <id> --json
# Get first ready issue ID
TASK_ID=$(bees ready --json | jq -r '.[0].id')
# Count open issues
bees list --json | jq 'length'
# Get issue titles
bees list --json | jq -r '.[].title'
.bees/
├── bees.db # SQLite database (WAL mode) - primary storage
├── issues.jsonl # JSONL export (created by bees sync)
├── metadata.json # Repository metadata
├── config.json # Local configuration
└── .beads # Symlink for VS Code extension compatibility
Unlike beads (which uses JSONL as primary with SQLite cache), bees uses SQLite as the primary data store:
rebuild commandsbees sync exports to JSONL for portabilityBees creates a .beads symlink pointing to the .bees/ directory. This enables compatibility with VS Code extensions designed for beads (vscode-beads and beads-kanban).
git checkout main && git pull
bees ready # Find available issues
bees show <id> # Read requirements
git checkout -b feature/<name>
bees update <id> --status in_progress
# Do the work:
# - Read existing code to understand patterns
# - Implement following project conventions
# - Run quality gates (tests, linters, formatters)
git add <files>
git commit -m "type(scope): description"
git push -u origin <branch>
gh pr create --title "type(scope): description" --body "- Change one
- Change two"
gh pr checks --watch
bees close <id>
git add .bees/ && git commit -m "chore(bees): close <id>"
git push
After user merges:
git checkout main && git pull
git branch -d <branch>
bees ready # Find next issue
#!/bin/bash
while true; do
TASK=$(bees ready --json | jq -r '.[0] // empty')
if [ -z "$TASK" ]; then
echo "No ready issues"
break
fi
TASK_ID=$(echo "$TASK" | jq -r '.id')
TITLE=$(echo "$TASK" | jq -r '.title')
echo "Working on: $TITLE ($TASK_ID)"
# Do work...
bees close "$TASK_ID"
bees sync
done
Bees creates a .beads symlink to .bees/ for compatibility with the beads VS Code extensions:
planet57.vscode-beads)code --install-extension planet57.vscode-beads
Task list sidebar, syntax highlighting, and issue ID autocompletion.
DavidCForbes.beads-kanban)code --install-extension DavidCForbes.beads-kanban
Drag-and-drop kanban board with dependency visualization.
| Feature | Bees | Beads |
|---|---|---|
| Storage | SQLite (WAL mode) | JSONL + SQLite cache |
| Language | Zig | Go |
| Binary | Single static binary | Go binary |
| Sync model | One-directional export (bees sync) | Bidirectional git sync (bd sync/bd pull) |
| AI context | bees prime (markdown output) | --json flags only |
| Init modes | Local-first only | Full, stealth, contributor |
| Comments | bees comment add | bd comment |
| Dependency types | blocks, related, parent (-t flag) | blocks only |
| VS Code | Via .beads symlink | Native |
| Conflict resolution | Not needed (SQLite primary) | bd rebuild from JSONL |
type:bug, type:feature, type:chore
priority:high, priority:medium, priority:low
status:wip, status:blocked, status:review
sprint:42, epic:auth
skill:git, skill:security, skill:rust
bees ready to find actionable issuesblocks type for ordering constraintsrelated type for informational linksbees prime to inject issue context into agent promptsbees ready --json for automated task queue pollingbees sync to create portable JSONL snapshotsUse bees comment add to record progress notes:
bees comment add <id> "Completed initial implementation"
bees comment list <id>
# Check database integrity
sqlite3 .bees/bees.db "PRAGMA integrity_check;"
# Database is locked
# Ensure no other process has an exclusive lock
lsof .bees/bees.db
# Verify Zig version (requires 0.15.0+)
zig version
# Clean build
rm -rf zig-cache zig-out
zig build -Doptimize=ReleaseSafe
If issues.jsonl is stale, regenerate:
bees sync
references/teams-integration.md: Protocol for mirroring bees issues into Claude's task list for Agent Teams coordinationreferences/migration-from-beads.md: Guide for migrating from beads to bees