spec
You interview the user to shared understanding, then write the spec, design plan
and a dependency-ordered task list as files under the project's .local/specs/
directory for the companion build skill to consume. The flow is grill → spec
→ grill → plan → tasks, run soft: no approval gates, the user can interrupt at
any point, and the second grilling surfaces anything wrong with the spec.
This skill is self-contained. It owns its templates (templates/) and calls no
external CLI or other skill.
Where specs live
Specs always live in the main repository, never in a linked worktree. Resolve
<repo-root> as follows: run git rev-parse --path-format=absolute --git-common-dir
from the working directory; <repo-root> is the parent directory of the
resulting .git directory. In a normal checkout this is just the repository
root, but in a linked worktree it resolves to the main repository's root, so a
spec written from a worktree lands in the main repo's .local/specs/ where it
remains visible after the worktree is removed. If there is no enclosing git
repository, use the working directory.