gsd-core-hookslisted
Install: claude install-skill The-Artificer-of-Ciphers-LLC/skills-from-the-artificer
# gsd-core-hooks
> A rule an agent can read once and forget is not enforced — it's remembered, which is a different thing.
## What this is
The `.claude/hooks/` directory from one real project (gsd-core), lifted wholesale. Every file here
exists because a specific incident happened first and the hook was written afterward to close the
gap — the header comment on each script names the incident, the date, and the exact failure mode.
This is not a designed-in-advance framework; it is a project's actual scar tissue, in installable
form.
It backs the rules stated in [`../commands/`](../commands/) (`bug-fixer.md`, `feature-builder.md`,
`triage-review.md`, `test.md`) — those files say things like "gsd-test MUST exit 0 before any git
push" and "NEVER run `node --test` locally"; the hooks in this folder are what make those true
regardless of whether the agent remembers reading them.
## The three failure classes it guards against
1. **Self-attestation.** "I ran the tests" / "the review passed" is cheap to claim and expensive to
check by hand. `pre-pr-gate.sh` + `record-gsd-verdict.sh` bind a push/PR action to a machine-read
verdict line for the *exact commit sha being shipped* — not "tests passed at some point," but
"tests passed for this sha, recorded by the one sanctioned writer, checked at the moment of push."
2. **Prose that goes stale mid-session.** A directive is read once, at the start, then hours of
tool calls go by with nothing re-presenting it. `gsd-phase-gat