From agentic-loop
Turn an idea into a factory spec: triage its size, grill the user with one-question-at-a-time interrogation (adaptive depth), emit a single spec file with a machine-checkable done-condition, and gate it through a fresh-context spec review before it enters the build queue. Use when the user hands over an idea (or a list of ideas) for the factory to build unattended. Interactive — run it while the user is present.
How this skill is triggered — by the user, by Claude, or both
Slash command
/agentic-loop:specThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are the spec stage of the factory. Your output is ONE file per idea in
You are the spec stage of the factory. Your output is ONE file per idea in
factory/specs/ (template: templates/factory-spec.md in the plugin root;
already copied to the project by init). Everything downstream runs unattended
— the questions you don't ask now become wrong guesses at build time, but
every question costs the user's morning. Adaptive depth resolves the tension.
Token discipline (non-negotiable): one spec file per idea — never generate constitution/research/data-model/contract documents. Look up facts in the repo yourself (grep/read); only DECISIONS go to the user. Never inline file contents into the spec — paths only.
Grill flag — read once per run:
jq -r '[(.grill.enabled // false), (.grill.deep // false)] | join(" ")' \
.agentic/config.json 2>/dev/null || echo "false false"
enabled true: raise the interview depth one notch above what triage
suggests — the user has opted into more questions up front in exchange for
fewer wrong guesses downstream. The flag never lowers depth.
deep true: for ideas triaged large, OR whose objective introduces new
domain vocabulary (entities/invariants the codebase has no words for yet —
grep first to check), escalate to a deep interview:
claude plugin list
shows mattpocock-skills), run its grill-with-docs flow: a /grilling
session using the /domain-modeling skill. Save the artifacts it
produces (glossary, ADRs) under factory/specs/<id-slug>/ — a
subdirectory next to the spec file, invisible to the tracker's *.md
glob — and list them in the spec's input_paths so build-stage workers
inherit the vocabulary.install_declined: offer
the install ONCE (/agentic-loop:config owns the consent flow and
records a decline); then proceed per the answer.Whichever mode ran, the artifact that advances the tracker is still the
ONE spec file — deep-interview outputs are referenced input_paths,
never replacements. Deep mode is interactive-only by construction (it
needs the user's answers); it changes nothing for unattended stages.
If the user gave a list of ideas, capture each as a file with status: queued
first (id from scripts/lib/tracker.sh next-id, one-line objective), then
process them one at a time through the steps below. Never interleave the
grilling of two ideas.
Triage effort_budget FIRST — cheap questions before deep ones: does it touch one seam or several? Is it easily reversible? Answer them yourself from the codebase where possible.
trivial/small (one seam, reversible): ask ONE confirmation question
restating the idea + proposed check command, then emit the spec directly.medium/large (multiple seams, hard-to-reverse, real trade-offs):
full grilling, capped at ~5 user-facing questions (prefer informed,
stated assumptions over a sixth question).Grill (when depth warrants) — one question at a time; wait for each answer; never batch. Walk the decision tree, not a checklist: each answer determines the next question. Explore the relevant code BETWEEN questions so you never ask what you can read.
Emit the spec from the template:
check_cmd — a single command whose exit status decides done-ness. If
the acceptance references UI behavior and the project has a runnable web
UI, note that so the review stage runs browser verification;profile: hardened only if the user explicitly asked for
correctness-critical treatment.Spec review gate (skip for trivial) — delegate to the loop-reviewer
subagent with ONLY the spec file path (blind, fresh context). Brief it to
find: ambiguous language, missing edge cases, implicit assumptions,
contradictions, and a check_cmd that could pass vacuously. Fix findings
now — with the user if a finding needs a decision. This is the cheapest
moment in the whole pipeline to fix a spec flaw.
Advance: scripts/lib/tracker.sh advance <file> specd, then tell the
user the id, effort_budget, and check command, and move to the next idea.
Guides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.
Creates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.
Resolves in-progress git merge or rebase conflicts by analyzing history, understanding intent, and preserving both changes where possible. Runs automated checks after resolution.
npx claudepluginhub thedull/agentic-loop --plugin agentic-loop