Ollama configuration
The basic, explicit, and custom base URL config shapes for the Ollama provider
Configuration
Basic (implicit discovery)
export OLLAMA_API_KEY="ollama-local"If OLLAMA_API_KEY is set, you can omit apiKey in the provider entry; OpenClaw fills it in for availability checks.
Explicit (manual models)
Use explicit config for hosted cloud setup, a non-default host/port, forced
context windows, or per-model settings. Hosted https://ollama.com uses only
the listed models; a self-hosted endpoint also lists its other installed models:
{
models: {
providers: {
ollama: {
baseUrl: "https://ollama.com",
apiKey: "OLLAMA_API_KEY",
api: "ollama",
models: [
{
id: "kimi-k2.5:cloud",
name: "kimi-k2.5:cloud",
reasoning: false,
input: ["text", "image"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 128000,
maxTokens: 8192
}
]
}
}
}
}Custom base URL
The listed model keeps these settings; other models installed on that host are still discovered:
{
models: {
providers: {
ollama: {
apiKey: "ollama-local",
baseUrl: "http://ollama-host:11434", // No /v1 - native Ollama API URL
api: "ollama", // Explicit: guarantees native tool-calling behavior
timeoutSeconds: 300, // Optional: longer connect/stream budget for cold local models
models: [
{
id: "qwen3:32b",
name: "qwen3:32b",
params: {
keep_alive: "15m", // Optional: keep the model loaded between turns
},
},
],
},
},
},
}Do not add /v1. That path selects OpenAI-compatible mode, where tool calling is not reliable.