Wolverine Kit
Constraint-first governance for AI-assisted development.
Named after the animal: tenacious, ferocious, holds ground against much larger opponents.
The Problem
AI coding agents make architectural decisions on the fly. Without guardrails, you get implementations that contradict each other, spec drift that nobody notices, and code that passes every test but violates the design. The usual fix is ceremony: twelve-role workflows, checklists on every PR, role-play prompts. It doesn't scale and people start ignoring it.
What This Does Instead
You write invariants before code. The framework enforces them. It stops at first failure.
uvx wolverine-kit init my-project --agent claude
That gives you a spec/ directory with constraint files, agents that enforce them, and slash commands that wire it together.
Project Layout
my-project/
├── spec/ # Your constraints (never overwritten on update)
│ ├── INVARIANTS.md # Hard rules the gatekeeper enforces
│ ├── DECISIONS.md # Binding ADRs
│ ├── ARCHITECTURE.md # Module boundaries
│ └── ...
├── .claude/agents/ # Governance agents (managed by wolverine-kit)
│ ├── wk-gatekeeper.md # Veto gate: PASS / BLOCK / NEEDS-DECISION
│ ├── wk-spec-synthesizer.md # Produces implementation briefs
│ ├── wk-drift-detector.md # Finds spec-code divergence
│ └── ...
└── .claude/commands/ # Slash commands
├── wk-check.md # Full hygiene sweep
├── wk-impl.md # Gate chain + handoff
└── ...
The Gate Chain
Every /wk-impl runs these steps in order. A failure at any step stops the chain.
- Gatekeeper checks the proposal against invariants and ADRs. BLOCK = stop.
- Spec-synthesizer produces a brief a senior dev could implement from. DRAFT = stop.
- Test-author generates Given/When/Then test specs.
- Handoff to Claude Code for implementation. Only runs if everything above passed.
PASS -> READY -> tests -> implement
BLOCK -> stop. Fix the spec or the proposal.
NEEDS-DECISION -> record it in DECISIONS.md, then re-run.
Install
# One-shot (no install needed)
uvx wolverine-kit init my-project
# Or install persistently
uv tool install wolverine-kit
wk init my-project --agent claude
Only prerequisite: uv.
Current support: Claude Code + Python projects. Other agents (Cursor, Kiro, Copilot) and language stacks are coming soon.
Commands
| Command | What it does |
|---|---|
/wk-check |
Gatekeeper gate + glossary consistency sweep |
/wk-impl <module> |
Full gate chain, then implementation handoff |
/wk-impl-brief <module> |
Gatekeeper + implementation brief (no handoff) |
/wk-test <module> |
Generate test specifications |
/wk-drift |
Scan for spec-code divergence |
/wk-decision <title> |
Draft an ADR interactively, propagate it |
/wk-deps |
Audit dependencies for upgrades |
/wk-status |
Roadmap burn-down |
/wk-review-spec |
Architect review of spec quality |
/wk-propagate <doc> |
Fan a spec change across all downstream files |
/wk-help |
List all commands |
How It Differs
Unlike ceremony-heavy frameworks (BMAD, etc.) that run multiple roles on every feature, Wolverine Kit triggers agents selectively and enforces hard invariants with machine verdicts. When the spec is ambiguous, it stops and escalates instead of guessing.
Compared to GitHub's Spec Kit (which focuses on the spec-to-implementation generation workflow), Wolverine Kit focuses on enforcement: blocking violations, catching drift, and escalating ambiguity. Spec Kit helps you write good specs and hand them off. Wolverine Kit makes sure nobody violates them after.
Principles
- Invariants first. Write rules before code.
- Stewardship over ceremony. Few agents, triggered selectively.
- Stop at first failure. Partial gate chains produce false confidence.
- Escalate, don't guess. Silence in the spec means stop, not invent.
- Generic over prescriptive. Opinions about process, not tech stack.
Upgrading
wk update
Regenerates managed agent/command files from the latest templates. Your spec/ files are never touched.
Packs
Packs add tech-stack-specific agents:
wk init my-project --agent claude --pack python-library
Available now: python-library (adds a protocol validator). More coming.
License
MIT
Release files for wolverine-kit 0.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| wolverine_kit-0.0.3.tar.gz | 225.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| wolverine_kit-0.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 267.4 kB
Release files / wolverine_kit-0.0.3.tar.gz
| Download URL | wolverine_kit-0.0.3.tar.gz |
|---|---|
| Size | 225.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
95f2d7f706dc2767b47ebbd4554776dd1c1c17d2226646902058257578abc492
|
|
BLAKE2b-256 checksum How to use checksums |
e4460244443ec5ae39e37f7e1a92faac9bee6aa58d87004c951ad0baa67a42dc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / wolverine_kit-0.0.3-py3-none-any.whl
| Download URL | wolverine_kit-0.0.3-py3-none-any.whl |
|---|---|
| Size | 41.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4244520dcd845751bd26b8cac67de16b2ba054d47b91214004639df1923b7678
|
|
BLAKE2b-256 checksum How to use checksums |
cee61667e03e10e947bd42b2141e5dd7597afd10ab1dc685f374d6973bdbe1fc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|