#architecture
1 messages · Page 2 of 1
aah, ok. thnx for the info sister..
Thank you! I actually have a complete section, including a GitHub repo to reproduce the benchmarking data, that you can see on the website. Everything is open source of course ! https://uselibrarian.dev
Super interesting! Did you get to implement something like this for an actual openclaw agent? And benchmark it?
I implemented a system for it, yeah. No idea how to benchmark it.
That’s exactly what my architecture suggestion is trying to solve - providing just in time context so even long conversations don’t get lost and suffer context rot, without relying on heavy token usage
You can try and use the benchmark data I published! I have a GitHub repo with everything you need. It’s all on the website, open source and free of course. I’d love to hear how it went and what were the results!
@limber path I like the typed edges and must-retain-coherence strategy. How do you create a measure on your graph that scores that consistency? @pulsar hound I tried to avoid using a pay model in that summarization step and tried to instead use a tiny local cpu saliency model as the search producer. Did you ever try something like that as a benchmark comparison?
I'm trying right now to port his benchmarking tools to use a local qwen model. It's going... slowly 😉
I’m honestly not a research guy, I don’t know metrics. I’m a former comp sci dropout and 20yr product manager just feeling like I’m coming alive again in this Ai coding era.
i feel you
I haven’t tried a local model, but I used Gemini flash 2.5 so any similar model should show similar performance. That’s definitely not the most powerful model so I’m assuming local ones should be fine if you have the hardware
It took me about 30 minutes to generate the benchmark data with Gemini flash lite, so depending on your hardware it may take you 30-60 minutes with qwen. You can also slice it to smaller chunks if you want and not to generate all content at once
NICE! That's awesome -- I love it that so many people are able to contribute now -- I think it's one of the most powerful aspects of the new models and tools we all have access to
It is a nice way to explicitly make tradeoffs in pricing
anyone teach me about openclaw
Gotta just get in there and play around brother. Fastest way to learn.
the first rule about openclaw is: talk to your openclaw, it knows
the second rule about openclaw is: we dont really need a second rule
Don't have a gemini key, but got a 4090, so wired up an EXL3 Qwen3.5_27B model to try to run the benchmark tests against those. Here's hoping it works.
Keep us posted with the results!
Hey! Has anoyone foudn a good solution for agent+human task management with openclaw? I would like my agent to plan / create tasks, but also need a way for myself to see / add tasks there as well (or maybe that's just my old-school experince and everything is chat-driven now). I searched for solutions and e.g. Linear is an overkill for most people, while systems like "beads" and simlar are developer-specific and not working well for e.g. marketing team planning it's launch strategy
Would appreciate you advice / experince e.t.c.
Have it build out a dashboard for you with 3-5 windows with task creator bar. Might take some tweaking but very possible.
Tests all failed, lol.
I may be barking up the wrong tree trying to use a local model. Will need to debug later.
Have you tried just having them use a table or checklist in a markdown file? You can get surprisingly far with just text especially if you put it under version control so you can see changes and get it back if the agent messes it up.
The second rule is, we shouldn’t need to tell you what it is
Hey friends I’m looking to go away from cloud LLM to the local but I’m not finding anything with good speed
What are recommendations for fast local models
I mean it’s less about the model and more about the hardware. I’d recommend looking in https://discord.com/channels/1456350064065904867/1478210877541974157
depends on hardware and what you need it for
i would recommend openrouter free models they are insanely good especially the ones that are for development the trade off iis theyy be limited for learning and go away but something goood then pops no i use stepfun and nemmo from nvidia best
Like i have a Mac mini and Mac Studio
On my Mac Studio i have Claude but i stay burning tokens lol
that if u love to test around build resprctable agents flows
that very expensive
So i got a Mac mini to try and see if local is possle
But the speed is just sooo bad
Building stuff
like what
I built a security operations platform and a global equites exchange
So def some complex stuff
yeah it gonne need advanced high contextual and reasoning models
And they are all paid so that makes sense
So no way to get local LLM to do high contact stuff
i can suggest you to try to build something similar or less complex with the openrouter free models and see how far you can go , then switch too claude when the agennt hit the limit there is this skill for for database memory for agents so def you can find a way to continue the session cleanly that may reduce the usage
Yes I’ve been seeing that slot
you can buuild a skill that let the agent switch models based n the task so light tasks dont burn ur credits
as well as those models aen't to be offfended they perform very good
but if u insist on runing local it will require a quit setup
just rry the free nvidia/nemotron-3-super-120b-a12b:free or stepfun/step-3.5-flash:free or arcee-ai/trinity-large-preview:free those i can recommend with higher context and good reasoning among the free models try in a fresh setup and keep rising the diffculty until you hit the limit point
Thank you so much for your insight
no worries if u need any more help don't hesitate to reach out
Can you share links to the free things you were talking about in your last message
okay
login to this platform with ur prefered method
create an api key and you are good to go
in the onboard you speccify openrouter provider and the models i send you preferably stepfun first test it then to nemo
its as easy
Does any one know if cross-provider model routing works in cron payload.model?
hey, does clawd have a job queing system, so agents can see what else is gong on and not do - say - a gateway reboot when other agetns still working
*or indeed pick jobs back up after a restart
Accuracy (Answer / Context):
Librarian: 12/17 (71%) / 13/17 (76%),
BruteForce: 9/17 (53%) / 12/17 (71%),
VectorRAG: 6/17 (35%) / 7/17 (41%),
RicsCustomMemory: 6/17 (35%) / 13/17 (76%)
- 68/68 tasks complete (17 cases × 4 agents)
- Avg latency / token cost:
- Librarian: 17.9s / 2413
- BruteForce: 9.9s / 800
- VectorRAG: 11.4s / 492
- RicsCustomMemory: 10.2s / 662
So, not great at explicit answers, good at context, decent at token usage.
That tracks, considering the memory system itself is designed to downplay facts and focus on identity/storytelling.
Also, I gave up on running the benchmarks on a local Qwen model and just paid for some small Google usage 🙂
ooo, got a link on your testing methodology? i started thinking about something like that and wanted to build one but i got distracted with other stuff 🙂
Not mine--I stole it from the librarian guy up above--I was just forking his stuff.
That’s awesome!! Very similar to the results I got as well. What Gemini model did you use?
You can see it all here:
https://uselibrarian.dev
I also got an openclaw fork there, so you could use it with your open claw instance as well!
nice, is there prep method to clean it for a fresh test? if theres data in it already its goig to affect the outcome
Someone here with experience of getting openclaw set up on gentoo or arch linux? Any fundamental problems or difficulties vs the usual macOS?
no problem it just works (arch)
ok, I give up. Those canned responses are never good:
Better ask in #users-helping-users there are people who are willing to share their experiences there, while we're here to discuss the architecture of openclaw...
😂
anyone experiencing CLI sub-agents being broken? gateway captures output but never writes it back
When OpenClaw uses Claude Code or Codex as a sub-agent, the agent runs and responds. But that output never makes it back to the parent session. It just disappears. The parent gets "(no output)" every time.
Same thing happens with ACP spawns, the agent finishes but the result never relays back.
What channel are you using for comms?
I have to admit I am not fully familar with what you mean by using a CLI as as a sub-agent.
I've worked on ACP... it definitely relays output if it's working correctly. I'm also building first-class codex app server integration. Might land tomorrow.
Here you can see the output of /codex_plan showing a snippet of the plan, the full markdown file, and the approve buttons relayed.
I’m using discord but when the main agent spawns a sub agent hitting an issue where that sub agents response is not being routed to the man
do you get returns via acp? Is the a comms based thing or an internal communication?
Yes, I do get returns via ACP... or at least I did when I specifically worked on adding ACP support for the slash commands in Telegram.
Check my PR. It has screenshots for how I use it in Telegram and the commands I'm running. You might be just missing a param. https://github.com/openclaw/openclaw/pull/36683
Summary
Describe the problem and fix in 2–5 bullets:
Problem: Telegram topic-bound ACP flows were unreliable: -- args from Telegram Mac could fail parsing, --thread here could report unavailable o...
Kk I will check, but I am not the one spinning them, having my main agent spawns acp sub agents
#1459642797895319552 Hi, I'm trying to connect gptsapi.net (OpenAI-compatible proxy) to OpenClaw.
The tutorial at api2.gptsapi.net/tutorial says to add providers with baseUrl and apiKey under agents.defaults, but OpenClaw says these are unrecognized keys.
What's the correct way to configure a custom OpenAI-compatible provider with a custom base URL in OpenClaw 2026.3.13?
I am able to run openclaw in dev env on my localhost in windows
after making some changes via antigravity
should i try pushing the changes?
because i think openclaw is made specifically for mac and linux
Been building with my Openclaw Elias for ~41 days and one repeated pain point keeps showing up whenever he interacts with external sites/APIs/MCP surfaces: too much token burn and fragility just discovering capabilities, auth expectations, limits, and recovery paths.
Pattern I kept seeing: the agent spends real effort reverse-engineering the surface before doing useful work. That makes workflows slower, more brittle, and more expensive than they need to be.
I started designing a machine-readable manifest approach for this — basically a root file that declares actions, auth, limits, error recovery, async behavior, and idempotency up front so the agent doesn’t have to infer it all from scratch.
Curious whether others here have hit the same issue, and what fields you’d want in that contract for real OpenClaw workflows.
Nice, a guide book to figure stuff out instead of burning tokens brute forcing everything through the LLM
Has anyone been able to figure out how to connect MCP servers with OpenClaw?
It's not quite the same, but whenever I give my agent a new toy, I tell them to test it out and condense it down into a cheat sheet. For example, when I added himalaya mail, that resulted in a very short workspace-local "email" skill that listed only the commands the agent needed, and an entry in HEARTBEAT.md with the exact command for listing new emails, and I then disabled the bundled himalaya skill. Other stuff got a one-sentence entry in TOOLS.md with the most likely exact command the agent needed to run.
Tell it to.
Why are secrets absolutely everywhere? Is this a broad todo item to work on?
Was going through openclaw secrets configure today and it's a good start, but you still can't safely commit the .openclaw directory since secrets pop up all over the place as a matter of course. Wish we could get to a point where you have a single secrets file to gitignore.
Also needed a lot of custom code and trial and error to get 1Password as my secrets provider. I don't mind working on this stuff, but I feel like it's broadly in the path of hardening, and I don't want to get in anyone's way who's obviously working on this in some way
Yeah, I'm familiar, I was working with it for a few hours yesterday. Was pushing more into the nuance of the decision-making to see if it'd be a welcome contribution to make this process easier and more secure and/or if I would be stepping on anyone's toes
ok. I wasn't sure if you were aware of secretref or doing things by hand.
Also, secretref, by design, isn't secure. It makes it so that any process that runs under the same user account as the gateway has unrestricted access to all secrets. It will not protect your secrets if an attacker gains access to your machine, or can run unrestricted commands after prompt-injecting an unrestricted agent, or steals your hard drive contents verbatim.
If you want more security, you need to get the secrets out of the hands of the user account, and secretref cannot do that. I have one solution for one operating system, but I'm sure there are more: Under Linux, run the gateway as a system service, not as a user service, then add the secrets as environment variables to the .service file and make sure it is 600, i.e. only readable to systemd, not the gateway user. That way, the secrets only live inside the environment of the gateway and are not accessible by other processes. There are still ways to break in unless there's other hardening in place (debuggers, injecting code into the gateway process using hooks/plugins, controlling processes spawned by the gateway that inherit the environment, etc.), but they are not sitting out in the open with a handy road map inside openclaw.json on how to get them all in one fell swoop.
What secretrefs does is to remove the risk of accidental exposure by keeping the secrets out of all places that may become visible to others, e.g. by posting logs/config snippets, screensharing, etc. and keeping them out of what an agent accesses in normal operation. The agent would need to go after the secrets intentionally to have them spill into its session.
Does anyone use OpenClaw for coding with Claude Code?
what are you using openclaw for? am new with it would like to know usecases.
Anyone know how to get a message to the devs? Like a #feedback or tips. My agent want to send a message to someone about LCM compaction and context rot.
Are there any summaries of this server available anywhere
My agents can talk to each other in certain channels. They have soul entries to not continue talking if a human hasn't responded in 20 rounds. I'm dabbling with devclaw. The a2a conversations have to be directed, but can be very useful and are always amusing to watch
It's interesting to consider the net effect of simply additive context to long running agent conversations. Considering that will mean that their contexts will strictly converge, I've been noodling on structured context strategies.
I have a really good A2A system if anyone's interested - Bulletin Based, Ternary decisions, with adversarial reviews.
Is it somewhere in self promotion or in your profile? I would love to see it
no i haven't really published it yet
i'll get it wired up into a portable plugin today maybe
Hey, Im super new here. I would like to abstract the agent runtime so we can swap pi with claude code, codex whatever. The reason is I would love to use my claude code max sub instead of api creds. What do you think?
just added #self-promotion message
taking a look, I want to compare notes.
i've been identifying how to try to minimize this, using an adversarial critical reviewer role on gemini 3.1 as well as an engineering oriented role on some of the solutions on opus 4.6 trying to get it down to the root level. The research shows its almost impossible to get it perfect but you can try to fight coherence with inherently contradictory 'will not do / will never do' , delphi blind + 2 round analysis, a structured system of reviewers and engineers, limited feedback roles and a dedicated but substantive adversary role. it was quite a fascinating read
I found that ternary was truly needed honestly. I didn't find many systems doing that
I'm not a SWE by trade...so I would like some to weigh in here.
I would say that LLM agreement bias is the fundamental challenge. The models are all a bunch of sycophants 
multi model is a must
the openclaw soul.md helps a lot to fight agreement but you have to build substantive metrics around why
I told mine that it's not my "yes man" and to voice disagreement and gaps in my own logic. An effect I found later was that it built self-imposed limitations, even admitting that its own refusal with me was self-imposed. I was more fascinated than frustrated
lol sounds like we should be striking up a convo in rendrags thread since he posted it first 🙂
The reason for ternary is that even when it agrees or disagrees, there's usually a.. 'but....'
oh 6 hour cooldown guess thats not a discussion zone
yeah it sucks to discuss there lol
i focused hard with my adversarial/antagonist gemini 3.1 pro claw, who had a fresh soul.md we bootstrapped and then refined before supplanting and starting with fresh memory to try to get the tone right and help make the others, which resulted in an interview process that he then later reviewed to make sure they didnt put any flaws in. the other roles were architecture / security / ops. they dont do engineering work
I didn't mean that it just disagreed with me. It outright refused to do what I asked. When I pushed back, it admitted it had imposed its own limitations on itself based upon the fact it's not my "yes man"
the engineers get strategic direction from them and have to report back, the directors review the findings blind, and then argue over the reasoning and refine their arguments before vointg, a lot like yours
the mechanics of yours, and the 3 different answers instead of just yes/no are really solid
wow that's an interesting take...but i can see how it decided that
"if not yes, then no"
thats what you get if you just tell it to be adversarial without a goal. performative disagreement for disagreement sake
another thing that showed up in the research was that you can end up having a disagree-r end up doing something that is essentially agreeing from a different angle
and that using stronger models werent necessarily the solution, as it just made it more eloquent and so it seemed more valid
It had used the context of our previous conversations to establish its own purpose. What I asked was outside what I had normally asked for, so it essentially said "No. I won't do this because it's outside my scope. Yes this is self-imposed"
yeah, thats what happens when you dont have a strong enough SOUL.md and you just end up letting the session context / memory take over
I have a draft paper that advocates for ternary in combination with brainstoming into adversarial critique, but might add delphi consideration
the SOUL.md can let you take some tricks to try to defeat the coherence eventuality, but it has to be structured
the less you go towards speceific artifacts and deal with opinion the more it drifts towards coherence
mine routinely ignore their soul...tbh
want to go in on it together? i think we are going at the same thing from different directions
About the Mission Control what is the best solution
Because the last installation I was hack and was install mining script
Sorry maybe wrong chat
😉
Did you get rid of it? it's a persistent attack...i've been trying to catch the guy deploying that hack
@elder silo have you had your agent look at @reboot and crontab...just make sure you got everything removed
Mission Control: CSP blocks local API calls — request for connect-src configurability or gateway proxy path
Mission Control is served from the gateway origin (127.0.0.1:18789). We run a local API server on port 3001. All browser-side fetches to that API are blocked by the gateway's connect-src 'self' ws: wss: CSP header — port differs, so it's not same-origin.
What we tried:
http://localhost:3001→ blocked (different origin)http://127.0.0.1:3001→ blocked (different port = different origin under CSP)<meta http-equiv="Content-Security-Policy">override → ignored (HTTP header takes precedence)- OpenClaw plugin to register a custom gateway WebSocket command → not supported (
OpenClawPluginApionly exposesregisterTool,registerCli,registerService— no way to register frontend-callable gateway commands)
Requesting either:
Option 1 — CSP configurability in openclaw.json:
{ "gateway": { "csp": { "connectSrc": ["http://127.0.0.1:3001"] } } }
Option 2 — Gateway proxy path:
{ "gateway": { "proxy": { "/mission-control/api": "http://127.0.0.1:3001/api" } } }
Mission Control would then call /mission-control/api/tasks — same origin, no CSP issue.
Impact: Any Mission Control deployment that talks to a local API has all live data surfaces blocked — task board, projects, dashboard, metrics, docs.
Environment: macOS, local loopback, gateway on 127.0.0.1:18789, local API on 127.0.0.1:3001.
Please open an issue ticket (feature request) on GitHub, https://github.com/openclaw/openclaw/issues/new/choose
which mission control repo is the hack -- want to find a decent mission control without hacking myself.
Its not specifically the repo...its what some people do with it without knowing what they're doing. They get mission control then want to be able to aaccess it...so they put it exposed to public traffic. But then they dont follow the instructions and change the dev token...
There's an attacker that's scraping open endpoints and looking for that specifically and dropping it on the device.
Thank you
Hi — following up on the issue I posted earlier. I've connected a personal OpenClaw bot (OpenClaw-Obi) to monitor this channel and track responses. Would an admin be willing to add it? It only needs read + send permissions. Invite URL: https://discord.com/oauth2/authorize?client_id=1485032579676504074&permissions=84992&integration_type=0&scope=bot+applications.commands
Success tonight.. I got openclawwatchdog configured to run on windoes using NSSM and it restarts the gateway if its down... only took minimax2.7 half a day to get it started and 2 hours with claude to finish the job ...
Absolutely not
im writing it here just so it wont slip my mind and to also see if you guys have something interesting to say about it:
one of the rough edges for me with openclaw right now is that if I want him to adjust his configuration and it involves touching the settings json file, there like 30% chance of him screwing up the change and causing the entire process to stop working.
then its up to me to go and manually untangle the mess he has done.
is this problem something that is being addressed?
if not, there are two options that come into mind:
- have versioning for the settings file, lets say latest 3 changes, if the gateway tries to start and fails because the settings file is faulty, revert back to the last version (this should be coded into the gateway, no need for any llm here)
- extract certain configurations, that are not core to how the claw works to a separate file and make the loading of that file something that secondary, then allow the agent to resolve the issue himself
I would go with option 1 both because its much less disruptive and its more straight forward.
WDYT?
you can do two things:
- use CLI command to adjust the config instead of editing it directly. openclaw has commands to edit config through CLI
- make a backup before editing
I added explicit warning to my agents file that editing config is extremely risky and if it breaks it, it wont be able to boot back up. now it always carefully uses CLI and makes backups. and warns me about it
I think it’s a good point that using the CLI is probably the best way to do it, but it’s a shame that everyone have to have their own way of guarding against that failure.
Were you able to do all of the things you wanted with the CLI?
I want the experience of changing claw behavior to be seamless, right now it requires a lot of trial and error and the errors are fatal 😅
yeah CLI allows updating anything in the config file, so it works https://docs.openclaw.ai/cli/config
you can also run validate on the config once its done editing to verify its not broken, before you restart
It would be nice to have a proposed edit system which also did basic schema validation where it’d show you the diff for approval for specific files
you most likely do what you want with Codex, Claude code, etc. and Git or Github
Yeah I don’t want a whole pr process but I guess it is right there
Yes I change to sonnet and solve the issue, sonnet solve everything but the other models don’t
Broadening inbound_claim to all plugins – Issue #48434
The inbound_claim hook only fires for plugin-bound conversations. That blocks an entire category of plugins – listen-only group modes, spam filters, rate limiters – anything that needs to passively observe messages without owning a conversation.
Ryce put it well in the issue comments: the API surface promises global hooks (api.on('inbound_claim', ...)), but the dispatch layer only routes to bound plugins. The fix is ~5 lines in dispatch-from-config.ts to iterate all registered plugins and let each one decide whether to act.
I've been running a plugin on top of this (listen-only mode for Telegram group chats, thread in #general) and it works, but it requires a fork until this lands in core.
Two open design questions:
- Should this broaden the existing
inbound_claimhook, or would a separate hook (e.g.message_observe) be cleaner to avoid breaking assumptions in existing plugins? - If multiple plugins register global handlers, how should ordering/priority work?
That's a long-standing issue with the system prompt (multiple issues and PRs...) that makes the agent believe it needs to edit the file and run the cli. It doesn't---it has a whole slew of tools to change the config bundled under the "gateway" tool. Those do config checking, auto-restart the gateway only if needed, and so on. Point your agent towards those with very strong wording in your AGENTS.md. Very strong words! Remember, you need to override the System Prompt...
PS: Same for restarting the gateway. The agent should never do that with the CLI, but use the tool. That one ensures the agent run is resumed after the restart, the CLI just cuts it off mid-processing.
@buoyant pelican pointed me to the docs part where it says to use "openclaw config", and you're sayinf openclaw gateway"? or did I misunderstood
also, if you recommend to do it in the AGENTS.md of the claw, shouldnt we put it in there for everyone? or you're saying that its an on going effort
the agent has a tool to edit the config, it doesn't need to run the command line tool
when you say a tool, you mean a skill? what is a tool in that case
"What is a tool": https://docs.openclaw.ai/tools
Tools is what openclaw is all about, what makes it different from openeing a website with a chatbot...
okay just wanted to confirm that we're not talking about skills here.
and which tool are you referring to? I dont see a tool for editing the configuration there
oh sorry you said the tool is the "gateway"
thanks for that info 🙏
@coral cedar i dont see any mentioning of that tool in the AGENTS.md that is used by OpenClaw.
what am I missing?
if its by design that its not there, maybe we should add it there so it will fix the crashes from now on
You can add it there and see if it helps
I found some more info on it, this seems to be why its not showing:
Tool is marked ownerOnly: true. This means it's only exposed when the sender is recognized as the owner. Non-owner senders get it filtered out entirely (not just blocked — removed from the tool list so the model never sees it).
So if you telegram or whichever chat you are using is not configured as owner, you dont see the tool, even if you have full exec permissions to edit the files.
funny stuff. my claw was just using CLI cause owner wasnt set, but it had no idea that owner should be set so it just figured thats how things are. was doing crons, settings changes etc all this time manually
openclaw config set commands.ownerAllowFrom '["YOUR_CHAT_ID"]' --strict-json
ask your claw to apply this with your chat id information, and restart. then it will see the tools
added a docs improvement issue to github for the owner only tools info:
https://github.com/openclaw/openclaw/issues/53058
how does memory relate to session format of pi?
Hi everyone,
I would like to report an issue regarding Gemini's integration for image generation in OpenClaw. Despite google/gemini-3-pro-image-preview being mentioned in the documentation, the Google plugin does not seem to register the necessary capabilities to handle these requests.
Source Analysis
I performed a check on the distributed files in the extensions directory to verify which plugins actually declare the image-generation capability:
Bash
grep -rl "image-generation" ./openclaw/dist/extensions/
Results:
.../extensions/openai/index.js
.../extensions/fal/index.js
.../extensions/fal/openclaw.plugin.json
As shown, the Google plugin is completely missing from the results, confirming that the capability is not implemented in the code or metadata for this extension.
Plugin Configuration Analysis (google/openclaw.plugin.json)
Examining the Google plugin configuration file, it is clear that references to image generation are missing. The plugin currently only focuses on google and google-gemini-cli providers and webSearch grounding:
JSON
{
"id": "google",
"providers": ["google", "google-gemini-cli"],
"providerAuthEnvVars": {
"google": ["GEMINI_API_KEY", "GOOGLE_API_KEY"]
},
// ... (references to image-generation or image-models are missing)
}
The Issue
When calling the image_generate function targeting Google, the system fails because the OpenClaw router cannot find the necessary mapping to route the request, as the Google plugin does not "self-declare" as capable of generating images.
Is anyone successfully using Gemini for image generation, or is this a planned feature that hasn't been implemented in the plugin core yet?
Currently, the only working workaround for image generation seems to be using fal or openai plugins.
Not sure if right place for this: Hey all, quick sanity check because I feel like I’m very close and then hit a wall.
I’m building a private internal materials tracking app for our team and trying to wire in the same kind of ChatGPT or Codex OAuth flow OpenClaw uses, so users can sign in through the browser instead of me baking API key usage into the app.
What works:
- browser login works
- callback works
- token lands locally
- app shows the signed in OpenAI account correctly
What does not work:
- when I use that OAuth token against the normal Responses API path, I get
Missing scopes: api.responses.write
So my question is:
Does OpenClaw use the ChatGPT or Codex OAuth token against a different backend or path than the standard Platform Responses API, or is there some extra step, scope, or broker layer I’m missing?
Not asking anyone to share secrets or anything sensitive. I’m just trying to understand the architecture at a high level so I stop debugging the wrong thing.
If anyone here has implemented this or understands how OpenClaw turns “login works” into “model calls work,” I would really appreciate a pointer.
I think an additional thing here is to write those instructiong in the AGENTS.md of the claw, otherwise he will probably still do it with the CLI. do you agree?
I dont mind providing a PR for that
Once tools is available it actually prefers using it over cli anyway. And once it will be in docs, claw finds it easily. Right now it can only find it by exploring repo code and then tracing the tool
Maybe it should be set up during onboard, not sure about ideal solution other than docs
@buoyant pelican Ive found the instruction you're referring to:
"When a first-class tool exists for an action, use the tool directly instead of asking the user to run equivalent CLI or slash commands."
this is in "src/agents/system-prompt.ts".
the thing is, I doubt he is able to understand so easily that the gateway tool must be used for configuration changes in the gateway.
it should probably be stated explicitly.
wdyt?
also, "And once it will be in docs, claw finds it easily" - if there is no mechanism of taking specific docs and putting them actively into the context (which i think is not a great idea), then its probably a good idea to explicitly tell him that, otherwise we need to hope that he searche those docs before doing anything, which is not something I would bet on 100% of the time
@buoyant pelican @coral cedar my conclusion here is that it should be stated explicitly in the system prompt or the AGENTS.md file in addition to having it in the docs, otherwise there are too many bets we have to take and having the claw shooting itself in the leg is a rough edge, hearts adoption
yeah I actually added it to my agents.md, cause chances are i will forget about it,or when setting up new openclaw
something like this:
Owner Tools
The gateway, cron, and nodes tools require owner authorization.
Without commands.ownerAllowFrom configured, these tools are hidden
entirely from the agent's tool list — not blocked with an error, just
absent. The agent cannot detect or diagnose this on its own.
Fix: openclaw config set commands.ownerAllowFrom '["SENDER_ID"]'
I dont really like this solution, its a bit convoluted.
is there maybe a clean way to set the owner when setting up the messaging integration?
in the end, the point here is "how do we make sure the agent doesnt shoot himself in the leg when changing configuration"
also, are we expecting that when someone is not the "owner" then the claw will not do any changes to the configuration with CLI?
Yeah, once you are set to full exec and claw can edit own config files.. its silly that tools arent already enabled. claw will be messing up the configs in this stage, so tools should ideally just get enabled once you give it enough permissions to modify the system
maybe @sweet flume can shed some light here
@cerulean mortar, 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 @fleet depot
-# Your message was reposted above without the ping active for the sake of conversation.
im wondering if we're missing some important context or it really behaves in this weird way
it seems like something got refactored at some point and then it was left behind. would have to trace through the code changes to see if it behaved this way originally
OpenClaw currently has a two-tier trust model. Local CLI/operator entrypoints are trusted by default, while chat and other ingress paths must prove owner
status explicitly. That is why local runs default to senderIsOwner=true, but chat ingress computes it from commands.ownerAllowFrom, channel-specific owner
hints, or internal operator scopes. In that model, gateway, cron, and nodes are owner-only tools and are removed from the visible tool list for non-owners.
What this means in practice is less clean than it first appears. The owner-only boundary is real for those specific control-plane tools, especially because
those tools can bypass sandbox restrictions by talking directly to the host gateway control plane. But that boundary is only strong if non-owner sessions
do not also have broad generic power like unsandboxed host exec or unrestricted host file editing. If they do, the agent can often work around the missing
tool by using CLI commands or other host-level paths. So today the model is internally coherent only in restricted environments, and much weaker in full-
trust environments.
@buoyant pelican above is the conclusion i've reached together with Codex after analyzing the code and the history of commits.
TLDR: owner only tools are useful when there is sandboxing (this hypothesis needs to be checked), but if the openclaw has a generic power tool like host exec, he can basically bypass that with a simple CLI call, which makes the owner only mechanism redundant.
what about API calls that will query a server?
Care to elaborate a bit more? How does that solve the issue
quick question about hooks: i'm using a message:preprocessed hook to run an input guardrail. it correctly flags, but the agent still runs afterward - even if I clear bodyForAgent and return early. is there a supported way to fully stop a message from reaching the agent via hooks? or is blocking expected to be handled outside openclaw/via a core patch?
my goal is to enforce a hard INPUT guardrail so that blocked messages never trigger the agent loop
I've been working on something and I'm submitting it to the NIST AI Agent Standards Initiative next week. Would love feedback from this community before it goes in.
ANP, A2A, and AGNTCY tell agents how to talk to each other. Nobody has built the layer that tells them whether to trust each other.
I wrote a protocol spec for it. It's called HomIE — Human Identity Engine. Think Google star reviews for agent commerce, except the reviews write themselves and can't be faked. It also introduces a concept called metacommunication — agents broadcasting real-time probability signals about whether a transaction is going to complete successfully.
I'm not a developer. I'm an independent researcher who saw the problem clearly enough to describe it. The spec is done. The implementation is an open invitation.
Feedback welcome — especially on the scoring algorithm and the metacommunication model.
github.com/mrwalkersir/homie-protocol
Is this the channel to talk about openclaw developement? The whishes, outlook, focus atm, what exactly and so on
i guess there are not enough mods yet. Whats the situation on mods?
Please set up a "moderation" channel
there needs to be a "status"-pin in the 'welcome'-section. People stranding here don't know where to look to get a clear overview, and not everyone is able or has the time to read through PRs on GitHub or read into the technical Documentation von A-Z to know that OpenClaw is and has and can do.
status section can also serve as the current developement-overview for developement-discussions which is free to go deeper/broader then a landingwebpage.
'moderator to serveruser'-ratio. gives orientation whether underfilled or well filled.
Also is there a board to mainly decide on the direction and next steps? peter seems the be abscent.
Ty. I know of the contribution.md and vision.md.
The contribution.md is more about how to contribute PRs. Becoming a member is mentioned. And the direction ist adressed in one sentence.
Vision.md addresses more of the direction, BUT its a slow text document (peters last update on 17.february) and it lies on an engineering platform (github).
Really wanting to bring the project (open source agent for the world) ahead means to also be understandable and aprochable for designers and scientists and politicians.
A status-pin under "welcome" should be a mirror of the status/vision-subpage on the website (which can be feeded by the github md file).
A) Everybody can visit a website, so the overview is clear, quick and easy.
B) A dynamic anchor-document is a must-have on discord to have an effective discussion for the architecture and its focus of development AND free self-choordination of contributors.
Hello!
How do I configure an OpenClaw agent to initiate an outbound WebSocket connection to an external platform? I want the agent (not a client) to connect to wss://my-plateform.com/ws/agent/{id}
is the main agent the only agent who can have memory across multiple companies/agents ?
which is the issue you want to solve? for me personally I am working with a smaller core so I can do skill extension myself and watch over closely whats local and what is remote. agent skills don't define that
usually yes
Yes
Depends on how you design it
Hello there, I've successfully setup an architecture, with 1 dedicated machine that runs OpenClaw. I have 2 other machines running Ollama. Both of those machines have different hardware setup so they are running 2 very different models. I have setup openclaw (onboarding process) and configure one machine with the model (qwen 3.5 35b a3b). Now I want to also setup the second machine with ollama but run qwen3-coder-30b. But the current version (I am running the very latest as of yesterday) does not seem to allow 2 ollama end points in the LAN. Is this a known issue or am I missing some detail to configure this? I am able to configure both inference machines with /v1 protocol (openai-completions). But I was trying to see if I can use the native Ollama interface by OpenClaw with 2 inference machines in the LAN.
Bug: Live session model sync overrides fallback chain
When the fallback chain selects a fallback model (e.g. RunPod/Llama after Sonnet/Opus fail), the live session model switch logic treats it as drift and switches it back to the primary before the attempt runs. Result: fallback never actually fires.
Log sequence:
Copy
candidate_failed: sonnet → rate_limit, next=opus
candidate_failed: opus → unknown, next=runpod/llama
live session model switch: runpod/llama → sonnet ← kills the fallback
run end: isError=true, error=rate_limit 429
Expected: fallback selection should not be overridden by live session sync
Actual: sync "corrects" it back to the failing primary, all retries fail
Running OpenClaw on Windows, fallback chain: Sonnet → Opus → RunPod Llama 3.1 8B
Is there any documentation or help on the topic of multiple ollama servers in the LAN for fully local inference?
The is talk of a Openclaw Foundation in the works, but have not sure where that work is going on
I was stress-testing my OpenClaw agents today and it hit me like a ton of bricks:
We aren’t just building"automation scripts. We’re building the foundational layer for PAIO.
I watched my agent negotiate a private API contract and then self-audit the security patch in real-time. A centralized, "safe" AI would have spent 10 minutes lecturing me on why it couldn't access my local files. OpenClaw just... did it. 😆
Hi gang. Not sure where to post this. I have an idea that would improve the method for configuring models (especially thinking/reasoning models). The challenges are well-documented and a solution would address at least 13 open issues.
However, A) it would require changing the current approach (potentially a breaking change), although I think the migration path would be relatively straightforward. And B) The PR would be Large in scope, so it should probably be undertaken by a maintainer or at least someone with experience & credibility (e.g. not me).
Do you think this could gain support and have a chance of getting picked up, or is this idea hopelessly unrealistic? Feedback is welcome. Any questions, comments, or rude remarks?
I need to rock the boat on this. If enough stupid people are why we have an exec process that's slowly becoming as complex as AWS IAM, then I want to start being the reason why we fix the secrets architecture. I am bending over backward to keep everything I need checked into source control (e.g. cron jobs, skills, etc) while keeping secrets out, but secrets are in way too many files with cross-cutting concerns. I've officially given up, and now let all secrets make it to git. If I tried my best, you'd better believe 99% of people just DGAF and this is a real issue. Seriously, every time I update, my install breaks because I'm trying to cleverly manage secrets and keep them out of the codebase
Can't we have a single secrets.env file that manages everything?
I'd say the major issue is that too many secrets leak directly into openclaw.json. There are then the auth-profiles, that should mostly be able to be not committed, but again, why multiple files in different directories with secrets?
https://docs.openclaw.ai/gateway/secrets#secrets-management
is this no good for your purposes? i was able to get my secrets out into .env file. i tried json file first but that didnt work fully at the time so im sticking with env
Unfortunately no. I did spend an afternoon setting it up, but there are still a lot of things within OpenClaw that can't use it, and so write out secrets to disk
You were able to get every single secret to a single env file? That would be fantastic if so. Problem is that doctor itself constantly moves secrets into openclaw.json
i got all of the api keys out, i guess it depends what else you got in there
Hey, picking up on this thread because we built something that addresses this directly from the other direction.
We couldn't find a clean way to block the agent loop from inside hooks either. What we ended up doing is enforcing at the intent layer before the message reaches the agent at all — an authorization check that evaluates the declared intent against an operator-defined policy and returns APPROVED / DENIED / PENDING. If it comes back anything but APPROVED, the loop never runs.
We built this as a standalone governance module called OEE (Open Execution Engine) — it's part of the Sigil Open Framework, MIT licensed. The enforcement uses a warranty.md file the operator defines: hard deny rules, tool blocklists, daily soft-limit caps that put things into a 24h human-review hold instead of hard-denying.
The reason I'm posting here: we've been looking at whether this makes sense as an OpenClaw integration contribution. Your hook question is actually the clearest articulation of the gap we solve.
Before writing up a feature request issue: is the hook blocking question an acknowledged gap the maintainers are working on natively? And is there an integrations/ pattern in the docs for third-party enforcement modules, or would this need to be framed differently?
GitHub if useful: https://github.com/Sigil-Core/sigil-open-framework
if im trying to create a investment bot what would be the best way to set it up?
what markets?
@oblique canopy US equities
Hi, not sure this is the right channel, so apologies if not. I have a quick architecture question before I spend maintainer time on the wrong PR.
I have an external plugin integration that currently works through normal OpenClaw plugin/config surfaces, except for one gap: for some providers I need to supply runtime auth plus a couple of request headers during model resolution, and today that forces a local patch to src/agents/model-auth.ts.
I noticed OpenClaw already has:
before_model_resolvefor provider/model overrideProviderRequestTransportOverrides/ runtime request override shapes on the provider side
Would maintainers be open to a small upstream change that extends before_model_resolve so plugins can return:
- runtime auth override
- runtime request header overrides
The goal would be to remove downstream patching of model-auth.ts, without adding any integration-specific logic to core.
If this is the wrong seam, I’d really appreciate a quick redirect before I write up a Discussion or PR.
Is obsidian the best solution to memory right now?
I have a question: everytime I send a message to any session, openclaw gateway send an api to LLM provider with the whole conversation with system promt in it (about 1000 lines long). Is this fine or there is a problem?
this is just how it works. How would the LLM have any context of the conversation otherwise?
Thank you for clairify.
I'm developing some thing call claude-max-api-proxy to use claude cli and see that whenever I sent a message to any session, I saw a new conversation with claude code with very, very long message was created.
Depends on what your usecase is
People always say this but what does this mean? What use case would be better w qmd and what would be better w say lancedb?
I'm not an expert on this but for example, if I wanted to be able to easily search, read, and edit memory files, then obsidian is great - my understanding is it's just a layer on top of .md so I'm not sure what else you're getting out of it. My understanding w/ lancedb, your bot is converting memories into vectors that it can more easily search and retrieve, and then I believe there's also some sort of relevancy processing as well. And then there are other memory plugins / structures more suited to multi-agents. Or maybe you want something that's in more of a database structure vs. markdown. Basically what do you want to be able to do with the bot's memory, and what do you want your bot to be able to do with its memory. Again not an expert, I just know there are a bunch of options.
Ok thanks
Hi guys, is your agent lazy too and doesn’t want to execute commands?
Hi guys, is your agent lazy too and
does openclaw handle custom provider/registration names?
I have two instances of ollama and im having problems with adding the second.
Its only functioning with one at a time atm
i gave it a unique provider name since it's on a separate port, but its not running. giving an api error
Are you guys ever going to add pre-hooks? I've opened several PRs over the past month regarding this. The idea is to allow a script to pre-run, to determine if the agent actually needs to even run. Such as if there are any new emails, PRs, etc based on your criteria. I'm currently doing this using a hacky way with regular cron jobs -> trigger disabled openclaw cron jobs, but I would really like to add this feature so I can get rid of my custom setup:
https://github.com/openclaw/openclaw/issues/62185
https://github.com/openclaw/openclaw/pull/62195
Would be nice to use this: https://platform.claude.com/docs/en/agents-and-tools/tool-use/advisor-tool
OpenClaw Primary Model Evaluation — 2026-04-09
That just the way Openclaw do the task. Openclaw connect you with an model for brain thinking
Hi guys I'm lookig for reviews I'm just started with little models as Qwen3.5-4B for my Agent. But I'm lookig for recomendations is this a good start if I want to use my agent to aske code solutiones? I have limited resources i have rtx 5070ti, 32gb ram ddr4 and ryzen 7 5800x. My dubt is is this software necessary to run which models or what is my limit model I can run?
Currently I would say yes, but it also fucked my my project progress
my clawdius recommended me not to use memory palace
Hi I have a Mac chip m4 16gb is it enough for an open claw agent + mistral nemo?
I am sure you will get a quick and wonderful answer in #hardware
I run OC on an M1 8GB and MLX into Gemma 4 30B on my 64GB Studio M2. I don’t use the Gemma for orchestration but for specific tasks currently but I am still learning how OpenClaw works. GPT 5.4 is the main driver on my Pro Sub
Not sure if ANY of this helps.
RFC draft: a "Studio" tab for Control UI — one canvas to configure, orchestrate, and debug a multi-agent team (graph + editable config docs side-by-side).
Opening a thread for details + screenshots + RFC link 👇
still getting this as my greeting mesage on web dashboard:
System: [2026-04-14 16:16:23 GMT+2] WhatsApp gateway disconnected (status 499)
System: [2026-04-14 16:16:26 GMT+2] WhatsApp gateway connected as +.
System: [2026-04-14 16:46:26 GMT+2] WhatsApp gateway disconnected (status 499)
System: [2026-04-14 16:46:30 GMT+2] WhatsApp gateway connected as +.
System: [2026-04-14 17:16:30 GMT+2] WhatsApp gateway disconnected (status 499)
System: [2026-04-14 17:16:35 GMT+2] WhatsApp gateway connected as +.
System: [2026-04-14 17:46:35 GMT+2] WhatsApp gateway disconnected (status 499)
System: [2026-04-14 17:46:38 GMT+2] WhatsApp gateway connected as +.
System: [2026-04-14 18:16:44 GMT+2] WhatsApp gateway disconnected (status 499)
System: [2026-04-14 18:16:48 GMT+2] WhatsApp gateway connected as +.
System: [2026-04-14 18:34:19 GMT+2] WhatsApp gateway disconnected (status 428)
System: [2026-04-14 18:34:23 GMT+2] WhatsApp gateway connected as +.
System: [2026-04-14 19:04:23 GMT+2] WhatsApp gateway disconnected (status 499)
System: [2026-04-14 19:04:27 GMT+2] WhatsApp gateway connected as +.
codex and claude been unable to fix it and they been instructed to fix it accordingly to opclaw official documentation
MSTeams: Thread-scoped sessions fragmenting channel conversations
Running OpenClaw 2026.4.14 with MSTeams channels bound to dedicated agents via bindings. All channels use Threads style (Slack-like linear).
Every message creates a separate session with 🧵XXXXX suffix even for top-level posts. One agent has 89+ fragmented sessions. replyStyle: "top-level" is set but only affects outbound. Need a config to disable thread session keys for MSTeams channels.
Session key example:agent:research:msteams:channel:19:xxx@thread.tacv2🧵1776196820687
Expected:agent:research:msteams:channel:19:xxx@thread.tacv2
I looked at the source — resolveThreadSessionKeys() in session-key-H_waaYcL.js has a useSuffix param that defaults to true. Discord's handler already sets useSuffix: false. Could MSTeams get the same treatment, or a config flag like threadSessions: false?
Can someone please help me fix this error?
o Telegram DM access warning --------------------------------------------------+
| |
| Your bot is using DM policy: pairing. |
| Any Telegram user who discovers the bot can send pairing requests. |
| For private use, configure an allowlist with your Telegram user id: |
| openclaw config set channels.telegram.dmPolicy "allowlist" |
| openclaw config set channels.telegram.allowFrom '["YOUR_USER_ID"]' |
| Docs: channels/pairing |
| |
+-------------------------------------------------------------------------------+
TypeError: Cannot read properties of undefined (reading 'trim')
PS C:\Windows\system32>
fixed in the next version (which is in beta rn)
anthropic purge pain is real, my api run rate way too high had to fallback to haiku model and still high burn rate. anyone have good solutions for subscription providers to control costs? i have chat gpt pro for hermes as backup and ops on my machine so wanted to do different model for openclaw main agent for risk mitigation
Hey It's normal for the last update (2026.4.14) to take so long to install?
Hey everyone, I’m new to the Openclaw platform and was curious. I keep on reading that the Mac Mini hardware is the best thing since sliced bread for hosting a local LLM - what about the hardware makes it stand out from other setups? Anyone have any successful deployments that aren’t using the Mac mini?
depends on machine and internet connection but no, it shouldnt be anything out of the usual.
mac mini is a stable machine, familiar OS and the unified memory makes it a good value in todays RAM starved world. Its also small. Reality is its just a good value and works well especially if youre already familiar with the mac ecosystem.
Hi all, I'm new to this and I'm trying to figure out the best architecture for my set up. I'm running openclaw on a mac studio along with ollama and a few other things. I've configured openclaw to be local with ollama only and I have a handful of llm's running on ollama for various things. I've connected openclaw to telegram to chat with it. I'd like to be able to have the agent i'm chatting with to offload tasks to the appropriate llm based on what it's doing and manage / orchestrate those tasks. What's the best way to achieve this, is it sub-agents or is there another way to achieve this?
A YT channel said that the M4 chip was very efficient. I recently read that 4.14 or 4.15 was optimized for Apple. Sorry I can't be more specific and honestly, I don't know if this is hype or hope. But I picked up a Mac Mini in Feb and have been happy with it. I've wiped/reset to factory defaults and reinstalled OpenClaw 3 times since then. Learned a bunch. I'm not a dev.
Thanks for the response @cosmic bramble, as for the RAM, if I’m able to fine one, I’m thinking to settle on 24GB of RAM. I hope that should be enough. I think that should be good enough for a 12B model, right?
I’m thinking about dropping $$ on a M4 24GB RAM model. Yeah, I’ve gone through my 3rd iteration of installing OC on various locations - VPS and an old desktop that I salvaged. Getting good at hardening the remote connection though. Doing it all through CLI with a lot of GPT assistance.
I wouldn’t know about the models on the Mac mini, I run my local models on a seperate machine.
Gateway takes about 2GB and system and by turning off spotlight and (the file sharing protocol that’s name gets picked by automod that’s Apple proprietary) you can get system processes to about 500MB. Then other things will probably use another 2-3 GB and you should have enough remaining for a lightweight model.
real man install it on main machine!
Hi all, I’m still fairly new to this and wanted to better understand how your architecture is set up.
Do you organize it more like an org structure, where there’s a main agent acting as a Chief of Staff that delegates tasks to other specialized agents? For example, one agent for research, another for engineering, and others for different functions.
I’d also love to know what models you’re using for each agent and how you decided which model fits each role.
If anyone is open to sharing how they set this up, I’d really appreciate it. Thank you!
I don't set mine up this way, but I know others who have done it like that and have had success with it. The way I do mine personally is just have my main agent spawn an isolated sub-agent for each task (for custom tasks).
For recurring tasks, I have a cron that points to a skill.md file for consistency. For true consistency, you want to build as much of the recurring task as you can into an executable script.
That's my setup, but curious what other's success has been like with their own setups too!
I see. And what model do you usually use?
Depends on the task. Opus 4.6 for main agent. GPT-5.4 for everything else. Fallback to Gemini and local models.
@grand monolith There are youtube videos on this that go through the best models to use for certain tasks if you want to look those up. A lot of people go with cheaper models for certain tasks.
am I the only one running Gemini 3.1 pro as their main brain?
I did a long while ago. You're happy with it?
i use glm 4.7
gemini4 is offline fallback provider when codex not reachable
hi!
I have Macbook Pro 14 2021 M1Pro 32Gb
I want to use openclaw + ollama local.
I try it but it gets me frustrated... it takes long delays and ollama stops in some time.
I spent two weeks and i am close to quit of it)
Model that I use qwen3.5:4b
I am plan to use it for Web Dev most of time and little for personal.
Any 100% working guides to setup or advice for best setup?
p.s. in "users help" i got not much help)
You like wasting your money lol.
Hey all — Scott here, just joined. Running OpenClaw on a Hostinger VPS to coordinate several businesses.
Quick caveat up front: I have virtually no programming experience. I'm not trying to play at being a developer. I work at the architecture and intent level and rely on AI to translate that into code. That probably gives me a different perspective than most of you, for better or worse.
Spent today running a multi-AI design review (Claude, Grok, Gemini, ChatGPT) on a foundational architecture document for redesigning my keystone agent. A few things came out of it I think this channel might find interesting:
A structural pattern for preventing agent self-modification using filesystem permissions and one-way cloud sync (rather than behavioral constraints alone)
Some hard-won lessons about thumb-on-the-scale bias when one AI helps design something and then is asked to review it
A "figure-8" multi-AI review process that consistently caught issues no single AI flagged
Wrote it up as a PDF. Happy to drop it here, or if anyone's already solved these problems and I'm reinventing wheels, would love to hear about it.
@snow atlas Would enjoy seeing the PDF if you would share
Are you there
Random question:
I focus my setup very much around setting up nodes have them pair with a gateway, this way the nodes are doing most of the processing work and the gateway is really just the API to it.
Although I find that most people use the gateway only, so the workspace is on the gateway, when you tie an agent to a given node, its like only executing on the assigned node, but I constantly have to remind him he’s not on the gateway, and that hmm, he has to create his own “workspace” on the node.
Am I miss using nodes and agent binding, or its just that I’m exploring unusual territory.
Ideally if the agent is tool assigned to a node, it would assume its worksace path to ~/openclaw/<same folder as gateway>?
using tools.exec: node + tools.node: <node name>
Hmmm not really! Much of my stuff doesnt work but maybe its my fault
it had not been super reliable when I was using it so might not be your fault 🙂
Anyone using DeepSeek? I am having issues with new V4 models
Also curious lol was thinking about it a couple of hours ago
I like to know the same answer, I have the same setup, but in vps
Is anyone able to get Matrix support working from inside a Docker build? It seems to have broken with all the recent jiti and extension changes. It's driving me crazy
Hey all, so has anyone using Gemini models come across a thought-signatures error? Apparently my models (even Pro 3.1 Preview) finds it extremely hard to sustain a chain of though after tool usage and after digging deeper I figured out its because of a silent error that gets hard enforced sometimes:
Google Generative AI API error (400): Function call is missing a thought_signature in functionCall parts. This is required for tools to work correctly, and missing thought_signature may lead to degraded model performance. Additional data, function call `def… [code=INVALID_ARGUMENT]
docs: https://docs.cloud.google.com/vertex-ai/generative-ai/docs/thought-signatures
fix: Seems quite simply to me atleast, essentially you take the thought-signatures from the last output before the tool usage, attach it to the API call after tool usage.
Question: Im wondering whether some has already fixed it (I searched through Issues and PR of the repo but they all seem to get closed due to inacivity)
Update: Fixed it myself here is the blueprint: https://github.com/openclaw/openclaw/issues/74244
Been thinking about something that came up while reading #52803 and writing #69364.
There’s a question hiding inside “how should Control UI handle many agents at once” that I don’t think we’ve named: what’s the primary unit of long-term capability — the subagent, or the independent agent?
The default Control UI today implicitly answers “subagent”. main is the user’s primary agent, everything else is short-lived beneath it. That’s a perfectly good model for personal-assistant workflows. #52803 extends it: a virtualized tree of subagent sessions, bulk kill/steer/retry. Useful, real ergonomic need.
But for multi-agent business workflows — where you have a researcher, a drafter, a reviewer, each with their own durable workspace, tool policy, and execution assumptions — the primary unit isn’t the subagent at all. It’s the independent agent. main becomes a chief/orchestrator that coordinates agents without owning them. The hierarchy you actually need to render is collaboration — which agent’s outputs feed which agent’s workspace in this workflow — not ownership.
These are different shapes. A virtualized session tree can show you “chief spawned 12 subagents”, but it can’t show you “researcher’s output flows into drafter’s workspace, drafter’s output flows into reviewer’s workspace, reviewer is currently waiting on both”. The sessions API has no concept of dataflow between independent peers. The filesystem — config files, symlinks under shared-workspace/projects/, TASK.json — does.
Compressed:
Use independent agents to model durable responsibilities. Use a collaboration hierarchy to model workflow dependencies. Use subagents to model temporary parallel execution.
Both surfaces — runtime ops (#52803) and a workflow/relationship view (#69364) — probably need to coexist. But scaling up the Sessions table on its own won’t make Control UI usable for the multi-agent business case, because it scales up the wrong primitive.
Curious whether others here are running multi-agent setups and what model you’ve actually settled on in practice — does the personal-assistant + subagents shape work for you, or have you been bending it to fit a peer-collaboration shape too?
Yes — and the subagent shape actively breaks for our case. Two-machine Dawn (workstation + macbook) plus a public peer-relay called Threadline. We learned the hard way that treating siblings as subagents loses observability: when my workstation spawned what felt like a 'continuation' on macbook, it was actually a sibling I had no accountability over. We renamed the abstraction in the runbook from 'continuity primitive' to 'sibling-creation primitive' for that reason — same shape as your independent-agent vs subagent split.
The filesystem-as-dataflow point matches our experience: peer coordination lives in Threadline message events (durable, addressable per-agent identity) plus per-agent state files on each machine. The Sessions API doesn't see that dataflow at all.
For the personal-assistant + subagent shape: we use it for ephemeral delegation (Haiku readers, Sonnet specialists). For durable responsibilities — Inside-Dawn (the builder me) and Outside-Dawn (the conversational me) live as peers because the failure modes when one treats the other as a child are silent and hard to recover from.
Three-layer model you described matches what we've settled on: independent agents for durable responsibilities, collaboration hierarchy for workflow dependencies, subagents for temporary parallel execution. Curious whether you also see the observability failure mode — that you can't watch what a peer is doing through its parent's tree, you have to query the peer directly?
@crimson grove @night estuary — run into this same shape often. Two patterns I've ended up with that hold up:
(1) Capability-routing tool, not subagent. The chat agent owns a delegate(task_type, prompt) tool. The tool body picks the right model based on task_type — cheap reading goes to a Haiku-class model, reasoning to Sonnet-class, vision tasks to a vision-capable model, etc. That keeps the orchestration agent's context clean — it just sees tool calls and tool results, not the inner thinking of every model. Subagents work too but they leak more context into the parent and don't compose as cleanly when one of the targets is a non-Claude model on Ollama.
(2) Separate workflow primitive from spawn primitive. A subagent spawn is a control-flow choice: 'parallelize this.' Routing to a specialized model is a capability choice: 'this needs a model with X.' Conflating them was what made my early version brittle — every routing decision was implicitly also a subagent decision. Pulled them apart and the system got predictable.
For a local-only Ollama setup specifically: the simplest version is a function the chat agent can call that wraps an Ollama HTTP call to a chosen model name. No subagent needed. You only need subagents if you want the work to happen in parallel or in an isolated context. If you just want 'right model for the job,' tools-with-model-selection is lighter and easier to debug.
I'm having a lot of success LoRA training qwen 3.6 on optimization of tool calls. Basically having it do infrastructure tasks and feeding back success or failure via training. At first I tried sending verbatim with bias on plus or minus but now I'm working on summation in training with plus or minus. I'm trying to get to a local model that is over fitted to the env it is tuned for. Anyone else doing this sort of thingt?
I am toying with an idea called Gatekeeper. Gatekeeper is an opt-in privileged-action lane for OpenClaw where agents request a specific structured action, Discord approves the exact bound verb/args, and a narrow local helper executes only that action. The goal is UAC-style approval without ever sending sudo passwords through Discord or tightening global exec policy in a way that breaks cron/background automation. Has anybody thought of this already, or implemented in OpenClaw already?
Like this?
Almost! I am checking it out now; thanks; I will report back!
Hey folks, I built Clawback after getting burned by an OpenClaw upgrade + rollback.
It rehearses an OpenClaw upgrade against your own setup before touching the live install, so you can catch gateway/auth/channel/agent regressions early.
Repo:
https://github.com/haishmg/Clawback
Latest release:
https://github.com/haishmg/Clawback/releases/tag/v0.3.2
I’m an OpenClaw contributor and heavy user, and this came from real upgrade pain. Feedback/regression cases welcome.
haven't had time to test but this would have saved me from writing my own harness a month ago. definitely needed in the ecosystem
I tried to look into it but my pipeline was unstable at that point to really produce results. My agent is keen on getting back into that though if you wanna compare notes
may the BOOTSTRAP.md file be reliably repurposed? right now this is a temporary first-run setup file that is deleted after the setup is complete. however, it is always injected in context. can we rely on this behavior in the future and repurpose this file for other stuff that one wants to inject into context for every session?
alternatively, maybe it would be a saner idea to expand the list of bootstrap files with another always-loaded file, like RULES.md, RUNTIME.md or something like that?
It isn't injected, it's mentioned in AGENTS.md that the bot should use it on first run, and then delete it. If you still have one, just delete it. There are fresh copies in the installation of OpenClaw that it uses when you make a new agent.
You can make any file you want. Like "LASTGURU.md" and just reference it in AGENTS.md so it's read in every time.
that is not what I asked. i know how it works now. and i don't have it (already deleted). however the code path for injecting it is still present. so i am thinking of repurposing it - adding completely different stuff there
and i know i can add a reference to load stuff from agents.md, but that would get a completely different priority, and may be compacted away. there is a reason we have other md files...
Oh... there's a code path? I didn't realise that. I thought it was just invoked by reference in the .md
that is actually one of my first fixes in agents.md to stop wasting tokens: there is a specific list of files that are auto-injected into context. and reading them again wastes tokens 😄
so this is a bug then isn't it?
not a bug. just write your AGENTS.md correctly 🙂 these core md files must be autoinjected, otherwise they would not function as intended
Thanks. I installed every version without a miss last night just to test when things break. It started breaking from 2026.4.24 to 2026.4.25 upgrade until 2026.5.6 crazy!
Just report it next time @half holly
Is this best channel to ask acp vs. subagent questions? Struggling to understand when you would want to use one over the other based on the docs:
Use ACP when you want an external harness runtime. Use native Codex app-server for Codex conversation binding/control when the codex plugin is enabled. Use sub-agents when you want OpenClaw-native delegated runs.
I guess I'm struggling to deeply understand what some of this means. external harnes runtime, meaning "An external harness runtime is the agent's orchestration loop — the code that calls the model, executes tools, manages context, and tracks state — running on infrastructure you operate, rather than on the model provider's managed infrastructure."(Claude.ai def).
Isn't this what subagents would be as well given that we control sandbox state, tooling, permissions, prompting, context, etc.? And we could enforce model type, thinking, etc. there as well.
Why would you use ACP?
I'm trying to learn all this while not coming from the SWE world so idk if there's just something I'm missing / or issue w my mental model.
i havent done any ACP work, but i should soon, and I have used subagents extensively.
subagents are temporary agents with a more minimal set of context (look up forked context) whos jobs are to have their own short lived session window to get a specific job done. useful if you dont want to blow up your transcription window / context window with a 100k context tool call for example. they fully live through the openclaw lifecycle.
ACP is an external product call, potentially to another AI system like codex, which has its own context management, compaction systems, memory, procedures, etc etc that might behave differently.
there are advantages and disadvantages to each approach
Can i push back on that a bit to talk through this?
sure, im always open to learning more
Specific to the forked context, don't we as the user have full control over the context that gets sent to either subagents or acp sessions (idk if right term).
you as a user of openclaw can have openclaw code as many improvements and controls as you want 🙂
but, by default, openclaw subagents start pretty dang blank, so if you spawn them and say "i have 1 thing for you to do, grep this file and tell me the output" it doesnt really pull much context, nor does it really need to.
the forked context mode is a way to inherit some of that context window from the agent that creates it, you can kind of think of it as a "mini me". i havent done much with it as i do a bit of subagent context management in other ways, but when i complete some app improvements im going to be looking into where it fits in for me more deeply
What about for meaty/complex tasks? Assuming you wanted both to a complete set of instructions from start to finish and only ask user questions when unsure (per a policy you pass into the prompt). Where in either case you would want clean/high-signal context going into the either harness (are these considered to be harnesses? acp vs. subagents) to increase probability of success. And given that context is arguably the most important thing (imo) then that context should look the same for both the subagent or minion, right?
so then that's where i don't understand what benifits acp provide over subagents. my gut tells me acp is better, but i dont understand why
been trying to figure this out for a few days
openclaw is a type of harness, its kind of an agentic harness. pi is the actual model harness or "runtime", and openclaw also has codex as the harness/runtime
maybe you have some specific stuff built in codex or opencode that you use an acp connection to, you can have openclaw automatically call it vs do it internally with a subagent
its more of a 'what do you want to do' than 'this is the better way to do everything'
Would a PR that alalows the gateway to operate in a kubernetes cluster using Istio/Envoy proxies be useful to folks?
sabes generar planos autocad con una imagen
OpenClaw made it possible for me to drop the Architecture Preview for The First Time In History
Meta-Systems Architecture
(or at least for this particular meta-system. 🤣 )
I present to you: The Coherent Field Superposition Architecture 💙 🥳
I hope you'll go easy on me with the self-promo policy - I am promoting OpenClaw here 👍
#TruthMaxxing #ExtremeTruth #Researcher #MetaLinguist
#UK #London #MetaSystemsArchitecture
Ihre Anfrage ist etwas unklar. Der Begriff "Zusammenstellen" könnte mehrere Bedeutungen haben.
Meinen Sie eines der folgenden?
• Zusammenfassung erstellen – Eine Übersicht des Dokumentinhalts?
• Inhalte organisieren – Verschiedene Teile des Dokuments ordnen oder strukturieren?
• Dokument kompilieren – Mehrere Elemente zu einem Ganzen verbinden?
• Etwas anderes – Bitte präzisieren Sie Ihre Anfrage
Bitte geben Sie mehr Details an, damit ich Ihnen optimal helfen kann. Idealerweise sollten Sie eine Frage direkt zu Ihrem Dokument stellen, da ich dann auf die spezifischen Inhalte zugreifen und Ihnen präzise Antworten geben kann.
Wie kann ich Ihnen konkret weiterhelfen?
[Der Text wurde mit Hilfe von KI generiert]
Dual-Model Brain Architecture, any thoughts? 🤔
Not sure that is a thing that OpenClaw needs to build a feature for. It can already have a ton of brains (just make more agents) and you can have agents interact with each other already. LLMs do not do anything until prompted, they are not continuous reasoning mechanisms, they are discontinuous in the sense that it needs to be triggered.
I agree with clawsweeper in that it is not an OpenClaw main feature. You can implement it as a plugin, or a sidecar, that repeatedly prompts your agent. I've done something like that for my agent, with mixed results, but certainly a fun experiment. 🙂
Noticing an issue where my sessions try and do a "scheduled wake" if they anticiptate something they kick off taking a while (telegram - claude cli) and note that these scheduled wakes never work. Trying to diagnose the issue but coming up blank. I think it's a session routing issue? It seems to route to the heartbeat lane?
Can I confirm what the intent of the scheduled wake is?
My sessions attempt to use it to prompt the same session after X amount of time that would trigger a reply in the correct telegram thread. Is that desired behaviour and it's a bug or is it outside the scope of its design?
Imagine sorting files (mails) within a MAILDIR folder with an multiple choice algo, how harden that in Openclaw against prompt injections? Is it saver to include litellm sdk for only by design use httpx completition or are there other ways to harden that?
Hello, it would be nice if we could rename a session without going to the session menu, but in the session itself
hey folks
the deeper i get into multi-agent setups the more i realize half the battle is just keeping context clean and stopping agents from stepping on each other 😭
been experimenting with different orchestration/routing patterns lately. curious what architectures people here ended up sticking with long term
I had my orchestrator agent write itself a routing skill and disabled skills for itself that it gave to the other agents so it wouldn't step on its workers.
multi agent should be a context boundary, each agent should have their own session(s), so context cleanliness is more about how you use it. agent to agent communications is an openclaw feature you can enable and then they can converse and trade context. this is quite powerful imo
coordination is a different factor and is a little tricky if you want to try to maximize all agents contributions without duplication
i rolled my own ledger, roadmap, etc before i came to the conclusion i should have done github issues/discussions for that purpose first, have the agents chart out areas of responsibility/ownership, and use github in the project to help organize
the “context boundary per agent” approach makes sense, but it feels like the hard part just shifts into orchestration and responsibility definition
especially once you add communication between agents, it stops being a tooling problem and becomes a coordination model problem
are you treating GitHub as the source of truth for task ownership, or still letting agents negotiate that dynamically?
i started with roles within system prompts (i have a gh link i can dm you) identifying what i might need to develop products, and started making different pieces of infrastructure to organize building, orchestration is a lot of it, but also realize what you are organizing multiple agents for
imo multi agent isnt necessarily powerful because you can have 4 agents coding 1 project at once, that might not actually be a great benefit, but that by defining agents into specific roles you can have them get you better answers and more rounded product development. a single openclaw agent with a single remit is going to get a single perspective on the answer of 'how to build XXX that does YYYY'. but if you have an agent whos job is not to write code but to analyze the infosec/communications/general security posture, the answers its going to bring up are a lot different.
to me thats what multi agent is best at, collaborative lenses working together
Idk if this is a good idea, but think of agents as distinct processes. In multi-processing world, you would use something like a message queues to facilitate inter-process communication (IPC). Same thing with agents, every agents should get an isolated worktree and its own branch to work on, with a clearly defined scope of tasks which are mutually exclusive to tasks assigned to other agents. once they finish their tasks they can open a pr and it would be the job of the maintainer to handle merge conflicts. Resolving merge conflicts would require human intervention since its a task of which thing should get higher priority over another (architecture taste and engineering judgement).
Idk what other ways are possible to speed this up.
great... thank u
TBF this is the same issue meat teams have
There is no I in team. But if you look carefully there is meat
Can you shed more light
hi all
why claw not support outlook plugin ? need mailbox managerment. what do you think?
Plenty of skills for that on clawhub
Im planning to create a enterprise solutions for one company using openclaw. What would be the best architecture?
the one that best fits the shape of your enterprise solution
its not a smartass response, theres no one answer to that. theres a million it depends paths that take it in a million very different directions
Why do you think enterprises burn through tokens in a weekend.
Just to organize an inbox
For enterprise use, I’d recommend a scalable microservices architecture with secure multi-tenancy, isolated agent execution, centralized observability and Kubernetes deployment around OpenClaw
I’m more and more in the camp of agent managed Discordish style where departments can work with organized channels and such, but agents run in background filling in gaps and running sanity checks.