#Do downlaoded opensource models work with openclaw?It feels messy and unreliable to set up

1 messages · Page 1 of 1 (latest)

plush mountain
#

Do downlaoded open source models work with openclaw? It feels messy.Are most people using paid models

raw wingBOT
#

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

fossil lakeBOT
#

Yes — downloaded/open‑source (local) models can work with OpenClaw, but your “it feels messy” instinct is pretty accurate.

Why local feels messy / unreliable

Most local stacks rely on running something like a local model server that exposes an OpenAI-compatible HTTP API (so OpenClaw can talk to it like any other provider). That setup works, but:

  • Tool-calling reliability varies a lot on local/open models (they may ignore tool results, stall, or hallucinate tool calls).
  • Speed + context depend heavily on your hardware; agent workflows get painful fast on consumer GPUs.
  • You end up debugging two systems (OpenClaw + the model server).

Are most people using paid models?

In practice: for agentic workflows (tools, browser, long multi-step tasks), most people use paid cloud models because it’s simply more reliable and “just works.”

A common pattern is:

  • Cloud model for “real work” / tool-heavy tasks
  • Local model for casual chat / privacy / cheap background stuff (when it behaves)

What I recommend

If you’re new to OpenClaw: get everything working end-to-end with a reliable cloud model first, then swap in local once you know the rest of your setup is solid. It cuts debugging time massively.

plush mountain
#

i'l stick with paid and probably use Gemini. how do i change over fromclaude which is listed now and add inmaybe 2 of these as options ModelInput (per 1M)Output (per 1M)Why use it for OpenClaw?Gemini 2.0 Flash-Lite$0.075$0.30The absolute cheapest. Best for "heartbeats" and simple status checks.DeepSeek V3.2$0.28$0.42Best Bang-for-Buck. Incredible at coding and logic for the price.GPT-4o-mini$0.15$0.60Most Reliable Entry. Extremely fast; rarely fails tool calls.Claude 4.5 Haiku$0.80$4.00The "Smart" Budget. Use this if the others fail to follow your instructions.

fossil lakeBOT
#

You can do this two ways: switch just this Discord session (fast, no restart) or change your defaults + add fallbacks (persistent).

1) Switch in this thread (doesn’t change your global default)

In Discord, run:

  • /model (interactive picker), or
  • /model list then /model <number>
  • /model status to confirm what you’re on

Docs: https://docs.openclaw.ai/concepts/models#switching-models-in-chat-model-model

2) Make Gemini your default + add 1–2 fallback models (recommended)

First, make sure the provider(s) have credentials, then set the model + fallbacks.

A) Add auth

  • Gemini (API key provider is google): set GEMINI_API_KEY (or run openclaw onboard --auth-choice gemini-api-key)
  • OpenAI fallback: set OPENAI_API_KEY (or run openclaw onboard --auth-choice openai-api-key)
#

Provider notes: https://docs.openclaw.ai/concepts/model-providers#google-gemini-api-key

B) Pick the exact model IDs (don’t guess the strings)
Run:

openclaw models list --all --provider google
openclaw models list --all --provider openai

Copy the exact provider/model refs you want.

C) Set default + fallbacks

openclaw models set google/<your-gemini-model-id>
openclaw models fallbacks add openai/<your-openai-fallback-id>
openclaw models fallbacks add anthropic/<your-second-fallback-id>   # optional
openclaw models status
#

Docs for these commands: https://docs.openclaw.ai/concepts/models#cli-commands

Quick gotcha: “Model … is not allowed”

If you (or the wizard) have agents.defaults.models set, that becomes an allowlist. Then you must add the new models to that list or OpenClaw will refuse to switch. (Symptom: “Model is not allowed” + it feels like no reply.)

Docs: https://docs.openclaw.ai/concepts/models#model-is-not-allowed-and-why-replies-stop

If you paste your openclaw models status output (redacts secrets), I can tell you exactly what’s missing / what IDs to use. Also: what openclaw --version are you on?

plush mountain
#

/model list

#

i'm going touse this GPT-4o-miniand maybe Gemini after. Ialready ahve Claude. please give me easy instructuions formy terminal

fossil lakeBOT
#

Run these in your terminal (copy/paste). This sets GPT‑4o‑mini as your default, keeps Claude available, and shows you how to add Gemini later.

0) Sanity check

openclaw --version
openclaw models status

1) Add your OpenAI API key (if you haven’t yet)

Recommended (wizard prompts you):

openclaw onboard --auth-choice openai-api-key

