Skip to content
Back to skills

Beads 7

ASecurity

Manage beads issues for tracking development work. Use this skill when: (1) Starting a new task or feature, (2) Creating implementation or testing plans, (3) Tracking session progress and discoveries, (4) Finding available work, (5) Closing completed work. Beads stores issues in git-tracked JSONL with rich fields for design notes, acceptance criteria, and session notes.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 27, 2026
testinggobashreactfastapitestinggitapidatabasefrontendbackend

Works with

  • cli
  • api

Security analysis

A100/100

Scanned September 27, 2026

npx -y skills add David-Li0406/meta-skill-evloving --skill beads-7 --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Beads 7?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Beads 7
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/david-li0406-beads-7/badge)](https://www.skillsdirectory.com/skills/david-li0406-beads-7)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: beads
description: |
  Manage beads issues for tracking development work. Use this skill when: (1) Starting a new task or feature, (2) Creating implementation or testing plans, (3) Tracking session progress and discoveries, (4) Finding available work, (5) Closing completed work. Beads stores issues in git-tracked JSONL with rich fields for design notes, acceptance criteria, and session notes.
---

# Beads Issue Management

## Core Principle

**All work must be tracked in beads.** Before starting any task:
1. Check for existing issue: `bd ready` or `bd list --status=open`
2. Create issue if none exists
3. Claim work: `bd update <id> --status=in_progress`

## Rich Context Fields

Store implementation plans, testing criteria, and session notes directly in issues:

| Field | Flag | Purpose |
|-------|------|---------|
| `--design` | Design notes | Implementation plans, architecture decisions |
| `--acceptance` | Acceptance criteria | Testing plans, definition of done |
| `--notes` | Additional notes | Session discoveries, to-dos, context |
| `--description` | Full description | Problem statement, background |

## Creating Issues

```bash
# Feature with full context
bd create --title="Add user authentication" \
  --type=feature \
  --priority=2 \
  --description="Users need secure login/logout functionality" \
  --design="## Implementation Plan
1. Add JWT middleware to FastAPI
2. Create /auth/login and /auth/register endpoints
3. Add AuthContext to React frontend
4. Implement protected route wrapper" \
  --acceptance="## Definition of Done
- [ ] Unit tests for JWT validation
- [ ] Integration tests for auth endpoints
- [ ] E2E test for login flow
- [ ] Password hashing with bcrypt" \
  --notes="## Context
- Decision: JWT over OAuth for simplicity
- Token expiry: 24h with refresh tokens"
```

**Issue types:** `task`, `bug`, `feature`, `epic`
**Priorities:** 0-4 or P0-P4 (0=critical, 2=medium, 4=backlog)

## Required Fields by Issue Type

### Features (--type=feature)
Features **MUST** include:
- `--design`: Implementation plan with numbered steps
- `--acceptance`: Definition of done with testable criteria

### Bugs (--type=bug)
Bugs **MUST** include:
- `--description`: Steps to reproduce the bug
- `--acceptance`: How to verify the fix works

### Tasks (--type=task)
Tasks **SHOULD** include:
- `--description`: Clear scope of work

### Example: Well-Formed Feature

```bash
bd create --title="Add recipe rating system" \
  --type=feature \
  --priority=2 \
  --description="Users need to rate recipes 1-5 stars for recommendations" \
  --design="## Implementation Plan
1. Add rating column to recipes table (migration)
2. Create POST /api/recipes/{id}/rate endpoint
3. Add RatingStars component to RecipeDetail page
4. Update RecipeCard to show average rating
5. Add rating filter to recipe list" \
  --acceptance="## Definition of Done
- [ ] Database migration passes
- [ ] API endpoint validates 1-5 range
- [ ] Frontend shows clickable stars
- [ ] Average updates on new rating
- [ ] Unit tests for rating calculation"
```

## Session Workflow

### Starting Work
```bash
bd ready                              # Find available work
bd show <id>                          # Review issue details
bd update <id> --status=in_progress   # Claim it
```

### During Development
Update notes as you discover things:
```bash
bd update <id> --notes="## Session $(date +%Y-%m-%d)
- Found edge case: empty responses cause 500
- Decision: return empty array instead of null
- TODO: add input validation for edge cases"
```

### Completing Work
```bash
bd close <id> --reason="Implemented JWT auth with refresh tokens.
Tests: 15 unit, 4 integration, all passing.
See design notes for architecture decisions."
```

### MANDATORY: Commit After Closure

**Every `bd close` MUST be immediately followed by a git commit:**

```bash
bd close <id> --reason="Implemented feature X with tests"

# IMMEDIATELY after bd close:
git add .
git commit -m "feat(scope): implement feature X

Closes: <id>

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>"
```

**Why this matters:**
- Bead closures modify `.beads/issues.jsonl`
- Without commit, closure exists only in local database
- Team members won't see status changes until committed
- Risk of data loss if local state is lost

**Rule: One closure = One commit. Never batch closures.**

## Common Commands

| Command | Purpose |
|---------|---------|
| `bd ready` | Show issues ready to work (no blockers) |
| `bd list --status=open` | All open issues |
| `bd show <id> --json` | Full issue details as JSON |
| `bd update <id> --status=in_progress` | Claim work |
| `bd close <id>` | Mark complete |
| `bd close <id1> <id2>` | Close multiple at once |
| `bd dep add <child> <blocker>` | Add dependency |
| `bd stats` | Project statistics |
| `bd sync --from-main` | Pull beads updates from main |

## Dependencies

Link related issues:
```bash
bd create --title="Implement feature X" --type=feature
bd create --title="Write tests for X" --type=task
bd dep add <test-id> <feature-id>  # Tests blocked by feature
```

## TDD Workflow (RED-GREEN-REVIEW)

When working on **features** or **bugs**, follow this TDD workflow. Documentation and config changes may skip to completion.

### RED Phase (Test First)

1. **Read the issue's `--acceptance` criteria** - This IS your test plan
2. **Write failing tests** that implement those criteria
3. **Verify tests fail for the right reason** - Missing implementation, not syntax errors

```bash
# Backend
cd backend && pytest tests/path/to/new_tests.py -v

# Frontend
cd frontend && npm test -- --run path/to/new.test.ts
```

### GREEN Phase (Implementation)

1. **Write minimal code** to make tests pass
2. **Run tests continuously** - Don't batch test runs
3. **All tests must pass** before proceeding (new + existing)

### REVIEW Phase (Before Closing)

Spawn a review agent to verify:
- Implementation matches `--design` field
- All `--acceptance` criteria satisfied
- No scope creep (unplanned features)
- Tests are meaningful, not just for coverage

```
Task tool with subagent_type="general-purpose":
"Review changes for bead <id>. Verify:
1. Implementation matches --design
2. All --acceptance criteria satisfied
3. Code follows project conventions"
```

### Documenting Test Results

When closing, document what was tested:

```bash
bd close <id> --reason="Implemented recipe rating system.
Tests: 8 unit (rating calc, validation), 2 integration (API endpoints).
All passing. Edge cases: 0 ratings, max ratings handled."
```

---

## Session Close Protocol

Before ending a session:
```bash
git status                    # Check changes
git add <files>               # Stage code
bd sync --from-main           # Pull beads updates
git commit -m "..."           # Commit changes
```

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…