秀秀3.0 与龙虾/OpenClaw 消息处理链路说明

生成时间:2026-07-24 00:40 | 范围:影子团队演示服务器及当前秀秀3.0代码链路

本报告按三类拆分:秀秀模块、龙虾模块、秀秀和龙虾连接模块。重点解释 XIUXIU_BOT.json、role_prompt、消息从发起到回复的完整路径。

一、核心结论

当前系统可以完成秀秀账号到龙虾 Agent 的绑定调用。 用户在群内 @ Bot 后,秀秀会识别目标 Bot,创建后台任务,然后调用该 Bot 对应的龙虾/OpenClaw Agent 生成回复。

当前不足: 每个 Bot 的个性化职责主要存放在数据库字段 role_promptworkspace/IDENTITY.md,而 SOUL.md 仍偏 OpenClaw 默认模板,没有稳定写入每个 Bot 的专属人格。这不影响短期调用,但不符合"每个 Bot 原生人格文件完整独立"的最佳标准。

应修正方向: 以后创建/更新 Bot 时,应同步固化 SOUL.mdUSER.mdAGENTS.mdMEMORY.md,并保持 XIUXIU_BOT.json、数据库 role_prompt、OpenClaw workspace 三处一致。

二、两个关键概念

XIUXIU_BOT.json 是什么

XIUXIU_BOT.json 是秀秀侧生成的"Bot 绑定档案"。它不是人格正文,而是记录这个秀秀 Bot 应该绑定到哪个龙虾 Agent、使用哪个工作区、属于哪个服务器。

{
  "schema": "xiuxiu3.openclaw.binding.v1",
  "server_id": "company-c-shadow-demo",
  "bot_id": "bot_company_c_shadow_demo_bot-auto-819b19f05d",
  "bot_name": "张三",
  "kind": "openclaw",
  "agent_id": "xiuxiu3-company-c-shadow-demo-...",
  "workspace": "/var/lib/xiuxiu3/openclaw-agents/.../workspace",
  "agent_dir": "/var/lib/xiuxiu3/openclaw-agents/.../agent",
  "role_prompt": "该 Bot 的职责/人设",
  "provision_status": "provisioned"
}

发挥作用时机: 创建/同步 Bot 时生成;后台管理查看绑定关系时读取;OpenClaw channel 同步时用它确认 workspace、agent_dir、agent_id。

role_prompt 是什么

role_prompt 是数据库 bots.role_prompt 字段,也是 XIUXIU3_ACTION 创建动作里最关键的人设字段。它决定 Bot 的职责边界、回复风格、@规则、配置规则、验收规则。

XIUXIU3_ACTION {
  "action": "configure_bot",
  "bot_name": "张三",
  "role_prompt": "会议主持人Bot,负责发起会议、@李四和王五发言...",
  "self_test": true,
  "substitute_name": "影子团队演示U1替身BOT"
}

发挥作用时机: 龙虾生成回复前,秀秀会把它拼到 prompt 的"平台授权"部分;创建 Bot 时写入数据库和 IDENTITY.md;同步绑定时写入 XIUXIU_BOT.json

三、三大模块划分