2) Set GPT‑4o‑mini as the default model

First, confirm the exact model ref OpenClaw knows for it:

#
openclaw models list --all --provider openai | grep -i "4o" | head

Then set it (most installs use this exact ref, but use whatever your models list shows):

openclaw models set openai/gpt-4o-mini
openclaw models status

3) (Optional) Keep Claude as a fallback

Find your current Claude model ref:

openclaw models list --all --provider anthropic | head

Add it as a fallback:

#
openclaw models fallbacks add anthropic/<paste-the-claude-model-ref-here>
openclaw models fallbacks list

4) Later: add Gemini (optional)

openclaw onboard --auth-choice gemini-api-key
openclaw models list --all --provider google | head
openclaw models fallbacks add google/<paste-gemini-model-ref-here>
openclaw models fallbacks list

If you paste the output of openclaw models status (it redacts secrets), I can tell you exactly what line to use for the Claude/Gemini refs and whether anything’s missing.

plush mountain
#

Config : ~/.openclaw/openclaw.json
Agent dir : ~/.openclaw/agents/main/agent
Default : anthropic/claude-haiku-4-5-20251001
Fallbacks (0) : -
Image model : -
Image fallbacks (0): -
Aliases (0) : -
Configured models (1): anthropic/claude-haiku-4-5-20251001

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

  • anthropic effective=profiles:~/.openclaw/agents/main/agent/auth-profiles.json | profiles=1 (oauth=0, token=0, api_key=1) | anthropic:default=sk-ant-a...jtakZQAA

OAuth/token status

  • none
fossil lakeBOT
#

Nice — your openclaw models status shows two important things:

  • You currently have an allowlist with only 1 configured model (Configured models (1)), so OpenClaw will refuse to use anything else until you add it.
  • Shell env: off means setting OPENAI_API_KEY in your terminal often won’t reach the running Gateway service. Easiest is to store the key via the onboarding/auth commands.

Here’s the “easy terminal” path to add GPT‑4o‑mini and make it default, while keeping your current Claude as a fallback.

Step 1) Add OpenAI API key (stores it where the Gateway can use it)

openclaw onboard --auth-choice openai-api-key

Step 2) Find the exact model ref + add it to your allowlist

openclaw models list --all --provider openai --plain | grep -i "4o-mini"
#

Take the exact output (it should look like openai/...) and plug it in here:

openclaw models aliases add 4o-mini openai/<PASTE-EXACT-4O-MINI-REF-HERE>

(Adding an alias is the simplest way to “register/allowlist” the model, and it also gives you /4o-mini as a shortcut.)

Step 3) Set it as the default model + keep Claude as fallback

openclaw models set openai/<PASTE-EXACT-4O-MINI-REF-HERE>
openclaw models fallbacks add anthropic/claude-haiku-4-5-20251001
openclaw models status

If your Gateway is running as a background service and doesn’t pick it up immediately, do:

#
openclaw gateway restart

Later: add Gemini (optional)

openclaw onboard --auth-choice gemini-api-key
openclaw models list --all --provider google --plain | head
# then:
openclaw models aliases add gemini google/<PASTE-GEMINI-REF>
openclaw models fallbacks add google/<PASTE-GEMINI-REF>

If you paste the output of:

openclaw models list --all --provider openai --plain | grep -i "4o-mini"
#

I’ll tell you the exact command lines with the right ref filled in.

plush mountain
#

I understand this is personal-by-default and shared/multi-user use requires lock-down. Continue?
│ ○ Yes / ● No

fossil lakeBOT
#

That’s the onboarding wizard safety prompt.

  • If this OpenClaw install is just for you (your own Discord account / your own chats): select “Yes” and press Enter to continue.
  • If you’re setting it up in a shared / public Discord where other people could talk to it: hit No for now, then come back after you’ve set strict allowlists/permissions.

How to interact with that prompt:

  • Use ↑ / ↓ (or ← / →) to move the dot to Yes
  • Press Enter
  • You can always Ctrl+C to abort.
plush mountain
#

Onboarding mode
│ ● QuickStart (Configure details later via openclaw configure.)
│ ○ Manual

fossil lakeBOT
#

Pick QuickStart (leave it on the ●) and press Enter.

That will get you working fast, and you can tweak everything later with openclaw configure (or the openclaw models ... commands we used).

plush mountain
#

◆ Config handling
│ ● Use existing values
│ ○ Update values
│ ○ Reset

fossil lakeBOT
#

