PL

plan-to-beads

Converts planning documents or ADRs into a source-of-truth GitHub issue and linked, actionable work beads.

Install

mkdir -p .claude/skills/plan-to-beads && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/19049" && unzip -o skill.zip -d .claude/skills/plan-to-beads && rm skill.zip

Installs to .claude/skills/plan-to-beads

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

MUST use this skill whenever creating multiple beads from a plan, design doc, ADR, roadmap, or feature description. Raises the design as a GitHub issue (the source of truth), then creates lightweight beads that link to it. Trigger on: 'break down', 'create beads for', 'turn this into beads/tasks', 'set up the work for', 'populate the backlog', or any request to decompose a document into work items.
401 charsno explicit “when” triggerlonger than Claude Code's old 250-char listing cap (fine on current versions)
Intermediate

Key capabilities

  • Read source material like plans, ADRs, or inline text.
  • Raise the design as a GitHub issue using `file-issue` or `gh issue create`.
  • Structure the GitHub issue with context, design, scope, phases, and acceptance criteria.
  • Design a two-level bead hierarchy of epics and tasks.
  • Map dependencies between beads.
  • Create lightweight beads linked to the GitHub issue with specific priorities and labels.

How it works

The skill reads a design document, creates a GitHub issue to serve as the source of truth for the design, and then generates a hierarchy of lightweight beads that link back to the GitHub issue for detailed context.

Inputs & outputs

You give it
A plan, design document, ADR, roadmap, or feature description.
You get back
A GitHub issue containing the full design context and a hierarchy of lightweight beads linked to it.

When to use plan-to-beads

  • Creating project backlogs
  • Decomposing feature plans
  • Linking tasks to design docs
  • Setting up work items from ADRs

About this skill

Plan to Beads

Turn a plan into a GitHub issue (the design home) and lightweight beads that link to it.

Philosophy

