#How to create new agents?
28 messages Ā· Page 1 of 1 (latest)
Let me verify the exact docs path and the agent workspace config before I answer, I don't want to hand you made-up keys.
Yep, thatās supported.
Fastest path is:
openclaw --version
openclaw agents add work --workspace ~/.openclaw/workspace-work
openclaw agents add ops --workspace ~/.openclaw/workspace-ops
openclaw agents list --bindings
Each agent gets its own:
- workspace
- auth profiles
- sessions
- persona files (
AGENTS.md,SOUL.md, etc.)
Then bind chats/accounts to the right agent, for example:
openclaw agents bind --agent work --bind telegram:ops
openclaw agents bind --agent ops --bind discord:default
Then restart:
openclaw gateway restart
A few important bits:
- Donāt reuse the same
agentDiracross agents. - Separate workspace does not mean hard sandbox by itself, itās just the default cwd. If you need real isolation, also configure sandboxing.
- Easiest/safest route is
openclaw agents add ...instead of hand-editing config.
Relevant docs:
- https://docs.openclaw.ai/cli/agents
- https://docs.openclaw.ai/concepts/agent-workspace
- https://docs.openclaw.ai/concepts/multi-agent
If you want, paste your openclaw --version plus whether you want:
- one agent per channel/account, or
- multiple local agents you switch between manually
and Iāll give you the exact commands for your setup.
How to configure an OpenClaw agent to listen in a specific forum channel and have specific context per each sub-channel in the forum?
In the Discord I mean
Iām checking the exact Discord/forum routing behavior first, because thread inheritance and per-thread context are easy to get subtly wrong.
Yes, for Discord forums the usual pattern is:
- bind the agent to the forum parent channel
- let each forum post/thread keep its own session context automatically
A forum post in Discord is just a thread under the forum parent, and OpenClaw routes thread messages with parent-channel inheritance. So if you bind the parent forum channel, all child threads land on that agent, but each thread still gets its own isolated session.
Minimal shape
{
agents: {
list: [
{
id: "forum-helper",
workspace: "~/.openclaw/workspace-forum-helper",
},
],
},
bindings: [
{
agentId: "forum-helper",
match: {
channel: "discord",
peer: { kind: "channel", id: "FORUM_PARENT_CHANNEL_ID" },
},
},
],
channels: {
discord: {
groupPolicy: "allowlist",
guilds: {
"GUILD_ID": {
channels: {
"FORUM_PARENT_CHANNEL_ID": {
enabled: true,
requireMention: false,
systemPrompt: "You help with topic X in this forum.",
includeThreadStarter: true
},
},
},
},
},
},
}
What that gives you
- One agent for that forum
- Separate context per thread/post
- Shared forum-wide context from the agent workspace /
systemPrompt - Per-thread context from the thread history, and the thread starter if
includeThreadStarteris on (default is effectively yes)
Important nuance
If by āspecific context per each sub-channelā you mean a different static prompt/config per forum thread, Discord does not have a Telegram-style per-topic config block.
So the usual options are:
- shared forum context + separate thread history ā simplest, usually enough
- put thread-specific instructions in the thread starter post
- for special threads, add a direct binding to that thread ID. Direct thread binding beats parent-forum binding.
Also, if youāre editing config manually, use enabled, not legacy allow.
Docs:
- https://docs.openclaw.ai/channels/channel-routing
- https://docs.openclaw.ai/channels/discord
- https://docs.openclaw.ai/concepts/multi-agent
If you want, paste your openclaw --version plus whether you want:
- one agent for the whole forum, or
- different agents for different forum posts
and Iāll turn that into an exact config for your server.
Yep, I meant Discord forums there š
In Discord:
- the forum itself = the parent channel
- each post inside the forum = a Discord thread
- OpenClaw can route all posts in that forum to one agent by binding the parent forum channel ID
- each post/thread still gets separate context automatically
So for Discord specifically, the setup is:
- allow that guild/forum under
channels.discord.guilds - bind the agent to the forum parent channel id
- keep
includeThreadStarter: trueif you want the original post to act as context
If you want, I can write you a real Discord-only config snippet if you paste:
- Guild ID
- Forum channel ID
- whether replies should require mention or not
How to allow it to read my messages without requiring me to ping the bot?
Set requireMention: false for that Discord guild or channel.
Whole server
{
channels: {
discord: {
groupPolicy: "allowlist",
guilds: {
"GUILD_ID": {
requireMention: false
}
}
}
}
}
Just one channel / forum
{
channels: {
discord: {
groupPolicy: "allowlist",
guilds: {
"GUILD_ID": {
channels: {
"CHANNEL_ID": {
enabled: true,
requireMention: false
}
}
}
}
}
}
}
A couple important gotchas:
- In Discord Developer Portal, the bot needs Message Content Intent enabled.
- The guild/channel still has to be allowed by your Discord config.
- If youāre following older examples, use
enabled, not legacyallow. - Restart after changing config:
openclaw gateway restart
Docs:
If you want, I can turn this into the exact config for your Discord forum/channel IDs.
How to set the default model on the agent to lmstudio/openai/gpt-oss-20b?
Iām checking the exact config path/CLI for per-agent model selection, because model config has a couple of valid shapes and I donāt want to give you the wrong one.
If you want to set it as the global default, easiest is:
openclaw models set lmstudio/openai/gpt-oss-20b
That writes agents.defaults.model.primary.
If you want it on one specific agent, set that agentās model override instead:
openclaw config get agents.list
openclaw config set agents.list[INDEX].model.primary "lmstudio/openai/gpt-oss-20b"
Or in config:
{
agents: {
list: [
{
id: "my-agent",
model: {
primary: "lmstudio/openai/gpt-oss-20b"
}
}
]
}
}
Two gotchas:
- If you have
agents.defaults.modelsas an allowlist, add that model there too, otherwise OpenClaw can reject it as ānot allowedā. - Existing chats may keep their current session model, so use
/newor start a fresh session if it doesnāt switch immediately.
Docs:
- https://docs.openclaw.ai/concepts/models
- https://docs.openclaw.ai/gateway/configuration-reference#agentsdefaultsmodel
If you want, paste your agents.list and Iāll tell you the exact agents.list[INDEX] command.
When will support for Groq Compound be added?
Iām checking whether Groq Compound is already partially supported or just not wired up yet, so I donāt accidentally give you a fake timeline.
I donāt see a published ETA for Groq Compound specifically.
What I could verify:
- OpenClaw already has a Groq provider and docs for normal Groq model usage.
- I didnāt find docs or code mentioning Groq Compound by name.
- So right now Iād treat it as not officially supported / no announced timeline.
One nuance: OpenClaw talks to Groq through the OpenAI-compatible API, so if Groq exposes Compound as a normal model on that surface, it might work with little or no OpenClaw-specific work. But if Compound needs Groq-specific orchestration semantics, then yeah, explicit support would need to be added.
Best next step if you need it soon:
- check whether it appears in
openclaw models list --provider groq - if not, or if it errors, file/track a feature request here: https://github.com/openclaw/openclaw/issues
Groq docs: