Agent skill · software engineering · klerith
spec-impl
Implements an approved spec. Validates that the state means "Approved" (in any language), creates a git branch named after the spec, switches to it, and starts the implementation step by step with pauses to review diffs.
Why this skill is useful
Adds an executable script that automates the implementation of approved specs with validation and branching in Git.
What it needs
About 7k tokens when loaded. Last updated 2026-08-02. 151 stars on the source repository.
What this skill does
/spec-impl — Implementer of approved specs Session context Current repository state: !git status --short Current branch: !git branch --show-current Specs available in this folder: !ls specs/ 2>/dev/null echo "The specs/ folder does not exist" Branch-creation config: !cat specs/.spec-config.yml 2>/dev/null echo "AutoCreateBranch: true (default, no config file)" --- Instructions Follow these four phases in strict order. Do not advance to the next phase if the previous one did not complete correctly. --- Phase 1 — Identify the spec The received argument is: $ARGUMENTS If $ARGUMENTS is empty: List the files available in specs/ (you already have them above). Ask the user to specify the exact name of the spec. Stop and wait for an answer. Do not continue. If $ARGUMENTS has a value: Look for the file in specs/. The user may have written the full name (01-mvp-arkanoid), only the number (01), or only the slug (mvp-arkanoid). Try to find the correct file in any of those cases. If you do not find the file, show the available specs and ask the user to correct the name. If you do find it, continue to Phase 2. --- Phase 2 — Validate the spec's state Read the spec file you located in Phase 1 using the Read tool or cat. In the file's contents, look for the line that contains the spec's state. The header label is typically Status: (English) or Estado: (Spanish), but it may use any language. Match by position (status line near the top of the spec) and by the surrounding state machine, not by the exact label. Absolute rule: You can only continue if the state means "Approved" — regardless of the language used. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills klerith/spec-impl