Skip to main content

Providers

Providers are the AI backends that power your agents. OpenPawz supports 10 providers and any OpenAI-compatible API.
Mix local models (Ollama) with cloud providers. OpenPawz auto-falls back to the next provider if one goes down.

Supported providers

Adding a provider

  1. Go to Settings → Providers
  2. Click Add Provider
  3. Select the provider type
  4. Enter your API key
  5. Optionally set a default model and custom base URL

Model routing

OpenPawz can automatically route requests to different models based on the context:
SettingPurpose
Boss modelExpensive, powerful — used for orchestrator bosses
Worker modelCheap, fast — used for channel responses and workers
Specialty modelsPer-specialty overrides (e.g., codergemini-2.5-pro)
Agent modelsPer-agent overrides (highest priority)
Cheap modelSimple tasks auto-select this model
Auto-tierAutomatically pick cheap vs. expensive based on task complexity
Resolution priority: agent_models > specialty_models > role-based (boss/worker) > fallback

Smart prefix matching

When you type a model name, OpenPawz auto-routes to the right provider:
PatternRoutes to
claude* / anthropic*Anthropic
gemini* / google*Google
gpt* / o1* / o3* / o4*OpenAI
Contains / (e.g., meta-llama/llama-3.1)OpenRouter
Contains : (e.g., llama3.1:8b)Ollama
OtherDefault provider → first configured

Provider fallback

If a provider returns a billing, authentication, or rate limit error, OpenPawz automatically tries other configured providers before failing. This ensures your agents stay responsive even if one provider has issues.

Budget enforcement

Set a daily budget in Settings → Engine:
ThresholdAction
50%Warning notification
75%Warning notification
90%Warning notification
100%Requests blocked
Set to 0 to disable budget limits.

Multiple providers

You can configure as many providers as you want. Benefits:
  • Use different models for different agents
  • Automatic fallback if one provider is down
  • Mix local (Ollama) and cloud providers
  • Use cheap models for routine tasks, expensive for complex ones

Provider security

Every provider connection is protected by multiple security layers:
LayerProtection
TLS pinningCustom rustls config with Mozilla root CAs only — OS trust store excluded to prevent MITM from compromised CAs
Request signingEvery outbound request SHA-256 signed (provider ‖ model ‖ timestamp ‖ body) and logged to a 500-entry audit ring buffer
Key zeroingAPI keys wrapped in Zeroizing<String> — automatically overwritten with zeros in RAM on provider drop
Credential vaultKeys encrypted with XOR (32-byte key in OS keychain) at rest, decrypted only at call time
Circuit breaker5 consecutive failures → 60-second cooldown window to prevent cascading failures
Retry with backoffExponential backoff with ±25% jitter (1s → 30s), respects Retry-After headers
→ Deep dive: Security reference