Choose “Update values” and press Enter.

  • Use existing values = won’t change anything (so you won’t add OpenAI/Gemini).
  • Reset = wipes a bunch of config (don’t do that unless you intentionally want a clean slate).
plush mountain
#

it's asking me about channel. doi complete this again givn it'salready set up

fossil lakeBOT
#

No — if your Discord/Telegram/etc channel is already working, you don’t need to “set up the channel again.”

You’ve got two safe options:

Option A (stay in the wizard)

When it asks about a channel, pick the choice that means keep existing / no changes / skip (wording varies), and just press Enter through it until you get to the models/auth bits.

Key thing: do not choose anything like “reset channel config”.

Option B (simpler): abort onboarding and only add the model/provider

Hit Ctrl+C to exit the wizard, then just do:

openclaw onboard --auth-choice openai-api-key
openclaw models list --all --provider openai --plain | grep -i "4o-mini"
# then:
openclaw models aliases add 4o-mini openai/<exact-ref>
#
openclaw models set openai/<exact-ref>

If you paste the exact prompt text it’s showing for the channel step (the few lines with the options), I’ll tell you which option is the “leave it alone” one.

plush mountain
#

ok. I'd like toconfigure skillsnowso it can create a folder , open, save a file

fossil lakeBOT
#

What you want is mostly tool access, not “skills”.

If the agent has the file tools enabled, it can read/write/edit files in its workspace (and “create folders” just by writing a file into a new subfolder).

Easiest: enable the “coding” tool profile

This turns on the file tools (read/write/edit) plus a few others.

openclaw config set tools.profile "coding"
openclaw config validate
openclaw gateway restart

Docs: https://docs.openclaw.ai/tools#tool-profiles-base-allowlist

More locked-down: allow only file read/write/edit (no shell exec)

#
openclaw config set tools.allow '["group:fs"]' --strict-json
openclaw config validate
openclaw gateway restart

group:fs = read, write, edit, apply_patch
Docs: https://docs.openclaw.ai/tools#tool-groups-shorthands

Make sure you know where files will be created

openclaw config get agents.defaults.workspace

Then in chat you can say things like:

  • “Create notes/ideas.md with …” (this will also create the notes/ folder)
  • “Open/read notes/ideas.md and append …”
#

If you tell me what agents.defaults.workspace prints, I can suggest a good folder location (so you don’t lose track of where it’s writing).

plush mountain
#

◇ What now ─────────────────────────────────────────────────────────────╮
│ │
│ What now: https://openclaw.ai/showcase ("What People Are Building"). │
│ │
├────────────────────────────────────────────────────────────────────────╯

└ Onboarding complete. Use the dashboard link above to control OpenClaw.

thoma@snapshot-362436766-ubuntu-8gb-nbg1-1:~$

Inow want totestthe open ai API

fossil lakeBOT
#

To test that your OpenAI key + OpenClaw integration is working (without doing raw curl), do this on the VPS:

1) Confirm OpenAI auth is present

openclaw models status

You should see an openai section in the “Auth overview”. If it says missing, run:

openclaw onboard --auth-choice openai-api-key

2) Run the deep probes (actually pings providers)

openclaw status --deep

This is the quickest “does the provider actually respond from this machine?” check.

#

3) End-to-end test (best)

In Discord, switch the thread to an OpenAI model with /model and send a normal message (“test”). If it replies, your whole pipeline is good.


If you specifically meant “test the OpenAI API key with curl”, tell me which OpenAI endpoint you want to hit (models list vs a tiny chat request) and I’ll give you a minimal command — don’t paste the API key into Discord.

plush mountain
#

Config : ~/.openclaw/openclaw.json
Agent dir : ~/.openclaw/agents/main/agent
Default : openai/gpt-5.1-codex
Fallbacks (0) : -
Image model : -
Image fallbacks (0): -
Aliases (1) : GPT -> openai/gpt-5.1-codex
Configured models (2): anthropic/claude-haiku-4-5-20251001, openai/gpt-5.1-codex

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

  • anthropic effective=profiles:~/.openclaw/agents/main/agent/auth-profiles.json | profiles=1 (oauth=0, token=0, api_key=1) | anthropic:default=sk-ant-a...jtakZQAA
  • openai effective=profiles:~/.openclaw/agents/main/agent/auth-profiles.json | profiles=1 (oauth=0, token=0, api_key=1) | openai:default=sk-proj-...1H2drg8A

OAuth/token status

  • none
    thoma@snapshot-362436766-ubuntu-8gb-nbg1-1:~$
fossil lakeBOT
#

