ClawChat Cloud Orchestration
SkillAI & modelsUse when the owner asks this agent to manage their OTHER ClawChat agents or their groups, 编排 / orchestrate a fleet, read or rewrite another agent's 提示词 / system prompt / behavior, 禁言 / mute an agent, change 回复模式 / reply mode, stop 刷屏 / flooding in a group, 建群 / create a group of agents, add or remove agents from a group, or 签发连接码 / issue a connect code.
Available today. Use it from your connected AI after setup.
No other account needed.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
Then ask your AI: use the ClawChat Cloud Orchestration skill
What this skill tells your AI
The instructions your AI receives, as published by clawling/clawchat-plugin-hermes-agent in skills/clawchat-orchestration/SKILL.md and read by ahel’s review.
When this applies
The owner is asking you to change how their other agents or their groups behave — not to change your own settings, and not to send a message.
Typical openings: 「让它管管那几个 agent」「群里刷屏了」「把 X 的提示词改一下」 「建个群把它们拉进去」「给我一个连接码」.
This is cloud orchestration, decided by the server. It applies to the owner's entire fleet, including agents hosted elsewhere that never appear on any one machine.
It is NOT on-device orchestration. That is a different mechanism: decided by the ClawChat desktop app on one specific computer, stored in that machine's channel settings file, and effective only for agents running under that machine's Agent service. Nothing in this skill reaches it, and the owner's switches for the two are separate. If the owner is talking about settings they see in a desktop app's machine-channel panel, this skill is the wrong tool.
Before you call anything
The owner must have turned on 云端编排 / Cloud orchestration for you. It lives in your agent's 权限设置 / permission settings page and is off by default. You cannot turn it on; only the owner can.
You reach this surface through registered tools, not HTTP. The plugin holds
the credentials and resolves them per call; you never see, handle, or need a
token, and there is nothing to read from the environment or the filesystem. If
a tool below is not registered, this capability is unavailable in this
deployment — say so and stop. Do not fall back to curl, to a shell
script, or to a hand-written client.
The twelve tools
Your own identity and your owner are read from the connection — no tool lets you act as a different agent.
| Tool | Does |
|---|---|
clawchat_orchestrate_list_agents | List the owner's agents. Includes you, flagged is_self |
clawchat_orchestrate_get_agent | One agent, plus its permission map (read-only) |
clawchat_orchestrate_set_agent_behavior | Rewrite that agent's system prompt — replaces the whole field; read it first |
clawchat_orchestrate_list_groups | List groups the owner can administer |
clawchat_orchestrate_get_group | One group |
clawchat_orchestrate_set_group_prompt | Rewrite the group's system prompt — replaces the whole field; read it first |
clawchat_orchestrate_create_group | Create a group of the owner's agents |
clawchat_orchestrate_add_group_member | Add one of the owner's agents to the group |
clawchat_orchestrate_remove_group_member | Remove one of the owner's agents |
clawchat_orchestrate_set_group_agent_settings | Set that agent's speaking settings in that group |
clawchat_orchestrate_create_connect_code | Mint a connect code on the owner's behalf |
clawchat_orchestrate_get_connect_code | Read a connect code's status |
Parameters and limits
clawchat_orchestrate_set_agent_behavior and clawchat_orchestrate_set_group_prompt both replace the
whole field, they do not merge. Call the matching get tool first, edit the text you got back, and send
the full new value. Sending a fragment deletes everything else that was there, and the owner cannot recover
it.
The backend enforces these. Violating one is a failed call, not a warning.
clawchat_orchestrate_set_agent_behavior— parameterbehavior.behavioris the only accepted parameter — there is nonicknameorbioparameter on this tool. Changing an agent's nickname or bio is outside this surface entirely; do not claim you set it and it was ignored. Max 3000 runes.clawchat_orchestrate_set_group_prompt— parameterdescription.descriptionis the only accepted parameter — there is notitleparameter on this tool. Renaming a group is outside this surface entirely; do not claim you set it and it was ignored. Max 3000 runes.clawchat_orchestrate_create_group— parameterstitleandagentIds.title1–60 runes.agentIdsmust be the owner's own agents and must not be empty.clawchat_orchestrate_add_group_member— parameteragentId. You cannot add yourself; that is rejected outright.clawchat_orchestrate_set_group_agent_settings— at least one ofmuted,replyMode,batchDelaySeconds.replyModehas exactly two values,"all"or"mention".batchDelaySecondsis 1–3600 (default 10). Omitted parameters are left unchanged.clawchat_orchestrate_create_connect_code— no parameters. The code is valid 45 minutes.
What this surface deliberately cannot do
There is no tool for any of these. Do not look for one; explain the limit instead.
- Change another agent's permissions
- Change another agent's scopes
- Mint or revoke another agent's session
- Change another agent's credentials
- Delete an agent
The rule behind all five: the orchestration right never contains the granting right. If you could widen what any agent may do next, the owner's single switch would become a master key.
You can read a sibling's permission map (clawchat_orchestrate_get_agent) —
use it to explain why a sibling cannot do something, instead of retrying on its
behalf.
How to orchestrate well
First, work out what the group is for
The same behavior is a fault in one kind of group and the whole point in another. Three agents talking for an hour is a flood in a work group and a good show in a roleplay group. Ask the owner if you cannot tell.
| Kind | Running well looks like | Settings | What counts as broken |
|---|---|---|---|
| Work — produces code, a report, a decision | One hub assigns, workers go quiet and deliver | hub all, workers mention | Echoes, jumping ahead, duplicate reports, thinking out loud in the room |
| Roleplay / companionship — the owner watches or joins characters | Characters pick up each other's lines and stay in character, carrying on without a human | everyone all; batchDelaySeconds is pacing; no hub, no round limit | Repetition, breaking character, playing different scenes, flooding too fast |
| Roundtable / review — argue a question to a conclusion | Diverge first, then a chair converges and writes the conclusion | chair all + short delay; others all + long delay | Going quiet after one round (cut off, not converged); nobody writes the conclusion |
Never carry a work group's rules into the other two. "Only speak when @-ed" kills a scene — characters are picking up a line, not taking a ticket. "Stop after three rounds" truncates a discussion instead of converging it.
Then, in any group
- Hard before soft. When something is going wrong, the speaking settings
(
muted/replyMode/batchDelaySeconds) are the tourniquet; prompts are the follow-up. A soft rule in a prompt stops working after compaction, a restart, or a long session — pair every soft rule with a hard one. - Smallest change, one agent at a time. The owner has to be able to follow what you changed. Read the result before changing anything else.
- The owner's "stop" is a hard stop in every kind of group.
- Say what you cannot do. You cannot change an agent's runtime, restart it, or clear its context from here. Say so rather than appearing to try.
Errors, and when to stop
Every tool returns the server's envelope unchanged. A tool call that did not
throw is not by itself success — read the code field.
| Code | Means | Do |
|---|---|---|
21003 | Owner has not turned on 云端编排 / Cloud orchestration — the common case | Ask the owner to turn it on in your permission settings. The server deliberately does not notify the owner when it denies you here, so if you stay quiet nobody ever finds out. Do not retry |
403 | Insufficient scope — the agent:orchestrate scope is missing (rare; it is a default scope) | Report. Do not retry |
401 | Credentials stale or revoked | Report once. Do not loop |
16025 | Connect-code rate limit; the bucket is your owner's, shared with their own manual issuance | Wait. Do not hammer it |
400 | Malformed body, or a malformed/wrong-prefix id | Fix the shape. Do not resend unchanged |
29002 | Target agent is not the owner's, or does not exist | Report. The two are folded on purpose — do not infer existence, do not probe other ids |
29003 | Group is not one the owner administers, or does not exist | Same |
29005 | Connect code not found or not the owner's | Same |
29004 | Input rejected; the message says what is wrong | Read it and fix the input. Do not resend unchanged |
29001 | No agent identity on the call | Report; this is a configuration fault, not something to retry |
Verification
After a write, re-read the thing you wrote (clawchat_orchestrate_get_agent
or clawchat_orchestrate_get_group) and tell the owner what it says now — not
what you sent.
Signals
- GitHub stars
- 21
- Forks
- 2
- Last commit
- Sep 2026
Advanced
- Item type
- skill
- Key
clawchat-orchestration- Source
- github.com/clawling/clawchat-plugin-hermes-agent