MindForge v12.0.0: An Agentic Framework for Claude Code — What It Ships, How to Install It, and What's Actually Enforced MindForge v12.0.0, an npm package (mindforge-cc) that layers governance and orchestration on top of Claude Code, has shipped as its first release "deliberately cut for real external users." The project's own documentation distinguishes its 221 slash commands, skills, personas and workflow scripts — which are advisory context loaded into the model — from a small set of Claude Code hooks that are the only genuinely enforced blocking mechanism. The release also documents a plan/execute/verify/ship loop with a five-level validation ladder, and the repo's .claude/CLAUDE.md disowns "Unified Protocol Engine" naming (SwarmController, PersonaFactory, WaveExecutor) as aspirational with no backing code. Agentic frameworks for Claude Code have exploded over the last year — swarms of subagents, skill libraries, protocol layers stacked on top of a single model. Most of them describe what they ship in one flattened register: "AI capabilities." MindForge mindforge-cc on npm is a governance and orchestration layer in that same category, sitting on top of Claude Code — it is not a replacement for it, and it does not run without it — but it's one of the more mature, more self-critical entries: it treats its own surface area as five mechanically distinct pieces rather than one undifferentiated pile, and it draws an explicit line between the parts that are genuinely enforced and the parts that are just well-organized advice. As of this writing, v12.0.0 is tagged and live on npm — both latest and stable point to it, with a real GitHub Release at the matching tag — and its CHANGELOG entry says, verbatim, this is "MindForge's first release deliberately cut for real external users." That framing, and how it holds up against the actual source tree, is what this piece checks. Concretely, MindForge ships as three things: an npm package that installs slash commands, skills, personas, subagents, and hooks into a .claude/ and mirrored .agent/ directory; a set of Claude Code plugin-marketplace entries; and a separate MCP server plus TypeScript SDK. Almost everything it ships — the commands, the skills, the personas, the workflow scripts, the governance docs — works by being loaded into the model's context. None of that is code the model is forced to obey. The one exception, and the one piece of this system that is a real technical enforcement mechanism, is a small set of Claude Code hooks. That distinction — advisory context vs. enforced blocking — is the single most important thing to understand about this project, and it's the project's own README that draws the line, not outside auditors. This matters because MindForge's own CHANGELOG and its repo-local .claude/CLAUDE.md spend real effort disowning parts of their own marketing language. The "Unified Protocol Engine" framing that shows up in some MindForge-derived global configs — SwarmController, PersonaFactory, WaveExecutor, soul-engine.js , shard-controller.js — is explicitly called out in the repo's own .claude/CLAUDE.md as aspirational naming with no backing code: those are "role names in the specs under .mindforge/engine/ , not importable code." That kind of self-correction, verified directly against the source tree rather than taken on faith, is the throughline of this whole release. The real working loop that MindForge scaffolds is plan-phase → execute-phase → verify-phase → ship, and it is detailed rather than just a name: plan-phase spawns a research subagent and writes atomic XML plan files with explicit