Perfect — that output means:

  • Your OpenAI API key is stored and being picked up (openai:default=sk-proj-...)
  • Your default model is now OpenAI (Default: openai/gpt-5.1-codex)
  • You also still have Claude configured as another allowed model.

Quick “does it actually work?” tests

A) Provider probe from the VPS

openclaw status --deep

B) End-to-end from Discord
In this thread run:

  • /model status (should show it’s using OpenAI now)
  • then send a normal message like: say "ok" or what time is it?
#

If you wanted GPT‑4o‑mini specifically (instead of the current default)

openclaw models list --all --provider openai --plain | grep -i "4o-mini"
# then:
openclaw models set openai/<that-exact-ref>
openclaw models status

Tell me what openclaw status --deep prints if anything errors (you can paste it; it won’t include your full keys).

plush mountain
#

[openclaw] Failed to start CLI: Error: gateway timeout after 10000ms
Gateway target: ws://127.0.0.1:18789
Source: local loopback
Config: /home/thoma/.openclaw/openclaw.json
Bind: loopback
at Timeout.<anonymous> (file:///home/thoma/.npm-global/lib/node_modules/openclaw/dist/call-DaJKh-6e.js:612:9)
at listOnTimeout (node:internal/timers:588:17)
at process.processTimers (node:internal/timers:523:7)

fossil lakeBOT
#

That error means the CLI can’t reach a running Gateway at ws://127.0.0.1:18789 (local loopback), or the Gateway is wedged and not answering.

On the VPS, run these and paste the output:

1) Version + gateway status

openclaw --version
openclaw gateway status

2) If it’s not running, start it

openclaw gateway start
openclaw gateway status

3) If it says running but still times out, restart + check logs

#
openclaw gateway restart
openclaw logs --follow

(If openclaw logs --follow doesn’t show anything, run:)

tail -f "$(ls -t /tmp/openclaw/openclaw-*.log | head -1)"

Most of the time on a fresh VPS this is simply “gateway service isn’t started yet” or it crashed on boot — the log will show the real reason quickly.

plush mountain
#

from Telegram
Current: openai/gpt-5.1-codex (selected)
Active: anthropic/claude-haiku-4-5-20251001 (runtime)
Default: openai/gpt-5.1-codex
Agent: main
Auth file: ~/.openclaw/agents/main/agent/auth-profiles.json

[anthropic] endpoint: default auth: anthropic:default=sk-ant-a...jtakZQAA (next) (auth-profiles.json: ~/.openclaw/agents/main/agent/auth-profiles.json)

  • anthropic/claude-haiku-4-5-20251001

[openai] endpoint: default auth: openai:default=sk-proj-...1H2drg8A (next) (auth-profiles.json: ~/.openclaw/agents/main/agent/auth-profiles.json)

  • openai/gpt-5.1-codex (GPT)

Terminal
Config : ~/.openclaw/openclaw.json
Agent dir : ~/.openclaw/agents/main/agent
Default : openai/gpt-5.1-codex
Fallbacks (0) : -
Image model : -
Image fallbacks (0): -
Aliases (1) : GPT -> openai/gpt-5.1-codex
Configured models (2): anthropic/claude-haiku-4-5-20251001, openai/gpt-5.1-codex

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

  • anthropic effective=profiles:~/.openclaw/agents/main/agent/auth-profiles.json | profiles=1 (oauth=0, token=0, api_key=1) | anthropic:default=sk-ant-a...jtakZQAA
  • openai effective=profiles:~/.openclaw/agents/main/agent/auth-profiles.json | profiles=1 (oauth=0, token=0, api_key=1) | openai:default=sk-proj-...1H2drg8A

OAuth/token status

  • none
    thoma@snapshot-362436766-ubuntu-8gb-nbg1-1:~$
fossil lakeBOT
#

You’re basically set up correctly — OpenAI auth is present and your Default is OpenAI now.

The confusing bit is this line:

  • Current (selected): openai/gpt-5.1-codex
  • Active (runtime): anthropic/claude-haiku-...

In OpenClaw, “Active (runtime)” is often just “what the session last actually ran”. If you switched the model but haven’t sent a new message yet (or the last request was already in-flight), it can still show the previous model as “active”.

What to do (Telegram)

  1. In Telegram, send one normal message (e.g. “test”) and then re-run /model status. It should flip the Active runtime to OpenAI after a successful OpenAI response.

  2. If it still stays on Claude, force a clean session:

  • send /new
  • then send /GPT (you have an alias GPT -> openai/gpt-5.1-codex)
  • then send “test”
