Most CLAUDE.md files are 500-line monoliths. When you switch LLMs, you rewrite everything. After the third rewrite, I built a three-layer architecture that makes model swaps trivial.

The Problem

I run DeepSeek V4 Pro as my daily driver for Claude Code. But sometimes I need Claude Opus for complex reasoning, or Sonnet for fast iterations.

Every time I swapped, I rewrote my entire CLAUDE.md. DeepSeek needs tighter tool-call discipline. Claude Opus needs less output splitting. The same rule file can't serve both.

The real issue: I mixed identity, behavior tuning, and process rules into one file.