0002 · The language model is always Anthropic's

Date: 2026-09-05 · Status: accepted

Context

The product calls a language model on every inbound turn, every free-form product line, every Copilot answer and the whole history intake. A provider choice spreads into prompts, token accounting, latency budgets and evals, and is expensive to hold in two places.

Decision

The LLM is Anthropic's models, always — Peter, 2026-09-05: «LLM will always be anthropic's models». THE-AI-SPEC names the provider seam as Anthropic. Which model runs which road is a configuration value: Opus for the schema and the artwork clause, Sonnet for the synthesiser and the vision reads, Haiku for the scale-readers and the spoken turn.

Consequences

One account, one key (ANTHROPIC_API_KEY), one seam to stub in tests; model names live in backend/config.py, so a swap is an environment change and an eval run. The one place another provider appears is the kit runtime's handwriting research road, which reads GEMINI_API_KEY — THE-IMPLEMENTATION-SPEC §5 says it in a line: «the kit's research ran Gemini; the product runs Claude». The kit is design research (decision 0005).

Source

docs/FEED-IA.md (historical reference outside this export) §208.10, «Fixed tools: LLM = Anthropic's models, always» (2026-09-05 night) · THE-AI-SPEC §6 (historical reference outside this export) · THE-IMPLEMENTATION-SPEC §5 (historical reference outside this export).

Search documentation

Type to find a guide or section.

↑ ↓ to choose · Enter to open · Esc to close