Moving from CLAUDE.md rules to infrastructure enforcement with Citadel

The problem with rule accumulation
When Claude ignored instructions, the instinct was to add more rules to CLAUDE.md. Starting at 45 lines, it grew to 190 lines over three months, but compliance worsened. Instructions past line 100 started being treated as suggestions rather than rules. A forensic audit revealed 40% redundancy—rules saying the same thing in different words, rules contradicting each other, and outdated rules. Trimming to 123 lines improved compliance immediately.
The infrastructure shift
The real fix was recognizing CLAUDE.md as an intake point for orientation (project conventions, tech stack, key priorities), not a permanent home for all rules. Everything else should be loaded only when needed. The key shift: moving enforcement from instructions to the environment.
For example, instead of a rule saying "always run typecheck after editing a file," which Claude followed inconsistently, a lifecycle hook script runs automatically on every file save. This ensures typechecking happens without agent choice, surfacing errors immediately rather than 20 edits later. This cut review time dramatically, allowing focus on intent and design rather than chasing type errors.
The progression system
The author outlines a five-level progression:
- Level 1: Raw prompting (nothing persists, same mistakes repeat)
- Level 2: CLAUDE.md (rules help but hit a ceiling around 100 lines)
- Level 3: Skills (modular expertise that loads on demand, zero tokens when inactive)
- Level 4: Hooks (environment enforces quality, not instructions)
- Level 5: Orchestration (parallel agents, persistent campaigns, coordinated waves)
Most projects are fine at Level 2 or 3. The critical insight: when CLAUDE.md stops working, the answer isn't more rules—it's moving enforcement into infrastructure.
Specific implementations
The author implemented three key systems:
- Skills: Markdown files encoding patterns, constraints, and examples for specific domains. The agent loads relevant skills for the current task, avoiding token waste on irrelevant context.
- Campaign files: Structured documents tracking what was built, decisions made, and what remains. These persist across sessions, eliminating daily re-explanations.
- Automated hooks: Typecheck on every edit, anti-pattern scanning on session end, circuit breaker killing the agent after 3 repeated failures on the same issue, and compaction protection saving state before Claude compresses context.
Citadel: The open-source system
The full system, called Citadel, has been open-sourced at https://github.com/SethGammon/Citadel. It includes the skill system, hooks, campaign persistence, and a /do command that routes tasks to the right orchestration level automatically. Built from 27 documented failures across 198 agents on a 668K-line codebase, every rule traces to something that broke.
📖 Read the full source: r/ClaudeAI
👀 See Also

Mouser: Open-source alternative to Logitech Options+ for MX Master 3S
Mouser is a lightweight, open-source tool that remaps buttons on the Logitech MX Master 3S mouse without requiring Logitech's proprietary software. It runs fully locally with no telemetry, supports per-application profiles, and includes DPI control and battery monitoring.

Any Buddy v2.0.0 Adds Preview Feature for Claude Code Buddies
Any Buddy v2.0.0 introduces a preview feature that lets users test different buddies before applying them to Claude code, along with platform-specific fixes for Linux, Mac, and Windows. The tool has gained 160 GitHub stars since its release.

bad-ass-mcp: Free, Open Source MCP for Native Desktop GUI Control via Accessibility API
bad-ass-mcp is an open source MCP server that lets Claude and other AI agents control macOS, Windows, and Linux desktops using the native accessibility layer — no screenshots, no look-move-look loops. Free alternative to Computer Use, Operator, or UiPath.

Multi-Agent Career Mentor Built with Ollama and MCP for Local AI
A developer built a 5-agent AI system that analyzes resumes and generates career intelligence reports using Ollama with llama3 locally. The system chains agent outputs so each builds on previous context, with MCP handling tool integration.