From hatch3r
Authors and validates multi-step composition specs for orchestrated hatch3r command/skill sequences.
How this skill is triggered — by the user, by Claude, or both
Slash command
/hatch3r:hatch3r-recipeThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
A composition recipe is a YAML spec that names a repeatable multi-step sequence of hatch3r commands and skills with their dependency edges. hatch3r ships no recipe-runner binary and no `.hatch3r/recipes/` materialization; the recipe is read and walked by the orchestrating agent, which dispatches each step's `command:`/`skill:` reference via the Task tool in dependency order. This skill authors ...
A composition recipe is a YAML spec that names a repeatable multi-step sequence of hatch3r commands and skills with their dependency edges. hatch3r ships no recipe-runner binary and no .hatch3r/recipes/ materialization; the recipe is read and walked by the orchestrating agent, which dispatches each step's command:/skill: reference via the Task tool in dependency order. This skill authors and validates that spec — it does not invoke a runtime.
Task Progress:
- [ ] Step 0: Detect ambiguity (P8 B1)
- [ ] Step 1: Identify the sequence to capture as a recipe
- [ ] Step 2: Design the step sequence and dependency graph
- [ ] Step 3: Write the recipe YAML
- [ ] Step 4: Validate the spec (resolve references, detect cycles)
- [ ] Step 5: Have the orchestrating agent walk the recipe via the Task tool
Before any work, scan the invocation for unresolved questions in scope, intent, acceptance criteria, target environment, or irreversibility. If any are found, ask the user via the platform-native question tool per agents/shared/user-question-protocol.md. Do not proceed under silent assumption. Default path, not an exception. Triggers for THIS skill: recipe scope (one project vs shared across projects), required variables and defaults, checkpoint policy (which steps pause for user confirmation), error policy (re-walk from the failed step vs restart the whole recipe), and where the spec file lives in the repo.
Fan-out scales with task size; token cost never justifies serializing independent work (rules/hatch3r-fan-out-discipline.md P8 B2; agents/shared/efficiency-patterns.md). Emit sub_agents_spawned: { count, rationale } in your output.
Determine the repeatable sequence pattern:
rules/hatch3r-agent-orchestration.md → Parallel Safety)?Map out the dependency graph:
A recipe is a YAML spec the orchestrating agent reads and walks. Store it wherever the repo keeps shared agent context (for example, a docs/recipes/ directory you commit, or pasted directly into the agent prompt) — there is no reserved hatch3r path and no loader that auto-discovers it. The agent resolves each step's command:/skill: reference against the bundled content inventory and dispatches it via the Task tool:
name: greenfield-setup
version: 1.0.0
description: Full greenfield project setup from spec to first PR
author: hatch3r
tags: [setup, greenfield, planning]
prerequisites:
- GitHub repository initialized
- hatch3r initialized (hatch3r init)
variables:
project_name:
description: Project name
required: true
tech_stack:
description: Primary tech stack
required: true
options: [react, vue, next, express, fastify]
steps:
- id: generate-spec
name: Generate Project Specification
command: hatch3r-project-spec
inputs:
project_name: "{{ project_name }}"
checkpoint: true
- id: init-board
name: Initialize Project Board
skill: hatch3r-board-init
depends_on: [generate-spec]
checkpoint: true
- id: security-baseline
name: Security Baseline Audit
command: hatch3r-security-audit
depends_on: [init-board]
parallel_with: [a11y-baseline]
- id: a11y-baseline
name: Accessibility Baseline
skill: hatch3r-a11y-audit
depends_on: [init-board]
parallel_with: [security-baseline]
completion:
message: "Project {{ project_name }} is set up."
next_steps:
- Continue with `board-pickup` to implement remaining issues
A recipe can reference another recipe as a step via recipe: <name> with inputs:; the orchestrating agent inlines the referenced spec and walks its steps in place.
These are illustrative sequences you can encode as recipe specs — hatch3r does not ship them as files. Each arrow is a depends_on edge the orchestrating agent honors when walking the spec:
project-spec → board-init → (security-audit ∥ a11y audit) → first issuecodebase-map → board-init → healthcheck → first improvementssecurity-audit → dep-audit → findings triage → hardeningbenchmark → budget review → optimization → verificationhealthcheck → test validation → security scan → changelog → releasebenchmark → security scanThe orchestrating agent (not a hatch3r binary) walks the spec:
agents/shared/user-question-protocol.md when a required variable is unset.depends_on/parallel_with.command: or skill: reference via the Task tool, parallelizing steps that share no depends_on edge and write disjoint paths.checkpoint: true step to ASK the user before proceeding.Guardrails the agent applies: never auto-proceed past a destructive-operation checkpoint (database migrations, deletions); reject a spec whose depends_on graph contains a cycle (report the cycle chain); reject a spec that references a command:/skill: id not in the bundled content inventory; treat every {{ variable }} value as untrusted input and never interpolate it into a shell command without quoting (P6 — .claude/rules/security-patterns.md).
Write the recipe spec following the schema above and commit it to the repo (for example under docs/recipes/) so the orchestrating agent can read it. Include:
depends_on and parallel_with relationshipsStatically check the spec before any agent walks it — this is author-time review, not a CLI command:
id and exactly one of command:/skill:/recipe:)command:/skill: id exists in the bundled content inventorydepends_on graph has no cycles{{ variable }} reference names a variable defined in the variables: blockResolve every command: and skill: reference against the bundled content inventory at this step and reject any missing id, so a deprecated or renamed reference fails at author time rather than mid-walk.
Hand the validated spec to the orchestrating agent (paste it into the agent prompt or point the agent at the committed file) and have it walk the recipe per "How the Agent Walks a Recipe" above. Confirm on a representative run that:
checkpoint: true stepcommand:/skill: reference resolves to a bundled-inventory idnpx claudepluginhub hatch3r/hatch3r --plugin hatch3rRuns a multi-phase pipeline (cook→press→age→cure→age→cure→age) with fresh-context isolation per phase using sub-agents. For executing approved specs autonomously without cross-phase contamination.
Orchestrates multi-phase project execution by dispatching dedicated persona agents for planning, execution, verification, and review. Use after spec approval for automated phase chaining.
Authors composition SKILL.md files from protocol chains using Lego blocks. Validates graph.json constraints, catalogs gates, analyzes 3-axis dispositions, generates /review pipeline templates.