Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/dallay/corvus/llms.txt

Use this file to discover all available pages before exploring further.

Supported Providers

Corvus supports 30+ AI providers out of the box with zero code changes. All providers are swappable through configuration.

Primary Providers

Direct access to Claude models.
api_key = "sk-ant-..."
default_provider = "anthropic"
default_model = "claude-opus-4-20250514"
Environment variables:
  • ANTHROPIC_OAUTH_TOKEN (for setup tokens)
  • ANTHROPIC_API_KEY
  • CORVUS_API_KEY (fallback)
GPT-4o, o1, and other OpenAI models.
api_key = "sk-..."
default_provider = "openai"
default_model = "gpt-4o"
Environment variables:
  • OPENAI_API_KEY
  • CORVUS_API_KEY (fallback)
Run models locally without API keys.
default_provider = "ollama"
default_model = "llama3.3:70b"
# Optional: for remote Ollama instance
api_url = "http://10.0.0.1:11434"
Environment variables:
  • OLLAMA_API_KEY (optional, for remote instances)
Google’s Gemini models.
api_key = "AIza..."
default_provider = "gemini"
default_model = "gemini-2.0-flash"
Aliases: google, google-geminiEnvironment variables:
  • GOOGLE_API_KEY
  • CORVUS_API_KEY (fallback)

Additional Providers

Groq

Fast inference with Llama modelsEnv: GROQ_API_KEY

Mistral

Mistral AI modelsEnv: MISTRAL_API_KEY

xAI (Grok)

xAI’s Grok modelsEnv: XAI_API_KEY

DeepSeek

DeepSeek modelsEnv: DEEPSEEK_API_KEY

Together AI

Open source modelsEnv: TOGETHER_API_KEY

Fireworks AI

Fast open source inferenceEnv: FIREWORKS_API_KEY

Perplexity

Search-augmented modelsEnv: PERPLEXITY_API_KEY

Cohere

Cohere Command modelsEnv: COHERE_API_KEY

GitHub Copilot

GitHub Copilot modelsEnv: GITHUB_TOKEN

NVIDIA NIM

NVIDIA inference microservicesEnv: NVIDIA_API_KEY

Bedrock

AWS Bedrock modelsEnv: AWS_ACCESS_KEY_ID

Venice

Privacy-focused AIEnv: VENICE_API_KEY

China-Based Providers

api_key = "..."
default_provider = "glm"  # or "glm-cn" for China endpoint
default_model = "glm-4-plus"
Aliases: zhipu, glm-global, glm-cn, bigmodelEnvironment: GLM_API_KEY
api_key = "..."
default_provider = "moonshot"  # or "moonshot-intl"
default_model = "moonshot-v1-8k"
Aliases: kimi, moonshot-cn, moonshot-intlEnvironment: MOONSHOT_API_KEY
api_key = "..."
default_provider = "qwen"  # or "qwen-intl", "qwen-us"
default_model = "qwen-turbo"
Aliases: dashscope, qwen-cn, qwen-intl, qwen-usEnvironment: DASHSCOPE_API_KEY
api_key = "..."
default_provider = "minimax"  # or "minimax-cn"
default_model = "abab6.5-chat"
Aliases: minimax-intl, minimax-cn, minimaxiEnvironment: MINIMAX_API_KEY
api_key = "..."
default_provider = "qianfan"
default_model = "ernie-bot-4"
Aliases: baiduEnvironment: QIANFAN_API_KEY

Custom Endpoints

OpenAI-Compatible Endpoints

Connect to any OpenAI-compatible API:
default_provider = "custom:https://your-api.com"
default_model = "your-model-name"
api_key = "your-key"
Examples:
# Local LM Studio
default_provider = "custom:http://localhost:1234/v1"

# Cloudflare AI Gateway
default_provider = "custom:https://gateway.ai.cloudflare.com/v1"

# Self-hosted vLLM
default_provider = "custom:https://llm.company.com/v1"

Anthropic-Compatible Endpoints

For Anthropic-compatible custom endpoints:
default_provider = "anthropic-custom:https://your-api.com"
default_model = "claude-compatible-model"
api_key = "your-key"

Remote Ollama

Connect to a remote Ollama instance:
default_provider = "ollama"
api_url = "http://10.0.0.1:11434"
default_model = "llama3.3:70b"

Provider Configuration Fields

api_key
string
Primary API key for authentication. Automatically encrypted when secrets.encrypt = true.Can be overridden by provider-specific environment variables.
api_url
string
Custom base URL for provider API. Useful for:
  • Remote Ollama instances
  • Self-hosted endpoints
  • Custom proxy servers
default_provider
string
default:"openrouter"
Default AI provider to use. Must match a supported provider name or custom endpoint format.
default_model
string
default:"anthropic/claude-sonnet-4"
Default model to use with the provider. Format varies by provider:
  • OpenRouter: provider/model-name
  • Direct providers: model-name
