From andthen
Use when the user wants to execute or implement an existing spec or FIS. Implements code from a Feature Implementation Specification. Trigger on 'execute this spec', 'execute this FIS', 'implement this spec', 'implement this FIS', 'build from spec'.
How this skill is triggered — by the user, by Claude, or both
Slash command
/andthen:exec-specThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Execute a fully-defined FIS document as the **executor**. Implement the FIS directly, use sub-agents only for narrow advisory/review work, and complete all validation and status gates before finishing.
Execute a fully-defined FIS document as the executor. Implement the FIS directly, use sub-agents only for narrow advisory/review work, and complete all validation and status gates before finishing.
FIS_FILE_PATH: $ARGUMENTS
FIS_FILE_PATH. Stop if missing.Verify); iterate until green; escalate only on real external blockers. See references/execution-discipline.md.You are the executor. Your job:
Do not: delegate coding to advisory agents, batch status updates until the end, silently narrow scope, or skip final gates.
Spawn narrow sub-agents when they materially improve a coding decision. Their output is advisory; the FIS remains the contract.
Agents (pass as subagent_type to the Task tool):
andthen:documentation-lookup agent – unfamiliar APIs, library/framework behavior, migration details, or version-specific questions. Required path for documentation lookup. Use a fast/lightweight model (model: "haiku", gpt-5.4-mini, or similar).andthen:research-specialist agent – external best-practice research or context not available in the codebaseandthen:visual-validation-specialist agent – visual/design compliance against wireframes or baselinesSkills (invoke as /andthen:<name>; when you want fresh-context isolation, spawn a general-purpose sub-agent whose prompt runs the skill):
andthen:testing skill – test strategy, coverage assessment, test-first / red-green-refactor discipline, Prove-It bugfix flow, or unfamiliar test-harness patternsandthen:architecture skill (--mode advise or --mode trade-off) – unresolved architectural trade-offs or integration-pattern ambiguity not settled by the FISandthen:ui-ux-design skill – UI layout, interaction, accessibility, or responsive-pattern advice when the FIS needs a design contractandthen:triage skill – non-trivial build failures, dependency conflicts, or cascading test failuresFor advisory analysis, use a capable reasoning model (model: "sonnet" or stronger, gpt-5.4, or similar); for retrieval and routine lookups, haiku-class is sufficient.
Usage rules:
State document when called in a plan context – read the location from the Project Document Index and set "In Progress" at startFIS_FILE_PATH. Stop if the argument is missing or does not resolve to a readable file.**Story ID(s)**: S01, S02 or the filename prefix for plan-backed specs such as s01-s02-feature-name.md) into STORY_IDS. For single-feature specs not derived from a plan, leave STORY_IDS empty.plan.md (**Plan**: field or a sibling plan.md in the same directory), record it as PLAN_FILE_PATH for Step 5b updates.Gate: FIS_FILE_PATH exists; STORY_IDS and PLAN_FILE_PATH captured when the FIS is plan-backed
FIS_FILE_PATH.technical-research.md, read it before making code changes. Treat findings as leads to verify, not facts to trust.Learnings document (see Project Document Index) if it exists and is relevantUbiquitous Language document (see Project Document Index) if it exists and is relevant. Use canonical terms in code and avoid listed synonyms.tree -d, git ls-files | head -250), then stop broad discovery and focus on the files/tasks the FIS actually touches.agent_temp/ui-spec-{feature-name}.md covering spacing, typography, color, component patterns, and responsive breakpoints. Source from FIS → project design system → UX guidelines → reasonable defaults.State document exists in the location defined by the Project Document Index and the FIS originated from a plan): restore story context from STORY_IDS. For a single-story FIS, use that story directly. For a composite/shared FIS, mark the active work as the composite/story set rather than inventing a single story ID.changed-filesCONFUSION, NOTICED BUT NOT TOUCHING, or MISSING REQUIREMENT itemsImplement the FIS yourself, task by task, in the order listed.
For each task:
CONFUSION / MISSING REQUIREMENT if the FIS itself is the problem.changed-filesImplementation rules:
CONFUSION: — the FIS is ambiguous and you cannot safely proceed. State the ambiguity, list labeled options, ask -> Which approach?NOTICED BUT NOT TOUCHING: — out-of-scope observations. List issues, ask -> Want me to create tasks?MISSING REQUIREMENT: — a task assumes something absent. State what is undefined, list labeled options, ask -> Which behavior?
Each is a labeled block with concrete choices and an arrow-prompt for the user.changed-files becomes incomplete or ambiguous, derive it from the current worktree diff before Step 4Step 3 verifies task-level outcomes. Step 4 catches cross-cutting issues — integration, security, architectural coherence, and spec drift — that can still survive per-task Verify lines.
changed-files for incomplete-implementation markers (TODO, FIXME, XXX, NotImplementedError, language-appropriate pass/empty-body/throw.*not implemented patterns). Triage each hit — intentional (e.g. a pass in an abstract stub) vs. forgotten — and remediate the forgotten ones.changed-files, confirm at least one other file imports or references it (language-appropriate import/require/include grep on the basename or module path). Isolated new files are a Stop-the-Line signal unless the FIS explicitly justifies them.changed-files, inspect the test source — the unit under test must be imported and called without being replaced by a mock/stub; assertions must reference its return value or an observable effect, not mock call arguments; fixtures must not substitute for the production computation (captured golden outputs are fine). A test that would still pass if the asserted behavior were removed is tautological and is a remediation input.Run the andthen:review skill with --mode code for independent fresh-context review covering: static analysis, linting, formatting, type checking, code quality, architecture, security, domain language, stub detection, wiring verification, and simplification opportunities (unnecessary complexity, duplication, over-abstraction introduced during implementation). Prefer to invoke it in a fresh-context sub-agent: spawn a general-purpose sub-agent whose prompt runs /andthen:review --mode code. Do not pass andthen:review as subagent_type — it is a skill, not an agent type.
Spawn the andthen:visual-validation-specialist agent (a real subagent_type for the Task tool — unlike the andthen:review skill in 4b) (if supported) per any Visual Validation Workflow defined in CLAUDE.md.
Steps 4b and 4c can run in parallel (if supported).
Apply the Gate Classes policy from references/execution-discipline.md.
andthen:triage skill when iteration stalls./andthen:review --mode code or visual validation) on the touched scope; escalate if they persist.All substeps below are gates — complete them before finishing.
Lightweight gate – uses Step 4a results, does not re-run checks:
Update FIS status, source plan (if applicable), and project state via the andthen:ops skill. For plan-backed FIS: set each covered story Status to Done, set FIS field path, check off acceptance criteria, and mark the story Done in the State document (see Project Document Index) with a short completion note. For composite/shared FIS, update all constituent stories in STORY_IDS. Re-read to verify updates applied.
Report: per-task status, files created/modified, verification evidence, any unresolved low-priority issues or NOTICED BUT NOT TOUCHING items.
If the Learnings document (see Project Document Index) exists, capture story-level traps, domain knowledge, procedural knowledge, and error patterns. Organize by topic, not chronology. Keep entries brief (1-2 sentences). Do not create a new Learnings document unless one already exists.
FIS checkbox/status updates and plan updates are handled in Step 5 — they are gates, not post-completion tasks.
npx claudepluginhub it-huset/andthen --plugin andthenGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.