Copy-and-adapt, not import-and-share
Each variant's routes/chat.py is a deliberate copy of the Claude route. They share the pattern (JSONL ground truth, SQLite store, ChromaDB embedding, healing) but own their own code. No shared helper extraction across variants.
Why no shared helper
Shared helpers in this layer would force every variant through a lowest-common-denominator interface — exactly what Rule 1 forbids. Each variant evolves independently. If three variants discover they need the same change, the third is the one that proves the pattern is worth extracting. Until then: copy.
Tool bridge is brain-agnostic
Tool execution is where sharing starts to pay, and even there it follows the rule above. Each variant keeps its own tool_bridge.py; the helpers they genuinely have in common live in one shared module beside them, variants/tool_bridge_common.py. Local Read/Write/Edit/Bash execution is the same whichever brain asked for it — and Claude does not use a bridge at all, because its tools run inside the SDK. The variant-specific part is schema format conversion (OpenAI for Codex/Ollama, function_declarations for Gemini, wrapping for Ollama).