default_temperature
number
Default temperature for model inference (0.0-2.0).
  • Lower values (0.0-0.3): More deterministic, focused
  • Medium values (0.4-0.8): Balanced creativity
  • Higher values (0.9-2.0): More creative, varied

Reliability Configuration

Configure automatic retry and fallback behavior:
[reliability]
provider_retries = 2
provider_backoff_ms = 500
fallback_providers = ["anthropic", "openai"]

# Additional API keys for round-robin on rate limits
api_keys = ["sk-key2...", "sk-key3..."]

# Per-model fallbacks
[reliability.model_fallbacks]
"claude-opus-4-20250514" = ["claude-sonnet-4-20250514", "gpt-4o"]
reliability.provider_retries
number
default:2
Number of retries per provider before failing over to the next provider.
reliability.provider_backoff_ms
number
default:500
Base backoff delay in milliseconds between retries.
reliability.fallback_providers
string[]
default:[]
List of fallback providers to try if the primary provider fails.
reliability.api_keys
string[]
default:[]
Additional API keys for round-robin rotation on rate-limit (429) errors.
reliability.model_fallbacks
object
Per-model fallback chains. When a specific model fails, try these alternatives in order.

Model Routing

Route different tasks to specialized models:
[[model_routes]]
hint = "reasoning"
provider = "openrouter"
model = "anthropic/claude-opus-4-20250514"

[[model_routes]]
hint = "fast"
provider = "groq"
model = "llama-3.3-70b-versatile"

[[model_routes]]
hint = "code"
provider = "openai"
model = "gpt-4o"
api_key = "sk-code-specific-key..."  # Optional override
Usage: Pass hint:reasoning as the model parameter to route the request:
corvus agent -m "Solve this complex problem" --model hint:reasoning

Query Classification

Automatically classify queries and route to appropriate models:
[query_classification]
enabled = true

[[query_classification.rules]]
hint = "code"
keywords = ["code", "function", "debug", "implement"]
patterns = ["```", "def ", "fn "]
min_length = 10
priority = 10

[[query_classification.rules]]
hint = "fast"
max_length = 50
priority = 5
query_classification.enabled
boolean
default:false
Enable automatic query classification based on content.
query_classification.rules
array
default:[]
Classification rules. Each rule maps message patterns to a model hint.Rule fields:
  • hint: Model route hint to use
  • keywords: Case-insensitive substring matches
  • patterns: Case-sensitive literal matches
  • min_length: Only match if message length >= N chars
  • max_length: Only match if message length <= N chars
  • priority: Higher priority rules are checked first

Environment Variable Reference

Provider-Specific Variables

ProviderEnvironment Variables
OpenRouterOPENROUTER_API_KEY
AnthropicANTHROPIC_OAUTH_TOKEN, ANTHROPIC_API_KEY
OpenAIOPENAI_API_KEY
OllamaOLLAMA_API_KEY (optional)
GroqGROQ_API_KEY
MistralMISTRAL_API_KEY
xAIXAI_API_KEY
DeepSeekDEEPSEEK_API_KEY
Together AITOGETHER_API_KEY
Fireworks AIFIREWORKS_API_KEY
PerplexityPERPLEXITY_API_KEY
CohereCOHERE_API_KEY
GitHub CopilotGITHUB_TOKEN, GH_TOKEN
NVIDIA NIMNVIDIA_API_KEY
VeniceVENICE_API_KEY
GLMGLM_API_KEY
MoonshotMOONSHOT_API_KEY
QwenDASHSCOPE_API_KEY
MiniMaxMINIMAX_API_KEY
QianfanQIANFAN_API_KEY
Z.AIZAI_API_KEY

Fallback Variables

These apply to all providers if provider-specific variables are not set:
  • CORVUS_API_KEY
  • API_KEY

Complete Example

# Primary provider configuration
api_key = "enc:..."
default_provider = "openrouter"
default_model = "anthropic/claude-sonnet-4-20250514"
default_temperature = 0.7

# Reliability and fallback
[reliability]
provider_retries = 2
provider_backoff_ms = 500
fallback_providers = ["anthropic", "openai"]
api_keys = ["sk-backup1...", "sk-backup2..."]

[reliability.model_fallbacks]
"claude-opus-4-20250514" = ["claude-sonnet-4-20250514"]

# Model routing for specialized tasks
[[model_routes]]
hint = "reasoning"
provider = "openrouter"
model = "anthropic/claude-opus-4-20250514"

[[model_routes]]
hint = "fast"
provider = "groq"
model = "llama-3.3-70b-versatile"

[[model_routes]]
hint = "code"
provider = "openai"
model = "gpt-4o"

# Automatic classification
[query_classification]
enabled = true

[[query_classification.rules]]
hint = "code"
keywords = ["code", "function", "debug"]
priority = 10

Next Steps

Channel Configuration

Configure messaging channels for multi-platform access

Build docs developers (and LLMs) love