Beads track what to do and dependencies. The how and why live in the GitHub issue body — never in a committed spec file. Spec files in the repo rot faster than the code and mislead future readers; GitHub issues close when the work ships and stay searchable forever. (Yegge, Issue #976)

Hard rule: never create docs/specs/*.md or any committed spec/plan markdown. If a worker needs context, the GitHub issue is where it lives.

Workflow

1. Read the source material

The user will provide a plan, ADR, inline text, or file path. Read it carefully. If it references other documents (ADRs, product overview), read those too for context.

2. Raise the design as a GitHub issue

Use the file-issue skill (or gh issue create directly) to capture the full design context in the issue body. The issue is the source of truth for how and why. Structure it for the agent who'll implement the work:

## Context
Why this work exists and what problem it solves.

## Design
How it should be built — architecture, patterns, constraints, key decisions.
Reference ADRs where applicable (e.g., "See ADR-0006 for polling model").

## Scope
What's in and out.

## Phases / Steps
Each phase is a sub-section that beads will link to via `#phase-1`-style anchors.

### Phase 1: <name>
What to build, key constraints, what done looks like.

### Phase 2: <name>
...

## Acceptance criteria
Testable checkboxes.

Capture the issue number/URL — every bead will reference it.

3. Design the bead hierarchy

Flat two-level: epics contain tasks. Each task = smallest scope producing a testable, meaningful outcome.

Consolidation pass

Merge plan items into a single bead when:

  • Same files touched
  • Thin slices of one concept
  • Meaningless in isolation
  • Shared setup dominates (80%+)

Do NOT merge when:

  • Stories span different tech areas (different workers)
  • Different dependency chains
  • Combined scope too large (~3+ test cases = consider splitting)

4. Map dependencies

Data flow, API contracts, infrastructure, shared domain models. Wire with bd dep add <issue> <depends-on>.

5. Create lightweight beads

Present the hierarchy to the user for confirmation, then create:

bd create --title="<concise title>" \
  --description="GH: https://github.com/<org>/<repo>/issues/<n>#phase-1" \
  --type=task --priority=2 --parent=<epic-id> \
  --labels=api

Bead descriptions are one line — the GitHub issue reference (with anchor when there are multiple phases). The worker runs gh issue view <n> for full context.

Use --priority: P1 (foundational, blocks everything), P2 (default), P3 (nice-to-have).

Use --labels for tech area routing: api, ios, web, infra, data.

6. Verify

bd list --status=open — show what was created. Call out the dependency chain and the linked GitHub issue.

Example

Given a plan for "PlanIt Polling Service" with 4 items:

  1. Raise GitHub issue: feat: PlanIt polling service with the full design (Context, Design, Scope, Phases). Suppose it gets number #234.
  2. Create beads:
Epic: "PlanIt polling service" (type=epic, P2)
  desc: "GH: https://github.com/<org>/town-crier/issues/234"
  |- Task: "PlanIt API client with response mapping and backoff" (P1, labels: api)
  |   desc: "GH: https://github.com/<org>/town-crier/issues/234#phase-1-api-client"
  |- Task: "Cosmos DB application upsert, idempotent on PlanIt name" (P1, labels: api,data)
  |   desc: "GH: https://github.com/<org>/town-crier/issues/234#phase-2-persistence"
  +- Task: "Background polling loop with configurable interval" (P2, labels: api)
      desc: "GH: https://github.com/<org>/town-crier/issues/234#phase-3-polling-loop"
      depends on: API client + persistence

Three lightweight beads, one GitHub issue with all the context.

Constraints

  • Never create a spec file in the repo (docs/specs/*.md or anywhere else).
  • Always raise the GitHub issue before creating beads.
  • Always get user confirmation before creating beads.
  • Priority is 0-4 numeric, not "high"/"medium"/"low".
  • If the plan references ADRs, read them for context on constraints.

When not to use it

  • When creating `docs/specs/*.md` or any committed spec/plan markdown.
  • When not needing to decompose a document into work items.

Limitations

  • Never create a spec file in the repository.
  • Always raise the GitHub issue before creating beads.
  • Always get user confirmation before creating beads.

How it compares

This skill centralizes design context in a GitHub issue and creates minimal, linked tracking items, preventing spec file proliferation and ensuring traceability, unlike creating separate spec files and unlinked tasks.

Compared to similar skills

plan-to-beads side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
plan-to-beads (this skill)02moReviewIntermediate
planning-with-files2336moReviewIntermediate
product-requirements87moNo flagsIntermediate
ticket-manager15moNo flagsBeginner

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

planning-with-files

davila7

Implements Manus-style file-based planning for complex tasks. Creates task_plan.md, findings.md, and progress.md. Use when starting complex multi-step tasks, research projects, or any task requiring >5 tool calls.

233106

product-requirements

cexll

Interactive Product Owner skill for requirements gathering, analysis, and PRD generation. Triggers when users request product requirements, feature specification, PRD creation, or need help understanding and documenting project requirements. Uses quality scoring and iterative dialogue to ensure comprehensive requirements before generating professional PRD documents.

812

ticket-manager

galz10

Expertise in managing Linear tickets locally using Markdown files. Use when you need to create, update, search, or break down features into atomic implementation tickets.

110

master-plan-manager

ananddtyagi

Safe MASTER_PLAN.md management with backup, validation, and intelligent updates. Use when updating task tracking, adding features to roadmap, or modifying project documentation.

12

concise-planning

davila7

Use when a user asks for a plan for a coding task, to generate a clear, actionable, and atomic checklist.

10

planning-with-files-de

OthmanAdi

Manus-artiges Dateiplanungssystem zur Organisation und Verfolgung des Fortschritts komplexer Aufgaben. Erstellt task_plan.md, findings.md und progress.md. Wird verwendet, wenn der Benutzer plant, zerlegt oder organisiert: mehrstufige Projekte, Forschungsaufgaben oder Arbeiten mit über 5 Tool-Aufrufe

00

Search skills

Search the agent skills registry