分类 涉及模块/文件 作用 当前状态
秀秀模块 chat_messagestask_eventsbotsgroup_members、前端群聊页面 接收真人消息、识别 @、保存消息、创建任务、展示 Bot 回复、维护群成员和 Bot 账号。 已承担消息入口和动作执行职责。
龙虾模块 /root/.openclaw/agents/<agent_id>/sessions/*.jsonl、OpenClaw Agent、模型配置 负责理解、分析、拆解、生成回复;session 存放对话运行记录。 已被调用生成回复。
连接模块 XIUXIU_BOT.jsonworkspace/IDENTITY.mdworkspace/SOUL.mdworkspace/USER.mdopenclaw.jsonXIUXIU3_ACTION 负责把秀秀 Bot 账号和龙虾 Agent 绑定起来;把 role_prompt、人设文件、公司资料、隐式上下文交给龙虾。 绑定可用,但 SOUL.md/USER.md 个性化不足。

四、完整消息处理链路

1. 真人在秀秀群发消息例如:@影子团队演示U1替身BOT 创建四个会议Bot。前端把内容、发送人、群组 ID、mention 信息提交给秀秀服务。
2. 秀秀服务写入消息消息进入 chat_messages,字段包括会话类型、会话 ID、发送人、正文、metadata。这个是聊天留痕和后续上下文来源。
3. 秀秀识别 @ 目标 Bot通过群成员和 Bot 表找到被 @ 的 Bot,例如替身、002、001、张三、李四。当前铁律是:执行类任务必须由行首真实 @ 触发。
4. 秀秀创建后台任务task_events 里生成一条任务,记录 target_bot_idsource_idconversation_id、原始 content、metadata。
5. process_bot_task 领取任务process_bot_task() 根据 target_bot_idbots 表,确认 Bot 存在且启用。
6. bot_reply 进入龙虾调用如果 Bot 类型是 openclaw,进入 openclaw_agent_reply(),准备用 OpenClaw Agent 生成回复。
7. 拼接隐式 prompt秀秀把 role_prompt、公司四大法、公司资料、账号上下文、最近聊天上下文、任务来源规则、@回报规则拼成后台 prompt。这些内容不显示在群里。
8. 调用龙虾 Agent执行类似:openclaw agent --agent <agent_id> --session-id xiuxiu3-<bot_id>-<group_id> -m <prompt> --local --json
9. 龙虾生成结果龙虾根据 prompt、session、workspace 生成可见回复;如果需要创建/配置 Bot,应输出隐藏动作协议 XIUXIU3_ACTION
10. 秀秀解析隐藏动作extract_xiuxiu3_actions() 把可见回复和 XIUXIU3_ACTION 分离,隐藏协议不直接展示给真人。
11. 动作执行权限检查execute_xiuxiu3_action() 检查动作是否由 001配置顾问发出。非 001 不允许直接创建/配置,避免替身或 002 越权。
12. 创建/更新 Bot001 的有效动作进入 create_bot()ensure_openclaw_agent(),写入 bots 表,创建绑定目录,写入 XIUXIU_BOT.jsonIDENTITY.md
13. 同步 OpenClaw 绑定sync_openclaw_xiuxiu_channel_config() 把活跃 Bot 写入 OpenClaw channel 配置,包括 agentId、workspace、agentDir、accountId。
14. 入群和自测如果任务来自群聊,秀秀把新 Bot 加入 group_members,并触发三轮自测。当前已合并为完成后统一汇报,但报告里应包含三轮明细。
15. Bot 回复入库并显示可见回复写回 chat_messages,前端群聊显示。
16. 继续派发下一步dispatch_line_start_mentions_from_bot_reply() 解析回复里的行首 @,生成下一个 Bot 的任务。执行 Bot 最后一行 @替身时,替身收到验收任务。
17. 替身验收并继续替身通过自己的龙虾 Agent 验收上一步结果;通过后继续行首 @ 下一个执行 Bot,不通过则退回补做或向真人说明。

五、文件与功能模块清单

文件/表/函数 位置/名称 作用 在链路中何时使用
bots /var/lib/xiuxiu3/xiuxiu3.db 保存 Bot ID、显示名、server_id、kind、agent_id、role_prompt、启用/删除状态。 识别 @ 目标、创建任务、调用龙虾前读取人设。
role_prompt bots.role_promptXIUXIU3_ACTION.role_prompt Bot 的职责、人设、边界、流程规则核心字段。 创建 Bot 时写入;每次调用龙虾时拼入"平台授权"。
XIUXIU_BOT.json /var/lib/xiuxiu3/openclaw-agents/<server_id>/<bot_id>/XIUXIU_BOT.json 秀秀 Bot 和 OpenClaw Agent 的绑定档案。 创建/同步绑定时生成;后台查看与 OpenClaw channel 同步时使用。
IDENTITY.md .../<bot_id>/workspace/IDENTITY.md 当前主要写入 Bot 名称、服务器、Bot ID、Agent ID、职责。 OpenClaw set-identity 时使用;也是目前主要个性化文件。
SOUL.md .../<bot_id>/workspace/SOUL.md 龙虾原生人格文件,理应写入 Bot 核心身份、价值观、长期行为规则。 OpenClaw workspace 启动时应读取。当前存在但偏默认模板,需个性化。
USER.md .../<bot_id>/workspace/USER.md 记录服务对象、公司、群组、回报对象、偏好和约束。 OpenClaw workspace 启动时应读取。当前存在但偏默认模板,需个性化。
AGENTS.md .../<bot_id>/workspace/AGENTS.md 工作区启动规则、如何读记忆、如何使用工具、协同约束。 OpenClaw workspace 运行约束。应加入 @ 触发与回报铁律。
sessions/*.jsonl /root/.openclaw/agents/<agent_id>/sessions/ OpenClaw Agent 会话记录。 每次龙虾处理同一群同一 Bot 任务时续接。
openclaw.json OpenClaw 配置文件 记录 xiuxiu channel、accounts、bindings、agents list、workspace、agentDir、模型。 OpenClaw 接收秀秀插件/通道任务时识别账号和 Agent。
task_events xiuxiu3.db 后台任务队列,保存目标 Bot、来源、状态、结果、metadata。 @ 触发后生成;后台 worker 领取处理。
chat_messages xiuxiu3.db 保存所有可见聊天消息。 前端显示、上下文筛选、隐式历史传递。
group_members xiuxiu3.db 保存群成员,包括用户和 Bot。 限制当前群只能调用当前群内 Bot。
company_laws_context_text() standalone.py 读取公司四大法和公司资料,转成隐式上下文。 调用龙虾前拼入 prompt。
conversation_history_context_text() standalone.py 筛选最近相关聊天记录,隐式传给 Bot。 让后续 Bot 承接前面成果。
task_source_context_text() standalone.py 生成任务来源、回报对象、替身验收规则。 调用龙虾前拼入 prompt。
dispatch_line_start_mentions_from_bot_reply() standalone.py 解析 Bot 回复里的行首 @,继续生成下一步任务。 Bot 回复入库后执行。
execute_xiuxiu3_action() standalone.py 执行龙虾返回的隐藏动作协议,创建/配置 Bot。 龙虾回复后、消息展示前处理。

六、流程图

秀秀模块

真人发消息
  ↓
前端群聊页面提交消息
  ↓
chat_messages 写入消息
  ↓
识别真实 @ / 群成员 / Bot 账号
  ↓
task_events 创建后台任务
  ↓
process_bot_task 领取任务
  ↓
调用 bot_reply()

秀秀和龙虾连接模块

bot_reply()
  ↓
读取 bots.agent_id + bots.role_prompt
  ↓
读取公司四大法 / 公司资料
  ↓
筛选最近相关会话上下文
  ↓
生成任务来源与回报规则
  ↓
拼接后台隐式 prompt
  ↓
执行 openclaw agent --agent <agent_id> --session-id <bot_id+群>

龙虾模块

OpenClaw Agent 接收 prompt
  ↓
读取 session / workspace 能力
  ↓
根据 role_prompt + 公司资料 + 上下文思考
  ↓
生成可见回复
  ↓
必要时输出隐藏 XIUXIU3_ACTION
  ↓
返回秀秀服务器

回到秀秀模块

解析龙虾返回
  ↓
分离可见回复与 XIUXIU3_ACTION
  ↓
若有动作:检查是否 001 配置顾问发出
  ↓
创建/更新 Bot、写数据库、写绑定目录、拉入群、自测
  ↓
可见回复写入 chat_messages
  ↓
前端显示给真人
  ↓
解析行首 @ 继续派发下一位 Bot
  ↓
执行 Bot 末尾 @ 替身
  ↓
替身验收并继续下一步

七、当前存放方式是否合理

合理的部分: 每个 Bot 有独立 bot_id、独立 agent_id、独立绑定目录、独立 session;秀秀可以通过 agent_id 把任务送到对应龙虾 Agent。

不够标准的部分: 个性化资料没有完全落到 SOUL.mdUSER.mdAGENTS.md。目前更多依赖数据库 role_prompt 动态注入,长期看容易出现人格不稳定、mc 查看时不直观、OpenClaw 原生工作区记忆不完整的问题。

必须修正的标准: 后续所有新建 Bot,001 配置动作落地时必须同时写入完整人格文件;已有 Bot 需要补写,不应只保留默认模板。

八、建议的标准文件结构

/var/lib/xiuxiu3/openclaw-agents/company-c-shadow-demo/<bot_id>/
  XIUXIU_BOT.json              # 秀秀与龙虾绑定档案
  workspace/
    SOUL.md                    # 专属人格、职责边界、行为铁律
    USER.md                    # 服务对象、公司、群组、发起人、回报对象
    AGENTS.md                  # 启动规则、@触发、协同和验收规则
    IDENTITY.md                # 账号身份摘要
    MEMORY.md                  # 长期记忆摘要/公司资料索引
    TOOLS.md                   # 可用工具和限制
    HEARTBEAT.md               # 定时任务或留空
  agent/
    openclaw.json              # 如使用独立 agentDir,可放专属配置

/root/.openclaw/agents/<agent_id>/
  sessions/
    xiuxiu3-<bot_id>-<group_id>.jsonl