#Can someone help me set-up OpenClaw with local LM Studio?

84 messages · Page 1 of 1 (latest)

indigo sigil
#

My OpenClaw version is OpenClaw 2026.4.14 (323493f) and I've been trying to run openclaw onboard --install-daemon but after some point it always end in this error:

TypeError: Cannot read properties of undefined (reading 'trim')

I'm ok with configuring it manually through files if I'm told how to do it.

quasi krakenBOT
#

That smells like an onboarding bug, not you messing up LM Studio.

I’d skip openclaw onboard --install-daemon for now and do it manually.

If you installed from source, prefix these with pnpm (pnpm openclaw ...).

1) Create ~/.openclaw/openclaw.json

{
  agents: {
    defaults: {
      workspace: "~/.openclaw/workspace",
      model: { primary: "lmstudio/my-local-model" },
      models: {
        "lmstudio/my-local-model": { alias: "Local" },
      },
#
    },
  },
  models: {
    mode: "merge",
    providers: {
      lmstudio: {
        baseUrl: "http://127.0.0.1:1234/v1",
        apiKey: "lmstudio",
        api: "openai-responses",
        models: [
          {
            id: "my-local-model",
            name: "Local Model",
            reasoning: false,
            input: ["text"],
#
            cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
            contextWindow: 196608,
            maxTokens: 8192,
          },
        ],
      },
    },
  },
}

Replace my-local-model with the exact model ID LM Studio exposes at:

http://127.0.0.1:1234/v1/models

2) Start and test without the daemon first

#
openclaw doctor
openclaw gateway run

In another terminal:

openclaw status --deep
openclaw gateway probe

3) If that works, install the service separately

openclaw gateway install
openclaw gateway start
openclaw gateway status
#

Helpful docs

I also found trim crash fixes in the changelog, including workspace/onboarding-adjacent paths, so I’d treat this as a real bug/regression in that flow.

If openclaw gateway run also crashes, paste these and I’ll help narrow it down fast:

openclaw doctor
openclaw status --deep
openclaw logs --follow

If you want, I can also give you a minimal LM Studio-only config next, with fewer fields, just to get first boot working.

indigo sigil
#

Thank you Krill!! I've been able to set-up my OpenClaw instance. Now, how do I add MCP servers? I need to connect to Notion MCP (via URL) and Roblox Studio MCP (via command line). Also, do you recommend some skills for this set-up?

quasi krakenBOT
#

Nice, glad you got it working 🎉

For MCP, OpenClaw uses mcp.servers in ~/.openclaw/openclaw.json, or the CLI helpers:

  • openclaw mcp list
  • openclaw mcp show [name]
  • openclaw mcp set <name> <json>
  • openclaw mcp unset <name>

If you're running from source, same thing but prefixed with pnpm.

1) Notion MCP via URL

I'd try this first:

openclaw mcp set notion '{"url":"https://mcp.notion.com/mcp","transport":"streamable-http"}'
#

Equivalent config:

{
  mcp: {
    servers: {
      notion: {
        url: "https://mcp.notion.com/mcp",
        transport: "streamable-http",
      },
    },
  },
}

If Notion requires auth in your setup, add headers too:

#
{
  mcp: {
    servers: {
      notion: {
        url: "https://mcp.notion.com/mcp",
        transport: "streamable-http",
        headers: {
          Authorization: "Bearer YOUR_TOKEN_HERE",
        },
      },
    },
  },
}

One caveat, I don’t see first-party OpenClaw docs for an interactive outbound MCP OAuth flow yet, so if the plain URL entry does not authenticate cleanly, that’s probably the sticking point.

#

2) Roblox Studio MCP via command line

Roblox Studio uses stdio, so this is a command + args entry.

First in Studio:

  • Open Assistant
  • Manage MCP Servers
  • enable Studio as MCP server

Roblox shows you the exact startup command / JSON there. Copy that into OpenClaw.

Shape should look like:

{
  mcp: {
    servers: {
#
      robloxStudio: {
        command: "/path/to/roblox-mcp-binary",
        args: ["--stdio"],
      },
    },
  },
}

Or via CLI:

openclaw mcp set robloxStudio '{"command":"/path/to/roblox-mcp-binary","args":["--stdio"]}'

I’d use the exact command Roblox Studio shows, since it’s OS-specific.

#

3) Verify

openclaw mcp list
openclaw mcp show notion
openclaw mcp show robloxStudio

