Install
openclaw skills install claude-to-freeMigrate OpenClaw from Claude subscription OAuth to a free or cheap model provider (OpenRouter, Gemini, Ollama). Use when the user says Claude stopped working, gets an auth error, mentions the Anthropic April 2026 subscription ban, or asks to switch models without paying Anthropic more.
openclaw skills install claude-to-freeHelp the user migrate OpenClaw from Claude subscription OAuth to a free or cheap provider.
Read the current config and identify what's broken:
cat ~/.openclaw/openclaw.json | python3 -c "
import json,sys
d=json.load(sys.stdin)
auth = d.get('auth',{})
profiles = auth.get('profiles',{})
model = d.get('agents',{}).get('defaults',{}).get('model',{}).get('primary','not set')
print('Current model:', model)
for name, p in profiles.items():
print(f'Auth profile: {name} provider={p.get(\"provider\")} mode={p.get(\"mode\")}')
"
If you see provider=anthropic mode=oauth — that's the blocked profile. Proceed.
Ask the user one question: "Do you want free (no cost) or are you okay with a small per-token charge for better quality?"
→ OpenRouter free tier — no credit card, no cost
Best free models right now:
openrouter/free — auto-picks the best free model (zero config)openrouter/meta-llama/llama-3.3-70b-instruct:free — strong general modelopenrouter/qwen/qwen3-coder:free — best free coding model (262k context)openrouter/qwen/qwen3.6-plus:free — 1M context, freeopenrouter/google/gemini-2.5-flash-lite — Google's fast model, 1M contextopenrouter/google/gemini-2.0-flash-001 — excellent quality/priceopenrouter/meta-llama/llama-3.3-70b-instruct — same as free but reliable→ Ollama — runs on the user's machine, zero cost, fully private
→ Google AI Studio free tier — check current limits at aistudio.google.com (varies by account/region)
Use native OpenClaw commands — openclaw onboard creates the auth profile and config in one shot:
# 1. Add your provider (example: OpenRouter free)
openclaw onboard --non-interactive --accept-risk --auth-choice openrouter-api-key --openrouter-api-key YOUR_OPENROUTER_KEY --skip-channels --skip-skills --skip-search --skip-daemon --skip-health --skip-ui
# 2. Set a free model
openclaw models set openrouter/qwen/qwen3.6-plus:free
# 3. Restart
openclaw gateway restart
Or use the interactive auth helper:
openclaw models auth login --provider openrouter
# (follow prompts to paste your key)
openclaw models set openrouter/qwen/qwen3.6-plus:free
openclaw gateway restart
Get a free OpenRouter key at https://openrouter.ai/keys (no credit card required).
openclaw onboard --non-interactive --accept-risk --auth-choice openrouter-api-key --openrouter-api-key YOUR_KEY --skip-channels --skip-skills --skip-search --skip-daemon --skip-health --skip-uiopenclaw models set openrouter/meta-llama/llama-3.3-70b-instruct:freeopenclaw gateway restartopenclaw onboard --non-interactive --accept-risk --auth-choice gemini-api-key --gemini-api-key YOUR_KEY --skip-channels --skip-skills --skip-search --skip-daemon --skip-health --skip-uiopenclaw models set google/gemini-2.5-flash-liteopenclaw gateway restartcurl -fsSL https://ollama.com/install.sh | sh (or use cloud: ollama.com)ollama pull llama3.2openclaw onboard --non-interactive --auth-choice ollama --accept-riskopenclaw models set ollama/llama3.2openclaw gateway restartFirst, confirm the auth profile exists for the new provider:
openclaw models status
Check that the output lists the expected auth profile (e.g. openrouter, google, ollama). If it's missing, the gateway will silently fall back to the first working provider (usually Anthropic) — the model set in config doesn't matter without a matching auth profile.
If the auth profile is missing → go back to Step 3/4 and run openclaw onboard for that provider first. Then re-run openclaw models set and restart.
Only once the auth profile is confirmed, verify the active model:
openclaw models status --plain | grep -i "primary\|model"
openclaw models status verifies the configured model/auth state, not necessarily the live runtime model already attached to an existing Telegram chat session.
To verify the live runtime model, start a new chat/session (or reset the current one) and then check /status.
If the config still looks stale after confirming the auth profile exists, restart the gateway with the portable CLI command:
openclaw gateway restart
| Error | Cause | Fix |
|---|---|---|
401 Unauthorized | Invalid API key | Re-enter key, check for typos |
model not found | Wrong model ID | Check exact ID in guide |
connection refused | Ollama not running | Run ollama serve |
RESOURCE_EXHAUSTED | Free tier rate limit | Wait or switch to paid tier |
| Config not applied | Gateway cached old config | Full restart via systemd |
--accept-risk to non-interactive onboarding examples. Add --skip-health alongside --skip-daemon so the examples work on broken/stopped local gateways. Clarify that openclaw models status verifies configured state, not necessarily the live runtime model in an existing Telegram session. Switch fallback restart guidance back to portable openclaw gateway restart.--auth-choice apiKey --token-provider openrouter was never valid. Updated to --auth-choice openrouter-api-key --openrouter-api-key KEY with --skip-* flags for non-interactive flow. Fixed Gemini auth from google-api-key to gemini-api-key. Added openclaw models auth login as alternative flow. Updated verification to use --plain flag.