spec-checklisted
Install: claude install-skill matthull/my-skills
# `/spec-check` — Spec Compliance Checker
**The question this answers:** "Given a spec and a branch, does the implementation satisfy the spec?"
One question, cleanly scoped. No code quality, no QA classification, no fix routing.
## Usage
```
/spec-check specs/feature/spec.md # spec path (required)
/spec-check specs/feature/spec.md --branch foo # explicit branch
```
| Parameter | Required | Default |
|-----------|----------|---------|
| Spec path | **Yes** | — |
| `--branch` | No | Current branch vs default branch |
The spec is the **only** accepted source of intent. Not handoffs, not tickets, not freeform descriptions. If it's not in the spec, it's not a requirement.
## Process
### Step 1: Parse Input
Parse `$ARGUMENTS` for:
1. **Spec path** (required) — first non-flag argument
2. **Branch** (optional) — value after `--branch` flag
If no spec path provided, STOP and report: "Usage: /spec-check <spec-path> [--branch <branch>]"
Determine the base branch:
- If `--branch` is provided, use it as the feature branch
- Otherwise, use the current branch (`git branch --show-current`)
- Detect the default branch: `git symbolic-ref refs/remotes/origin/HEAD | sed 's@^refs/remotes/origin/@@'` (typically `master` or `main`)
### Step 2: Read the Spec
Read the spec file at the provided path. Extract **every**:
- Explicit requirement (functional behavior, data contracts, API shapes)
- Acceptance criterion
- Behavioral expectation
- Input/output contract
- Scope bound