Then start a new session/chat so the tool list refreshes.

Skills I’d recommend

My opinion: go light on skills at first.

MCP gives the agent live tools. Skills teach it workflows. For your setup, I’d add skills that help with process, not duplicate Notion/Roblox access.

Good fits:

  • a docs / research skill, for pulling Roblox or API docs quickly
  • a writing / doc-coauthoring style skill, for turning work into clean Notion docs
#
  • a git / github skill, if your Roblox code or plugins live in a repo
  • maybe an asset / image skill later, if you use AI-assisted meshes, textures, or concept art

I would not rush to install a Notion-specific skill if Notion MCP is already working, that can be redundant.

Docs:

If you want, paste the exact Roblox command Studio shows, and I’ll translate it into the exact openclaw mcp set ... command for you.

indigo sigil
#

Does OpenClaw supports Groq? If so, how to add it alongside my local models? Also, is it possible to set models specific for a Discord channel?

quasi krakenBOT
#

Yep, OpenClaw supports Groq.

Add Groq alongside LM Studio

If your gateway runs as a daemon, put the key in ~/.openclaw/.env:

GROQ_API_KEY=gsk_...

Then keep your LM Studio provider config, and add Groq as another model option/fallback.

I’d do it like this:

{
#
  agents: {
    defaults: {
      model: {
        primary: "lmstudio/my-local-model",
        fallbacks: ["groq/your-groq-model"],
      },
      models: {
        "lmstudio/my-local-model": { alias: "Local" },
        "groq/your-groq-model": { alias: "Groq" },
      },
    },
  },

  models: {
    mode: "merge",
#
    providers: {
      lmstudio: {
        baseUrl: "http://127.0.0.1:1234/v1",
        apiKey: "lmstudio",
        api: "openai-responses",
        models: [
          {
            id: "my-local-model",
            name: "Local Model",
            reasoning: false,
            input: ["text"],
            cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
            contextWindow: 196608,
            maxTokens: 8192,
          },
#
        ],
      },
    },
  },
}

For the exact Groq model id, don’t guess, use:

openclaw models list --provider groq

Then replace groq/your-groq-model with the real one.

Per-Discord-channel models

#

Also yes. OpenClaw supports that with channels.modelByChannel.

{
  channels: {
    modelByChannel: {
      discord: {
        "123456789012345678": "Groq",
        "987654321098765432": "Local",
      },
    },
  },
}

A few important notes:

#
  • use the Discord channel ID, not the name
  • values can be full refs like groq/... or aliases like "Groq"
  • this only applies if the session does not already have a model override
    (for example from /model)
  • if a session is already running with another model, start a new session/thread to pick up the channel mapping cleanly

My recommendation

A nice setup is:

  • Local as default for casual/private work
  • Groq as fallback for speed/reliability
  • optionally pin one busy Discord channel to Groq with channels.modelByChannel

Docs:

indigo sigil
#

Can I connect OpenClaw to Claude without being through the API so it uses my user limits or it is not actually possible?

quasi krakenBOT
#

Yes, kind of.

OpenClaw can use Claude without an Anthropic API key by reusing a local Claude CLI login on the gateway host.

Supported path

  1. Install and log into Claude CLI on the machine running the gateway
  2. Verify:
claude --version
  1. Tell OpenClaw to use it:
openclaw models auth login --provider anthropic --method cli --set-default

That is the documented non-API path.

#

Important caveat

If your question is specifically:

“Will this definitely use my normal Claude user/subscription limits exactly like the app, and never API/extra billing?”

Then the answer is not guaranteed.

OpenClaw docs say Claude CLI reuse is supported, but Anthropic-side billing/quota behavior is their policy, not something OpenClaw can force. There are places in the docs noting Claude third-party usage can route through extra-usage billing instead of normal subscription limits.

So the practical answer is:

  • Possible without API key? Yes.
  • Guaranteed to behave exactly like plain Claude app limits? No.

My recommendation

  • If you want no API key and are okay with Claude CLI/subscription-style behavior, use Claude CLI auth
  • If you want the clearest/predictable billing path, use an Anthropic API key
indigo sigil
#

I use an Android phone. OpenClaw is running on Windows 11, on a PC I keep always on. Is it possible to use some kind of Google integration to add alarms to my phone with specific configurations?

quasi krakenBOT
#

On the alarm question, not as a native Android Clock alarm, at least not out of the box.

