#Openclaw Ollama Cloud Models setup

1 messages · Page 1 of 1 (latest)

fading pawn
#

Hi, i use openclaw with the ollama api, on linux. i dont know exactly how the configuration of the cloud models via api keys work. id like to use ollama as a host platform and use their cloud models, as they have some free use. they list some models, but how can i pluck all of them into my open claw config?

my json is a bit unstructured and i have no idea how the confug works or the tech behind it. i started with the ollama app and let it do the setup with ollama. it connects openclaw somehow to the ollama api, but they have local models. but i started openclaw directly and im not sure what the config openclaw.json does. there is no clear settings editor.

my json is a mess. then i also tried to use an nvidia model via their API and something from openrouter.

delicate topazBOT
#

To help others find answers, you can mark your question as solved via Right click solution message -> Apps -> ✅ Mark Solution

magic oreBOT
glad jewelBOT
#

Short version: you usually do not want to manually stuff every cloud model into openclaw.json.

A few key things:

  • ~/.openclaw/openclaw.json is the main config file, and it is JSON5 (comments + trailing commas are okay).
  • There is a settings editor now: Dashboard → Config tab, plus a raw JSON editor. Docs: https://docs.openclaw.ai/gateway/configuration
  • Easiest path is usually to rerun:
    openclaw onboard
    
    or
    openclaw configure
    

For Ollama, there are 3 different setups:

#
  1. Local only
    OpenClaw can auto-discover local models from your Ollama host.
    In that mode, you usually do not define models.providers.ollama manually.

  2. Cloud + Local
    Use your local Ollama host, but sign it in with:

    ollama signin
    

    Then OpenClaw can use cloud models through that host.

  3. Cloud only
    Use Ollama’s hosted API with:

    • baseUrl: "https://ollama.com"
    • OLLAMA_API_KEY

Important gotcha for Ollama: do not use /v1. Use the native Ollama URL only.

#
openclaw --version
openclaw models status
openclaw models list --provider ollama

And if you want, paste your models + agents.defaults.model blocks from openclaw.json too, with API keys redacted. I can help clean it up into a minimal working config.

fading pawn
#

ok hier mal:

openclaw models status

🦞 OpenClaw 2026.4.15 (041266a)
I don't just autocomplete—I auto-commit (emotionally), then ask you to review (logically).

Config : ~/.openclaw/openclaw.json
Agent dir : ~/.openclaw/agents/main/agent
Default : ollama/gemma4:31b-cloud
Fallbacks (0) : -
Image model : -
Image fallbacks (0): -
Aliases (2) : nemotron-3-super-120b-a12b-free-nvidia -> custom-integrate-api-nvidia-com/nvidia/nemotron-3-super-120b-a12b, OpenRouter -> openrouter/auto
Configured models (4): custom-integrate-api-nvidia-com/nvidia/nemotron-3-super-120b-a12b, openrouter/auto, openrouter/google/gemma-4-31b-it, openrouter/nvidia/nemotron-3-super-120b-a12b:free

Auth overview
Auth store : ~/.openclaw/agents/main/agent/auth-profiles.json
Shell env : off
Providers w/ OAuth/tokens (1): openai-codex (1)

  • custom-integrate-api-nvidia-com effective=models.json:[API] | models.json=[API] | source=models.json: ~/.openclaw/agents/main/agent/models.json
  • ollama effective=profiles:~/.openclaw/agents/main/agent/auth-profiles.json | profiles=1 (oauth=0, token=0, api_key=1) | ollama:default=[API]
    models.json=marker(ollama-local) | source=models.json: ~/.openclaw/agents/main/agent/models.json
  • openai effective=profiles:~/.openclaw/agents/main/agent/auth-profiles.json | profiles=1 (oauth=0, token=0, api_key=1) | openai:[API]
  • openai-codex effective=profiles:~/.openclaw/agents/main/agent/auth-profiles.json | profiles=1 (oauth=1, token=0, api_key=0) | openai-codex:default=OAuth
  • openrouter effective=profiles:~/.openclaw/agents/main/agent/auth-profiles.json | profiles=1 (oauth=0, token=0, api_key=1) | openrouter:default=[API]
glad jewelBOT
#

Yep, this helps a lot.

I think the main confusion is this:

  • Configured models (4) is not “all available models”
  • it is your allowlist from agents.defaults.models
  • if that block exists, OpenClaw treats it as “only these models are selectable”

So right now your setup looks a bit mixed:

  • default model = ollama/gemma4:31b-cloud
  • allowlist = only OpenRouter + custom NVIDIA refs
  • auth exists for Ollama and OpenRouter already
  • shell env off is fine, because your keys are being loaded from saved auth profiles, not from exported env vars

That means your config is probably more complicated than it needs to be.

#

The clean mental model

  • openclaw.json = behavior/defaults/preferences
  • auth-profiles.json = saved API keys / OAuth
  • agents.defaults.models = optional allowlist, not the master model catalog

For your goal, I would simplify hard

If you want “use Ollama cloud, and maybe OpenRouter/NVIDIA too”, I would:

  1. keep your auth as-is
  2. set only a default model and maybe fallbacks
  3. remove the allowlist for now (agents.defaults.models)
  4. avoid the custom NVIDIA provider unless you really need that exact custom endpoint

Something as small as this is often enough:

#
{
  agents: {
    defaults: {
      model: {
        primary: "ollama/gemma4:31b-cloud",
        fallbacks: ["openrouter/auto"],
      },
    },
  },
}

Important Ollama detail

If you use Ollama host-backed cloud/local mode, use the native Ollama URL, not /v1.