Help us improve
Share bugs, ideas, or general feedback.
From crafter
Draft phase of RPI methodology. Consumes research artifact or topic and produces compact implementation plan with test specs and Agent Context blocks. Activates naturally inside plan mode for non-trivial work, or invoke explicitly with /draft. Use after research or to start planning a non-trivial feature.
npx claudepluginhub agentpatterns/craft --plugin crafterHow this skill is triggered — by the user, by Claude, or both
Slash command
/crafter:draftThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
**RPI Phase 2 of 3:** Research → **Plan** → Implement
Transforms research findings into actionable implementation plans with granular steps, verification criteria, and stakes-based enforcement. Useful for structuring complex coding tasks before execution.
Executes 6-phase gated workflow for complex tasks: Questions, Research, Design Discussion, Structure Outline, Plan, Implement. Pauses for user approval after each markdown artifact.
Share bugs, ideas, or general feedback.
RPI Phase 2 of 3: Research → Plan → Implement
Use this skill after research (or standalone) to create a compact implementation plan with behavioral test specifications and Agent Context blocks for each phase.
Plan-mode-native: When Claude is inside plan mode for non-trivial work, this skill's planning behavior applies naturally — no slash command required. The research skill transitions into plan mode automatically after research is complete.
Receives: Research artifact at .crafter/scratch/{topic}-research.md (or inline feature description if no research phase was run)
Produces: Plan in the Claude Code session plan file + task graph (yaks, beads, or native tasks) created after plan approval
Hands off to: /craft — consumes the task graph, NOT the plan file
The Plan phase creates a compact spec that fits in context by:
.crafter/scratch/ artifact)/craft can dispatch isolated agents per phaseOutput: Plan in the Claude Code session plan file (the only plan file during planning — the persistent session artifact is written by /craft at the end of execution)
Use this skill when:
.crafter/scratch/)Don't use for:
Check for research artifact:
Glob: .crafter/scratch/*-research.md
If research artifact exists, read it and summarize findings inline in the plan. The plan should be self-contained — a reader should not need to go back to the research artifact.
If no research artifact, create an inline summary (condensed):
Ask the user to clarify if needed:
Write the plan to the Claude Code session plan file. This is the plan mode's native output — the user sees it for approval before exiting plan mode.
Required sections:
tracker: yaks|beads|native to record which tracker will be usedSee template.md for the complete template with Agent Context block reference.
Phase ordering (application code projects):
For content or configuration projects with no application code, use flat [no-test] phases ordered by dependency. The TDD phase ordering above applies to application code projects.
Check plannotator availability: Bash: plannotator --version
If available: Run plannotator annotate on the plan file via Bash. Iterate on non-empty annotation feedback. Empty annotations = approved.
If unavailable: Present a brief summary (goal, phases, acceptance criteria) via AskUserQuestion. Iterate until approved.
Once the plan is approved, call ExitPlanMode. Then immediately create the task graph — this is the commitment point where the approved plan becomes executable.
See task-graph-decomposition.md for the full procedure including three-tier tracker detection (yaks, beads, or native tasks), epic and phase group creation, naming conventions, agent context piping, and an example decomposition for a 6-phase feature.
Report the result:
Task graph created ({tracker} mode): {epic/graph name}
Tasks: {N} ({M} TDD triplets, {K} no-test phases)
Ready to execute with /craft.
Use AskUserQuestion to present:
Plan approved. Task graph: {name} ({N} tasks, {tracker} mode)
What would you like to do?
1. Run /craft — execute the plan now
2. Inspect task graph — review tasks before executing
3. Request changes — describe what to adjust (I'll update the graph)
/craft.yx list for yaks), then re-present options.Test specs in the plan MUST be behavioral descriptions, not tool-specific code. The agents executing /craft will consult the project's CLAUDE.md for testing tools and patterns.
Describe invariant properties that must hold:
Describe behavior at the use case boundary:
expect(mockRepository.create).toHaveBeenCalledWith(...)Describe the HTTP contract:
{ id, total } on success, 400 with { error } on validation failure"See template.md for detailed guidelines.
Every implementation phase with tests MUST include an #### Agent Context subsection. The same Agent Context is stored in each task's context (for execution). This is the contract between /draft and /craft.
Required fields:
See template.md for the Agent Context block reference and task context templates.
Each phase should:
Good boundaries: Database schema, Core functions, Repository, Feature use cases, HTTP routes
Bad boundaries: "Implement everything", mixing multiple layers
/craft to dispatch agentsThe task graph provides durable state across sessions:
/craft again picks up exactly where it left off