Skip to content

Providers overview

crab’d is model-agnostic. A model is chosen with a <provider>/<model> specifier; the provider decides how the request is authenticated and routed.

.crabd.yml
model: anthropic/claude-sonnet-4-6
modes:
review:
model: openai/gpt-5.5 # per-mode override
Provider ID(s) Guide
Anthropic (Claude) anthropic Anthropic
OpenAI openai OpenAI
Google (Gemini, Vertex AI) google, google-vertex Google
OpenAI-compatible / local your id, ollama OpenAI-compatible & local

OpenRouter (openrouter, key OPENROUTER_API_KEY) and other Pi-catalog providers work the same way. Pick a <provider>/<model> specifier and supply the provider’s credential.

By default the allowlist is empty, which allows any provider — crab’d works with zero config. Set it to restrict which providers your repo code may reach; then any model whose provider isn’t listed fails the run before a byte leaves your CI:

.crabd.yml
providers:
allowlist: [anthropic, openai]