Configuration

Project config, user config, API keys, and template overrides.

Configuration layers

Layer Location Committed to git? Purpose Status
User config ~/.vibeconfig No API keys, personal defaults Implemented
Inline Vibefile Yes Model selection, per-target overrides Implemented
Project config .vibe/config.yaml Yes MCP server definitions, skill sources Coming soon

User configuration — ~/.vibeconfig

The user config file holds API keys and personal defaults. It is never committed to version control.

API key resolution order (implemented):

  1. --api-key CLI flag
  2. VIBE_API_KEY environment variable
  3. Provider-specific env var (inferred from the model):
    • ANTHROPIC_API_KEY for Claude models
    • OPENAI_API_KEY for OpenAI models
  4. ~/.vibeconfig global config file
# ~/.vibeconfig — never committed to version control
default_model: claude-sonnet-4-6
anthropic_key: sk-ant-...
openai_key: sk-...

The CLI supports both Anthropic (Claude) and OpenAI models. The provider is automatically detected from the model name — claude/sonnet/haiku/opus routes to Anthropic, gpt/o1/o3 routes to OpenAI.


Inline configuration — Vibefile

Model selection is declared directly in the Vibefile:

model = claude-sonnet-4-6

deploy:
    "deploy to production"

Individual targets can override the top-level model:

model = claude-haiku-4-5

release: test build
    model = claude-opus-4-6
    "bump version, update changelog, tag, push, open release PR"

Template overrides

The vibe init template system supports overrides. When resolving a template for a detected language, the CLI checks these locations in order:

  1. .vibe/templates/<lang>.yaml — project-local override
  2. ~/.vibe/templates/<lang>.yaml — user-global override
  3. Built-in templates — always available as fallback

This means you can customize the targets generated by vibe init for your project or globally for all your projects without modifying the CLI source. See Project Detection for the template YAML format.


Project configuration — .vibe/config.yaml

Coming soon.


Registry integration

Coming soon.