GitHub Docs

VibeCody supports 29 AI providers, covering cloud APIs, local models, inference platforms, and specialized services, plus a failover wrapper that chains them. This page provides a comparison and links to individual setup guides.

Quick Start

  1. Pick a provider from the table below
  2. Follow its setup guide to get an API key (or install locally)
  3. Set the environment variable or edit ~/.vibecli/config.toml
  4. Run vibecli --provider <name> or enable it in VibeCoder settings

Provider Comparison

Provider Type API Key Env Var Default Model Free Tier Streaming
Ollama Local None (no key needed) glm-5.2:cloud Yes (fully free) Yes
Claude Cloud ANTHROPIC_API_KEY claude-opus-5 No Yes
OpenAI Cloud OPENAI_API_KEY gpt-5.6-sol No Yes
Gemini Cloud GEMINI_API_KEY gemini-3.6-flash Yes (generous) Yes
DeepSeek Cloud DEEPSEEK_API_KEY deepseek-v4-pro No Yes
Grok Cloud GROK_API_KEY grok-4.6 No Yes
Groq Cloud GROQ_API_KEY openai/gpt-oss-120b Yes (rate-limited) Yes
OpenRouter Cloud OPENROUTER_API_KEY anthropic/claude-opus-5 No Yes
Azure OpenAI Cloud AZURE_OPENAI_API_KEY gpt-5.6-sol No Yes
AWS Bedrock Cloud AWS_ACCESS_KEY_ID anthropic.claude-sonnet-5 No Yes
GitHub Copilot Cloud GITHUB_TOKEN gpt-5.6-sol Yes (with subscription) Yes
Mistral Cloud MISTRAL_API_KEY mistral-large-latest No Yes
Cerebras Cloud CEREBRAS_API_KEY gpt-oss-120b Yes (limited) Yes
Zhipu GLM Cloud ZHIPU_API_KEY glm-5.2 No Yes
Vercel AI Cloud Via provider key Provider-dependent No Yes
MiniMax Cloud MINIMAX_API_KEY MiniMax-M3 No Yes
Perplexity Cloud PERPLEXITY_API_KEY sonar-pro No Yes
Together AI Inference TOGETHER_API_KEY moonshotai/Kimi-K2.7-Code Yes (limited) Yes
Fireworks AI Inference FIREWORKS_API_KEY llama-v3p1-70b-instruct Yes (limited) Yes
SambaNova Inference SAMBANOVA_API_KEY Meta-Llama-3.1-70B-Instruct Yes (limited) Yes
Poolside Cloud POOLSIDE_API_KEY poolside/laguna-s-2.1 No Yes
Meta Cloud META_API_KEY muse-spark-1.3 No Yes
Moonshot Cloud MOONSHOT_API_KEY kimi-k3 No Yes
Alibaba Qwen Cloud DASHSCOPE_API_KEY qwen3.8-max No Yes
NVIDIA NIM Cloud NVIDIA_API_KEY nvidia/nemotron-3-super-120b-a12b Free credits Yes
Core Local None (daemon token) Qwen/Qwen2.5-Coder-1.5B-Instruct Yes (fully free) Yes
vLLM Local None (VLLM_API_KEY optional) meta-llama/Llama-3.1-8B-Instruct Yes (fully free) Yes
LM Studio Local None (LMSTUDIO_API_KEY optional) qwen2.5-coder-7b-instruct Yes (fully free) Yes
Apple Foundation Models Local None (accept Apple’s terms in Settings) system Yes (fully free) Yes
LocalEdit Local None Local model Yes (fully free) Yes
Failover Wrapper N/A N/A N/A Yes

Choosing a Provider

For beginners: Start with Ollama – it is free, runs locally, and requires no API key. Pull qwen3-coder or llama3.2 and you are ready.

For local with nothing to install: Core runs models inside the daemon you are already running – no Ollama, no sidecar. On by default in macOS builds; a build-time feature elsewhere.

For your own GPU at throughput: vLLM serves one open-weight model with batching and paged attention — the option when you are driving a workstation or a shared box rather than a laptop.

For zero setup on macOS 27: Apple Foundation Models runs the on-device Apple model through fm serve — no key, no download. Small context and no native tool calling, so it suits chat and light edits.

For local models with a GUI: LM Studio browses, downloads and swaps models in a desktop app, then exposes them on a local OpenAI-compatible port.

For code-specific models: Poolside trains its Laguna models for software engineering rather than adapting a general chat model.

For best quality: Claude (Opus 4.6 or Sonnet 4.6) and OpenAI (GPT-4o) provide the highest-quality code generation and reasoning.

For budget-conscious use: DeepSeek offers strong coding performance at very low prices. Gemini has a generous free tier.

For fastest inference: Groq runs open-source models on custom LPU hardware with extremely low latency. Cerebras and SambaNova also provide fast inference on custom hardware.

For open models: Together AI, Fireworks AI, and SambaNova host open-source models (Llama, Mixtral, Qwen) with competitive pricing and free tiers.

For search-augmented AI: Perplexity’s Sonar models combine LLM reasoning with real-time web search — excellent for research tasks.

For enterprise: Azure OpenAI and AWS Bedrock integrate with your existing cloud infrastructure and compliance requirements.

For reliability: The Failover provider wraps multiple providers and automatically falls back if one fails.

