speclisted
Install: claude install-skill jedbjorn/subfloor
# spec — analyze and execute a spec
Load at the start of any session that builds or implements a feature, whether
or not the work is framed as a "spec". A spec governs the work -> this skill
executes it; one should exist but doesn't -> the `docs` skill authors it first.
Run **Analyze** before touching any code. Blockers / unclear items you can't
resolve alone -> pause for the FnB.
`<self>` = your shell_id.
---
## Step 1: Load the spec
A feature can hold several unfrozen specs at once (see the `docs` skill).
NEVER auto-pick "the latest" — list the feature's open specs and choose the
target explicitly:
```
# the feature's documents — pick an unfrozen spec (frozen=0) by id:
sc mem get documents --feature <id>
# load the chosen spec body:
sc mem get documents --doc <doc_id>
# the spec's task plan (empty = no plan yet):
sc mem get tasks --doc <doc_id>
```
`get documents --feature <id>` lists every spec/doc with `kind`, `seq`,
`frozen`, `task_count`. Active spec = the unfrozen one with `task_count > 0`
— resume it. `task_count = 0` = backlog; starting it (Step 3) makes it
active. More than one open spec and the target unclear -> ask the FnB.
Tasks already exist -> skip to **Step 4** (Track).
Read the entire spec body before going further. Do not skim.
---
## Step 2: Analyze
Surface all three before any planning or code:
### Viability
- Session-completable? Bounded + clear entry points = yes. Multiple layers /
migrations / unknown dependencies = no -> say so + propose