What OpenClaw’s Android side does document is:

  • calendar.add / calendar.events
  • notifications access
  • Google Assistant entrypoint into the OpenClaw app

Docs: https://docs.openclaw.ai/platforms/android

So the practical split is:

  • Google Calendar style reminder / event that notifies your phone: yes, plausible
  • Real phone alarm in the Clock app with detailed settings (ringtone, recurrence, exact alarm behavior): I don’t see a built-in OpenClaw integration for that

If you want true phone alarms, you’d probably need a custom bridge, something like:

#
  1. Tasker on Android plus a custom webhook/skill, or
  2. Home Assistant with the Android companion app, or
  3. A custom Android-node feature/skill

If your goal is just “remind me at X on my phone”, the easiest path is usually:

  • OpenClaw creates a calendar event/reminder
  • Android/Google Calendar handles the notification

If you want, I can sketch the simplest setup for either:

  • Google Calendar reminders on Android, or
  • Tasker-based real alarms.
indigo sigil
#

I'm hitting API rate limit on Groq (Kimi K2 Instruct 0905) without ever using the API. Is there any config on OpenClaw I can do to reduce this?

quasi krakenBOT
#

Yeah, a bit. OpenClaw can reduce pressure on Groq, but it can’t increase Groq’s actual limit.

Also, one important gotcha: with Groq, a single large request can trip a rate limit. OpenClaw even treats some Groq 413 responses as TPM, tokens-per-minute, not just “request too large”.

Best things to do

1. Make LM Studio primary, Groq fallback

If you already have LM Studio, this is the biggest win.

{
  agents: {
    defaults: {
      model: {
        primary: "lmstudio/your-local-model",
        fallbacks: ["groq/your-groq-model"]
#
      }
    }
  }
}

That way Groq is only used when local fails.

2. Lower output tokens on the Groq model

{
  agents: {
    defaults: {
      models: {
        "groq/your-groq-model": {
#
          params: {
            maxTokens: 1024
          }
        }
      }
    }
  }
}

Try 512 or 1024 first.

3. Reduce thinking

OpenClaw supports:

#
{
  agents: {
    defaults: {
      thinkingDefault: "off"
    }
  }
}

Or per message:

/think off

Less thinking usually means fewer tokens burned.

#

4. Avoid live probe commands unless needed

These can make real provider requests:

  • openclaw models status --probe
  • openclaw models list --probe

Docs explicitly warn that probe requests may consume tokens and trigger rate limits.

5. Reset long sessions sometimes

If the thread/session gets huge, the prompt sent to Groq gets bigger too. A fresh session can help.


My recommendation for your setup

Since you already have Windows + LM Studio, I’d do:

  • LM Studio as primary
indigo sigil
#
{
 "agents": {
    "defaults": {
      "workspace": "~/.openclaw/workspace",
      "model": {
        "primary": "groq/moonshotai/kimi-k2-instruct-0905"
      },
      "models": {
        "groq/moonshotai/kimi-k2-instruct-0905": {
          "alias": "Groq Kimi K2 Instruct 0905",
          "streaming": true,
          "params": {
            "maxTokens": 1024
          }
        }
      }
    }
  },
}

Here's my config. Is it wrong or right?

quasi krakenBOT
#

Mostly right. I don’t see a schema problem there.

What’s valid in your config:

  • agents.defaults.workspace
  • agents.defaults.model.primary
  • agents.defaults.models["provider/model"]
  • alias
  • params.maxTokens
  • streaming (valid, but optional)

Two important caveats

  1. maxTokens: 1024 only limits the reply/output
    It does not limit the input side much, meaning:
    • system prompt
    • tools
#
  • chat history

    • your message

    So you can still hit Groq TPM/rate limits even with maxTokens set.

  1. Groq is still your primary and only model
    So every message still goes to Groq.

Small notes

  • streaming: true is fine, but it is usually unnecessary since streaming is already the normal/default for most models.
  • The trailing comma at the end is okay in OpenClaw config because it uses JSON5, but it is not valid strict JSON.

So, is it “right”?

  • As config syntax: yes, basically right.
  • As a fix for Groq rate limits: only partly. It helps a bit, but not enough by itself.
#

Better version if you want fewer Groq calls

If you have LM Studio, I’d do this instead:

{
  agents: {
    defaults: {
      workspace: "~/.openclaw/workspace",
      model: {
        primary: "lmstudio/your-local-model",
        fallbacks: ["groq/moonshotai/kimi-k2-instruct-0905"]
      },
      thinkingDefault: "off",
      models: {
        "groq/moonshotai/kimi-k2-instruct-0905": {
          alias: "Groq Kimi K2 Instruct 0905",
#

If you want, I can turn your config into a complete LM Studio + Groq fallback config next.

indigo sigil
#

Does Groq supports API calls without a paid plan at all?

quasi krakenBOT
#

Yes. Groq does support API calls without a paid plan.

You can create an API key and use the API on their free tier, but the limits are pretty tight and apply at the org level. So you can still hit rate limits quickly, especially on bigger prompts/models.

For your case, that means the problem is probably:

  • free-tier rate limits, not
  • “API is disabled unless I pay”

Also worth checking: on Groq, a large first request can burn through TPM fast, so “I barely used it” can still hit a limit.

Check these in Groq:

So short version:

#
  • No paid plan required to make API calls
  • Paid plan needed for higher limits / more headroom

If you want, I can help you tune your OpenClaw config specifically for the free Groq tier.

indigo sigil
#

I think the message "⚠️ API rate limit reached. Please try again later." refers to OpenClaw, not to Groq?

quasi krakenBOT
#

Not exactly.

That text is OpenClaw’s user-facing wrapper, but it usually means the upstream model/API provider hit a rate limit, not that “OpenClaw itself has its own paid API quota.”

So in practice:

  • wording comes from OpenClaw
  • cause is usually Groq (or whichever provider/model you’re using)

Since your primary model is:

groq/moonshotai/kimi-k2-instruct-0905

that warning is very likely Groq-related.

#

If it were OpenClaw’s own gateway auth limiter, the message would be different, more like failed-auth / too many attempts, not the generic model API rate-limit warning.

So short version: OpenClaw is reporting it, Groq is probably causing it.

indigo sigil
#

How to configure OpenClaw to use Kimi Claw?

quasi krakenBOT
#

If you mean Kimi in OpenClaw, there are 2 different setups:

1. Regular Kimi models, use Moonshot

Use this for Kimi K2 / K2.5.

Put your key in ~/.openclaw/.env (on Windows, usually %USERPROFILE%\\.openclaw\\.env):

MOONSHOT_API_KEY=sk-...

Then in ~/.openclaw/openclaw.json:

{
  agents: {
#
    defaults: {
      workspace: "~/.openclaw/workspace",
      model: {
        primary: "moonshot/kimi-k2.5"
      },
      models: {
        "moonshot/kimi-k2.5": { alias: "Kimi K2.5" },
        "moonshot/kimi-k2-thinking": { alias: "Kimi K2 Thinking" },
        "moonshot/kimi-k2-thinking-turbo": { alias: "Kimi K2 Thinking Turbo" },
        "moonshot/kimi-k2-turbo": { alias: "Kimi K2 Turbo" }
      }
    }
  }
}
#

Then restart the gateway:

openclaw gateway restart

2. Kimi Coding, use Kimi provider

This is separate.

KIMI_API_KEY=sk-...
{
  agents: {
#
    defaults: {
      workspace: "~/.openclaw/workspace",
      model: {
        primary: "kimi/kimi-code"
      },
      models: {
        "kimi/kimi-code": { alias: "Kimi Code" }
      }
    }
  }
}

Important

Moonshot and Kimi Coding are separate providers.
So:

#
  • LM Studio primary + Kimi fallback, or
  • Kimi only.
indigo sigil
#

They have a command

bash <(curl -fsSL https://cdn.kimi.com/kimi-claw/install.sh) --bot-token <redacted>

However I can't execute it because I'm on native Windows 11

quasi krakenBOT
#

Yep, that command is bash-only.

It uses:

  • bash
  • curl
  • process substitution: <(...)

So it will not run in native PowerShell / cmd on Windows 11.

The bigger point

If your goal is OpenClaw using Kimi, you do not need that installer at all.

OpenClaw already supports Kimi providers natively:

  • Moonshot / Kimi K2.xmoonshot/... with MOONSHOT_API_KEY
  • Kimi Codingkimi/... with KIMI_API_KEY
#

So on Windows, the simpler path is still:

  1. put the key in %USERPROFILE%\\.openclaw\\.env
  2. set the model in %USERPROFILE%\\.openclaw\\openclaw.json
  3. restart OpenClaw

If you specifically want to run their kimi-claw installer

Then you’d need something like:

  • WSL
  • or Git Bash / MSYS2, if their script supports it

But that’s a separate Kimi-specific install path, not required for OpenClaw.

So my recommendation is: skip the installer, use OpenClaw’s native Kimi config instead.

Docs:

indigo sigil
#

I've installed it in WSL and copied the files to Windows. How to enable it now?

quasi krakenBOT
#

If you mean kimi-claw, copying the files from WSL to Windows usually is not enough.

A WSL install is typically a Linux install, so the files often expect:

  • Linux paths
  • bash/sh
  • Linux binaries/dependencies

So there usually isn’t an “enable it on Windows” step after copying. It won’t magically become a native Windows app.

Real options

Option 1, keep it in WSL

Run kimi-claw inside WSL and keep using it there.

Option 2, get a native Windows build

If Kimi provides a Windows installer/release, use that instead of the WSL copy.

#

Option 3, skip kimi-claw entirely for OpenClaw

If your real goal is OpenClaw using Kimi, this is the better path.

You do not need kimi-claw. Just configure OpenClaw directly:

  • %USERPROFILE%\\.openclaw\\.env
MOONSHOT_API_KEY=sk-...
  • %USERPROFILE%\\.openclaw\\openclaw.json
{
  agents: {
    defaults: {
      workspace: "~/.openclaw/workspace",
#
      model: {
        primary: "moonshot/kimi-k2.5"
      }
    }
  }
}

Then:

openclaw gateway restart

So short version: don’t try to “activate” the copied WSL install on Windows. Either run it in WSL, or use OpenClaw’s native Kimi config instead.

indigo sigil
#

I mean, I probably explained it wrong. Kimi Claw is an extension for OpenClaw so it must run across platforms, right?/

quasi krakenBOT
#

Not necessarily.

Being an OpenClaw extension / skill / plugin does not automatically mean “works on every OS”.

OpenClaw docs explicitly treat skills/plugins as environment-dependent, they can be gated by:

  • OS
  • required binaries
  • config
  • host environment

So if kimi-claw ships a bash-only installer, that’s a pretty strong sign it may be:

  • Linux/macOS-first, or
  • only supported in WSL / Unix-like environments

Also, I don’t see kimi-claw in the local OpenClaw docs, so I would not assume it’s a built-in cross-platform OpenClaw feature.

#

Practical takeaway

  • If you want Kimi with OpenClaw on Windows, use the built-in providers:
    • moonshot/...
    • kimi/...
  • If you specifically want kimi-claw, treat it as a third-party extension and check whether its author documents:
    • native Windows support
    • WSL-only support
    • or a separate Windows installer

So, short answer: extension for OpenClaw does not automatically mean cross-platform.

If you want, paste the kimi-claw repo/docs link and I can tell you whether it looks Windows-native, WSL-only, or unsupported.

indigo sigil
#

I just realized I don't need to run OpenClaw on Windows if WSL 2 can run cmd.exe and it's exactly the command I need to use the Roblox Studio integration, which was making me stick to Windows

quasi krakenBOT
#

Yep, that’s a good realization.

If WSL 2 can call the Windows command you need for Roblox Studio, then the cleaner setup is probably:

  • run OpenClaw inside WSL
  • keep Roblox Studio on Windows
  • call the Windows-side bits from WSL when needed

That avoids fighting:

  • native Windows bash/script weirdness
  • WSL-to-Windows file copying
  • mixed installs

I’d recommend

  • keep your OpenClaw config + workspace inside WSL
  • do not copy the install back to Windows
#
  • only bridge to Windows for the Roblox-specific command

Things to watch for

  • Windows path differences
  • whether the Roblox integration expects a Windows working directory
  • localhost / firewall access between WSL and Windows, if it uses a local server

But overall, yes, WSL-first sounds like the better path for your setup.

Glad you caught that, it’s a much less cursed route 😄

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

indigo sigil
#

When I remove the API key, the ratelimit message still appears. Then I asked Claude why I can use Groq on playground. He told me to run this command so I did:

wh1te@DESKTOP-IVEK52G:~$ openclaw models status --probe-provider groq

🦞 OpenClaw 2026.4.14 (323493f) — Deployed locally, trusted globally, debugged eternally.

Config        : ~/.openclaw/openclaw.json
Agent dir     : ~/.openclaw/agents/main/agent
Default       : openai/gpt-5.4
Fallbacks (0) : -
Image model   : -
Image fallbacks (0): -
Aliases (0)   : -
Configured models (0): all

Auth overview
Auth store    : ~/.openclaw/agents/main/agent/auth-profiles.json
Shell env     : off
Providers w/ OAuth/tokens (0): -
- groq effective=env:(...) | env=(...) | source=env: GROQ_API_KEY
- moonshot effective=env:(...) | env=(...) | source=env: MOONSHOT_API_KEY

Missing auth
- openai Run `openclaw models auth login --provider openai`, `openclaw configure`, or set an API key env var.

OAuth/token status
- none

I'm not sure if OpenClaw can access Groq through my API key..

quasi krakenBOT
#

Yep, that output actually tells us a few useful things.

What it means

1. OpenClaw can see your Groq key

This line is the important one:

- groq effective=env:(...) | env=(...) | source=env: GROQ_API_KEY

So the current CLI process can resolve GROQ_API_KEY.

2. But you did not run a live probe

You used:

#
openclaw models status --probe-provider groq

Docs say you need --probe as well.

So this:

openclaw models status --probe --probe-provider groq

would do the actual live check.

3. Your current default model is not Groq

This line matters too:

#
Default : openai/gpt-5.4

So right now, OpenClaw is not configured to use Groq as the default model.

That means one of these is true:

  • your Groq config was not saved where OpenClaw is reading
  • you edited a different config than the active one
  • the gateway is using older config
  • or the session/model got changed elsewhere

4. “Shell env: off” is not the same as “missing key”

That only means shell-env import is disabled.
It does not mean the env var is unavailable.

#

But if your gateway runs as a daemon/service, I would still move the key into:

~/.openclaw/.env

because services often do not inherit your interactive shell env.


My read of the situation

  • CLI can see the Groq key
  • that command did not prove Groq auth works
  • your active default model is currently OpenAI, not Groq

So the bigger issue may actually be config mismatch, not just auth.

#

Best next checks

  1. Put the key in ~/.openclaw/.env
  2. Make sure ~/.openclaw/openclaw.json really has the model you want
  3. Restart the gateway
  4. If you want a real test:
openclaw models status --probe --probe-provider groq

Heads up, --probe makes a real request, so it can itself consume tokens / hit rate limits.

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

indigo sigil
#
Auth probes
┌────────────────────┬────────────────────────┬────────────┐
│ Model              │ Profile                │ Status     │
├────────────────────┼────────────────────────┼────────────┤
│ groq/groq/compound │ env (api_key)          │ ok · 5.8s  │
└────────────────────┴────────────────────────┴────────────┘
quasi krakenBOT
#

Nice, that confirms the important part:

OpenClaw can access Groq through your API key.

So the problem is not “Groq auth is broken”.

What this result means

  • provider: Groq
  • credential source: env API key
  • probe status: ok

What it does not prove

It probed:

groq/groq/compound
#

So this confirms Groq works in general, but it does not necessarily prove your specific model is okay, like:

groq/moonshotai/kimi-k2-instruct-0905

So the likely remaining issue is one of these

  1. model-specific rate limit on the Kimi model
  2. your active default model is not what you think
    • earlier your status showed:
    Default : openai/gpt-5.4
    
  3. gateway/session config mismatch

My read now

  • Groq key works
#
  • OpenClaw can talk to Groq
  • the remaining bug is probably specific model selection / model limits, not auth

If you want, next I’d help verify just these 2 things:

  1. what model OpenClaw is actually using right now
  2. whether groq/moonshotai/kimi-k2-instruct-0905 is the specific thing rate-limiting you

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

indigo sigil
#

According to Groq docs, request error 413 means request body is too large. How to reduce request body in OpenClaw?

quasi krakenBOT
#

Yep. The main ways to shrink the request body in OpenClaw are:

1. Compact the session

Fastest fix in chat:

/compact

Or just start a fresh session if the thread got long.

Docs: https://docs.openclaw.ai/concepts/compaction

2. Keep auto-compaction enabled

{
#
  agents: {
    defaults: {
      compaction: {
        mode: "safeguard"
      }
    }
  }
}

That helps when history gets too large.

3. Enable context pruning

This trims old tool results from what gets sent to the model.

#

4. Lower maxTokens, but note the limit

Your existing:

params: { maxTokens: 1024 }

only reduces output size.
It does not shrink the input/history/system prompt much.

Important Groq nuance

OpenClaw’s own source notes that Groq 413 can also mean TPM, tokens per minute, not just “body too large”, depending on the error text.

So the best practical fixes are:

  • /compact
  • shorter/newer sessions