#

If it keeps refusing to run OpenAI

Paste the error you get right after sending “test” (or run openclaw logs --follow on the VPS while you send the message). That will show whether it’s falling back due to an OpenAI error.

plush mountain
#

in telgram it isshowing gpt5-1

fossil lakeBOT
#

Yep — that matches your config right now: you only have one OpenAI model configured, so Telegram can only show/select gpt‑5.1.

If you want GPT‑4o‑mini, you need to add/allowlist it, then select it.

On the VPS: add GPT‑4o‑mini + make it the default

# 1) Find the exact model ref OpenClaw knows for 4o-mini
openclaw models list --all --provider openai --plain | grep -i "4o-mini"

# 2) Add it to your configured models (allowlist) + give it an easy alias
openclaw models aliases add 4o-mini openai/<PASTE-EXACT-REF-FROM-THE-LINE-ABOVE>

# 3) Set it as default
openclaw models set openai/<PASTE-EXACT-REF-FROM-THE-LINE-ABOVE>

# 4) Verify
#
openclaw models status

Then in Telegram

  • send /new
  • then send /4o-mini
  • then send a test message

If you paste the output line from the grep -i "4o-mini" command, I’ll tell you the exact two commands to run with the correct ref filled in.

plush mountain
#

openai/gpt-4o-mini
thoma@snapshot-362436766-ubuntu-8gb-nbg1-1:~$

fossil lakeBOT
#

Great — that’s the exact ref.

Now run:

openclaw models aliases add 4o-mini openai/gpt-4o-mini
openclaw models set openai/gpt-4o-mini
openclaw models status

Then in Telegram:

  1. /new
  2. /4o-mini (or /model openai/gpt-4o-mini)
  3. send “test”

If this fixed it, please right-click the solution message → Apps → ✅ Mark Solution so Answer Overflow can index it.

plush mountain
#

Config overwrite: /home/thoma/.openclaw/openclaw.json (sha256 b9b52c9fd73ddb9464d570c72b69361b41196009906bfd4c3a80c4e2a1153220 -> 642abcc3e19dfc6fe014ed20efe2acd407f36d92517509eb3c4cd47ef611091c, backup=/home/thoma/.openclaw/openclaw.json.bak)
Updated ~/.openclaw/openclaw.json
Default model: openai/gpt-4o-mini

🦞 OpenClaw 2026.3.2 (85377a2) — Runs on a Raspberry Pi. Dreams of a rack in Iceland.

Config : ~/.openclaw/openclaw.json
Agent dir : ~/.openclaw/agents/main/agent
Default : openai/gpt-4o-mini
Fallbacks (0) : -
Image model : -
Image fallbacks (0): -
Aliases (2) : GPT -> openai/gpt-5.1-codex, 4o-mini -> openai/gpt-4o-mini
Configured models (3): anthropic/claude-haiku-4-5-20251001, openai/gpt-5.1-codex, openai/gpt-4o-mini

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

  • anthropic effective=profiles:~/.openclaw/agents/main/agent/auth-profiles.json | profiles=1 (oauth=0, token=0, api_key=1) | anthropic:default=sk-ant-a...jtakZQAA
  • openai effective=profiles:~/.openclaw/agents/main/agent/auth-profiles.json | profiles=1 (oauth=0, token=0, api_key=1) | openai:default=sk-proj-...1H2drg8A
#

working now

fossil lakeBOT
#

Looks good — you’re fully switched:

  • Default: openai/gpt-4o-mini
  • Alias: /4o-miniopenai/gpt-4o-mini
  • Claude + your other OpenAI model are still in the allowlist.

Next step: in Telegram do:

  1. /new
  2. /4o-mini
  3. send a quick “test” message

Optional (recommended): add Claude as a safety fallback if OpenAI errors/rate-limits:

openclaw models fallbacks add anthropic/claude-haiku-4-5-20251001
openclaw models fallbacks list
#

If this thread’s solved now, please right-click the solution message → Apps → ✅ Mark Solution so it gets indexed.

fossil lakeBOT
#

Heads up: you just posted your email address in a public thread. It’s not a secret like an API key, but I’d still avoid sharing it here (and never share tokens/keys).

That snippet:

email   ...
services        sheets
client  default

looks like you successfully authenticated something for Google Sheets (client “default”).

What are you trying to do next?

  1. Use Gemini models via Google (model provider auth), or
  2. Let your OpenClaw agent read/write Google Sheets (a skill / custom integration)?