promptkit — Hook Enforcement & Documenter
Two additions since v0.1.0: the anti-MVP/MLP contract from the prompt-quality review is now mechanically enforced for Claude Code via hooks, and a new /documenter skill audits and authors open-source documentation against an evidence-based rubric.
Highlights
1. Claude Code hooks — the contract becomes mechanical
v0.1.0 wrote the rules (no stubs, no estimates, no premature checkboxes, no soft yields) as prose; models routinely ignore prose under pressure. promptkit now ships POSIX shell + jq hooks that refuse the tool call at the boundary. Emitted only when claude is in the agents list; other agents keep the textual rules.
no-stub-markers.sh(PreToolUse on Write|Edit|MultiEdit) — refuses code containingTODO,FIXME,XXX,HACK,MVP,MLP,unimplemented!(),NotImplementedError, "implement later", "for now", "as a first pass". Docs, specs, fixtures, and instruction templates are carved out.no-estimates.sh(PreToolUse) — refuses estimation language (hours/days/story points/ETA), MVP/MLP scoping, "Phase N" / "vN scope", weekday/month references, and date-stamped artifact filenames in any artifact.evidence-for-checkbox.sh(PreToolUse) — refuses to flip- [x]on roadmaps, FRDs, journeys, and run logs unless.claude/state/gates.jsonshowsmake lintandmake testexited 0 after the last code write.track-gates.sh(PostToolUse on Bash|Write|Edit|MultiEdit) — bookkeeping that feeds the checkbox gate: records gate exit codes and a monotonic sequence index.finish-the-work.sh(Stop) — blocks soft yields while unchecked roadmap items remain.
If jq is missing, every hook degrades to allow-with-warning. See docs/hooks.md.
2. /documenter — OSS docs audit & authoring (new skill)
Audits a project's documentation against a composite rubric — Diátaxis quadrants, Standard README, Google/Microsoft style, Keep a Changelog + SemVer + Conventional Commits, MADR ADRs, docs CI (markdownlint/Vale/cspell/lychee), llms.txt, and OpenSSF Best Practices passing criteria — using OpenSSF MUST / SHOULD / SUGGESTED severities.
- Audit mode writes
specs/docs-audit/AUDIT-<scope>.mdplus a roadmap-shapedPLAN-<scope>.md; authoring mode (/documenter <kind> [topic]) drafts one artefact at a time. - Never silently rewrites — when a target file exists, the draft lands at
<path>.proposed.mduntil the user merges it. - Ecosystem-aware: Go / Rust / Zig overrides plug in
godoc/rustdoc/zig build docstooling and CI snippets. - Mixture-compatible: security / observability / durable mixtures append their own rubric rows.
See docs/documenter.md.
Breaking changes
None. Hooks are additive and emitted only for the claude agent; existing generated projects pick them up on the next promptkit update.
Full changelog: v0.1.0...v0.2.0