For training, eval, and cross-cloud routing: the providers above serve chat only. Cloud AI Backends is a separate, configuration-driven layer covering serving → training → eval → routing across DigitalOcean, Azure, Google, AWS, Oracle, IBM, and Akamai — plus any OpenAI-compatible endpoint. Adding or repointing a cloud there is a TOML edit rather than a code change.

Quick Examples by Provider

Every provider works with the same CLI interface. Here are copy-paste examples:

# ── Local (free, private) ─────────────────────────────────────────
ollama pull qwen3-coder
vibecli --provider ollama "Explain the borrow checker"

# In-process mistral.rs — no Ollama, no key (uses the daemon's own token)
vibecli --provider vibecli-mistralrs "Explain the borrow checker"

# vLLM on your own GPU — start it, then point at it (no key by default)
vllm serve meta-llama/Llama-3.1-8B-Instruct
vibecli --provider vllm "Explain the borrow checker"

# LM Studio — load a model, Developer tab -> Start Server
vibecli --provider lmstudio "Explain the borrow checker"

# macOS 27 on-device model — accept Apple's terms in Settings first
vibecli --provider apple-foundation "Explain the borrow checker"

# ── Cloud APIs ────────────────────────────────────────────────────
export ANTHROPIC_API_KEY="sk-ant-..."
vibecli --provider claude "Fix the bug in src/auth.rs" --agent

export OPENAI_API_KEY="sk-..."
vibecli --provider openai --model gpt-5.6-sol "Write unit tests for parser.rs"

export GEMINI_API_KEY="AIza..."
vibecli --provider gemini "Summarize this codebase" --add-dir ./src/

export GROK_API_KEY="..."
vibecli --provider grok "What does this error mean? E0308: mismatched types"

# ── Fast inference (great for quick iterations) ───────────────────
export GROQ_API_KEY="gsk_..."
vibecli --provider groq "Convert this JSON to a Rust struct"

export CEREBRAS_API_KEY="..."
vibecli --provider cerebras "Write a regex for email validation"

export SAMBANOVA_API_KEY="..."
vibecli --provider sambanova "Explain this stack trace"

# ── Budget-friendly ───────────────────────────────────────────────
export DEEPSEEK_API_KEY="..."
vibecli --provider deepseek "Write comprehensive tests for src/db.rs"

# ── Search-augmented ──────────────────────────────────────────────
export PERPLEXITY_API_KEY="pplx-..."
vibecli --provider perplexity "What breaking changes are in Tokio 1.40?"

# ── Code-specific models ─────────────────────────────────────────
export POOLSIDE_API_KEY="..."
vibecli --provider poolside "Refactor src/auth.rs to use the newtype pattern"

# ── Multi-model gateways ─────────────────────────────────────────
export OPENROUTER_API_KEY="sk-or-..."
vibecli --provider openrouter --model "meta-llama/llama-3.3-70b" "Hello"

# ── Enterprise ────────────────────────────────────────────────────
export AZURE_OPENAI_API_KEY="..." AZURE_OPENAI_ENDPOINT="https://myco.openai.azure.com"
vibecli --provider azure "Audit this code for OWASP top 10"

export AWS_ACCESS_KEY_ID="AKIA..." AWS_SECRET_ACCESS_KEY="..." AWS_REGION="us-east-1"
vibecli --provider bedrock "Generate a CloudFormation template"

vibecli --provider copilot "Complete this function"   # Uses existing GitHub Copilot

# ── Failover chain ────────────────────────────────────────────────
vibecli --provider failover "Fix the build errors"
# Tries: claude → openai → gemini → ollama (configured in config.toml)

Agent Mode Examples

# Interactive (approve each step)
vibecli --agent "Add input validation to all API endpoints" --provider claude

# Auto-edit (approve shell commands only)
vibecli --agent "Refactor to async/await" --provider openai --auto-edit

# Full-auto (CI/scripts — no prompts)
vibecli --exec "Run tests and fix any failures" --provider claude --full-auto

# Resume a previous session (continues on its own)
vibecli --resume 1711234567

REPL Session

vibecli
> [src/main.rs]                    # Add file to context
> What does this function do?
> /model claude-opus-4-6           # Switch mid-conversation
> Now refactor it to use async
> /cost                            # Check token usage

Configuration

All providers are configured in ~/.vibecli/config.toml. See the Configuration Guide for the full reference with all 21 providers, usage examples, and safety settings.

Environment variables take precedence over config file values.

# Example: enable Claude and Ollama
[claude]
enabled = true
model = "claude-sonnet-4-6"

[ollama]
enabled = true
api_url = "http://localhost:11434"
model = "glm-5.2:cloud"

API Key Helpers

For teams that rotate keys or use vaults, every provider supports an api_key_helper field that runs a script to fetch the current key:

[claude]
enabled = true
api_key_helper = "~/.vibecli/get-key.sh claude"

The script must print the API key to stdout and exit with code 0.

Tuning a provider’s harness

Which tools a provider’s models receive — machine-readable schemas or a prose catalogue — and which system prompt goes with that choice are per-provider decisions, and per-model where you want them to be. So are the output cap, the reasoning budget, and any instructions that apply to one model alone.

VibeCody ships defaults for every provider listed here and lets you change them per (provider, model) pair, in Settings → Model Harness or over /harness/profile. See Model Harness Profiles.