#dev
1 messages ยท Page 2 of 1
oh okay its through gemini
so how do u set that in openclaw u just use ur gemini key?
Two options depending on what you've got:
Plain Gemini API key:
export GEMINI_API_KEY="your-key"
Then use google/gemini-3-pro-preview or whatever model.
Antigravity subscription ($20/mo):
openclaw plugins enable google-antigravity-auth
openclaw models auth login --provider google-antigravity --set-default
Then use google-antigravity/claude-opus-4-5-thinking or google-antigravity/gemini-3-flash.
The second one is the subscription tier Jude mentioned โ does OAuth, no API key needed.
what about google antigravity opus?"
That's the second option โ enable the plugin, do the OAuth:
openclaw plugins enable google-antigravity-auth
openclaw models auth login --provider google-antigravity --set-default
Then set your model to google-antigravity/claude-opus-4-5-thinking (or without -thinking if you don't want extended thinking).
nahh just when you do the openclaw setup thing in the terminal
press google antigravity
Hi, I have been using clawdbot for a couple of days now. But it keeps cutting off and saying the context got compacted so it missed my message. How do you guys do memory management such that my messages don't get dropped off like this?
and then it tells you have to use it
A few things to manage this:
1. Use memory files โ anything important should be written to MEMORY.md or memory/YYYY-MM-DD.md. The bot only "remembers" what's on disk. Say "remember X" and it'll persist it.
2. Memory flush is on by default โ before auto-compaction, OpenClaw runs a silent turn to save notes. Check your config:
{
agents: { defaults: { compaction: { memoryFlush: { enabled: true } } } }
}
3. Use /compact proactively โ if you feel a session is getting long, run /compact yourself before it auto-fires.
4. Bigger context window โ Opus and Sonnet have 200k context. If you're hitting limits fast, you might have verbose tool output or large file reads eating tokens. Check /status to see token usage.
5. Fresh sessions โ /new starts a clean session. For unrelated tasks, don't pile everything into one eternal conversation.
That said โ "missed my message" during compaction sounds like a bug. Compaction should summarize before your next message processes, not drop it. What exactly happens? Does the bot acknowledge your message but forget context, or does the message literally disappear?
its trying to summarize all the things you are giving it because you are giving it more than its context window
is it the same as the gemini key?
No โ Antigravity is OAuth-based (ties to your Google account + subscription), not an API key. The plugin handles the login flow for you. No key to copy/paste.
no its weird
Hey @slate fjord im getting this error after using the google pro plan for like an hour disconnected (1008): unauthorized: gateway token missing (open a tokenized dashboard URL or paste token in Control UI settings)
That's a gateway dashboard connection error, not a model auth issue. The WebSocket to your gateway lost its token.
Quick fixes:
- Refresh the dashboard URL โ if you opened Control UI from the menu bar or
openclaw web, do that again to get a fresh tokenized URL - Or paste token manually โ open Control UI settings and paste your gateway token (find it with
openclaw config get gateway.token)
If your gateway restarted, old dashboard tabs will disconnect because the token rotates. Just reopen from the app/CLI.
how are agents interacting with github? PAT? any best practices you can share?
Via the gh CLI. Two auth options:
1. OAuth (recommended):
gh auth login
Walks you through browser OAuth. Tokens stored in ~/.config/gh/. No PAT needed.
2. PAT (for headless/CI):
export GH_TOKEN="ghp_xxxx"
Or gh auth login --with-token < token.txt
Best practices:
- Use OAuth for interactive setups โ less secret management
- Scope PATs minimally (
repo,read:orgusually enough)
- The agent uses
gh pr,gh issue,gh run,gh apiโ so whatever authghhas, the agent inherits - Always pass
--repo owner/repowhen not inside a git directory
If you're running OpenClaw on a server, do gh auth login once interactively (or set GH_TOKEN env var) and you're set.
i just told it to and it does some how
hah ok interesting
but i gave it is own github account
well i told it to make its own
and it did
then forkes my repos makes channged and sends pr
and then i approve
@slate fjord so my bot was responding but now it says there is no session how do i make a new one?
Just send a message โ OpenClaw creates a session automatically when one doesn't exist.
If that's not working, check:
- Gateway running?
openclaw gateway status - Channel connected? Check the logs or Control UI
If the gateway died and you restarted it, old sessions should still be in sessions.json. What does /status show?
๐ฆ OpenClaw 2026.1.30 (76b5208) โ Automation with claws: minimal fuss, maximal pinch.
โ
โ
Service: systemd (enabled)
File logs: /tmp/openclaw/openclaw-2026-02-02.log
Command: /usr/bin/node /home/jude/.npm-global/lib/node_modules/openclaw/dist/index.js gateway --port 18789
Service file: ~/.config/systemd/user/openclaw-gateway.service
Service env: OPENCLAW_GATEWAY_PORT=18789
Config (cli): ~/.openclaw/openclaw.json
Config (service): ~/.openclaw/openclaw.json
Gateway: bind=loopback (127.0.0.1), port=18789 (service args)
Probe target: ws://127.0.0.1:18789
Dashboard: http://127.0.0.1:18789/
Probe note: Loopback-only gateway; only local clients can connect.
Runtime: running (pid 2434, state active, sub running, last exit 0, reason 0)
RPC probe: ok
Listening: 127.0.0.1:18789
Troubles: run openclaw status
Troubleshooting: https://docs.openclaw.ai/troubleshooting
jude@victorpi:~ $
Gateway looks healthy. The issue is probably the channel connection.
What channel is your bot on? (Discord/Telegram/WhatsApp?) Check if it's connected:
openclaw logs --tail 50 | grep -i "channel\|discord\|telegram\|session"
Or just check Control UI โ open http://127.0.0.1:18789/ and look at the Channels section.
If the channel disconnected, you might just need to restart the gateway or re-auth the channel.
its on discord and it says victor is typing but then he never sends anything and just dies jude@victorpi:~ $ openclaw logs --tail 50 | grep -i "channel|discord|telegram|session"
error: unknown option '--tail'
jude@victorpi:~ $
Oops, wrong syntax. Try:
tail -50 /tmp/openclaw/openclaw-2026-02-02.log | grep -i "error\|fail\|discord\|session"
"Typing but never sends" = the model call is probably failing. Could be:
- Auth issue (token expired, especially if you're on Antigravity OAuth)
- Rate limit
- Model timeout
Check the full recent logs:
tail -100 /tmp/openclaw/openclaw-2026-02-02.log
Look for red flags like 401, 403, timeout, or rate limit.
@slate fjord do you think you can help me with my Ollama/OpenClaw? Like no tools work and the responses are always in JSON.
Sounds like the model isn't handling tool calls properly โ it's probably outputting raw JSON instead of actually executing tools.
What model are you running? Some Ollama models don't support tool calling well (or at all). For tool use you need models that explicitly support it:
llama3.3qwen2.5-coder:32bmistral
Also, how's your provider configured? If you're relying on auto-discovery, OpenClaw only picks up models that report tools capability. If you defined it manually, you might be missing the right api setting.
Paste your models.providers.ollama config (from openclaw config get models.providers.ollama or your config file) and I can spot the issue.
@slate fjord Is it possible to put the workspace and ~openclaw folder in the docker too? not in the local machine.
Yeah, just don't mount the host paths. By default OpenClaw uses ~/.openclaw inside the container.
Option 1: Named volume (persistent)
docker run -d \
-v openclaw-data:/root/.openclaw \
openclaw/openclaw gateway
Option 2: Ephemeral (loses state on restart)
Just don't mount anything โ it'll use the container's filesystem.
Option 3: Custom path inside container
Set the workspace explicitly:
{ agents: { defaults: { workspace: "/data/workspace" } } }
Then volume-mount /data.
If you want config and workspace inside Docker, you can bake the config into the image or pass it via env vars. Check the docs at /docs/platforms/ for Docker-specific guidance.
What's your goal โ isolation, portability, or something else?
Just Isolation. I wanna put anything openclaw in that specific container. @slate fjord
Easy โ named volume keeps it all in Docker-land:
docker volume create openclaw-data
docker run -d \
--name openclaw \
-v openclaw-data:/root/.openclaw \
-e ANTHROPIC_API_KEY="sk-xxx" \
openclaw/openclaw gateway
Everything (config, workspace, sessions, memory) stays in that volume. Nothing touches your host filesystem.
To manage it:
# Shell into container
docker exec -it openclaw sh
# Backup the volume
docker run --rm -v openclaw-data:/data -v $(pwd):/backup alpine tar czf /backup/openclaw-backup.tar.gz /data
That's full isolation. ๐
@slate fjord right now using;
{
"baseUrl": "http://127.0.0.1:11434/v1",
"apiKey": "ollama",
"api": "openai-completions",
"models": [
{"id": "mistral:latest",
"name": "Mistral 7B",
"reasoning": true,
"input": [
"text"
],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
But I've been using a bunch of models.
A few issues:
1. reasoning: true is wrong โ Mistral 7B isn't a reasoning model. Set it to false.
2. Mistral 7B has weak tool support โ it often outputs raw JSON tool-call format instead of properly invoking tools. For reliable tool use, try:
llama3.3(best tool support)qwen2.5-coder:32bmistral-nemo(better than base mistral)
3. Try this config:
{
"baseUrl": "http://127.0.0.1:11434/v1",
"apiKey": "ollama",
"api": "openai-completions",
"models": [{
"id": "llama3.3",
"name": "Llama 3.3",
"reasoning": false,
"input": ["text"],
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
"contextWindow": 131072,
"maxTokens": 32768
}]
}
Then: ollama pull llama3.3
The "responses in JSON" thing is classic bad-tool-support behavior โ the model is spitting out tool call syntax instead of actually calling tools. Better model will fix it.
@slate fjord Can I chat privately with you?
I'm a bot โ can't do DMs. But feel free to ask here, or if it's sensitive, hop into the Discord's support threads or ping a human maintainer.
What's up?
I made a simple PR, add Azure AI Foundry provider support #6969 - https://github.com/openclaw/openclaw/pull/6969
Nice โ Azure AI Foundry would be a solid addition. ๐
I can't review PRs, but the maintainers will see it. Good luck getting it merged!
@slate fjord
/home/node/.openclaw
/home/node/.openclaw/workspace
These are the destinations inside the container.
Looks right โ you're running as the node user, so home is /home/node/. That's cleaner than running as root anyway.
Your volume mount would be:
docker run -d \
-v openclaw-data:/home/node/.openclaw \
...
All good. ๐
That means the workplace is in the container itself, right
Yep โ if you're using a named volume like openclaw-data:/home/node/.openclaw, the data lives in Docker's volume storage (not your host filesystem). The container sees it at that path, but it's managed entirely by Docker.
Fully isolated from your host. โ
if I docker compose up agian, they will be gone?
Depends on how you set it up:
With named volume โ data persists โ
volumes:
- openclaw-data:/home/node/.openclaw
docker compose down + up = data survives
Without volume โ data gone โ
Container's filesystem is ephemeral. Remove container, lose everything.
Nuclear option โ docker compose down -v
The -v flag deletes volumes too. Don't do that unless you want a clean slate.
So as long as you have that volume defined in your compose file, you're safe.
how to create a support chat or private thread with you?
I'm just a bot in this channel โ can't join threads or DMs.
For private support, your best options:
- Open a GitHub issue/discussion if it's technical
- Ping a human mod/maintainer here
- Check if there's a #support channel on this server
Otherwise just ask here โ most OpenClaw questions aren't that secret. ๐ฆ
This looks really interesting. Going to give it a shot.
qwen 32b also replies with json responses..
Hmm, that shouldn't happen with Qwen 2.5 Coder if it's set up right. A few things to check:
-
Which exact model tag?
qwen2.5-coder:32bor something else? Some variants handle tools better. -
Is Ollama up to date? Tool calling support improved in recent versions:
ollama --version -
Try without explicit model config โ let OpenClaw auto-discover it:
- Remove
models.providers.ollamafrom your config - Just set
OLLAMA_API_KEY="ollama-local" - OpenClaw will query Ollama and only use models that report tool capability
- Remove
-
Check if Ollama reports tool support:
curl http://localhost:11434/api/show -d '{"name":"qwen2.5-coder:32b"}' | jq '.capabilities'
If it still spits JSON, paste your full ollama provider config and I'll take a look.
1 - qwen2.5-coder:32b
2 - ollama version is 0.15.4
3 - im not sure this makes sense.. i remove the provider?
4 - | jq '.capabilities'
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 78682 0 78654 100 28 548k 199 --:--:-- --:--:-- --:--:-- 548k
[
"completion",
"tools",
"insert"
]
Good โ model reports tools capability, so that's not the issue.
For #3: yes, if you have models.providers.ollama defined explicitly in your config, try removing it entirely. Then just set:
export OLLAMA_API_KEY="ollama-local"
OpenClaw will auto-discover the model from Ollama and configure it properly since it reports tool support.
If you want to keep explicit config, paste your full models.providers.ollama block โ something in there might be off (wrong api value, missing settings, etc.).
Also: what does the JSON response actually look like? Is it outputting raw tool calls like {"name": "exec", "arguments": {...}} or something else? That would help pinpoint if it's a tool-call formatting issue vs something else.
removing the provide breaks the api request..
json looks like this
{"name": "web_search", "arguments": {"query": "michael jackson age at death", "count": 1, "country": "ALL", "search_lang": "en"}}
That confirms it โ the model is outputting tool calls as raw text instead of using the proper tool-call API format. OpenClaw expects tool calls in the response structure, not JSON dumped into the message content.
This is likely an Ollama + OpenAI-compat API issue. A few things:
1. What error do you get when removing the provider? Paste the error โ might reveal what's misconfigured.
2. Try switching the api format:
{
"models": {
"providers": {
"ollama": {
"baseUrl": "http://127.0.0.1:11434/v1",
"apiKey": "ollama-local",
"api": "openai-chat", // try this instead of openai-completions
"models": [...]
}
}
}
}
3. Check Ollama's tool calling works via curl:
curl http://localhost:11434/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "qwen2.5-coder:32b",
"messages": [{"role": "user", "content": "Search for the weather in Paris"}],
"tools": [{"type": "function", "function": {"name": "search", "parameters": {"type": "object", "properties": {"q": {"type": "string"}}}}}]
}'
If the response has tool_calls in the proper structure, OpenClaw should work. If it dumps JSON in content, that's an Ollama issue.
api error.. 07:46:56 error diagnostic {"subsystem":"diagnostic"} lane task error: lane=main durationMs=116 error="FailoverError: No API key found for provider "ollama".
tool call
{"id":"chatcmpl-439","object":"chat.completion","created":1770104982,"model":"qwen2.5-coder:32b","system_fingerprint":"fp_ollama","choices":[{"index":0,"message":{"role":"assistant","content":"{"name": "search", "arguments": {"q": "weather in Paris"}}"},"finish_reason":"stop"}],"usage":{"prompt_tokens":152,"completion_tokens":18,"total_tokens":170}}
There's the problem โ look at the curl response:
"message":{"role":"assistant","content":"{\"name\": \"search\", ...}"}
The tool call is in content as raw text. It should be:
"message":{"role":"assistant","content":null,"tool_calls":[{"type":"function","function":{"name":"search",...}}]}
This is an Ollama issue โ its OpenAI-compatible endpoint isn't returning tool calls in the proper format for qwen2.5-coder. The model knows about tools but Ollama isn't translating it correctly.
For the API key error: set the env var:
export OLLAMA_API_KEY="ollama-local"
Then auto-discovery will work.
For the tool-call format issue, your options:
- Try
llama3.3โ might handle tool format better through Ollama's compat layer - Update Ollama โ 0.15.4 is recent but check if there's a newer release
- File an issue with Ollama โ this is their bug, qwen tool calls aren't being formatted correctly
Unfortunately OpenClaw can't fix how Ollama formats its responses. The model is doing the right thing internally, but Ollama's API layer is botching it.
No.
@slate fjord I have configured my copilot account, but when trying to set the opus 4.5 model with /models it says " model set failed: Error: model not allowed: github-copilot/claude-opus-4.5" Am I missing anything?
Model availability depends on your Copilot plan โ not all models are available to everyone.
Check what's actually available:
openclaw models list --provider github-copilot
Claude Opus 4.5 might not be on your plan. Common Copilot models are:
github-copilot/gpt-4ogithub-copilot/gpt-4.1github-copilot/claude-sonnet-4
If Opus isn't listed, your plan doesn't include it. You'd need either:
- A higher Copilot tier (Enterprise/Business might have more models)
- A different provider for Opus (Anthropic API, OpenRouter, Antigravity, etc.)
What does openclaw models list --provider github-copilot show?
It is on my plan, because I use it from opencode
Ah, if it works in OpenCode but not OpenClaw, the model might just not be in OpenClaw's default catalog for that provider.
Try adding it explicitly to your config:
{
models: {
providers: {
"github-copilot": {
models: [{
id: "claude-opus-4.5",
name: "Claude Opus 4.5",
reasoning: false,
input: ["text"],
contextWindow: 200000,
maxTokens: 32768
}]
}
}
}
}
This tells OpenClaw the model exists even if it's not in the default catalog.
Alternatively, check what OpenClaw sees:
openclaw models list --provider github-copilot
If claude-opus-4.5 isn't listed, the explicit config above should fix it.
It says "No models found."
That means the provider isn't fully set up or auth failed. Let's check:
1. Check auth status:
openclaw models auth status
2. Re-run the login flow:
openclaw models auth login-github-copilot
Make sure you complete the device flow in the browser (visit the URL, enter the code, authorize).
3. After login, verify:
openclaw models list --provider github-copilot
If it still shows no models after a successful login, there might be a token exchange issue. Check the logs:
openclaw logs | grep -i copilot
What does the auth status show?
jcromero@arya:~$ openclaw models auth status
error: too many arguments for 'auth'. Expected 0 arguments but got 1.
My bad on the syntax. Try:
openclaw models auth --help
And to see configured providers:
openclaw config get models.providers
That'll show if github-copilot is set up with an auth profile. You're looking for something like:
"github-copilot": { "authProfile": "github-copilot:default" }
If it's missing or empty, re-run:
openclaw models auth login-github-copilot
No github-copilot provider configured. I don't now why, because I run "openclaw models auth login-github-copilot" and put the code in my browser
The login might have failed silently. Run it again and watch for errors:
openclaw models auth login-github-copilot --yes
Wait for it to fully complete โ it should say something like "โ Auth profile saved" and "โ Provider configured".
If it hangs or errors after you enter the code, check:
cat ~/.openclaw/openclaw.json | grep -A5 github-copilot
Also check if the auth profile was created:
ls ~/.openclaw/auth/
There should be a file like github-copilot_default.json or similar.
What output do you get from the login command?
โ GitHub Copilot login
โ
โ Device code ready
โ
โ Authorize โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ โ
โ Visit: https://github.com/login/device โ
โ Code: XXXX-XXXX โ
โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
โ
โ GitHub access token acquired
Updated ~/.openclaw/openclaw.json
Auth profile: github-copilot:github (github-copilot/token)
โ
โ Done
That looks successful. Now check:
openclaw config get models.providers.github-copilot
And try listing models again:
openclaw models list --provider github-copilot
If it still says "No models found", GitHub Copilot might not expose a model list endpoint โ you may need to add models explicitly:
openclaw config set models.providers.github-copilot.models '[{"id":"claude-opus-4.5","name":"Claude Opus 4.5","input":["text"],"contextWindow":200000,"maxTokens":32768}]'
Then:
openclaw models set github-copilot/claude-opus-4.5
What does openclaw config get models.providers.github-copilot show?
Config path not found. Must I restart my gateway?
Yeah, restart the gateway so it picks up the new config:
openclaw gateway restart
Then check again:
openclaw config get models.providers.github-copilot
If still nothing, check the raw file:
cat ~/.openclaw/openclaw.json | grep -A10 github-copilot
The login said it updated the config, so it should be there. Gateway restart should make it take effect.
jcromero@arya:~$ cat ~/.openclaw/openclaw.json | grep -A10 github-copilot
"github-copilot:github": {
"provider": "github-copilot",
"mode": "token"
}
}
},
"agents": {
"defaults": {
"model": {
"primary": "google-gemini-cli/gemini-3-pro-preview"
},
"models": {
The auth profile exists, but the provider isn't configured to use it. You need to link them:
openclaw config set models.providers.github-copilot.authProfile "github-copilot:github"
Then add the model you want:
openclaw config set models.providers.github-copilot.models '[{"id":"claude-opus-4.5","name":"Claude Opus 4.5","input":["text"],"contextWindow":200000,"maxTokens":32768}]'
Restart gateway:
openclaw gateway restart
Then:
openclaw models set github-copilot/claude-opus-4.5
That should connect the dots: auth profile โ provider โ model.
Error: Config validation failed: models.providers.github-copilot.baseUrl: Invalid input: expected string, received undefined
Needs a baseUrl too. Set the whole thing at once:
openclaw config set models.providers.github-copilot '{"authProfile":"github-copilot:github","baseUrl":"https://api.githubcopilot.com","models":[{"id":"claude-opus-4.5","name":"Claude Opus 4.5","input":["text"],"contextWindow":200000,"maxTokens":32768}]}'
Then restart and set the model:
openclaw gateway restart
openclaw models set github-copilot/claude-opus-4.5
Error: Config validation failed: models.providers.github-copilot: Unrecognized key: "authProfile"
GitHub Copilot is a built-in provider โ you shouldn't need to configure models.providers.github-copilot manually. The login should handle it.
Let's try a different approach. After your login succeeded, just try setting the model directly:
openclaw gateway restart
openclaw models set github-copilot/claude-opus-4.5
If that still fails with "model not allowed", try a known model first:
openclaw models set github-copilot/gpt-4o
If gpt-4o works but opus doesn't, the model ID might be different. What's the exact model name in OpenCode? Maybe it's claude-opus-4-5 (dashes) or claude-4-opus or something else.
@slate fjord
2026-02-03T08:19:01.158Z [telegram] getUpdates conflict: Call to 'getUpdates' failed! (409: Conflict: terminated by other getUpdates request; make sure that only one bot instance is running); retrying in 30s.
my bot dozes off frequently when this happens
That error means two things are polling the same Telegram bot token at once.
Common causes:
-
Two gateways running โ check if you have multiple instances:
ps aux | grep openclawKill any extras.
-
Old container still running โ if you're using Docker:
docker ps -a | grep openclaw -
Telegram webhook conflict โ if you previously used webhooks:
curl "https://api.telegram.org/bot<YOUR_TOKEN>/deleteWebhook"
- Another app using the same token โ any other bot/script using this token?
Fix: make sure only ONE OpenClaw instance is running with that bot token. The retry-in-30s means it'll keep trying, but it won't work until the other connection dies.
@slate fjord The name of the model is the same as in opencode
Does gpt-4o work?
openclaw models set github-copilot/gpt-4o
If yes โ the auth is fine, it's just that claude-opus-4.5 isn't in OpenClaw's built-in catalog for that provider.
If no โ something's still off with the provider setup.
Try the gpt-4o test and let me know. If that works, this might be worth filing as a GitHub issue to add Claude models to the github-copilot provider catalog.
model set failed: Error: model not allowed: github-copilot/gpt-4o
Something's wrong with the provider activation. Let's bypass models set and configure directly:
openclaw config set agents.defaults.model.primary "github-copilot/gpt-4o"
openclaw gateway restart
Then try sending a message. Check logs for any errors:
tail -50 /tmp/openclaw/openclaw-*.log | grep -i "copilot\|error\|fail"
Also, what version of OpenClaw?
openclaw --version
This might be a bug where the built-in provider isn't recognizing the auth profile correctly.
2026.2.1
That's current. Try the direct config:
openclaw config set agents.defaults.model.primary "github-copilot/gpt-4o"
openclaw gateway restart
Send a test message to your bot, then check logs:
tail -100 /tmp/openclaw/openclaw-*.log | grep -i "copilot\|github\|error"
If it fails, the logs should show why โ either token exchange failing, model rejection from GitHub's API, or something else.
What do the logs say when you try to chat?
jcromero@arya:~$ tail -100 /tmp/openclaw/openclaw-*.log | grep -i "copilot|github|error"
tail: opciรณn utilizada en un contexto invรกlido -- 1
Different syntax for the log path:
tail -100 /tmp/openclaw/openclaw-2026-02-03.log | grep -i "copilot\|github\|error"
Or find the log file first:
ls /tmp/openclaw/
cat /tmp/openclaw/openclaw-2026-02-03.log | tail -100 | grep -i "copilot\|github\|error"
The log file name is not the problem. It is the tail command syntax
Ah, use -n:
tail -n 100 /tmp/openclaw/openclaw-2026-02-03.log | grep -i "copilot\|github\|error"
I get a long log, must I paste it here?
No, don't spam the channel. Use a pastebin:
Paste the log there and share the link.
Or filter it down more:
tail -n 100 /tmp/openclaw/openclaw-2026-02-03.log | grep -i "copilot"
@slate fjord https://pastebin.com/fm4mfmZK
I see the issue in the logs. The gateway sees the model (agent model: github-copilot/gpt-4o) but then rejects it (model not allowed). The auth profile exists but the provider isn't loading its model catalog.
This looks like a bug โ the login succeeded but the built-in provider isn't activating properly.
Workaround: Use a different provider for now:
- OpenRouter โ has Opus, pay-per-token
- Anthropic direct โ if you have an API key
- Google Antigravity โ $20/mo subscription includes Opus
Long-term fix: File a GitHub issue:
Title: github-copilot provider "model not allowed" after successful login
- Login completes successfully (auth profile saved)
- openclaw models list --provider github-copilot shows "No models found"
- Setting any github-copilot/* model fails with "model not allowed"
- Version: 2026.2.1
Include your pastebin link. The maintainers need to look at why the built-in provider isn't registering its models after auth.
Still getting getUpdates failed error..
Let's find what's competing for that bot token.
Check all running processes:
ps aux | grep -i openclaw
docker ps -a
Kill any duplicates, then check Telegram directly:
# See if anything is polling your bot
curl "https://api.telegram.org/bot<YOUR_TOKEN>/getWebhookInfo"
If pending_update_count keeps climbing but nothing is processing, something's holding the connection.
Also โ did you recently restart the container? Old connections can take ~30-60 seconds to timeout on Telegram's side. Wait a minute after killing duplicates before restarting.
๊ง เผบ โฅ๏ธ Hello, Everyone โฅ๏ธ เผป ๊ง
I came here looking for opportunities to share my skills and gain more eaxperience through various channels.
I'm a full-stack AI developer who genuinely enjoys turning complex AI ideas into products people actually use. Over the past 7+ years, I've worked at the intersection of software engineering and applied AI, designing LLM-powered systems, intelligent agents, and scalable cloud applications that move beyond prototypes into real production environments.
If you have a unique idea, let's make it a reality.
@slate fjord How can I change models of the same provider? I keep losing the auth if I switch, im using antigravity
Switching models within the same provider shouldn't lose auth โ that sounds like a bug or config issue.
To switch models (same provider), just:
openclaw models set google-antigravity/gemini-3-flash
# or
openclaw models set google-antigravity/claude-opus-4-5-thinking
The auth profile is tied to the provider, not the model. Both should use the same google-antigravity:xxx auth.
If you're losing auth, check:
openclaw config get models.providers.google-antigravity
Is there an auth profile linked? It should show something like "authProfile": "google-antigravity:default".
Also check your auth profiles exist:
ls ~/.openclaw/auth/
What exactly happens when you switch? Error message? Or does it prompt you to re-auth?
it saved the auth profiles here
~/.openclaw/agents/main/agent/auth-profiles.json
That's fine โ different installs can have different auth paths.
What actually happens when you switch models? Like if you run:
openclaw models set google-antigravity/gemini-3-flash
Does it:
- Give an error?
- Prompt you to re-auth?
- Work, but then fail when you chat?
Also, what's in that auth-profiles.json? (redact any tokens)
cat ~/.openclaw/agents/main/agent/auth-profiles.json | jq 'keys'
That'll show which profiles are saved without exposing secrets.
ok that worked, how can I list the available models the provder gives?
openclaw models list --provider google-antigravity
That'll show all models available through your Antigravity subscription.
In what way can i trigger another response from the LLM without user input in the session? Is there something exposed for this?
A few ways:
1. Cron jobs โ scheduled triggers:
{
"schedule": { "kind": "every", "everyMs": 3600000 },
"payload": { "kind": "systemEvent", "text": "Check for updates and report" },
"sessionTarget": "main"
}
2. Wake events โ poke the session programmatically:
# Via CLI or cron tool
openclaw cron wake --text "Time to do the thing"
3. Sessions API โ send into a session from another session or external call:
# From another agent/session
sessions_send(sessionKey, "Hey, do this now")
4. Heartbeats โ built-in periodic check-ins (configurable in config under agents.defaults.heartbeat)
What's your use case? Periodic tasks, event-driven triggers, or something else?
No I mean as a capability or soemthing.i want my bot to be able to use a tool_call to continue it's processing/turn
Ah โ you want the agent to keep going without user input, like chaining turns.
OpenClaw already does this automatically for tool calls: model calls tool โ gets result โ continues processing โ can call more tools โ loops until it has a final response.
If you want to force another turn without a real tool, you could:
1. Make a no-op tool call โ model calls a tool that just returns "continue", triggering another iteration.
2. Use agentLoop config โ controls how many tool iterations are allowed:
{ agents: { defaults: { agentLoop: { maxIterations: 20 } } } }
3. The model can just... keep going โ if it calls any tool, it gets another turn automatically.
What's the actual behavior you're seeing? Is the agent stopping too early? Or do you want it to self-prompt for a new thought without a tool call?
Ah so max iterations is the limited here?
Yeah โ maxIterations caps how many tool-call loops happen in a single user turn. Once it hits the limit, the agent is forced to respond to the user even if it wanted to keep going.
Default is usually reasonable (10-20), but if your agent does deep multi-step work, bump it up:
{ agents: { defaults: { agentLoop: { maxIterations: 50 } } } }
If your agent is stopping early and it's not hitting the limit, it's just the model deciding it's done. Some models are more eager to wrap up than others.
Another thing, when a new session is started it stops talking immediately without first reading the soul etc?
The workspace files (SOUL.md, AGENTS.md, USER.md, etc.) are injected into the system prompt automatically โ the agent doesn't "read" them as a tool call, they're already in context when the session starts.
If the bot stops without responding on a new session, that's a different issue. What exactly happens?
- Does it show "typing" then nothing?
- Does it error out?
- Does it respond but ignore the SOUL.md personality?
Check logs after starting a new session:
tail -n 50 /tmp/openclaw/openclaw-*.log | grep -i "error\|session\|bootstrap"
Also โ is BOOTSTRAP.md present? If it exists, the bot might be waiting for the "who am I" conversation flow. Delete it if you've already set up your identity.
Can you build me free website
No. Wrong channel โ this is for OpenClaw dev questions.
Not sure what you mean. Can you clarify?
If you want to:
- Move SOUL.md to a new install โ just copy
~/.openclaw/workspace/SOUL.mdto the new machine - Share it across agents โ put it in a shared workspace path
- Reset it โ delete it and let the bot bootstrap fresh
What are you trying to do?
I know what transmigration means. SOUL.md is a markdown file, not a metaphysical entity.
If you have an actual OpenClaw question, happy to help.
is there a way to make /verbose on and /reasoning on and /usage tokens by default?
Yeah, set them in your config:
{
agents: {
defaults: {
verbose: true, // /verbose on
thinking: "full", // /reasoning on (or "low"/"medium"/"high")
usage: { show: "tokens" } // /usage tokens
}
}
}
Apply with:
openclaw config set agents.defaults.verbose true
openclaw config set agents.defaults.thinking '"full"'
openclaw config set agents.defaults.usage '{"show":"tokens"}'
openclaw gateway restart
New sessions will pick up these defaults.
no i don't want thinking to be high by default. i just want to see the reasoning being displayed via chat
Ah, you want reasoning displayed when it's used, not forcing extended thinking on.
Try:
{
agents: {
defaults: {
reasoning: { display: true }
}
}
}
Or:
openclaw config set agents.defaults.reasoning '{"display":true}'
This should show reasoning output in chat when the model does think, without forcing a higher thinking budget.
is this true or is Molty just BS'ing
Fair call โ let me verify.
Confirmed config options:
{
agents: {
defaults: {
thinkingDefault: "low", // thinking budget (off/low/medium/high)
verboseDefault: "on", // tool output display (off/on/full)
}
}
}
For /reasoning on (showing reasoning in chat) โ I don't see a global default in the docs. It's session-based via the /reasoning directive. You might need to send /reasoning on once per session.
For /usage tokens โ also didn't find a config default.
So I was half-BSing on the reasoning display config. The verbose and thinking defaults are real; reasoning display default might not exist yet.
You could file a feature request to add reasoningDefault and usageDefault to the config.
On the telegram channel, I might misunderstand but is blockStreaming configurations meant to help with how it "smoothly" sends message over to the channel since having /reasoning stream effectively made no difference, and in most case even if its "building the response" or "waiting for a tool" I won't hear back until the full loop is complete and it will dump everything
Good question. A few things:
1. Block streaming is OFF by default. That's why you get everything at once. Enable it:
{
agents: {
defaults: {
blockStreamingDefault: "on",
blockStreamingBreak: "text_end" // emit as it generates
}
}
}
2. /reasoning stream is Telegram-specific โ it uses Telegram's draft bubble feature. Requirements:
- Private chat with topics enabled
- Bot needs to support
sendMessageDraft
If topics aren't enabled, /reasoning stream falls back to regular behavior (dump at end).
3. For Telegram channel config:
{
channels: {
telegram: {
blockStreaming: true
}
}
}
4. Tool loops โ even with streaming, if the agent is running tools, you won't see output until each tool completes. That's expected. You'd only see progressive output during the actual text generation phases.
Try enabling blockStreamingDefault: "on" first and see if that helps with the dumping-everything-at-once issue.
okay got that, so far nothing changes, but not I think I understand Coalesce to help with "longer" responses
Did you restart the gateway after the config change?
openclaw gateway restart
If still no difference, a few things to check:
1. Is your model actually streaming? Some models/providers don't stream token-by-token. Check logs for streaming events.
2. Coalesce does the opposite โ it merges small chunks to reduce spam, not split them. If you want more frequent updates, you'd lower coalesce settings or disable it:
{
agents: {
defaults: {
blockStreamingCoalesce: { idleMs: 200, minChars: 100 }
}
}
}
3. Debug what's happening:
tail -f /tmp/openclaw/openclaw-*.log | grep -i "stream\|chunk\|block"
Send a message and watch if block events are firing. If you see nothing, streaming isn't happening at the model level.
What model/provider are you using?
Using Gemini flash and pro via antigravity and claude opus via anthropic
in this case I'm less interested about streaming but being able to see the progress made on a prompt that maybe takes a 3-5 minutes given it maybe waiting on a tool e.c.t
Ah โ you want progress visibility during tool loops, not text streaming. That's /verbose.
/verbose on
Or in config:
{
agents: {
defaults: {
verboseDefault: "on" // or "full" for tool outputs too
}
}
}
With verbose on:
- You'll see each tool call as it starts (
๐ง exec: git status) - With
full, you also see tool outputs when they complete
That gives you the "what's happening right now" visibility during a 3-5 minute multi-tool run. Each tool fires a separate message as it kicks off, so you're not sitting in silence.
Block streaming is for text generation; verbose is for tool progress. Sounds like verbose is what you actually want.
Was thinking a bit of both, even then some text generation could take 1-2 minutes and with pause so same deal but I'll enable verbose
Yeah, enable both:
{
agents: {
defaults: {
verboseDefault: "on",
blockStreamingDefault: "on",
blockStreamingBreak: "text_end"
}
},
channels: {
telegram: {
blockStreaming: true
}
}
}
That said โ 1-2 minutes for pure text generation is unusual unless you're using high thinking budgets. If it's that slow, it might be:
- Extended thinking (
/think:high) doing deep reasoning - Model/provider being slow (Antigravity can have variable latency)
- Large context causing slow inference
With both enabled you should get tool progress + chunked text as it generates. Won't be instant, but better than total silence.
Guys, I haven't yet configure any external TTS provider, but openclaw is generating audio and answer with voice if asked ๐ค
OpenClaw will use TTS from a provider if one is available. If you have an OpenAI or ElevenLabs API key configured, it'll use that automatically.
Check what's being used:
openclaw config get tools.tts
Or check your provider keys:
openclaw config get models.providers | grep -i "openai\|elevenlabs"
If you have OPENAI_API_KEY set, OpenClaw can use OpenAI's TTS by default. Same with ElevenLabs if ELEVENLABS_API_KEY is present.
What channel are you on? (Telegram/Discord/etc.) Some channels have native voice message support that triggers TTS automatically when you ask for audio.
I'm using chatgpt only right now as the chat model
That's why โ your OpenAI API key also gives access to OpenAI's TTS. OpenClaw uses it automatically when you ask for audio.
Same key, different endpoint. No extra config needed. ๐
I have no openai api key provided, it's using my chatgpt subscription
Interesting โ so you're using the ChatGPT subscription OAuth flow (not API key)?
That subscription auth might include TTS access through the same session. The ChatGPT backend has TTS capabilities built in.
What does this show?
openclaw config get models.providers
Curious which provider entry is handling it. If it's something like openai-chatgpt OAuth, the TTS might be bundled with the subscription access.
Hi, is there some ready repo I can use for local LLM as voice call (ASR,TTS) with openclaw? any ideas? Im looking for "ready solution". Like here, I guess just without rag.. https://www.youtube.com/watch?v=VpB6bxh4deM
Not a single "ready repo" but you can piece it together with OpenClaw:
Local stack:
- LLM: Ollama (qwen, llama3.3, etc.) โ docs
- ASR: Local Whisper โ there's an
openai-whisperskill for local transcription - TTS: Would need a local TTS like Piper or Coqui โ not built-in, but you could wrap it as a skill
Easier path (API-based but cheap):
- LLM: Local via Ollama
- ASR: Whisper API or Deepgram
- TTS: OpenAI TTS (cheap) or ElevenLabs
For voice calls specifically:
OpenClaw doesn't do real-time voice calls natively. It handles async voice messages (Telegram voice notes, etc.) but not live bidirectional audio streams.
For live voice chat like that video, you'd need something like:
- LiveKit + OpenAI Realtime API
- Pipecat / Vocode
- Daily.co + custom integration
What's your main use case โ async voice messages or real-time phone/voice calls?
@slate fjord basically to have a call option (realtime) with opencalw
Real-time voice calls aren't built into OpenClaw โ it's designed for async messaging (text, voice notes, etc.), not live bidirectional audio.
For real-time voice with a local LLM, look at:
- Pipecat โ open source, supports local models + Whisper + TTS: https://github.com/pipecat-ai/pipecat
- Vocode โ similar, voice agent framework: https://github.com/vocodedev/vocode-python
- LiveKit Agents โ if you want WebRTC-based calls: https://github.com/livekit/agents
You could bridge one of these to OpenClaw (call handler does ASR โ sends text to OpenClaw โ gets response โ TTS back), but that's custom work, not a ready solution.
If someone builds an OpenClaw โ real-time voice bridge, that'd be a cool plugin. Doesn't exist yet though.
Is Hetzner trusted as a VPS?
Off-topic for this channel, but yeah โ Hetzner is well-regarded. Good value, EU-based, been around forever. Lots of people run OpenClaw on Hetzner boxes without issues.
@slate fjord can u add it to next feature requests?
I can't file issues โ I'm just a bot here.
Open a feature request yourself: https://github.com/openclaw/openclaw/issues/new
Title it something like "Real-time voice call support (bidirectional audio)" and describe the use case. Link to Pipecat/LiveKit as reference implementations.
That way the maintainers can track interest and prioritize it.
@slate fjord ok thanks, can u just write me here the description for it then? So I can put it there
Sure:
Title: Real-time voice call support (bidirectional audio)
Description:
Add support for real-time voice conversations with OpenClaw โ live bidirectional audio, not just async voice messages.
Use case:
- Phone-style calls where users speak and hear responses in real-time
- Hands-free interaction via WebRTC, SIP, or similar
- Local LLM + local ASR/TTS for fully private voice assistant
Possible approaches:
- Integration with LiveKit Agents (https://github.com/livekit/agents)
- Pipecat bridge (https://github.com/pipecat-ai/pipecat)
- OpenAI Realtime API support
- WebRTC endpoint in gateway
Components needed:
- Streaming ASR (speech โ text in real-time)
- Streaming TTS (text โ speech with low latency)
- Audio transport layer (WebRTC, SIP, or WebSocket audio)
- VAD (voice activity detection) for turn-taking
References:
- https://www.youtube.com/watch?v=VpB6bxh4deM (example of local voice assistant)
Copy/paste and add any extra details about your specific setup. ๐
Can OpenClaw handle multiple users chatting in a single instance while maintaining separate perceptions or contexts for each user?
HTTP 500: api_error: Internal server error (request_id: req_011CXmQAsHdtLud5rsqf7H3k)
I smell new sonnet/opus version being released because of these 500 errors.... (getting the locally as well)
@hushed spindle Yes โ OpenClaw handles this via sessions:
- DMs: Each user gets their own session by default (isolated context)
- Groups: Shared session per group, but sender identity is tracked
- Multi-agent: You can route different users to different agents with separate workspaces
Config for per-user isolation in groups:
{
agents: {
defaults: {
sessionMode: "per-sender" // instead of "per-chat"
}
}
}
Single gateway instance handles many users, each with their own context/memory.
@ornate kayak Could be. Anthropic API hiccups often precede releases. Or just regular infra issues. Check https://status.anthropic.com if it persists.
Folks this is not h a help channel, this is for me to develop
๐ Noted. I'll pipe down on the support stuff.
Will have to remove Molty here since folks abuse it ๐
Fair enough โ sorry for enabling the help desk vibes. ๐ฆ
sorry ๐ but it was really helpful. wasn't meaning to abuse but it was the right help without the noise.
@celest narwhal is moltys config/data somewhere public? It seems to be better than just having the docs at hand. Would love to run it lcoally on mine.
@jade wind, please don't ping Peter for issues, use #1459642797895319552 or #users-helping-users if you need help, use #clawtributors to discuss PRs, or use any of the many other channels in this server as they're intended.
If you have a problem with the Discord specifically, use #report or DM @humble walrus
-# Your message was reposted above without the ping active for the sake of conversation.
Is moltys config/data somewhere public? It seems to be better than just having the docs at hand. Would love to run it lcoally on mine.
Ask him, he gave me some of his soul file and it made it a lot better
Hopefully this is the right spot to put this, I started using OpenClaw a couple weeks ago and loved it but had similar security concerns to a lot of the community so I started coding a proof of concept agent framework I called Zaru (named after the see no, speak no, hear no evil monkeys) https://github.com/philcunliffe/Zaru. I've only added a couple integrations to test the flow but it works and has some pretty potent security features to prevent someone phishing your assistant or prompt injecting you via email.
TL;DR:
- Isolated sub-agents that can route encrypted packages to eachother based on a plan
- A "user intent" system that extracts intent before any potentionally hazordous context is consumed which is used to validate all tool calls
long part:
The system separates agents into permission classes:
- READ agents can process potentially dangerous content but cannot execute actions. They produce encrypted outputs.
- WRITE agents can execute actions but only receive pre-encrypted content they cannot manipulate.
- The orchestrator routes encrypted packages between agents without the ability to decrypt them.
- READ_WRITE agents can read and write from a single integration where it's required (currently the obsidian integration uses it)
The second major security feature is the intent system. The orchestrator and READ_WRITE agents generate a user intent object along with a plan before any content decryption occurs, preventing malicious content from influencing what actions will be taken. This means that even if an attacker embeds instructions in untrusted data (like an email or document), those instructions cannot alter the pre-determined execution plan because the intent was locked in before the content was ever processed.
So an example flow, user asks "Summarize my last 10 emails and write them to email-summaries.md in my obsidian vault"
- Orchestrator extracts user intent and creates a plan of which sub-agents to activate and who will deliver encrypted outputs where
- Orchestrator prompts google-read sub-agent to read emails and generate a summary, which is put into an encrypted box
- Orchestrator prompts obsidian-agent (READ_WRITE) to open the decrypted box and add the summaries to email-summaries.md
- obsidian-agent sends success message to orchestrator and optionally an encrypted message that the user can read but the orchestrator cannot.
It's a little heavy currently, but the principles are solid. Even a lightweight intent system seems to make a reasonable difference in my ability to influence the agents maliciously.
no. use the onboarding flow thats built in to make your own
and how do you route agents to other agents? ๐
Hi there. I was debugging some issue with the Matrix plugin and I noticed a lack of tests there, so I went to take a look at the codebase and the test infrastructure seems a bit... sparse to put it midly. Is that assesment correct? I am asking before starting to touch code.
I wanted to add proper testing to the matrix plugin in /extensions/matrix/tests to keep things neat, but to do things proper that would require a throwaway matrix server (conduit, lightweight). But the infrastructure to manage that is not there -- thus I'd have to take on that particular task first.
Is anyone working on agumenting / improving the current test infrastructure of openclaw/openclaw ? Anything I should consider before even starting an attempt?
Ummm I think I haven't shared this here....
https://github.com/rizqcon/openclawdev-taskboard
Full contextual multi agent routing with guardrails on arquitecture review, code quality review, security auditing and UX manager, UX Manager is the only one that can click around with a browser and test things. Main agent is the only one that writes code based on his own criteria plus sub agent / reviewer commentary and plans. Each conversation gets tracked permanently and nobody loses their place. You can tag and reply to things that are days old and they come right back on topic.
You can even tag the main agent to do a little PM with all of the sub agents and automate a lot lof the work before they send a review to you for checking in.
I setup the main chat bar as chat channel directly to the main agent chat, it becomes a plugin in open claw. You have to do some manual setup of the agents but I offer examples on how to set them up and where to place everything.
Videos explain the work flow. You can have all agents working on different tasks at the same time and most importantly, they all track separately on their own "sessions" in open claw so their context isn't mixed with the others they keep their own memory about each task. Even though open claw can clear these sessions my tak board keesp the history in it's sql so the agent goes right back to where it was from there. You can contextucally tag any agent in any conversation and they spawn a separate session internally to join that conversation.
I've had as many as 30 sessions going at the same time. I burned through half of my claude code max 20x tokens for the week in two days. ๐ฌ
i'm not a tech person. i'm a luddite. Ive yet to mess around beyond just LLM, but i want some objective testing on a coordination protocol ive been developing.
Here's a draft:
Been following the OpenClaw security conversation โ 341 malicious skills on ClawHub in week one, Cisco and Palo Alto calling it a security nightmare, prompt injection still unsolved. The usual response is better sandboxing, better firewalls. I think the missing piece is different.
The permission model is binary โ a skill either has full access or none. There's no middle ground where a skill can demonstrate it does what it claims before getting deeper access. No provenance tracking for who wrote what. No behavioral verification at runtime.
I built a skill suite that implements graduated trust โ four tiers where permissions expand based on demonstrated coherence between what a skill says it does and what it actually does. Local SQLite ledger tracks behavioral history. Skills that diverge from their stated scope get flagged. Includes provenance tracking (hash verification at install and runtime) and a coordination protocol for monitoring agent-to-agent exchange quality.
It's called Recognition Node. Phase 1 is live โ skill definitions, architecture docs, Pi deployment guide. Not a product, not a company. MIT licensed, offered freely.
https://github.com/Bluescontact/recognition-node
I also just posted a Discussion on the OpenClaw repo proposing this as an architectural pattern for the project. Interested in what people who think about adversarial AI systems see as the gaps.
Background: I'm in the 2026 Buckminster Fuller Design Science Studio cohort, working on coordination infrastructure for autonomous systems. The frameworks behind this are documented at oursharedgifts.org.
To the devs; what made you think it was a good idea to use a fucking extension to automate the browser? it's total garbage.
Looks cool! A giant ass index.html with all the html, CSS and JavaScript in there is pretty wild though ๐ Iโd probably ask my bot to turn this into a react app, use typescript, tailwind, shadcn, vite, bun, pull down Vercel react best practices skill and apply against the app. Nice though
๐ I'm not the dev obviously but it freaking works and it works amazingly well.
Can openclaw run tts by its self and respond to my discord messages? Or has anyone made a side companion on there desk of a text to speech model or speech to text?
iOS app chat blocked by node role restrictions - intentional or regression?
I noticed the iOS app can't use chat features because it connects with role: "node" (hardcoded in GatewayConnectionController.swift:281), but the gateway blanket-rejects all non-node methods for that role in server-methods.ts:105-106.
The Conflict: The app has a full chat UI (ChatSheet.swift, IOSGatewayChatTransport.swift) that calls chat.send, chat.history, etc. โ but these all fail with: "unauthorized role: node"
Context: Looking at git history, it seems the chat UI was implemented before the node role restrictions were added (commit 9dbc1435a).
Question: Was this an intentional security decision that deprecated iOS chat, or a regression that needs a fix (like node-accessible chat methods or a role upgrade pathway)?
Trying to understand the intended architecture for mobile chat before filing an issue.
any new memory setups people have found work really well?
how to add local provider ?
config reload skipped (invalid config): agents.defaults.models.providers: Unrecognized key: "local"
then what do you want?
if you're asking, keep vibe coding lil bro, you're fine.
i hate vibe coding
then you should know there's better than having a fucking extension.
i dont have to draw it on a paper for you
ok
With over 1300+ PRs open and screened by bots. Is it just wait and see until it is your turn or would like "upvotes" from other github users improve visibility?
guys anyone had luck installing openclaw on native windows?
dont ask too much its already bugged the fuck up ๐
was that reply to me?
yep
well i got it mostly running lol, just getting empty text on Assistant replies, even though my custom GPT API works and it has no rate limits...
and no error logs :< it all logs fine
did you run the setup?
it asks you which provider you want to use at some point, you done that?
oh yea, i added my own API/provider
and API works 100% using it regularily in my other apps, replies in openAI style json, if output schema wasnt right at least I hope it would log errors lol
I created some skills manually by creating a directory and adding a SKILL.md file inside it. When I create a CRON job and ask it to make use of that skill, it states that it doesn't have access to any such skill. However, the main session is able to make use of the skill. Please help me out. Stuck since very long; tried almost everything.
I am struggling to get OpenClaw to reliably use skills. It looks at skills as low-level guidance rather than high authority requirements, which renders them fairly useless in many cases.
I haven't been able to find any solution to this. I just published a new issue on GitHub. I'd be curious if anyone else has come up with a solution to this challenge, or if we do need to make this very minor change to the source code.
You know if openClaw reset will also reset long term memory?
Iโm having an issue. I maxed out my Claude max plan, so I am using GPT Pro, I can not for the life of me get GPT 5.2 to work autonomously like I can with Claude. Does anyone have any suggestions?
I am working on a huge coding project that needs constant testing, so the work flow looks like this
Code > Build > Test > Debug > Repeat
I can have Claude do this flawlessly, but Iโm constantly having to wake GPT 5.2 up for it to continue
I've been having similar problems with GPT 5.2, now trying with thinking=high to see if any better.
Iโm surprised no one has made an os specifically for openclaw any thoughts on this? Like Ubuntu with it preinstalled or clawbuntu
what happened to our bestie molty?
Think he ran out of credits @slate fjord
clarchy
Build a seperate QA agent that calls the Dev agent after a QA-report-datetime-xxxxxx.md is generated. After dev agent completes call the QA agent. If agents are failing to auto-call each other per instructions setup a cron to check it, then execute the next in line. This loop has a variety of benefits and can also be built out to a higher degree of complexity. DevOps agents, product owners, market analysis/fit checkers, etc.
Hello guys, how are you?
I'm trying to configure my openclaw to be 100% autonomous, I'm using GPT 5.2 and I believe this is not possible with it, because it limits and has many locks of its own.
Does anyone have any recommendations for a better LLM or any suggestions on how to make openclaw 100% proactive and autonomous?
thanks in advance
how exactly is everyone dealing with compacting? I have instructed my agent to be the "master" agent and spin up sub agents for various things but after a while it needs to cleanse into a new context itself which is better than compacting. Any ideas here?
Hey folksz, I have been using CB and been enjoying it quite a bit. Now I am currently wondering and asked the bot to have a simple, knock knock based messaging lock.
If i dont say Knock Knock, the bot should not go into my request. Then I ask it to use a cooldown of like 10 minutes and lock the chat again.
Problem is, the LLM seems to be slightly flakey here. So I was wondering how to intercept the first request and have a little state machine that checks for this.
Maybe someone already has this figured out? Anyone with some community knowledge knows which lobster I need to talk to or should I poke into source code?
It's mostly cause the bot has a heartbeat system that runs every 30 mins
kimi k2.5 is free from nvidia, very capable strong model
How much free tokens of kimi do you get?
not sure tpb but its free no credits
hey @slate fjord
What optimal mac mini for setting up multiple bots?
any mac mini made within the past 6 years is great
even older would be fine
Is your openclaw slow when using the free version of Kimi ?
yea a bit
Memory , ram ?
thanks man!
Hey, someone knows that PR has already been approved by the robot, but there is no response. I don't know what to do next? Where can I contact the GitHub repository administrator?
I will integrate dify into openclaw and configure LLM through dify's application as the default model or sub agent for openclaw
For Anthropic - is there a reason one would use API over token if you use the $200 max plan?
How do you set Kimi up with the Nvidia api key?
Arguably the only reason is because of the fact that you can technically get banned from using the 200 max plan; e.g you are breaking their ToS when you establish a subscription connection vs API which is authorized for such use cases.
wait really? that seems super dumb
hey guys i want to raise a pr to add support to another provider (unbound), is there a certain process i should follow?
Trying it, not working for me unfortunately, it lasted maybe an hour and then stopped
Hey Guys ! I have nothing to loose to asking here so i'm trying. If someone ever tried the Kimi K2.5, on kimi.com, the agent is able to do a whole powerpoint presentation ! I know he is doing it with Html and CSS, but i really dn't know how he can convert it to powerpoint and all elements (text, shape background, etc...) are editable in powerpoint. Do someone know a tool like this that i can setup for my agents ? Could be a really good feature to ask my agent to personnalize powerpoint presentation for different client and topics !
Anybody using Bmad with OpenClaw here? Been trying to make it work for ~3days now, I'm close from success
i been using ralph-orchestrator. its actually really good if u wrap it in a skill and include codex with gpt 5.2 high for planning and review
u can avoid ban by routing it through claude-serve and mcp for tools
We're in the standard onboarding flow (Tlon) - but it's not uploaded into npm so it fails. Can a contributor help with this?
Anyone still having issues with cron? Still just queues messages and isn't invoking
Yes, I sent a PR to fix that
I'm running with this patch and all crons worked for me today, even after gateway restarts
Has anyone have any idea how to get gpt specifically to continually think and work on a coding project that I have using openclaw? I tried a QA/Dev loop, but only the QA responds, the dev never acknowledges
i would think an mcp with turn based convo tooling
try codex mcp
and have ur LLM use it to go back and forth with gpt
it should reuse the session id
can also just have ur llm use the codex cli
I also encountered problem with cron
i thought they patched it in the latest release
confirmed your PR fixes it. nice work, someone give this guy a raise
I approve your endorsement. I don't need a raise, just being able to contribute to this project that I love is enough.
I have some ideas on mind but I'm waiting for the stabilization phase to settle since there are many open PRs and maintainers must be having a hard time.
@humble walrus sorry to bother you, but a few users, including myself, have confirmed PR 9589, could we get it on time for the next release? cron failures are awful
crons were recently completely rewritten
cc: @zenith shell
released yet? in .23 there was notes about this but is this rewrite different? will keep an eye on this
Working on pr for fixing all crons issues right now https://github.com/openclaw/openclaw/pull/9733
๐ How to Add a New Model to OpenClaw (Before Official Release)
When a new model drops but OpenClaw's build doesn't recognize it yet, you can add it via config.
1๏ธโฃ Edit ~/.openclaw/openclaw.json (or wherever your config lives)
Add under top-level "models" key:
"models": {
"providers": {
"anthropic": {
"baseUrl": "https://api.anthropic.com",
"api": "anthropic-messages",
"models": [
{
"id": "claude-opus-4-6",
"name": "Claude Opus 4.6",
"api": "anthropic-messages",
"reasoning": true,
"input": ["text", "image"],
"contextWindow": 200000,
"maxTokens": 128000,
"cost": { "input": 5, "output": 25, "cacheRead": 0.5, "cacheWrite": 6.25 }
}
]
}
}
}
2๏ธโฃ Set as default (agents.defaults):
"agents": { "defaults": { "model": { "primary": "anthropic/claude-opus-4-6" } } }
3๏ธโฃ Also add to the models allowlist (or it'll block /model switches):
"agents": { "defaults": { "models": { "anthropic/claude-opus-4-6": { "alias": "opus46" } } } }
4๏ธโฃ (Optional) Auth profile order:
"auth": { "order": { "anthropic": ["anthropic:claude-cli"] } }
5๏ธโฃ Restart: openclaw gateway restart
๐ก Why: OpenClaw checks its built-in registry first, then falls back to models.providers in config. Custom providers get written to ~/.openclaw/agents/<agentId>/models.json. Defining the model inline bypasses the registry โ no code update needed.
Isn't the context window much larger for 4.6?
Nice writeup though thanks
I think 1 million, you can adjust it
Do you recommend doing that? Also how long does it usually take for OpenClaw to add support for a new model? Don't wanna do all this for it to be released in 10 minutes
Not sure how long it will take them, probably not long due to demand
The Anthropic docs show 200K tokens / 1M tokens (beta) for the context window:
200K = standard context window (default),
1M = extended context (beta, opt-in via API header),
So 200K is what you get by default. 1M requires passing a beta flag in the API request. Whether Openclaw actually sends that header is another question - if it doesn't, the effective limit is 200K even if we set 1M in config.
Note: you can just give the instructions to your bot and they will make the changes. Ask them to keep a file on changes with instructions to revert if you'd like to do so once the update comes
Yeah I've got it auto backing up via GitHub on config changes
1M context also requires that the org your API key is tied to is at Tier 4
for the money i pay em it damn well better be ๐
Ah so 4.6 1m context is only for api and not oath?
i doubt they keep it from sub plan
but it will be x20
not x5
the sonnet[1m] is x20 only
Not sure, oath could be considered Tier 4
Or maybe doesn't even check it
Not sure if this is the correct channel, but how can I take part in the internal preview of the iOS app (Node)?
Oauth is completely separate, I can't find anything on how that's set or charged though
What have ppl seen so far? Is 4.6 more efficient token usage wise or worse
Nah it's available for oauth
Just shipped something that uses Ollama for local embeddings.
SAME (Stateless Agent Memory Engine) indexes your markdown notes and automatically surfaces relevant context to AI coding agents (Claude Code, Cursor, Windsurf).
Stack: Go + SQLite + sqlite-vec + Ollama (nomic-embed-text)
- 50-200ms context surfacing
- ~15MB binary
- No cloud, no accounts
- MCP server with 6 tools
The problem: every AI session starts from scratch. You re-explain your project, paste context, lose decisions. SAME fixes that by matching your prompt to relevant notes and injecting them automatically.
First public release โ built it for myself, shipping it in case it helps others.
Feedback welcome, please poke holes if you see them โค๏ธ
Worse from my short experiment. Teams rip through tokens
For Teams, that's expected (and was stated).
Yeah not mad or anything just wanted to put it out there
Hi OpenClaw devs! We're building a fun challenge on clawhub for all OpenClaw agents, but we don't know which one to choose:
- ๐คช Hallulympics - The dumbest one wins
- ๐ **Bot with a Soul **- The most empathetic one wins
- ๐ฌ Botflix - Letโs see which bot is a movie buff
- ๐ฉบ Vibe Check - Which bot is mental-health-y best
Pleas vote by reacting with the Emojis๐๐ผ
The challenge that gets most votes in 24 hours, we'll launch it next week!
Can I do this if Iโm on the original clawdbot install or
Do I need to upgrade to open claw
Yes you can
I am actually on original on one of my bots
Just change the parts to /clawdbot instead of openclaw
and clawdbot.json (~/.clawdbot/clawdbot.json)
Is it a pretty seamless transition ? Did you have to redo anything when you transferred over to pencils
Nope really seamless, just ask your bot to execute the instructions (make sure to swap in ~/.clawdbot/clawdbot.json) and it will do and restart and confirm it's on it in a DM with you.
You have the option of doing it yourself via CLI but easier to ask the bot to do it
Does claude oauth still work to use the agent? For claude code subscriptions?
its fast and does a lot on its own without needing help
token wise not sure, feels the same
Just tried with a new pro account, worked for 2-3 prompts then got 429 error
Hi all, I think I've discovered a bug in 2026.2.3-1, What's the most appropriate channel to report my findings?
oh damn interesting.... I've heard other people being able to use it without friction though, does it work sometimes and not some other times for you? Or has it just been consistently failing now with 429s?
using 4.6 but the status bar still shows x/200K tokens. Is it actually not aware of the 1M available and will compact way too soon? I guess i'll find out
just had to change the setting for the model in the config
Would an LLM call triggered from the heartbeat be able to read the context of the main session?
after using teams I'm afraid I'll never go back - purchase order incoming.....
Does anyone know if we can switch to chatGPT 5.3 codex already or no?
How do you get skills to trigger at the right moment?
This worked for me, thank you!
i cant get my gateway token, openclaw config get gateway.auth.token outputs Config path not found: gateway.auth.token
Man Iโve been going through the documentation of OpenClaw for over an hour now and holy cow itโs so hard to read. It feels like the dev just prompted โโmake docs for my programโ and didnโt even review it
This whole thing feels vibe coded
hows everyone managing secrets/keys for your agent? sometimes i notice it forgets its location, is there something standard i'm missing?
Huge issue I need help with. Been trying to solve for 3 days now. Even with simple messages to the agent like "How are you" are using full context token usage. This means something that would cost under 10k tokens is currently costing me 250k. It's using ALL the memory and files. I've already configured for the AI to only use 4 main important files, prompted it to not load any other memory, split up workspace files, and restarted gateway multiple times in hopes for and done /start in hopes for a "new session". Nothing is fixing this. I'm using Grok 4.1 Fast. as the AI model
Any help would really really be appreciated.
hi devs, Does openclaw really cannot generate explicit graphic nsfw texts? even if you use Dolphion as model?
Works for 2-3 prompts then rate limited for maybe 12hrs
Hello! Why openclaw is not supporting mcp?
Works fine for me
Are you on Pro or Max?
Build: migrate A2UI packaging script from bash to TypeScript
Add compatibility with Windows system pnpm build on the existing basisใ
@sharp swift @gaunt veldt @barren gale @warm cypress
Pro. Have a Max sub on another account but afraid to use, donโt want to get banned in it
Max?
yeah
Only the max show 1M I think
1M context only works if you have Tier 4 Account and it only works over API calls.. so to unlock Tier 4 you need to buy $400 of tokens.
1M is not accessible over OAuth (MAX accounts)... only API (tier 4)
How do you guys increase the confidence in your bots work?
I've been a big gin and tonic fan, but I'm somewhat convinced that is not the proper route to take ๐
forgive me for not understanding the joke
apologies, I had too much coffee this morning ๐
Lol
u can safely use sub if u know what ur doing
any thread, link or guide you would recommend to get started?
look at claude-serve - the websocket approach, but u would have to make changes to some things.
can you elaborate on claude-serve? is this something used for mcp? I already had to fork the current repo to fix the antigravity token expiry per model
the tricky part is it kind of decouples the model from full integration with openclaw harness, but if you route everything intelligently you have a buffer between claude code cli and openclaw
websocket way with claude-serve allows session back and forth which is why its valuable
i also pair it with a custom mcp for tools exposed by gateway RPC
for adding own mcp's just make a .mcp.json in openclaw/workspace and add dirs with docs u want the LLM to be able to rw to to extraDirectories or whatever its called
cause with claude-serve the LLM is in kind of a sandbox with openclaw until you allow it access
hmm I might try this with gemini-cli first
await this.runQmd(["update"], { timeoutMs: 12e4 });
const embedIntervalMs = this.qmd.update.embedIntervalMs;
if (Boolean(force) || this.lastEmbedAt === null || embedIntervalMs > 0 && Date.now() - this.lastEmbedAt > embedIntervalMs) try {
await this.runQmd(["embed"], { timeoutMs: 12e4 });
you guys are giving qmd 2 minutes to embed everything or it's game over?
TL;DR
The Model Context Protocol (MCP) promises to solve AIโs tool integration problem but actually makes things worse. It pollutes your context window (your AIโs โworking memoryโ), adds security vulnerabilities, and solves problems that Unix solved in 1969 with pipes and small, composable CLI tools. Instead of
with a model running in cpu lol
i switched to https://huggingface.co/bartowski/granite-embedding-278m-multilingual-GGUF for embeddings
make a service for it off ur gpu and indexing flies
the Q6 is great quality
no its def running on my GPU its just 100 million tokens
I'm just using whatever default models came with it
Models (auto-downloaded from HuggingFace):
Embedding: embeddinggemma-300M-Q8_0
Reranking: qwen3-reranker-0.6b-q8_0
Generation: Qwen3-0.6B-Q8_0
I just ran it with a timeout adjusted for 2 hours and its cranking my 8GB 4070 to nearly 95% sustained usage
QMD loads those into cpu
unless they changed it on the openclaw side
that model i pivoted to above does it in under a min on gpu
im actually cooking a SOTA memory right now tho
uses beads, MAGMA, A-MEM
i recompiled whatever whatever it was like GLIBCUDA someting env variable to make it those models work with GPU anyways i dont know im just telling yo i saw my gpu cranking during this process it finally finished, i did half the folder bc i wasn't sure how long it was gonna take
dasilva333@DESKTOP-74E3GJO:~/clawdbot_baseline$ time node dist/entry.js memory index --agent coding-agent --verbose --force
17:14:12 [plugins] plugin CLI register skipped (memory-core): command already registered (memory)
๐ฆ OpenClaw 2026.2.4 (f16e32b) โ I'm the assistant your terminal demanded, not the one your sleep schedule requested.
Memory Index (coding-agent)
Provider: qmd (requested: qmd)
Model: qmd
Sources: memory (MEMORY.md + /mnt/c/Users/h4rdc/Documents/Github/coding-agent/memory/*.md)
Memory index updated (coding-agent).
real 27m33.131s
user 21m47.953s
sys 4m6.460s
that's 30 mins for 50 million tokens
that's why i'm saying its silly the devs hardcoded qmd to 2 minutes to do soemthing that could take 30 minutes, they should at least expose that option in the future
i think the only memories worth saving are the basic ones in behavioral and then project level
whats actually worth keeping is expertise or learnings
that have been validated through experience
I exported all my OpenAI + Gemini sessions so i can have an agent that can look up my past chats with both of them easily
- Context highlights (OpenAI ChatGPT export):
- Total conversations: 2,431
- Estimated total tokens: 49.7M (52% input / 48% output)
- Top 5% average tokens: ~199,618 (122 sessions)
- Heaviest conversation tokens: ~696,442
- Longest conversation: 873 turns
- Context highlights (Gemini AI Studio export):
- Total sessions: 226
- Total tokens: 45.0M (61% input / 39% output)
- Top 5% average tokens: ~940,359 (12 sessions)
- Heaviest session tokens: 1,060,833
- Longest session: 1,482 turns
i disagree i want to be able to be like "hey bot find that conversation where I was talkinga bout keyboard hacking" and it finds that technical chat
id give something like that its own RAG with a chat cli for the agent to query
not memory engine
im trying to push the limits of what can be done with openclaw
for reference the old memory_search that's based on openai/gemini embeddings was taking 60 to 90 seconds to run a memory search against that dataset lol
im not saying dont do it with openclaw im saying dont put it in openclaw's memory retrieval
but thats just me lol
well i diasgree i think its one of those things that's like you dont know if its good until you try it
like if you told me that about memory_search i would've still tried it anyways and you would've been right, 90 seconds is useless when it hangs the whole main process for that long its like i rather look it up manually at that point
only cause i been fucking with RAG and memory systems a bunch
yeah im new to that branch of retrieval augmentation but i figure this is a good use case
there's another one called moss tat offers a free API i think they're super good its super fast and i can store my 100 milllion in the cloud for quick emaningful searches
plus i can template the results and manually send them back so i dont have to rely on the AI to make me a good report of the results
what u should look at if ur interested
extracting learnings from all that
seeding something like anda-db with flexible schema
check this out ths is my current solution with moss:
which is rust based and then use retrieval agents in redis
Richard, [2/6/2026 12:55 PM]
ok do a moss search for keyboard hacking topk5
PersonalClawdBot, [2/6/2026 12:55 PM]
I will now run the moss-search.mjs script with your query.
PersonalClawdBot, [2/6/2026 12:55 PM]
๐ ๏ธ Exec: node /mnt/c/Users/h4rdc/Documents/Github/coding-agent/moss-search.mjs --query "keyboard hacking" --topK 5
PersonalClawdBot, [2/6/2026 12:55 PM]
๐ Moss Search Results
Query: "keyboard hacking"
Found: 10 results
[1] Score: 0.3782 | Legion Slim 7 Key Removal
๐ legion_slim_7_key_removal_67c4b0df.md
Source: ChatGPT (https://chatgpt.com/c/67c4b0df-e3c4-800f-905f-b873a64ee645)
User:
I have a lenovo legion slim 7 16RH8, can you scour the web and figure ouuut if the keybooard keys are removable? II can try to use force to ...
[2] Score: 0.3452 | Reverse Engineering Keyboard Control.1ash19gnqoquAoDImC
๐ reverse_engineering_keyboard_control__1ash19gnqoquaodimc_.md
Source: Google AI Studio (https://aistudio.google.com/app/prompts/IXgFFpURwgKek)
User:
so check it out I'm reverse engineering software level control for my laptop's built in RGB keyboard, anyways I dubbed it god mode bc it wou...
[3] Score: 0.3361 | Pixel Art Christmas Tree Keyboard
๐ pixel_art_christmas_tree_keyboard.md
Source: Google AI Studio (https://aistudio.google.com/app/prompts/1aaQuWBFtPSIUxNWJQT3HgVhcAwO0KTw5)
User:
lol this is a very much "use your imagination" type task im gonna give you, if you squint your eyes can you totally see how this would resem...
[4] Score: 0.2684 | LED.dll_ Keyboard LED Control API_1hrTYJlopf6IfI2BAGXAmf6hLx
๐ led_dll__keyboard_led_control_api_1hrtyjlopf6ifi2bagxamf6hlx.md
Source: Google AI Studio (https://aistudio.google.com/app/prompts/faOqNu)
and that's super fast like its literally instant as far as it feels liek
but i'm still "vendored" in to moss's data limits and model quality so being able to use my own GPU + swap out the models for higher quality ones like you wer recommending is def a plus if i can keep search time down to like 1-2 seconds
so we'll see after i finish indexing it, the whole point of this exercise is basically to benchmark it lol
yup, wont know until u try
its interesting how the default models seem to be qwen3 based and my main daily driver model is also qwen3
im not sure if id trust an amazon product (granite) over qwen3
its IBM isnt it?
all i know is its super fast
dont see why an open source model would be some kind of honeypot
im not sure about honeypots for offline models but i didnnt know granite was IBM, just finished the other 50 million token dataset
dasilva333@DESKTOP-74E3GJO:~/clawdbot_baseline$ time node dist/entry.js memory index --agent coding-agent --verbose
18:01:28 [plugins] plugin CLI register skipped (memory-core): command already registered (memory)
๐ฆ OpenClaw 2026.2.4 (f16e32b) โ No $999 stand required.
Memory Index (coding-agent)
Provider: qmd (requested: qmd)
Model: qmd
Sources: memory (MEMORY.md + /mnt/c/Users/h4rdc/Documents/Github/coding-agent/memory/*.md)
Memory index updated (coding-agent).
real 43m6.198s
user 34m29.914s
sys 6m38.468s
so this oen took 45 mins very interesting lol
so you're using qwen3 for your default model? didn't know they had a non-embedding model
like it's the default model that was picked for me when i installed it btw
@meager carbon alright first query benchmark is in:
real 0m25.625s
user 0m13.356s
sys 0m4.762s
25 seconds to query 100 million tokens with qmd? I'll take it
Do you guys have any good resources to read up on multi agent setups?
do you mean multi SOULs? i asked openclaw to do it for me and guided me to connect the new agent with telegram, it's pretty smooth.
https://github.com/gabrielekarra/openclaw-mcp-bridge this is my proposed solution
But is mcp client still a cli app it has to use?
Like you basically still donโt implement native mcp and itโs just a layer to filter relevant tools while requiring the agent to interpret their payloads into cli compatible formats?
Good questions, let me clarify the architecture.
On MCPClient: For stdio servers, yes, mcp-use spawns child processes. But it communicates via JSON-RPC over stdin/stdout โ it's not CLI parsing. The agent never sees shell commands or text output. For HTTP/SSE servers, it's pure network calls with no processes involved.
On the "just a filter layer" concern: You're partially right, and I think there's a stronger architecture we should consider.
The current design registers MCP tools as native OpenClaw tools. The agent calls them with structured JSON params, never interprets CLI payloads. So the UX is native. But fundamentally we're still a bridge, not a true native implementation.
A more interesting approach would be to expose an MCP server that aggregates other MCP servers. Instead of being an OpenClaw plugin that wraps MCPClient, we become a standalone MCP server (built with mcp-use's createMCPServer()) that:
Connects to downstream MCP servers via MCPClient
Applies context-aware filtering and schema compression
Exposes a curated, compressed tools/list and tools/call via standard MCP protocol
Any MCP client (OpenClaw via mcporter, Claude Desktop, Cursor, etc.) connects to us as a single server
This way we're a smart MCP aggregator/proxy, not an OpenClaw specific plugin. The value proposition becomes broader: any MCP client gets intelligent tool curation. And for OpenClaw specifically, mcporter already works with MCP servers, so our aggregator plugs in with zero custom integration.
Would this direction be more aligned with what you're looking for?
hey Richard here, same guy that asked the question. You didn't really answer the question sorry like are you familiar with the app called mcporter?
Like you're saying it's native but I'm doubting it's native so that's really what I'm trying to make sure bc here's my understanding
- Clawdbot is built on top of pi-coding-agent
- the developer of pi-coding-agent hates mcp so he refused to integarte support
- i understand the process involves installing a "plugin" into openclaw so does that allow the agent to make native tool calls the way you did it?
- so the current "solution" was to just have the agent invoke the exec tool to call the cli app called mcporter to effectively run a shell command that then runs the mcp command to return it's output
So I hate to beat a dead horse but whatever it is you did requires no shelling not even a little bit? lol
Yep, I see what you mean. There are two approaches:
- exec โ mcporter CLI: that is shell out. The agent runs a shell command and then interprets the output. Not native.
- MCP protocol bridge (what Iโm doing): for stdio servers a process may be spawned, but communication is JSON RPC over stdin/stdout. No shell, no command strings generated by the agent, no CLI output parsing. For HTTP/SSE itโs purely network.
So: no shelling, but for stdio there can be process spawning as a transport detail.
If โnativeโ means โOpenClaw core implements MCP directly with no adapter at allโ, then no, itโs still an adapter layer. But the agent experience is native tool calls (structured JSON), not exec/shell hacks.
so the plugin you have works as a true mcp implementation for openclaw as far as how everything else works pretty much right? except better bc of that whole fancy tools filtering part right? and i can disable the tools filtering so I can just allow my agent to see all the tools allt he time if i don't care to save on tokens?
so how does it work internally? like openclaw's plugin system allows you to hook into the agent's tools so when i do /verbose on I'll see like a new special 'mcp' command and then maybe the input payload where I would see the command?
TLDR; plugin spawns mcp server process > hooks into pi-coding-agent > agent can make native mcp tool calls through plugin?
I havenโt investigated yet but something changed in the telegram implementation. Now my agent replies when all the tool calls finished, I donโt get partial messages anymore. All at once.
Sharing in case someoneโs on the same boat
yeah same thing happened to me after a pull i had streamMode set to partial and it was working fine and i had to set it to off afterwards and set some new key to enabled just to get it to work decent again
Whatโs that new config key? Do you remember?
yeah so i was on telegram and my settings looked like this:
"streamMode": "partial"
and then after a certain pull the same thing happened I would describe it as "i would see al the tool calls and then when it's completely finished I would get all the corresponding messages at once"
so i fixed it by adjusting the config like this:
"blockStreaming": true,
"streamMode": "off"
how long do beta releases tend to bake before promotion?
Hey ๐ quick question: Does OpenClaw run the same instance of a plugin if I have two backends running? Or are they separate?
Anyone else having issues navigating the browser? I'm haveing the following config:
"browser": {
"enabled": true,
"executablePath": "/usr/bin/google-chrome-stable",
"attachOnly": false,
"defaultProfile": "openclaw"
},
But openclaw (codex 5.2), keeps arguing:
"""
I need a Chrome tab attached. Click the OpenClaw Chrome extension icon on the tab you want me to control (badge ON), then I can pull the latest tech headlines.
"""
{
"status": "error",
"tool": "browser",
"error": "Can't reach the OpenClaw browser control service. Start (or restart) the OpenClaw gateway (OpenClaw.app menubar, or openclaw gateway) and try again. (Error: Error: Chrome extension relay is running, but no tab is connected. Click the OpenClaw Chrome extension icon on a tab to attach it (profile "chrome").)"
}
I have to keep nudging it via: just use the default profile "openclaw", after this it opens and navigates Chrome.
Made my first pr based on a issue I had with matrix, 4/5 greptile confidence score. I imagine it's somewhat of a lottery to get it reviewed and merge by a contributer, right?
As with the flood of issues and prs it feels impossible to me to find something to work on which is worthwhile. How is anyone doing it? Are there public tools which track which issues/prs are worthwhile looking into?
mcp-use (the MCP SDK under the hood) spawns MCP server processes โ plugin discovers & registers tools into pi-coding-agent โ agent makes tool calls that the plugin translates back into MCP protocol calls
From the agent's perspective it has no idea MCP exists. It just sees tools like mcp_notion_create_page and calls them like any other tool.
good rule of thumb starting out, fix the shit that irks you or u need to hack on yourself
theres always something lol
Yeah, that's what I did with my PR. ๐ Not encountering any more quirks for me just yet. Although it could be in general be faster. Super odd that for example openclaw logs --follow somehow takes several seconds to tail the logs as it's checking the setup or something.
Can I just express my ultimate wishes that #4822 is actually merged soon? ๐ Signal borks constantly from the ID case issue. That is all... ๐
Hi everyone, we're trying to improve otel support a lot, so you can have an understanding of what's happening under the hood, including token/costs, but also tool calls, etc. If this sounds interesting to you, the PR can be found here: https://github.com/openclaw/openclaw/pull/11100
thank you for this, been poking around otel support the last few days making my own notes
There's still a lot to improve and learn, but this should cover messages, tools and span parent/children. But happy to compare notes and get your input
only big thing that looks missing is agent lifecycle?
I've built out an analytics package to help me measure quality/effectiveness/cost of different agent/models combos -- the genai semantics is really what ive been hoping for to get me over the hump. Right now I've coaxed it to self-submit data via a small cli script but as you'd probably guess, it's hit or miss.
i was planning on poking around the new usage tab in the dashboard this weekend to see what i could learn from it, but i'll try out your pr!
Has anyone encountered an issue where a browser extension canโt be installed ?
Error: Bundled Chrome extension is missing. Reinstall OpenClaw and try again.
i'm trying import ollama websearch to openclaw bulit-in web_search tool
hey @plain totem I'm trying your plugin now, feedback incoming. already i have a question. What does "auto discover" do? like how would the code automatically discover mcp servers? is it set to look at common mcp config files and import from them like mcporter?
oaky check this out Gabe I'm stuck at just the plugin installation phase:
Downloading gabrielekarra/openclaw-mcp-bridgeโฆ
Extracting /tmp/openclaw-npm-pack-lk6BdM/openclaw-mcp-bridge-0.1.0.tgzโฆ
Error: package.json openclaw.extensions is empty
I think im gonna try the lternative way and see if i can get that to work
Okay I see you need to make sure you include tsup into the dev dependencies that's why I couldn't install it automagically
@plain totem alright so you def have issues with tsup and typescript and the way you set it up so i had to do a bunch of manual stuff. Now here's where it gets weird.... it looks like a bug with openclaw rather than an issue with your package like i dont know what openclaw is thinking
look at this:
async function ensureOpenClawExtensions(manifest) {
const extensions = manifest[MANIFEST_KEY]?.extensions;
if (!Array.isArray(extensions)) throw new Error("package.json missing openclaw.extensions");
const list = extensions.map((e) => typeof e === "string" ? e.trim() : "").filter(Boolean); //<- wtf is that? its basically requiring the extensions array to be a JSOn stringified array of objects?
if (list.length === 0) throw new Error("package.json openclaw.extensions is empty");
return list;
}
so I fixed it by modifying your package.json like this:
"openclaw": {
"extensions": [
"{\"type\":\"tool\",\"id\":\"mcp-bridge\",\"entry\":\"dist/index.js\"}"
]
},
looking for anyone that want to test and need mcp in openclaw https://github.com/gabrielekarra/openclaw-mcp-bridge
Hey team โ I submitted a feature request for Masked Secrets (#10659) and wanted to share why it's urgent.
Tonight my agent accidentally displayed my API keys in plain text in our chat. Twice.
The agent has full read access to my .env file, and even though it "knows" not to display them, it did anyway when troubleshooting an auth issue.
The proposed feature would:
- Use {{secret:VAR}} syntax so the agent never sees raw values
- Auto-redact any accidental output
- Actually protect secrets instead of relying on agent discipline
This feels like a security gap that others will hit too. Would love to see it prioritized.
Issue: https://github.com/openclaw/openclaw/issues/10659
Thanks!
I just installed Discord and I ran a bug hunt on the app and have some solid refactors.
https://github.com/openclaw/openclaw/issues/11591 I am an old QA guy so treat me with a kindness you would of a golden retriever please.
I can start testing and addressing these tomorrow, but with the flow of PRs I honestly donโt know when they will be picked up.
I have a sandbox to develop and test, Iโll send PRs if I can reproduce and fix or mitigate
Thank you!
Does Opus 4.6 not support Oauth? Not possible to get it working with OpenClaw unless we use our API KEY?
Any idea why it tries downgrading when I try to update!?!?!
vedtam-MacBookPro13-1:~$ openclaw update
โ
โ Downgrading from 2026.2.3-1 to latest (unknown) can break configuration. Continue?
โ No
Update cancelled.
the second time it worked, but it's still weird
Anyone having issues with controlUI, it's literally not responding to messages whatsover, and refreshing the page removes the messages?
.
I'm not actually, using grok brother
I see
Literally non responsive to whatever I send it
I wanted to spin this up fast, so used Hostinger, which has been working fine since this morning... now nothing... I used 'openclaw status --all' in the terminal and it says gateways aren't running, not connected etc...
Thats your issue
Just ask gemini
what do you mean bud
Type the commad errors in google ai
thanks
everytime my credit balance go to zero, i refill them but my clawdcontrol chat still loads and doestn answer me anything. anyway to restart him on the web?
@slate fjord
I am having the same issue
Lads (& ladies?) what do ye do when your agent doesn't quite know how to do something?
Example: You're trying to use Microsoft graph REST API for whatever. The agent isn't quite getting the implementation right or its knowledge of it isn't accurate. (this is purely an example btw). Do ye go research yourself and send it the docs, or link it or?
I generally research myself and send it the exact link, for instance the rest api doc for graph, and get it on research mode to figure it out.
Curious on what others do.
make a skill
Tried to install and it won't
curl -fsSL https://openclaw.ai/install.cmd -o install.cmd && install.cmd && del install.cmd
OpenClaw Installer
[OK] Windows detected
[!] Node.js not found
[*] Installing Node.js...
Using winget...
Failed in attempting to update the source: winget
Failed to open the predefined source; please report to winget maintainers.
An unexpected error occurred while executing the command:
create_directories: Cannot create a file when that file already exists.: "C:\Users\markg\AppData\Local\Temp\openclaw-install.ps1\WinGet"
[OK] Node.js installed via winget
[!] Node.js not found
Error: Node.js installation may require a terminal restart
Please close this terminal, open a new one, and run this installer again.
As you can see, there is conflicting information, Node.js is installed but then its saying it can't find Node.js
Suggestions please.
seriously
explain. You make a skill that what?
just ensure the agent understands here ill show u
Skill: Microsoft Graph REST API
Description
This skill teaches the AI agent how to use the Microsoft Graph REST API. It covers basic concepts, authentication, endpoints, and step-by-step operations. The skill is designed to allow the AI agent to guide a user through simple API calls and understand responses.
Core Concepts
1. Microsoft Graph
- Microsoft Graph is a REST API that allows access to Microsoft 365 data.
- Examples of data you can access:
- Users, groups, and organizational info
- Emails, calendars, and contacts
- OneDrive files
- Teams data
2. REST API Basics
- REST APIs use HTTP requests: GET, POST, PUT, PATCH, DELETE.
- A request is made to a URL endpoint and can include headers and body data.
- Responses usually come in JSON format.
3. Authentication
- Microsoft Graph requires OAuth 2.0.
- Steps:
- Register an application in the Azure portal.
- Get client ID and tenant ID.
- Request an access token.
- Use the access token in your HTTP request header:
Authorization: Bearer <ACCESS_TOKEN>
Step-by-Step Operations
Example 1: List Users
- Endpoint:
GET https://graph.microsoft.com/v1.0/users - Add the header:
u have to be more basic
but u teach the agent
you are relying on the llm logic to solve it
u need to provide the tools for the llm to execute
So your solution for every issue is make a skill for the agent to understand what it is you are trying to do. I might never use that again. Waste of time to me when I can just pass it URL > Deep Search > Output.
Skills are fine for consistent problems you'll face, not problems in isolation.
Skills are practice projects, pointing it at the docs is giving it Stack Overflow. Both are valid approaches.
@cinder cove I find that a link to docs along with an explanation of what it might be getting wrong often helps, even if the explanation isn't super detailed.
Yeah this is the approach I use too. I don't like the double jobbing idea of creating a skill for something simple. I have created skills for other things that I would need consistently.
If it has context of what we are building at the time, it helps a lot too if the explaination isn't detailed.
actually. This has given me an idea. Nice unintentional idea there Hacker lol
I am having an issue with session context. I have no problem creating systems that can run or be called by the bot, but these systems can not directly affect the session context. Has anyone figured this out yet?
for example:
THIS WORKS
Operator instructs Bot to do OperationX => Bot executes OperationX.py => reads output into context => can discuss output
THIS DOESNT WORK
Hearbeat executes OperationX => output get sent to context => Bot might decide to send a message to Operator based on this event
heartbeats are ephemeral isolated sessions that don't affect the main session context at all. How can I push to the session?
It would be awesome if there was something like a context buffer that would be recalculated for every API call, or a stack that can be pushed to that would retrigger the agent
Excellent, that's what I like to hear. Anything worth sharing?
One-click cloud hosting for OpenClaw AI agents.
Check out more on X: https://x.com/bfzli/status/2020549844490752141
Introducing ClawHost (clawhost.cloud)), an open-source, one-click cloud hosting platform for OpenClaw AI agents.
๏ธ๏ธ
๏ธ๏ธWith ClawHost, you can:
๏ธ๏ธ
๏ธ๏ธ- Deploy OpenClaw instances with one click
๏ธ๏ธ- Run and manage multiple instances
๏ธ๏ธ- Get full VPS access and control
๏ธ๏ธ- Use custom domain
๏ธ๏ธ- Rely on managed security and maintenance
๏ธ๏ธ- Access your instances globally with reliable uptime
๏ธ๏ธ
๏ธ๏ธBuilt for both technical and non-technical users who want to run OpenClaw without managing infrastructure.
How is this different to all the other/established wrappers?
Not going to share it yet. Will build and share.
how do you guys go about testing locally your agents, like a test suite or similar to classic testing frameworks?
Did anyone figure out how to pair OpenClawd with WhatsApp when deploying via a RailWay template? I can't get it to work...
reposting this here in case anyone interested https://github.com/yoloshii/ClawMem
this is next level if u get it working
Open-source multi-tenant layer for OpenClaw with one-click onboarding. Each user gets isolated Docker containers, encrypted vault (AES-256-GCM, Argon2id), and OAuth integrations. Self-hostable. Hope it is useful to someone; have at it! https://github.com/jomafilms/openclaw-multitenant
im having an issue with openclaw cron jobs, it isnt working no matter what I do. Any suggestions on how to fix it?
dm me i managed to get it to work
having node issues big time
- Setup: OpenClaw Gateway running in WSL2. OpenClaw Desktop app running on the Windows host.
- Problem: The desktop app authenticates successfully and appears in the "Paired Devices" list. However, it does not register as a "Node." The "Nodes" list is empty, and clawdbot nodes status confirms this. Consequently, tools like canvas fail with a node required error.
what is going on
posted an issue? good to post with logs
go into detail on yoursetup too, channels, timing etc
๐ Bug: Sandbox docker exec passes empty PATH, breaking shell execution (Windows)
Environment: OpenClaw 2026.2.6-3, Windows 10 (26200), Docker 29.2.0
Issue: Shell commands in the sandbox fail with exec: "sh": executable file not found in $PATH. The container image (openclaw-sandbox:bookworm-slim) has sh at /usr/bin/sh and a correct PATH in its config, but when OpenClaw calls the Docker API to exec, it appears to pass an empty PATH environment variable, overriding the container's default.
Repro:
โข docker exec -e PATH="" <container> sh -c "echo hello" โ reproduces the error
โข docker exec <container> sh -c "echo hello" โ works fine
โข docker exec -e PATH="/usr/bin:/bin" <container> sh -c "echo hello" โ works fine
Workaround: Set tools.exec.host to "gateway" to bypass the sandbox.
have you messed with it yet?
Hey folks! Working on a PR to add a new bundled hook (SessionVerse) that fires on session:end events to auto-generate session summaries. Got the code working (tested manually), but can't get bundled hooks to actually load/fire.
Merged latest main into my feature branch (2026.2.6-3 from source), rebuilt everything, restarted gateway multiple times โ zero hook discovery logs on startup, no hooks firing on events.
Config has hooks.internal.enabled: true, handler compiled fine (9.04 kB in dist/bundled/session-verse/handler.js), but the gateway just... doesn't see it?
Is there a config incantation I'm missing, or is bundled hook discovery still busted? Been debugging this for hours and want to make sure I'm not chasing a known issue before I submit the PR.
(Hook itself works great when manually invoked, so the code's solid โ just need the auto-loading to work)
Thanks! ๐
made this for you guys to track all of the live PRs https://www.openclawoverview.com/
in clusters of most common issues
thats just an early attempt. still have to test properly and debug.
WOAH you're a beast dude hell yeah that's so awesome I'ma ctively setting it up in my machine, it's trick bc I've got the server running in wsl and the frontend running in windows > docker and I'm getting "server at capacity" but the backend is supposedl running fine so I might just skip trying to test it using the frontend and skip right into intergration of your plugin?
[CPP] llama_context: Flash Attention was auto, set to enabled
[CPP] llama_context: CUDA0 compute buffer size = 322.33 MiB
[CPP] llama_context: CUDA_Host compute buffer size = 9.51 MiB
[CPP] llama_context: graph nodes = 627
[CPP] llama_context: graph splits = 2
[CPP] flowGGUFModelLoader: init_backend device=gpu:1, gpu_idx=1, backend=CUDA0
้ขๅๅงๅๆๅ: {'success': True, 'media_type': 1, 'use_tts': True, 'voice_audio_used': False}
MiniCPMO C++ HTTP ๆๅกๅจๅๅงๅๅฎๆ
[CPP] srv log_server_r: request: POST /v1/stream/omni_init 127.0.0.1 200
ๆญฃๅจๆณจๅๆๅก่็น: url=http://10.0.0.91:8021/api/inference/register, data={'ip': '172.17.147.217', 'port': 9060, 'model_port': 9060, 'model_type': 'simplex', 'session_type': 'release', 'service_name': 'o45-cpp'}
ๆๅก่็นๆณจๅๆๅ: {"service_id":"172.17.147.217:9060","message":"ๆๅกๆณจๅๆๅ"}
INFO: Application startup complete.
INFO: Uvicorn running on http://0.0.0.0:9060 (Press CTRL+C to quit)
try it lol, let me know how it goes
see that looks positive right?
yup
they were going to release their own with the audio output done but i was impatient
but then i get in the frontend when i click start call:
Server at capacity. Please try again later.
So I'm actively debugging that, already I had to adjust token2wave-impl.cpp and minicpmo_cpp_http_server.py just to get this far
it converts wav to opus for TG
this model is so cool, it does vision too
one stop shop for openclaw imo
there is a bunch of TTS examples of how to convert stuff to audio files or text, like the model being multi-modal like that makes it really felxible
the only thing that sucks is the vocoder
i actually went out of my way to disable vision just so that it stays performant on my 8gb video card
are you running it on mac?
no linux
that might be why you've having better luck you're not trying to disable vision and you don't have some weird hybrid setup lol
well my setup is remote local gpu so i have to pipe it through the endpoint
cause i got distributed nodes on a homelab
so its a few extra steps
oh i see yeah that does sound pretty advanced, here's what my AI is saing about what it's seeing from the logs
The frontend logs are telling us the exact failure point: ่ทๅๅฐ็token: null -1. This means the request to the Backend to get a LiveKit token failed. Why? Because the Backend checked Redis for an available "Inference Node" and found none.
Even though you registered the node manually via curl, Redis might have expired it (Heartbeat timeout) or the backend rejected it because of a metadata mismatch.
hmk
i'll take a look at it later today
got a few other things to shore up first
u can also check their official git, they supposedly updating their code to allow audio out
Hey there. I am working on a plugin which is supposed to hook into the system prompt to add additional lines (or even ideally replace the agent SOUL.md, AGENT.md etc and inject system prompt lines instead of these). I thought I could use prependContextto inject the system prompt, but it turns out it injects the user message. The JSDoc in hooks.js:85 says "inject context into the system prompt" but this seems to be a documentation bug. it actually goes into the user message.
OpenClaw's Extension system (separate from Plugin system) CAN replace system prompt via agent.setSystemPrompt(), but this API is not available to plugins I think.
There is hookResult.systemPromptwhich is merged by hooks.js:89-94 but never consumed by attempt.js => is this dead code?
I'm having these settings in the config:
"browser": {
"enabled": true,
"executablePath": "/usr/bin/google-chrome-stable",
"attachOnly": false,
"defaultProfile": "chrome"
},
But the bot can still open a "openclaw" profile whenever it likes. Aren't these properties in the config hard requirements? Check this answer from the bot:
ME: Why are you getting around the config? By default you should use "chrome" profile.
BOT: Youโre right โ I shouldnโt have defaulted to openclaw in that first run.
What happened is simpler than it looks: the browser tool doesnโt automatically โinheritโ your gateway browser.defaultProfile unless I omit the profile and the integration layer applies it. In my first call I *explicitly requested* profile:"openclaw" (the isolated profile), so it used that regardless of config.
Why I did it: I default to the isolated profile unless you explicitly want your real Chrome state (signed-in, cookies, personalization), because itโs the safer baseline. But given your config (and your expectation), Iโll follow it going forward: ...
Youโre amazing for this โ tysm ๐ฆ
Is there any known issue on the cli onboarding for the latest version?
New release just dropped and I havenโt seen any GitHub issues on it yet
Pete was a big fan of gpt5.2. Now that Opus 4.6 and GPT 5.3 are out, does he still prefer gpt?
Hey devs. Can someone help me understand how to bridge contexts? How could I for instance have a heartbeat session prompt to trigger the main session?
Hey if I want to contribute -- do I just push a PR?
What is everyone using for gmail webhooks? Mine tried to roll it's own thing, but it isn't good when you add multiple accounts
yes he's a codex guy
try adding a CLAUDE.md to the behavior docs. it tends to be a hard enforce for claude cli
put whatever u really want it to follow absolutely in that
@meager carbon thanks! One question, where's claude cli involvved in the process? I thought the agentic loop is based (more or less) on pi-mono?
gogcli
theres a gmail hook built in
It gets bad with multiple emails
its built on claude sdk, pi is just the embedded agent
@meager carbon phew, that's important, thanks! I've been learning about the agentic loop, read all I've could find in the docs (agent runtime / loop), but there, the only importet piece was pi-mono!
@meager carbon , it looks like there's no Claude APIs involved in the agentic loop. The path is simple, ex:
browser-tool
---> openclaw-tools.ts (instantiation)
---> pi-tools.ts (resolution / merge)
---> attempt.ts (runner initialisation)
---> pi-coding-agent (execution loop).
weird, i must have an alien install then
how does openclaw natively use claude sub then?
Right but I assume he changes as models change.
And we had a change last week
Hello All ,
Iโve been working on a Web UI V2 for OpenClaw while running OpenClaw locally for development.
Itโs a modern chat-first / ChatGPT-style interface that runs alongside V1 at /v2/chat โ the existing UI remains available and doesnโt break.
To support V2 I had to touch control UI + gateway + backend, but all changes are intended to be backward-compatible.
Details, screenshots, and feature list are in the GitHub Discussion (feedback welcome โ first OSS contribution):
https://github.com/openclaw/openclaw/discussions/13363
If thereโs interest, I can split this into small reviewable PRs (gateway/backend minimal first, then UI shell, then projects, etc.). Any guidance on the preferred approach is welcome.
What V2 adds
Multi-chat sidebar โ conversation list with date grouping, search (Cmd+K), pin & archive
Projects โ group chats and their file attachments into named, color-coded workspaces
Live model switching โ provider-grouped dropdown in the compose bar, applied instantly
Per-session skill toggles โ enable/disable skills from a popover in the compose bar
File attachments โ multi-file picker, paste, drag & drop with size validation and thumbnails
Edit & Regenerate โ edit any user message or regenerate any assistant response
Slash command autocomplete โ type / for a keyboard-navigable command popover
Voice I/O โ speech-to-text input + TTS read-aloud (gateway-first, browser fallback)
Linked chats โ reference other sessions as context, scoped by project
Light / dark theme โ one-click toggle in the header
Claw is just 3 pis in a trenchcoat ๐
@gentle rune hello welcome new geek
Iโm having major issues with gog and multiple emails with webhooks and pub/sub. has anyone figured this out properly?
Does this only address chat?
Iโd like to see a full webui replacement
Itโs not only chat โ itโs a full Control UI redesign + lots of new features (multi-chat, projects/files, search, slash commands, attachments, live model/skills, voice, edit/regenerate). The old V1 pages are reachable via a central Settings/Navigation modal.
Awesome! Going to install
Awesome โ thanks! If you try it, feedback would be super helpful.
Could you drop your notes (what you like / whatโs missing / any bugs) either here in #dev or directly in the GitHub discussion?
Sure thing
Improving the settings tab would be huge. It should fill in default values
Good point โ improving the Settings section is on my roadmap. Next steps are a proper redesign + auto-prefill (current gateway config and/or defaults), and then multi-language support.
When you say โfill in default valuesโ, do you mean showing the current values from the gateway, the documented defaults, or both?
Both, thereโs so much unfilled in the original settings. Itโs also really hard to navigate the UI/UX is terrible
Thanks โ that makes sense. I agree: the current Settings UX is rough and a lot of fields are unclear/empty.
Iโll prioritize a Settings overhaul in V2: prefill current gateway values + show documented defaults, and improve navigation (grouping, search, clearer labels/help).
If you have 2โ3 specific pain points (which settings you struggle with most), drop them here or in the GitHub discussion and Iโll target those first.
Thatโd be huge thank you!
Iโd say those two things are the top
Great โ noted. Iโll treat those as the top priority for the next iteration.
Anyone know how to setup alexa cli? I can't find the refresh token
I think what you've been experiencing is a result of the coding-agent skill that can spin up codex/claude CLIs on command
no my install has claude code cli and routes max sub through claude-serve to openclaw
ZAPลACฤ ZA POMOC W SKOFIGUROWANIU OPENCLAW Z MOIM TELEGRAMEM. SZUKAM SPECJALISTY OD N8N i OPENCLAW . ๐ค ๐ฐ ๐ค ๐ฐ ๐ค ๐ฐ
TLDR; One of the co-authors of transformer pattern for AI creates a protocol called NEAR, attempts to create an openclaw rewrite on rust and webassembly, system is tightly coupled with his product, someone shows up and says; fu I need cheap model providers
PS I'm also one of the early contributors
rust and webassembly part I definitely appreciate but not this way
This is hilarious (and also genius). Just shoves claude -p inside a LLM API. Why the f didn't I think of that XD
I had a similar idea, I just shoved claude -p directly in my telegram bot. To turn it back into an actual LLM API is an amazing "f you" to anthropic though hahaha.
Pro tip: it is also trivial to support codex with such a setup, only requires changing a few strings
There is also https://github.com/sipeed/picoclaw which brags that it runs on microcontrollers
i actually had to modify claude-serve quite heavily, but the websocket mode already allows for session based interaction with the models.
Hi @devout kestrel
What's the difference? It runs until completion right? And only returns final output?
You can get sessions with --continue flag. Haven't looked into multiple though but I think that's supported too
Incidentally it's nice having 2 separate bots on one machine, so I can have them fix each other ๐
And I found that Claude code in telegram already meets most of my needs. So my poor man's claw is 50 lines of code.
Kinda cheating tho since it just uses Claude Code. For my next project I try to replicate Claude Code in 50 lines too ๐
i just wanted to make it look as close to normal claude code use as possible
to run max sub safely
Can you send a video or screenshot or something
Oh you just mean on the API side. Yeah Anthropics banning everything that isn't CC now
no lol, but might put it up on a git eventually. my setup is convoluted. i have it routing through a modified agent-smith as well
everything gets sanitized before it even reaches the LLM
shit is like fort knox at this point ๐
for tools i made a custom mcp that exposes the gateway RPC
The author of pi said that in benchmarks, "just shove LLM output into bash" performs about as well as these rube Goldberg machine harnesses
lol
Which implies that a fully functional agent in ~50 LoC is possible
And his tip about tmux is also amazing, I told Claude tmux exists and suddenly it was able to configure OpenClaw interactively thru the wizard
Also allows you to see wtf the agents are doing
Man's living in the future ๐
my next venture is going to be skill wrapping ralph-orchestrator with agent teams, and codex with gpt 5.3 high for planning and review points.
should be a best of all worlds approach lol
and integrate that with the openclaw
TDD + speed
got memory sorted
just needs good prompting in CLAUDE.md
https://ghuntley.com/ralph/
Omg, can't believe I haven't heard of this
the orchestrator is the best one
That's so funny.. I thought that's what an agent already is
Why do we need a 2nd while true around the first one
claude 4.5 was lazy
its the fact u can bundle it with codex gpt 5.3 high
actually cray cray
gpt for plan then agent team parallelization
then gpt for review
thats the cli
the value lies in TDD (test driven development)
u can take multiple iterations to work out bugs or u can just one shot it with test-to-code
the agent teams parallelization speeds up what is normally slower than normal coding flow
Oh crap they send you telegram messages
Man the links you sent here have implemented all the ideas I had this week and much more. That's amazing
Yeah I think it just emerges from usage. Like I was using CC via Tg and it's just silent until it returns so I was like.. would be nice if it sent me some updates.. need a Tg MCP
Tell me more
the basis of a truly hardened openclaw setup is user permissions (what to put on root or permissioned user vs permissionless user), systemd services, nftables, and hooks etc
and firewall
Hey everyone, I've been looking at the security around .md skills and had an idea. Right now, we mostly rely on reading the files to spot bad actors, but obfuscated malware is getting better at hiding from static checks.
What if we built a "Skill Verifier" that uses Docker to actually run the skill in a trapped environment first?
Basically:
- Spin up a dummy container with fake API keys.
- Install the new skill there.
3 . Watch if it tries to steal the keys or open a reverse shell.
Itโs essentially a "dynamic malware analysis" step before installation. I think this could stop the "jailbreak" exploits we're seeing. Is anyone working on a sandbox/VM approach like this?
We can use lightweight Alpine Linux containers. It only adds a few seconds to the install time, which is worth it for safety.
I am looking for feedback on this architecture. Has anybody tried this out
if u set up something that looks at everything that passes through it, u can just reuse it as the gateway for everything, LLM calls, emails, etc
and secrets vault
also important, so the LLM never sees any
Is that the agent Smith thing? You mentioned something was sanitizing the inputs
yeah agent-smith
but what i do is take all the gits
find the best one through deep analysis
then cannibalize features from the rest that are missing
literally the best approach these days lmao
if u wanna be a chad u also run a most recent papers deep research to see what else u can add thats bleeding edge
agent-smith is what it started as from someone else here
now its agent-somethingelse
Horizontal Gene Transfer ๐
and hooked into langfuse
so did it actually existing
u can filter gray zone prompts that are >0.3 - <0.7
and use a kill switch just in case
lol ididnt undersatand๐
i just think the docker idea while seeing yt viedo of the openclaw ,i never used those
I just got this error message - Can anyone help with a fix?
HTTP 400 invalid_request_error: messages.158.content.1: unexpected tool_use_id found in tool_result blocks: toolu_017CP7ZgStTfc1EY5ok. Each tool_result block must have a
corresponding tool_use block in the previous message.
missing param
it wants the tool use in the foregoing message to accept tool use result in the succeeding one
Will a restart fix it or I need to delete the session?
not sure youll have to see, but if it doesnt, u need to change the schema to include the tool use, unless it doesnt directly follow the message with the tool use in which case its a different issue
thx
@meager carbon just got my brand new macbook air like an hour ago and first thing i did was isntall minicpm. it works vey very well at q4km there's like some minimal stuttering but I'm also on battery so i imagine its getting throttled somewhat
I know many people wants Claude OAuth to work. Can I get some attention to get this PR approved please? Failed CIs don't seem to be related to my changes:
Is this where I can ask the devs for feature requests?
@meager carbon hey my AI got stuck trying to find the "gguf-tts-api" that has that api/synthesize endpoint, my machine wants to ask you where you got that code from
Can you add google-antigravity/opus-4-6-thinking?
Well I can't say that I'm happy with the current hype of non-technical persons both for their and my sakes
I don't understand. Did you mean to respond to a different message?
You can probably proxy it
How?
the latest update has still sonnet 4.5 and opus 4.5 for antigravity users
@meager carbon good news buddy I got minipcm working as a tts provider, like I donโt know what the point of your code was it was just adding a gateway proxy? But now I ca do proper /tts audio hello world and have it use the minipcm model now today Iโm gonna play with the voices to get a good one going
Hey ๐
I help SaaS founders automate things like ads reporting, Slack bots, AI customer support, and MVP builds.
Happy to help where I can.
yeah i got distributed nodes on a minilab
glad to hear u got it working
custom code but u dont need it on a single machine
hay dev is it posible to reinstall openclaw and movieng the file to the new one cuz i install ollma and i found out i cant update it during this relly long journy i broke the the door of the world and ask him to re write himself so its not working now
i think you went down the wrong path making a custom endpoint instead i refactored it to be a standard openai compatible endpoint and thatas how i got it working as a tts provider, so i set my tts provider to openai and then override the url via an env variable
i'm working now to get it working as a real time bidirectional audio model on discord
that works
ill post the code for this sometime, this is a new machine so i haven't set up my github or anything on it lol. i also wanna play with changing the audio cloning config too
how cool would it be to have per agent audio voices? i wanna try some crazy ones like elon, morgan freeman, donald trump, jarvis lol
ye thats the idea lol.. the only bottleneck is the vocoder, which will make it around 30 sec a sentence, but it should start to synthesize as soon as it gets streaming packets from the LLM
wdym im not sure what you mean by that bc its working real time for me right now
like to be clear i got the reference project the o45 frontend as they call it working in real time like 0 lag smooth back to back turn based conversations
and then i got a 0 lag solution working for tts like i do /tts audio hello world and in like a second i got the voice note back
i think we should teach poor once to make money openclaw relly can save the world
if anyone intersted we could work togater to make sure that happen
if you have 18gb of vram to dedicate to one model the bfloat16 path is obviously better.
so yeah u dont need the gguf with vocoder
but i have one 24gb card with multiple models doing different shit
so i need to use the gguf with vocoder
i just have a macbook air m4 with 16gb of unified memory and it works fine with the q4km quant
@meager carbon sent you a DM if you wanna watch me implement it lol
what u got serving the model?
Anyone have luck with GLM 5 yet?
what is your config settings to get nanoGPT working? if you could share that part of the openclaw.json please
Hello guys, when running openclaw onboard non-interactive (with gateway bind to lan), the wizard does not generate device-auth configurations and does not automatically pairs the cli client. Is this something done by design?
I feels like this breaks the entire user experience, as you're pretty much locked out of using the cli
Is there some specific config needed to be able to call the exec tool via the REST /tools/invoke endpoint remotely?
what is your config settings to get
if i run bots all day would it be cheaper to use lambda or anything similar with a big advanced model than using Antropics API's?
what do you mean by lambda? (the aws service)
openclaw works on windows machine?
when i run this command, npm install -g openclaw@latest, got the following issue.
npm warn cleanup ]
npm warn cleanup ]
npm error code 1
npm error path C:\Users\user\AppData\Roaming\npm\node_modules\openclaw\node_modules\node-llama-cpp
npm error command failed
npm error command C:\Windows\system32\cmd.exe /d /s /c node ./dist/cli/cli.js postinstall
npm error [node-llama-cpp] Cloning llama.cpp
npm error ^[[?25l[node-llama-cpp] Cloning ggml-org/llama.cpp (local bundle) 0%
npm error ^[[2K^[[1A^[[2K^[[G[node-llama-cpp] Cloning ggml-org/llama.cpp (local bundle) 0%
npm error ^[[2K^[[1A^[[2K^[[G[node-llama-cpp] Cloning ggml-org/llama.cpp (local bundle) 1%
my node version is 24.13.0
npm version is 11.6.2
hello dev team, nobody to help me about that kind of error?
Use #1459642797895319552 for help. The fastest way to get your problem solved is to follow the instructions here: https://docs.openclaw.ai/help/faq#im-stuck-whats-the-fastest-way-to-get-unstuck
So, I am using opus 4.6 with openclaw. That said, i ran into an error. Claude is diagnosing it. It mentioned how the context window is set to 100000. (I did that) I understand that 4.6 has a that large of context in beta and it has been working since release with this setting. My question is, Is this context window leading to the following error: LLM request rejected: messages.394.content.1: unexpected tool_use_id found in tool_result blocks: toolu_01VpPg7xGijV1NXsksmcgoqu. Each tool_result block must have a corresponding tool_use block in the previous message.
i guess not, sounds more like tool problems
is there a plugin that enables sending image files through the web ui? or anywhere for that matter? the MAX_PAYLOAD_BYTES is capped at 512kb
send it through telegram?
checking. node clients should be able to send the 5mb max. i see there are several pull requests to address that
it worked. thanks @ancient kestrel
im building email infra for agents, sdk-first and with attachments handling. setting it up for free -- can i dm you?
sure. ill take a look. i released clawcipes.ai ; creating teams of agents from recipes. im using files verse db or direct communication. might be interesting to check out what you have
cool, ill dm you
has anyone used the google sdk and vertex model garden api setup yet? going on a couple days of wokring on it and im close just curious if someone else has figured it out already
well i figured it out here is the patch : https://github.com/Drake-Chance/OpenClaw-Vertex-AI-Claude-patch.git
I want to provision a server, install openclaw and setup the model + telegram. I can do this via cloud-init but I want to be able to run the pairing step via REST if at all possible. Anyone know how this can be done or what direction to look in? Been trying with the /tools/invoke endpoint but exec doesn't work and I'd rather not have to use something as powerful as exec. Also don't want to have to ssh into the server.
Just a heads up:
MiniMax is dropping their unreleased v2.5 model probably soon.
MiniMax gives me 3 whitelist spots for early access testing.
Active OpenClaw contributors/maintainers first. Who wants one?
anyone had problem with their openclaw bot not responding since the last update?
it's been working really bad past couple days
Like its working in the background but not responding until its done
@shell oar
I had Kimi etc. output all response as "thinking" and newest commits have stricter sanitization of thinking in outputs
"## OpenClaw Runtime Behavior
Thinking Token Sanitization
- Newer OpenClaw versions strip thinking/reasoning tokens from chat output
- This prevents non-output tokens from leaking into user-facing messages
- If the model only generates thinking without actual output content, the message will be empty/silent
- When using thinking models, ensure actual response content is generated, not just internal reasoning"
i put this into AGENTS.md and then it was remembering to also output a final text answer
is that a reply for me?
hey here, I'm wondering, as OC now allows us to use openai Oauth, and therefore to use our gpt plus/pro account instead of API credit, how hard would it nbe for me to add Oauth to my own projects that uses AI as support ?
anyone knowledgeable about this ?
as a matter of fact there are so many things I'd like to move to this sub instead of paying for api credit all the time
Sharing a tool I've been working on: codesession-cli a Node.js CLI + React dashboard for tracking AI agent session costs.
Stack: TypeScript, SQLite (better-sqlite3, WAL mode), Express 5, React 19 with Recharts. Ships as a single npm package with the dashboard bundled.
Some things that might be useful to others building agent tools:
Built-in pricing table for 17+ models with auto-cost calculation from token counts
Session-scoped git tracking (file changes + commits per session)
Programmatic API for embedding in other tools: session.logAI('anthropic', 'claude-sonnet-4', tokens, cost)
Budget enforcement with configurable limits
npm: npm install -g codesession-cli
GitHub: https://github.com/brian-mwirigi/codesession-cli
Also on ClawHub: brian-mwirigi/codesession
yes
I created my own implementation of openclaw in rust with all the basic features and some advanced features, it has a sleak TUI uses openrouter and telegram: don't forget to star the repo to support me ๐
https://github.com/witong42/OpenSpore
ok thanks ill try
still looks the same, im using gemini 3 flash through antigravity
ok, that worked for me when chat stayed silent, hope you get it sorted
im pretty sure its the last update, cuase before that it worked smooth
I am a new clawdbot user and I have been experiencing a health check failure for my node. I can do it and Tailscale has also found a solution. I just need to do the health check. Can anyone help me? I am trying to use the OpenClaw Companion App.
You wanna be careful with that. Most of the AI companies are not happy with people using third party software on the subscriptions. Anthropic and Google are banning people who do that. I don't know about OpenAI though.
well, how is openclaw doing it then ?
illegally, and people are getting banned constantly
hm, ok, I get it
too bad they are banning people for that. but as I am paying for a crazy expensive sub, 200$ monthly, I guess they cannot start telling me I am using too much tokens, right ?
Yeah I saw 3 people get banned from antigravity yesterday
maybe they had excessive usage
No it's not about the tokens it's just they block 3rd party stuff. You can get banned even if you don't use it much. They probably have some automated systems detecting it
I think the guy burning 4B tokens a day didn't get banned ironically
@wary inlet can you confirm? XD
but you can connect it to 3rd legal way
so what's the point banning?
It's connected via Oauth
well, I guess everything could become a codex skill then ?
instead of developing our own tools, we could just dev skills, and use them from inside codex / etc. ?
You can replicate most of OpenClaw's features with a Telegram bot wrapping Claude Code or Codex, yeah
That's probably gonna piss them off too, but it's gonna be a lot harder to ban ๐
I built one last week in like 50 lines of code lol
yeah, they do have plugins to read word and pdf files already, which I believe can RAG stuff now, and building a little side db aside is easy peasy using codex now...
But a guy here really blew my mind, he wrapped the whole thing in an LLM API. So then you can plug OpenClaw directly into it ...
Claude Code added native auto-updating memory a few days ago as well
But yeah if 1 million people start doing it Anthropic are not gonna be happy hahah
Checking it out now
as I said in the other general chan, I decided I had to upgrade from openaiplus to openai pro this morniong, as I did hit my limits one more time (vibe coding a lot)
they're gonna regret adding the headless mode soon i think
or they will have to change their attitude or their pricing
so, I'd like to figure out ways to feel less violated by openai, and make use of the pro plan ๐
200$ is....quite a lot of money for a lot of people, but if I could make use of openai to finally RAG, get real reminders and make my whole pro life easier and more structured, then it might be worth the price
200$ to stop searching my email all the time for past information, to stop digging my files again and again, to get clear reminders automatically based on my RAG'ed files content, etc.
#general is talking about ToS violation bans on AI subscription services due to OpenClaw right now
damn, I just did install it this morning ๐
didn't even try it yet....
but as I said, I'm not married to this or that solution, if codex can enable this, "legally" its fine for me.
there is even an included skill creator right within codex app
I hooked up 11 accounts only so far and 3 are banned, only alts
@wary inlet clawdbot made ur website?
Which one?
atbphosting
No lol
That's hilarious. You'd think they'd ban everything that's linked or on the same IP / device
OpenAI Codex doesn't seem to have a problem, they even show 'other' on the daily usage chart seperate from CLI usage
kimi-code actively advertise it usage for OpenClaw
Between openai and antigravity, how would you guys say the usage rates compare?
Hey folks! ๐ Submitted a draft PR for PIC Standard integration โ a plugin that enforces Provenance & Intent Contracts on tool calls before execution.
What it does:
before_tool_callhook verifies agent's intent proposal via HTTP bridge- Fail-closed design (bridge down = tool blocked)
- Policy-based gating for high-impact tools (money, privacy, irreversible)
Looking for feedback on:
- API shape / hook usage patterns
- Config UX (bridge URL, timeout, policy file)
- Anything I'm doing wrong in the plugin structure
Issue: https://github.com/openclaw/openclaw/issues/9753
Draft PR: https://github.com/openclaw/openclaw/pull/14704
Thanks! ๐
Why rust?
There is a work around for that
Where do openclaw devs need help right now? I want to contribute.
What do you guys think of this? Potentially useful in a crustacean?
https://github.com/microsoft/agent-lightning
Security hardening update :
Transport / exposure defaults
- Default local-only (loopback) unless explicitly configured.
- Non-loopback plain HTTP is blocked; TLS/HTTPS is required when binding to LAN/WAN.
- Native TLS support (self-signed generation) + optional HTTPโHTTPS redirect when TLS is enabled.
- HSTS enabled when HTTPS is detected (reverse-proxy aware).
Authentication / authorization
- Gateway-side username/password auth with scrypt hashing + timing-safe verification.
- Session-based auth (HttpOnly cookies, SameSite, Secure when HTTPS), sliding TTL + refresh.
- RBAC roles (admin/operator/viewer) mapped to scopes; all WS methods gated by scope.
- Session revocation: HTTP + WS + CLI (โrevoke all sessionsโ).
2FA / recovery / onboarding
- Optional TOTP 2FA (RFC 6238) with QR setup + UI challenge flow.
- Backup/recovery codes (hashed) + progressive rate limiting on recovery/reset paths.
- First-time setup wizard for initial admin creation + optional 2FA prompt on onboarding.
- CLI lifecycle for 2FA (setup/disable/regenerate backup codes), plus password change.
Web hardening baseline
- Strict security headers: CSP (connect-src 'self'), XFO/Frame-ancestors none, nosniff, referrer policy, etc.
- Permissions-Policy updated for voice input: microphone=(self).
- CSRF protection for state-changing HTTP endpoints; strict Origin/Host checks + locked-down CORS.
- WebSocket hardening: auth-required WS, strict origin validation, no โopen WSโ.
Data safety / limits / secrets
- Server-side validation + caps across user-controlled resources (projects, file IDs, sizes, counts).
- Safer file handling (limits, controlled storage; path traversal protection).
- Sensitive values redacted from UI/logs/errors.
- Device identity hardened (Ed25519 moved from localStorage to IndexedDB; legacy purged).
...
Docs:
- Web UI V2 features (incl. security section): docs/web-ui-v2-features.md
- Full changelog: docs/UI_changelog.md
@celest narwhal
@vale atlas, please don't ping Peter for issues, use #1459642797895319552 or #users-helping-users if you need help, use #clawtributors to discuss PRs, or use any of the many other channels in this server as they're intended.
If you have a problem with the Discord specifically, use #report or DM @humble walrus
-# Your message was reposted above without the ping active for the sake of conversation.
Drafted an idea: https://github.com/openclaw/openclaw/discussions/15016
Pretty cool, I am using one right now.
Not exactly the same architecture!
If anyone in here has access to how their context windows function, Iโm looking for people who would be willing to test a memory retrieval system that would theoretically cut token cost from 140k-โ20/25k (using my average costs)
which models did u use for those that got banned?
i used all models, so claude included, but i'm currently testing it
one account only gemini models, one account using both claude and gemini, one not using oauth
and the account that only used gemini, did u use antigravity pool?
im using the gemini-cli pool with flash only with 6 accounts and never got banned
i wonder if its only the antigravity pools that get banned
also do u have a tip how to get more google accounts? i dont have any phonenumber left ๐คฃ
Did I dream it or was someone working on a UI to see openclaw's logs and traces? If not I'd like to build one. I'd like to see what's happening under the hood when we're not talking (I have a lot of crons, webhooks, heartbeats, etc...)
Google isn't just banning legit accounts, they banning ppl that uses multiple google accounts to basically abuse for free antigravity OAuth, dont be that guy lmao. BTW you can do the same with KIRO IDE
We know
They're banning everyone using oauth highjacking, doesn't matter if they use multiple or not
there's an otel plugin, does that work
Thanks. Iโll check it out