ai-team-library/claude/skills/backlog-refinement/SKILL.md
# Skill: Backlog Refinement ## Description Turns raw ideas, feature descriptions, or broad vision text into one or more well-formed beans through an iterative dialogue. The Team Lead analyzes the input to identify distinct units of work, asks clarifying questions to understand scope and priority, then creates properly-formed beans using `/new-bean`. This is the primary intake mechanism for getting new work into the backlog. ## Trigger - Invoked by the `/backlog-refinement` slash command. - S
npx skillsauth add beekeeper-lab/foundry ai-team-library/claude/skills/backlog-refinementInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Turns raw ideas, feature descriptions, or broad vision text into one or more well-formed beans through an iterative dialogue. The Team Lead analyzes the input to identify distinct units of work, asks clarifying questions to understand scope and priority, then creates properly-formed beans using /new-bean. This is the primary intake mechanism for getting new work into the backlog.
/backlog-refinement slash command.ai/beans/_index.md and ai/beans/_bean-template.md to exist.| Input | Type | Required | Description | |-------|------|----------|-------------| | raw_text | Text | Yes | Free-form description of ideas, features, or vision from the user | | dry_run | Boolean | No | If true, show proposed beans without creating them. Defaults to false. |
Receive the raw text -- Accept whatever the user provides. It may be a single sentence, bullet points, multiple paragraphs, or a stream-of-consciousness description.
Read the existing backlog -- Parse ai/beans/_index.md to understand:
Identify work units -- Analyze the text to find natural boundaries between distinct units of work. Look for:
Draft bean proposals -- For each identified work unit, draft:
Present the initial breakdown -- Show the user the proposed beans using working titles only (no IDs):
I've identified N potential beans from your input:
1. **[Title]** — [one-line description] (Priority: [guess])
2. **[Title]** — [one-line description] (Priority: [guess])
...
Let me ask some questions to refine these.
No bean IDs in this list. IDs are assigned during creation (Phase 3).
Ask clarifying questions -- For each proposed bean (or for the set as a whole), ask about areas that are unclear or need user input:
Ask questions in batches (2-4 at a time) to avoid overwhelming the user. Focus on the most important ambiguities first.
Iterate -- Based on the user's answers:
Continue until the user confirms the breakdown is complete. Look for signals like:
Check for dry run -- If dry_run is true, skip creation and go to step 11.
Create each bean (deferred ID assignment) -- For each agreed-upon bean:
For each bean, in sequence (not parallel):
a. Re-read ai/beans/_index.md to get the current max ID. Another agent may have added beans since your last read or since the previous bean in this batch.
b. Assign the next sequential ID (max + 1).
c. Create the directory and bean.md — ai/beans/BEAN-NNN-<slug>/bean.md with all fields:
_index.md immediately after creating the bean.md.
e. Record the assigned ID so subsequent beans in this batch can reference it by ID.Important: Each bean must be fully written (directory + bean.md + index entry) before starting the next one. This ensures each new bean sees the correct max ID. Cross-references within the batch should be updated to use the actual assigned IDs after all beans are created.
Fix cross-references -- After all beans are created, do a single pass to update any bean.md files that referenced other beans in the batch by title. Replace title references with the actual BEAN-NNN IDs now that they're known.
Handle duplicates -- If a proposed bean closely matches an existing bean:
Created N beans:
| Bean ID | Title | Priority | Dependencies |
|---------|-------|----------|-------------|
| BEAN-012 | [Title] | High | — |
| BEAN-013 | [Title] | Medium | BEAN-012 |
...
Run `/bean-status` to see the full backlog.
| Output | Type | Description |
|--------|------|-------------|
| new_beans | Markdown files | One or more bean.md files created via /new-bean |
| updated_index | Markdown file | _index.md updated with all new beans |
| summary | Console text | Table of created beans with IDs, titles, priorities, and dependencies |
| Error | Cause | Resolution |
|-------|-------|------------|
| EmptyInput | No text provided by the user | Ask the user to describe what they want to build or change |
| DuplicateBean | Proposed bean matches an existing bean title or problem | Warn user and ask for explicit approval to create or skip |
| UserAbort | User decides to cancel | Exit without creating any beans; no changes to the backlog |
| BacklogMissing | _index.md does not exist | Create it first with /new-bean or check project setup |
ai/beans/_index.mdai/beans/_bean-template.md/new-bean skill for creating individual beansdevelopment
# Skill: VDD (Verification-Driven Development) Gate ## Description Runs the programmatic VDD gate for a bean: parses the bean's `## Acceptance Criteria` section, dispatches each criterion's evidence type to the matching runner (test, lint, file, file-contains, or manual), aggregates the results into a pass/fail verdict, and writes a structured markdown report at `ai/outputs/tech-qa/vdd-<NNN>.md` (zero-padded NNN). This is the machine-checkable counterpart to the prose VDD policy in `ai/contex
tools
# Skill: Spawn Task ## Description Dispatches a single specialist persona to execute a single task with only that task's context. Auto-detects the runtime environment and chooses one of two execution paths: - **In tmux** (`$TMUX` set): spawn a worker in a git worktree using a child tmux window. Process-isolated, parallelizable, durable across the calling session's lifetime. Same pattern as `/spawn-bean` but at task granularity. - **Not in tmux**: invoke the `Agent` tool with `subagent_typ
development
# Skill: Orchestration Report ## Description Aggregates the per-bean **Orchestration Telemetry** blocks (BEAN-278) across recent Done beans and produces a markdown report that answers the architecture-aware-evaluation question: **is the orchestration paying for itself?** Distinct from `/telemetry-report` (which aggregates raw cost, duration, and tokens); this skill aggregates the orchestration-quality metrics layered on top — bounces, persona activations, contract violations, escape-hatch usag
development
# Skill: Health Check ## Description Runs all health checks defined in `ai/context/health-checks.md` and produces a table-format report. Can be called standalone or by other skills (e.g., `/long-run`). ## Trigger - Invoked by the `/health-check` slash command. - Called programmatically by `/long-run` at the start of each cycle. ## Inputs | Input | Type | Required | Description | |-------|------|----------|-------------| | health_checks | Markdown file | Yes | `ai/context/health-checks.md`