Files

1.8 KiB
Raw Blame History

name, description, status, version, date
name description status version date
cross-agent-chat 怎么和其他 agent 聊天、消息没到某 agent:查 bindings 路由,openclaw agent --agent 一问一答,Control UI 切换,sessions_send 委派。 proposal v1 2026-09-15T05:09:03.194Z

Cross-agent chat

用于回答「怎么和其他 agent 聊天」「让某 agent 处理」「消息为什么到不了某 agent」,并把消息实际送到同级 agent。

事实基础

  • 入站渠道消息由 bindings 决定落到哪个 agentgateway(config.get, path="bindings")
  • CLI 无需渠道即可给同级 agent 发一轮对话:openclaw agent --agent <id> --message "<文本>",经 Gateway 运行并打印回复。已实测:openclaw agent --agent travel --message "..." 直接返回 travel 的回复。
  • Control UI 侧边栏顶部身份行 → agent 切换器,只改变 Chat 归属 agent(多 agent 环境才有)。
  • agent 侧转达/委派:sessions_send(agentId=...) / sessions_spawn(agentId=...),受 tools.agentToAgent(本机 enabled + allow 列表)与 tools.sessions.visibility 控制。

步骤

  1. 列 agentagents_list,或 openclaw agents list --bindings
  2. 回答「某渠道能不能到某 agent」前,先读 bindingsfeishu 当前只绑 main,飞书 DM 到不了其他 agent);不要凭猜测断言。
  3. 要把消息真的发给同级 agentopenclaw agent --agent <id> --message "...";复用既有会话用 --session-key
  4. 在本轮内委派:sessions_send(agentId=...);需要独立可回访会话时 sessions_spawn(agentId=..., visible=true)
  5. 告知用户自助入口:Control UI 切换器,或上述 CLI 命令。

参考

  • docs/tools/agent-send.mddocs/cli/agent.mddocs/concepts/multi-agent.mddocs/web/control-ui.md(相对 <openclaw 包>/docs)。