Files
beads/QUICKSTART.md
Steve Yegge 704515125d Initial commit: Beads issue tracker with security fixes
Core features:
- Dependency-aware issue tracking with SQLite backend
- Ready work detection (issues with no open blockers)
- Dependency tree visualization
- Cycle detection and prevention
- Full audit trail
- CLI with colored output

Security and correctness fixes applied:
- Fixed SQL injection vulnerability in UpdateIssue (whitelisted fields)
- Fixed race condition in ID generation (added mutex)
- Fixed cycle detection to return full paths (not just issue IDs)
- Added cycle prevention in AddDependency (validates before commit)
- Added comprehensive input validation (priority, status, types, etc.)
- Fixed N+1 query in GetBlockedIssues (using GROUP_CONCAT)
- Improved query building in GetReadyWork (proper string joining)
- Fixed P0 priority filter bug (using Changed() instead of value check)

All critical and major issues from code review have been addressed.

🤖 Generated with Claude Code
2025-10-11 20:07:36 -07:00

1.6 KiB

Beads Quickstart

Get up and running with Beads in 2 minutes.

Installation

cd ~/src/beads
go build -o beads ./cmd/beads
./beads --help

Your First Issues

# Create a few issues
./beads create "Set up database" -p 1 -t task
./beads create "Create API" -p 2 -t feature
./beads create "Add authentication" -p 2 -t feature

# List them
./beads list

Add Dependencies

# API depends on database
./beads dep add bd-2 bd-1

# Auth depends on API
./beads dep add bd-3 bd-2

# View the tree
./beads dep tree bd-3

Output:

🌲 Dependency tree for bd-3:

→ bd-3: Add authentication [P2] (open)
  → bd-2: Create API [P2] (open)
    → bd-1: Set up database [P1] (open)

Find Ready Work

./beads ready

Output:

📋 Ready work (1 issues with no blockers):

1. [P1] bd-1: Set up database

Only bd-1 is ready because bd-2 and bd-3 are blocked!

Work the Queue

# Start working on bd-1
./beads update bd-1 --status in_progress

# Complete it
./beads close bd-1 --reason "Database setup complete"

# Check ready work again
./beads ready

Now bd-2 is ready! 🎉

Track Progress

# See blocked issues
./beads blocked

# View statistics
./beads stats

Database Location

By default: ~/.beads/beads.db

You can use project-specific databases:

./beads --db ./my-project.db create "Task"

Next Steps

  • Add labels: ./beads create "Task" -l "backend,urgent"
  • Filter ready work: ./beads ready --priority 1
  • Search issues: ./beads list --status open
  • Detect cycles: ./beads dep cycles

See README.md for full documentation.