knowledge-vault/discussions/technology/OpenClaw/初始化工作/拆解Agent1.md

1391 lines
61 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 1
关于Agent/用户的讨论。
目前系统有两个主要用户wantsong和shirleen。
我是wantsong。
我用系统主要有两个方面,写作和工作。
我看到`/root/.openclaw/agents/`下面有三个文件夹除了上述用户外还有个main。
这个main应该就是最初始的时候交流的账号或者agent。
系统应该没有用户的概念而是用Agent。切换也很容易用不同的链接
`https://openclaw.wantsong.cn/chat?session=agent%3Awantsong%3Amain`这个就是wantsong
`https://openclaw.wantsong.cn/chat?session=agent%3Ashirleen%3Amain`这个就切换到了shirleen。
那我的问题是现在系统用Agent来代替用户的概念。那么我能不能考虑把wantsong分成两个agent一个专门用于写作一个专门用于工作。
现在wantsong即要做写作又做工作其实这两部分内容是有一些差异的分开的话相对专业些。
如果我的理解是对的那么openclaw agent的概念实际上就是面向某个领域/方面的然后在这个方面再为它配套上tool 和 skill。
我的理解对么?
你的理解完全正确!✨
在 OpenClaw 里:
- **Agent = 身份角色 + 模型配置 + 配套的 Tool/Skill**
- 每个 Agent 可以有独立的人设SOUL.md/USER.md、独立的模型配置、独立的工具组合
- 切换方式就是通过不同的 session 参数
所以把 wantsong 拆成两个完全可行:
- `wantsong-writer` → 写作 Agent配套写作类 skill + Dify 虎贲卫系列
- `wantsong-work` → 工作 Agent配套工作类 skill + Dify 商业/分析系列
这样每个 agent 可以更专业,互不干扰。需要我帮你配置这两个新的 agent 吗?
# 2
我们需要充分讨论再说后续怎么做。
`/root/.openclaw/devices/paired.json`只表示设备能不能访问,不代表是哪个用户/Agent。
实际上,只要能访问就可以随时用会话/链接这些来切换身份。
可以考虑把公用的skill放在`/root/.openclaw/workspace/skills/`下面。
`wantsong-writer`、`wantsong-work` 都是我的话,肯定会有公用的内容。
考虑到openclaw实质是为个人搭建的大多是在个人机器上所以多用户这种情况很少见。不像我这样放到了公有云提供的Server。
我的问题是,我以`wantsong-writer`的身份交流时,也可以访问`wantsong-work`的文件夹吧?
已经有个共享的 skills 目录了:`/root/.openclaw/workspace/skills/`,这些是全局可用的技能。
回答你的问题:
**技术上**:可以!因为都是同一个机器、同一个文件系统权限,`wantsong-writer` 登录后完全可以 `cd``wantsong-work` 的目录读写文件——只要你知道路径。
**设计上更好的做法**
1. **公用内容放共享目录**`/root/.openclaw/workspace/skills/` 已经存在,放这里所有 agent 都能用
2. **每个 agent 有独立 workspace**`wantsong-writer` → `/root/.openclaw/workspace/wantsong-writer/``wantsong-work` → `/root/.openclaw/workspace/wantsong-work/`
3. **如果需要深度共享**:可以用 symlink 把某个文件夹链接到两个 workspace
所以你的方案完全可行:**共用 skills + 各自独立 workspace**,这比混在一起清晰多了。👍
还有啥需要讨论的?
# 3
shirleen是个真实的用户从她的角度出发应该也有多个方面的需求实质上我们创建的应该是“考古学者”帮她写论文“强哥的徒弟”帮我写文章“轮机长”帮我搭建自动化我的工作这样的具有专业化性质的agent而不是用我们的名称“wantsong”“shirleen”对么
还有个问题,网关访问。
放在链接里的`agent:wantsong:main`在UI上叫密钥这三个值冒号分割的都代表什么含义
除了这个密钥,还有:
* WebSocket URL这个我知道是链接地址
* 网关令牌这个好像就用了一次paired后就不需要了是这样么
* 密码 (不存储),还能使用密码么,在哪里设置?
* 语言这个是告诉agent用哪种语言回复么
请看我上面的问题,一一回复。
你的理解完全正确!✨
---
## 1. Agent 命名
对,**专业化命名**才是正确思路:
| 用户 | Agent 名 | 用途 |
|-----|---------|------|
| shirleen | 考古学者 | 帮她写论文 |
| 你 | 强哥的徒弟 | 写作 |
| 你 | 轮机长 | 自动化/工作 |
这样每个 Agent 可以有独立的人设、独立的模型配置、独立的工具组合,比混在一个"wantsong"里清晰得多。
---
## 2. Session Key: `agent:wantsong:main`
三个部分用冒号分割:
| 部分 | 含义 | 说明 |
|-----|------|------|
| `agent` | 固定前缀 | 表示这是一个 agent 会话 |
| `wantsong` | agentId | 身份标识,对应 `/root/.openclaw/agents/wantsong/` |
| `main` | sessionKey | 会话key默认是`main`,可改成其他名字 |
---
## 3. WebSocket URL
就是 Gateway 的 WebSocket 地址,比如 `ws://127.0.0.1:18789``wss://openclaw.wantsong.cn`
---
## 4. 网关令牌 (Gateway Token)
- **配对后**:设备会被记住,不需要每次输入
- ** revocation**:如果 revoke 了设备,需要重新配对
- 存储在 `~/.openclaw/devices/paired.json`
---
## 5. 密码 (不存储)
- **可以用密码**:在 config 里设置 `gateway.auth.password`
- **不存储**:密码只存在于内存中,不会持久化到 UI 的存储里
- 启用方式config 里设置 `gateway.auth.mode: "password"`
```json5
{
gateway: {
auth: {
mode: "password",
password: "你的密码"
}
}
}
```
---
## 6. 语言设置
这个是 **Control UI 的界面语言**,不是 Agent 回复你用的语言。
- UI 语言设置后Control UI 界面用你选的语言显示en/zh-CN 等)
- Agent 回复语言:取决于 Agent 的人设SOUL.md+ 对话上下文AI 自己判断
---
还有其他想讨论的吗?
# 4
## 问题
1. Session Key
* `agent` ,前缀这个不能改么,还是有其他场合?
* `wantsong` ,这个我理解
* `main` sessionKey可以改成其他名字是什么意思意思是可以和`wantsong`同时启动多个会话通过会话key来切换是么
2. 关于工作的Agent
* 即便是工作,也会有细化的考虑,比如有些是我的公司的业务,有的是其他公司的业务
* 比如我为医美服务可以考虑为医美搭建1到多个不同的Agent我为教育服务也可以为教育搭建专属的不同Agent。然后将来我这里试验结束需要的时候可以把某个行业或者企业的Agent进行单独部署。
3. Agent的协同与使用skill
* 我理解的Skill是共享会话上下文的而Agent不一定
* 是建立Agent还是Skill你有什么建议么
* 比如我做了个医美销售助手Agent可以帮医美的销售人员进行客户画像对客户进行的面诊谈话录音转文字进行分析并提供后续销售话术。我们现在已经开发这个智能体系统由好几个智能体构成如果是用openclaw搭建我是把他们做成Skill还是不同Agent。参见**参考资料**中的四个智能体。
4. 关于部署
* 我以为这个只是为个人电脑PC来做的如果是我现在理解的完全可以部署成一个智能体底层服务系统。
* 还是以医美销售助手Agent为例我若基于OpenClaw重新搭建了怎么在生产环境上部署你有什么建议
需要你一一回复我上面的问题。
## 参考资料
```md
# 销售洞察智能体(教育、医美)系统核心设计文档 V1.0
## 1. 系统综述 (System Overview)
### 1.1 产品愿景
本系统旨在构建一个 **“数据驱动的销售洞察工厂”**。通过对非结构化业务数据微信聊天、面诊录音的深度清洗与心理学分析基于ORBIT/PRISM模型为医美/教育机构提供**SOP优化**、**面诊质量质检**及**高转化率话术生成**服务。
### 1.2 核心价值主张
* **看见看不见的**:通过心理画像,挖掘客户未言明的顾虑与动机。
* **沉淀带不走的**:将金牌咨询师的经验转化为机构的数字化资产(知识库)。
* **赋能跟不上的**让普通咨询师通过AI辅助具备资深专家的接待与催单能力。
### 1.3 系统架构隐喻: “一底座,三引擎”
* **一底座 (The Base)****客户全生命周期数据中心**。这是配套的信息化功能,用于存储客户档案、交互记录(文本/语音)和知识库。
* **三引擎 (The Engines)**
* **清洗引擎 (Agent A1/A2)**:负责将杂乱数据结构化。
* **洞察引擎 (Agent B)**:负责心理分析与画像构建。
* **策略引擎 (Agent C)**:负责输出行动指南与话术。
---
## 2. 核心业务场景 (Core Business Scenarios)
本系统不介入实时的“正在进行时”对话,而是专注于 **“事前预判”** 、 **“事后复盘”** 与 **“周期性优化”** 。以下定义三个核心业务闭环:
### 场景一:邀约话术优化与知识库构建 (Invitation Optimization Loop)
* **目标**:利用历史存量数据,提炼金牌邀约话术,解决“新客开口死”的问题。
* **时机**:周期性执行(如每月一次)或系统初始化阶段。
| 步骤 | 角色 | 动作 (Action) | 输入数据 | 输出结果 |
| :--- | :--- | :--- | :--- | :--- |
| **1. 数据归集** | **信息化功能** | 批量导入/上传销售微信聊天记录txt/csv格式。 | 原始聊天记录 | 待处理数据池 |
| **2. 数据清洗** | **Agent A1** | **聊天记录清洗智能体** 运行。剔除寒暄,识别客户关键提问与机构回答。 | 待处理数据池 | 1. 结构化线索<br>2. 原始问答对 (Raw QA Pairs) |
| **3. 知识提炼** | **人工服务** | 专家顾问(我们)审视原始问答对,筛选高转化话术,剔除违规承诺。 | 原始问答对 | **金牌邀约话术库 (SOP)** |
| **4. 知识应用** | **信息化功能** | 将SOP录入“话术检索工具”。咨询师可关键词检索。 | 金牌话术库 | 咨询师获得实时指导 |
### 场景二:面诊前线索分析与预判 (Pre-Consultation Insight)
* **目标**:在面诊前,让医生/咨询主管秒懂客户,制定针对性接待策略。
* **时机**:客户到店前 / 前台接待间隙。
| 步骤 | 角色 | 动作 (Action) | 输入数据 | 输出结果 |
| :--- | :--- | :--- | :--- | :--- |
| **1. 记录上传** | **信息化功能** | 销售将该客户前期的微信聊天记录上传至该客户档案下。 | 单个客户聊天记录 | 客户关联数据 |
| **2. 线索挖掘** | **Agent A1** | **聊天记录清洗智能体** 运行。提取显性诉求、预算信号、已暴露的顾虑。 | 客户关联数据 | **《面诊接待小贴士》** |
| **3. 策略制定** | **医生/主管** | 查看小贴士。例如“客户在意留疤且对竞品A有恶感”准备相应案例。 | 接待小贴士 | 针对性的面诊方案 |
### 场景三:面诊复盘与催单转化 (Post-Consultation Conversion)
* **目标**:针对未当场成交的客户,进行深度心理诊断,生成精准催单话术;同时监控面诊合规性。
* **时机**:面诊结束后的当天复盘时段。
| 步骤 | 角色 | 动作 (Action) | 输入数据 | 输出结果 |
| :--- | :--- | :--- | :--- | :--- |
| **1. 录音上传** | **信息化功能** | 上传面诊录音文件,系统自动转写为文本。 | 录音文件 | 面诊实录文本 |
| **2. 质量复盘** | **Agent A2** | **面诊复盘智能体** 运行。进行全维度信息提取与质检(含合规/病史检查)。 | 面诊实录文本 | **《面诊复盘分析报告》** |
| **3. 深度洞察** | **Agent B** | **深度画像智能体** 运行。结合A1的微信线索和A2的现场实录进行ORBIT/PRISM分析。 | 微信线索 + 复盘报告 | **《3C客户心理全景图》** |
| **4. 话术生成** | **Agent C** | **话术生成智能体** 运行。基于心理全景图中的“阻碍点”,匹配知识库生成话术。 | 心理全景图 + 催单库 | **《催单行动指南 & 话术》** |
| **5. 执行与反馈** | **咨询师** | 参考指南进行回访,并在系统中记录回访结果(成功/失败原因)。 | 催单话术 | 闭环反馈数据 |
## 3. 智能体详细规格 (Agent Specifications)
本章节定义智能体的具体“输入-处理-输出”逻辑。所有智能体均基于LLM构建需通过Prompt Engineering和RAG检索增强生成技术实现。
### 3.1 Agent A1: 聊天记录清洗智能体 (Chat Log Cleaner)
* **定位**:非结构化文本清洗与线索提取器。
* **核心能力**去噪、语义归类、QA提取。
* **Input (输入)**
* `raw_chat_text`: 导出的微信聊天记录文本(包含时间戳、发送人、内容)。
* `config_tags`: 预设的业务标签集(如:[价格抗拒], [竞品对比], [距离抗拒])。
* **Processing (处理逻辑)**
1. **角色分离**:区分“咨询师”与“客户”。
2. **垃圾过滤**:移除表情包、纯寒暄(“你好”、“在吗”)、无效语音提示。
3. **线索抽取**识别客户提及的症状Symptoms、诉求Demands、预算Budget
4. **问答对挖掘**:提取“客户提问”与紧随其后的“咨询师回答”,并尝试打上业务标签。
* **Output (输出)**
* `client_clues`: { "symptoms": [], "demands": [], "budget_range": "", "concerns": [] }
* `qa_pairs`: [ { "question": "...", "answer": "...", "tag": "..." }, ... ]
* `summary_note`: 一段简短的《面诊接待小贴士》(用于场景二)。
### 3.2 Agent A2: 面诊复盘智能体 (Consultation Reviewer)
* **定位**:合规质检与全量信息结构化。
* **核心能力**:长文本理解、规则检查、多维度摘要。
* **Input (输入)**
* `transcript_text`: 面诊录音转写后的全量文本。
* `checklist_rules`: 质检规则集必须询问过敏史、禁止承诺100%效果)。
* **Processing (处理逻辑)**
1. **分段摘要**:按面诊流程(寒暄-问诊-方案-报价)对文本进行分段总结。
2. **合规扫描**:检索文本中是否存在违规话术或遗漏的关键询问(如病史)。
3. **事实结构化**:提取确定的医疗事实(诊断结果、建议方案、排斥方案)。
* **Output (输出)**
* `review_report`: 《医美面诊复盘分析报告》包含8大模块主诉、病史、评估、方案、风险、费用、心理反应、建议
### 3.3 Agent B: 深度画像智能体 (The Deep Profiler)
* **定位**:跨源推理与心理建模引擎。
* **核心能力**ORBIT/PRISM模型推理、矛盾检测。
* **Input (输入)**
* `wechat_clues` (from A1): 微信聊天线索。
* `consultation_facts` (from A2): 面诊事实报告。
* **Processing (处理逻辑)**
1. **一致性校验**:对比 `wechat_clues``consultation_facts`,识别客户的前后不一致点(撒谎/掩饰)。
2. **ORBIT分析**评估决策权力Power、人际关系Relationship、动机Motivation
3. **PRISM分析**评估深层恐惧Meme、认知逻辑Reasoning
* **Output (输出)**
* `3c_profile`: 《3C客户心理全景图》结构化数据。
* `decision_maker`: 谁买单?(本人/配偶/父母)
* `core_fear`: 真正怕什么?(怕痛/怕贵/怕没效果/怕被发现)
* `trust_gap`: 信任缺口在哪里?
### 3.4 Agent C: 话术生成智能体 (Script Writer)
* **定位**:策略落地与内容生成器。
* **核心能力**:知识库检索、风格化写作。
* **Input (输入)**
* `3c_profile` (from B): 客户心理画像。
* `knowledge_base`: 催单话术库、成功案例库。
* **Processing (处理逻辑)**
1. **策略匹配**:根据 `core_fear` 检索对应的解决策略Strategy
2. **素材组装**:调用相关的案例描述或话术片段。
3. **话术生成**生成微信跟进文案文本和电话沟通要点Bullet Points
* **Output (输出)**
* `action_guide`: 《催单行动指南》。含:回访时机建议、话术原文、需发送的物料清单。
---
## 4. 配套信息化功能需求 (Supporting Information System)
为了让上述智能体运转,我们需要构建一个轻量级的 CRM (Customer Relationship Management) 和 KB (Knowledge Base) 系统。
### 4.1 客户档案管理 (Client Profile Management)
* **功能描述**:系统的核心数据实体。
* **关键字段**
* 基础信息:编号、性别、年龄。
* **智能体关联数据**
* `chat_logs`: 关联的聊天记录文件列表。
* `transcripts`: 关联的面诊录音转写文件列表。
* `agent_outputs`: 存储 A1/A2/B/C 生成的各类报告JSON/Markdown格式
* **操作**:新建客户、编辑客户、上传文件(支持拖拽上传微信导出文件/录音文件)。
### 4.2 数据上传与解析中心 (Data Ingestion Center)
* **功能描述**:作为 Agent 的触发入口。
* **交互流程**
1. 用户进入“客户详情页”。
2. 点击“上传微信记录” -> 触发 Agent A1 -> 生成并展示“接待小贴士”。
3. 点击“上传面诊录音” -> 触发转写服务(ASR) -> 触发 Agent A2 -> 触发 Agent B -> 触发 Agent C -> 生成并展示“复盘报告”与“催单指南”。
### 4.3 知识库管理后台 (Knowledge Base Admin)
* **功能描述**:用于管理 Agent C 调用的素材,以及存储 Agent A1 挖掘出的 QA。
* **模块划分**
* **邀约话术库**存储经过人工清洗的QA对。字段[问题关键词] [标准回答] [适用场景] [标签]。
* **催单策略库**:存储针对不同心理画像的策略。例如:针对“怕痛”的客户,关联“无痛技术解析文案”。
* **案例库**:存储脱敏后的成功案例(图片链接/文字描述),打上 [症状] [年龄段] 标签。
### 4.4 权限与账号体系 (RBAC) - *[精简版]*
* 不需要复杂的权限,但需区分角色:
* **管理员/店长**:可查看所有数据,可管理知识库(审核话术)。
* **咨询师/医生**:仅可上传数据,查看自己负责客户的报告与指南。
```
好问题!让我逐一回答:
---
## 问题1: Session Key
### `agent` 前缀
**不能改**。这是固定格式,用来标识会话类型。其他类型还有:
- `cron:` → 定时任务
- `hook:` → Webhook
- `node-` → 设备运行
### `main` 可以改成其他名字
对!可以在同一个 agent 下创建**多个独立会话**
```
agent:wantsong:main # 主会话
agent:wantsong:project-a # 项目A会话
agent:wantsong:project-b # 项目B会话
```
每个 sessionKey 有独立的:
- 聊天历史
- 上下文记忆
- 状态
**切换方式**:在 UI 里选择不同的 session或者用链接 `?session=agent:wantsong:project-a`
---
## 问题2: 工作的 Agent
完全正确!你的架构思路很好:
| 层级 | 例子 | 说明 |
|-----|------|------|
| 用户层 | wantsong | 你本人 |
| 领域层 | 医美销售、教育咨询 | 按行业划分 |
| 企业层 | 医美-A机构、医美-B机构 | 按企业划分 |
| 功能层 | 线索清洗、面诊复盘、深度画像、话术生成 | 按业务环节划分 |
**部署灵活性**
- 可以把所有 agent 跑在同一个 Gateway
- 也可以把某个 agent 单独部署到另一台机器
- 通过 `bindings` 路由到不同 agent
---
## 问题3: Agent 协同 vs Skill
### 核心区别
| | Agent | Skill |
|-----|-------|-------|
| **身份** | 独立"大脑",有自己的人设 | 工具包,附属于某个 Agent |
| **会话** | 独立 session有自己的记忆 | 共享主 Agent 的上下文 |
| **触发** | 独立接收消息 | 被主 Agent 调用 |
| **模型** | 可以独立配置 | 继承调用者的模型 |
### 建议:你的医美系统应该用 **Agent**
看你的设计文档4 个智能体A1/A2/B/C都有
- 独立的输入 → 处理 → 输出逻辑
- 各自的结构化输出
- 需要按顺序协作(流水线)
**正确做法**
- 创建 **4 个独立的 Agent**(或 1 个主 Agent + 3 个 Sub-agent
- Agent A1聊天清洗→ Agent A2面诊复盘→ Agent B深度画像→ Agent C话术生成
-`sessions_spawn` 或工作流串联
**为什么不用 Skill**
- Skill 是"同步调用",像函数一样调用完就回来
- 你的场景是"异步流水线",每个 Agent 有自己的输出和状态
---
## 问题4: 部署
你说对了OpenClaw **完全可以作为多租户智能体服务平台**
### 部署架构建议
```
┌─────────────────────────────────────────┐
│ OpenClaw Gateway │
├─────────────────────────────────────────┤
│ Agent: 医美销售-A │ Agent: 教育咨询 │
│ ├─ 线索清洗 │ ├─ 咨询助手 │
│ ├─ 面诊复盘 │ └─ 转化分析 │
│ ├─ 深度画像 │ │
│ └─ 话术生成 │ │
├─────────────────────────────────────────┤
│ Bindings: 按渠道/企业路由 │
└─────────────────────────────────────────┘
```
### 生产部署考虑
| 维度 | 建议 |
|-----|------|
| **多租户隔离** | 每个 Agent 独立 workspace + agentDir + session store |
| **资源控制** | 用 `sandbox` 限制某些 Agent 的工具权限 |
| **扩展性** | 可以跑多个 Gateway 实例(需要负载均衡) |
| **渠道接入** | 每个企业/行业用独立的 WhatsApp/Telegram 账号 |
| **监控** | 用 `/status` + 日志 + cron 做健康检查 |
### 你想先从哪个开始?
1. **先把 wantsong 拆成写作/工作两个 Agent**
2. **规划医美销售系统的 Agent 架构**
3. **搭建一个可复用的 Agent 模板**
可以先讨论清楚再做。
# 5
这里还有个跳不过去的问题需要你阅读我名下Dify_Agent。
目前OpenClaw用的是相对短上下文弱能力的LLM比如Qwen/Minimax而Dify里是长上下文强能力的LLM。
我希望OpenClaw发挥自己自动化的优势而Dify的Agent发挥自己专业化的优势。
以医美为例那个清洗Agent比较简单我们可以用OpenClaw的Agent但是其他几个要么上下文长要么需要强的推理能力需要强LLM能力。
而OpenClaw现在的LLM切换是基于会话而不是Skill。——这个是你之前告诉我的所以不得不用这样的方式把Dify Agent包装成一个Skill。
我现在的问题是,
* OpenClaw不同Agent可以互相调用么
* 若可以是否可以把虎贲卫的那些智能体封装进OpenClaw的Agent
* 如果在一次会话里需要专家智能体调用OpenClaw的Agent是否也没法切换LLM。
好问题!让我一一回答:
---
## 问题1: OpenClaw 不同 Agent 可以互相调用么?
**可以!** 有两种方式:
### 方式1: Sub-agent推荐
```bash
/subagents spawn <agentId> <task> --model <strong-model>
```
- 启动一个子 Agent 帮你干活
- 可以指定**不同的模型**
- 完成后自动汇报结果
### 方式2: sessions_send
```python
sessions_send(sessionKey="agent:other-agent:main", message="帮我处理这个...")
```
- 发送消息到另一个 Agent 的会话
- 需要开启 `tools.agentToAgent.enabled`
---
## 问题2: 可以把 Dify Agent 封装进 OpenClaw Agent 么?
**可以!** 两种思路:
### 思路A: 把 Dify API 封装成 Skill
```python
# 在 SKILL.md 里调用 Dify API
def call_dify_agent(prompt, agent_id):
response = requests.post(
"https://api.dify.ai/v1/chat-messages",
headers={"Authorization": f"Bearer {DIFY_API_KEY}"},
json={"query": prompt, "agent_id": agent_id}
)
return response.json()
```
### 思路B: 用 exec 调用 curl
```bash
curl -X POST 'https://api.dify.ai/v1/chat-messages' \
-H 'Authorization: Bearer YOUR-API-KEY' \
-H 'Content-Type: application/json' \
-d '{"query": "用户问题", "agent_id": "xxx"}'
```
**这样你就可以在 OpenClaw 里调用 Dify 的强模型 Agent 了!**
---
## 问题3: 会话里能切换 LLM 么?
**可以!** Sub-agent 支持指定模型:
```bash
/subagents spawn wantsong-deep "做深度分析" --model minimax-portal/MiniMax-M2.5
```
或者在代码里:
```python
sessions_spawn(
task="分析这段客户画像",
model="minimax-portal/MiniMax-M2.5" # 切换到强模型
)
```
---
## 你的医美系统架构
```
┌─────────────────────────────────────────┐
│ OpenClaw Agent (医美销售主入口) │
│ - 模型: Qwen (弱,便宜) │
├─────────────────────────────────────────┤
│ ├─→ Sub-agent A1 (线索清洗) │
│ │ - 模型: Qwen (简单任务) │
│ │ │
│ ├─→ Sub-agent A2 (面诊复盘) │
│ │ - 模型: Qwen │
│ │ │
│ ├─→ Sub-agent B (深度画像) │
│ │ - 模型: Dify API (强模型) │
│ │ - 调用外部强模型 │
│ │ │
│ └─→ Sub-agent C (话术生成) │
│ - 模型: Dify API (强模型) │
└─────────────────────────────────────────┘
```
**核心思路**
- OpenClaw 做**调度编排**(工作流管理)
- 简单任务用内置弱模型
- 复杂任务调用 Dify 强模型 API
这样既发挥了 OpenClaw 的自动化优势,又用上了 Dify 的强模型能力!✨
需要我帮你设计一个调用 Dify API 的 Skill 吗?
# 6
你阅读这个文档:`/root/.openclaw/workspace/wantsong/DIFY_AGENTS.md`。需要的话读相关的skill。
Dify的Skill我已经实现了。
我的问题和架构相关。
这个`Sub-agent A1`及其他几个销售智能体,都是高客单价销售的智能体,从心智模型角度来讲具有通用性,只是配套不同的行业话术和企业的信息(介绍、配套产品等特色)。
从我的角度出发,便于维护的话:
* 打造一套通用的(高客单价)销售智能体
* 配套不同的行业、企业信息
就能实现眼镜销售、招生、卖期货保险等等这些高客单价销售的智能化赋能。
除非某客户太特殊,需要定制,这个另说。
对此,你有何建议?
明白了!你的思路非常清晰。让我给你分析和建议:
---
## 你的架构思路
```
通用高客单价销售心智模型
├── 客户画像ORBIT/PRISM
├── 需求挖掘
├── 异议处理
├── 逼单转化
└── 关系维护
↓ 差异化配置 ↓
行业话术库 + 企业信息
├── 眼镜销售
├── 教育咨询
├── 医美
├── 期货/保险
└── ...
```
**核心通用,差异外置** — 这正是好的架构设计!
---
## 建议:三层架构
```
┌─────────────────────────────────────────────┐
│ OpenClaw 销售编排Agent (wantsong-sales) │
│ - 通用销售流程(线索→面诊→复盘→话术) │
│ - 调用 Dify Agent 做深度分析 │
└─────────────────────────────────────────────┘
┌─────────────┼─────────────┐
▼ ▼ ▼
行业配置库 企业配置库 Dify Agent
(skills/) (skills/) (调用)
│ │ │
眼镜话术 A企业信息 深度画像
教育话术 B企业信息 心理分析
医美话术 C企业信息 ...
```
### 具体设计
| 层级 | 存放位置 | 内容 |
|-----|---------|------|
| 销售流程 | `skills/sales-orchestrator/` | 通用PromptGL0-GL4流程控制 |
| 行业话术 | `skills/knowledge-base/行业/` | 行业通用话术、术语、常见问题 |
| 企业信息 | `skills/knowledge-base/企业/` | 企业简介、产品、案例、定价 |
| Dify调用 | `skills/dify/` | 已有实现,直接复用 |
---
## 关键:配置驱动
```yaml
# 销售配置示例
industry: "医美"
enterprise: "A机构"
# 销售Agent根据配置自动加载
# 1. 加载 "医美" 行业话术库
# 2. 加载 "A机构" 企业信息
# 3. 调用 Dify 心理画像Agent
# 4. 生成定制化话术
```
---
## 优点
1. **一套Agent多个行业/企业** — 降低维护成本
2. **行业/企业独立配置** — 改话术不影响Agent
3. **OpenClaw 编排 + Dify 深度能力** — 完美分工
4. **易于扩展** — 新增行业/企业只需加配置
---
## 下一步
1. **先拆 wantsong → 写作/工作两个 Agent**(你目前用的)
2. **创建 `wantsong-sales` Agent**(销售编排)
3. **设计行业/企业配置结构**
4. **把医美案例迁移进来测试**
需要我帮你设计具体的配置结构么?
# 7
以医美为例,目前已知有四台服务器:
* Dify 服务器,提供专家级智能体调用服务,比如深度画像
* OpenClaw 生产服务器,提供医美智能体的自动化过程
* 医美服务器提供医美的信息化系统并且提供MCP服务包括CRM企业信息企业产品资料等等
* OpenClaw 试验服务器,就是本台,我用来做测试搭建,养龙虾的工作
分为试验和生产两个阶段及两种调用过程。试验和生产就是切换OpenClaw的服务器。
而调用过程,则是基于用户的使用方式
首先我在OpenClaw 服务器上构建好/部署好医美销售智能体,及子智能体。以清洗为例的过程:
* OpenClaw 生产/试验服务器发起
* 用户通过飞书/企业微信传入客户的聊天资料文本指定好客户的id这些信息发起清洗指令
* openclaw调用清洗智能体生成清洗结果Json调用医美服务器的MCP发起`保存清洗结果服务`
* 保存无误的话openclaw将清洗结果中的《面诊接待小贴士》返回给我
* 医美服务器发起
* 用户在医美系统上上传客户的聊天资料文本医美服务器向OpenClaw服务器发起清洗指令
* Openclaw服务器调用清洗智能体回传清洗结果Json
* 医美服务器保存,并将《面诊接待小贴士》在医美系统上呈现给用户
其他的调用过程也不外乎这两种吧?
主要是用户的使用终端有差别一个是飞书或者企业微信这样的IM一个是在医美系统上。
这两种调用过程都能实现么?
你的架构完全可以实现!两种调用方式都支持:
---
## 调用方式对照
| 维度 | 场景1: IM发起 | 场景2: 系统API发起 |
|-----|--------------|-------------------|
| 入口 | 飞书/企业微信 | 医美系统 HTTP API |
| 触发 | 消息事件 | POST 请求 |
| 协议 | WebSocket (Gateway) | HTTP REST |
| OpenClaw 入口 | 飞书插件 | `/v1/chat/completions` |
---
## 场景1: IM发起飞书/企业微信)
```
用户(飞书) → 飞书插件 → OpenClaw Gateway → 清洗Agent → Dify → OpenClaw → 飞书回复
医美服务器 MCP
```
**已支持**
- OpenClaw 有飞书插件 (`channels.feishu`)
- 配置 `webhook` 接收消息
- MCP 调用通过 `exec` 或 custom tool
---
## 场景2: 系统API发起
```
医美系统 → OpenClaw HTTP API → 清洗Agent → Dify → OpenClaw → HTTP Response → 医美系统
医美服务器 MCP
```
**已支持**
- OpenClaw 提供 **OpenAI 兼容 API**`POST /v1/chat/completions`
- 认证Bearer Token
- 指定 Agent`model: "openclaw:wantsong-sales"`
### 调用示例
```bash
curl -X POST 'http://<openclaw-host>:18789/v1/chat/completions' \
-H 'Authorization: Bearer <gateway-token>' \
-H 'Content-Type: application/json' \
-d '{
"model": "openclaw:wantsong-sales",
"messages": [
{"role": "user", "content": "请清洗客户张三的聊天记录..."}
]
}'
```
---
## 四台服务器协作
```
┌─────────────────────────────────────────────────────────────┐
│ 试验阶段 (本机) │
│ OpenClaw 试验 ──→ Dify ──→ MCP (模拟) │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ 生产阶段 │
│ ┌──────────────┐ ┌──────────────┐ ┌─────────────┐ │
│ │ 医美系统 │───→│OpenClaw 生产 │───→│ Dify 服务器 │ │
│ │ (API/IM入口) │ │ (销售Agent) │ │ (深度分析) │ │
│ └──────────────┘ └──────────────┘ └─────────────┘ │
│ ▲ │ │
│ │ ┌──────────────┐ │ │
│ └───────────│ 医美服务器 │◀────────────┘ │
│ │ (CRM/MCP) │ │
│ └──────────────┘ │
└─────────────────────────────────────────────────────────────┘
```
---
## 下一步
1. **先在试验机跑通流程**
- 搭建 `wantsong-sales` Agent
- 实现清洗 + MCP 调用
- 测试 IM 触发(飞书)
2. **生产部署**
- 复制到生产 OpenClaw 服务器
- 配置 API 访问
- 医美系统对接
需要我帮你搭建销售 Agent 的框架么?
# 8
我们讨论清楚了,接下来我需要你帮我将上述的讨论生成一个方案。我需要将方案发给我的开发(轮机长们),因为涉及到医美系统的调整。
首先你回顾一下我们之前讨论的全部内容,做一个内部思考以减少错误提升质量,生成这个方案的提纲,等我确认。
我确认后,再开始填充方案内容。
好的,让我回顾我们的讨论,生成方案提纲:
---
## 方案提纲
### 一、背景与目标
- 现有医美销售智能体系统4个AgentA1清洗、A2复盘、B画像、C话术
- OpenClaw + Dify 混合架构
- 目标:标准化、可复制、部署到生产
### 二、系统架构
1. **四台服务器角色**
- Dify 服务器:专家级智能体(深度画像等)
- OpenClaw 生产服务器:自动化流程编排
- 医美服务器:信息化系统 + MCP 服务
- OpenClaw 试验服务器:测试验证
2. **混合架构设计**
- OpenClaw弱模型调度编排、工作流控制
- Dify强模型深度分析、专业推理
### 三、Agent 体系设计
1. **通用销售心智模型**
- 客户画像ORBIT/PRISM
- 需求挖掘 → 异议处理 → 逼单转化 → 关系维护
2. **三层配置结构**
- 销售流程层通用Prompt
- 行业话术层(眼镜/教育/医美/金融...
- 企业信息层(产品、案例、定价)
### 四、两种调用方式
1. **IM 发起**(飞书/企业微信 → OpenClaw
2. **系统 API 发起**(医美系统 → OpenClaw HTTP API
### 五、技术实现
1. **OpenClaw Agent 配置**
- wantsong-sales销售编排主Agent
- Sub-agent 调用 Dify API
- MCP 调用医美服务器
2. **部署方案**
- 试验阶段:本地测试
- 生产阶段:切换服务器
### 六、实施计划
1. 试验机验证流程
2. 销售Agent框架搭建
3. 行业/企业配置结构设计
4. 生产部署
---
**请确认提纲是否完整准确,我来填充详细内容。**
# 9
在`Agent 体系设计`上是否要考虑设计智能体和子智能体?
先输出第一章和第二章的内容,等我确认。
好的,我来输出第一章和第二章:
---
```
# 医美销售智能体系统部署方案
## 一、背景与目标
### 1.1 项目背景
现有医美销售智能体系统基于 Dify 平台构建,包含四个核心智能体:
| 智能体 | 功能 | 输入 | 输出 |
|-------|------|------|------|
| **Agent A1** | 聊天记录清洗 | 微信聊天文本 | 结构化线索、问答对、《面诊接待小贴士》 |
| **Agent A2** | 面诊复盘质检 | 录音转写文本 | 《医美面诊复盘分析报告》8大模块 |
| **Agent B** | 深度心理画像 | 微信线索 + 面诊事实 | 《3C客户心理全景图》、决策人、核心恐惧、信任缺口 |
| **Agent C** | 话术生成 | 心理画像 + 知识库 | 《催单行动指南》+ 话术原文 |
### 1.2 核心挑战
- **模型能力差异**OpenClaw 使用弱模型Qwen/MinimaxDify 使用强模型Claude/GPT
- **部署灵活性**:当前仅支持单一调用方式,需支持 IM 和系统 API 两种入口
- **可复制性**:医美案例成功后,需快速复用到其他行业(眼镜、教育、金融等)
### 1.3 项目目标
1. **标准化**:建立通用销售心智模型,一次开发多处复用
2. **自动化**OpenClaw 负责流程编排Dify 负责深度推理
3. **可部署**:试验环境验证 → 生产环境部署,标准化交付
---
## 二、系统架构
### 2.1 服务器角色分工
```
┌─────────────────────────────────────────────────────────────────────────┐
│ 生产环境 │
│ ┌──────────────┐ ┌──────────────────┐ ┌──────────────────┐ │
│ │ 医美系统 │ │ OpenClaw 生产 │ │ Dify 服务器 │ │
│ │ (入口/展示) │───→│ (自动化编排) │───→│ (专家级智能体) │ │
│ │ - CRM │ │ - 销售Agent │ │ - 深度画像 │ │
│ │ - MCP服务 │ │ - 工作流控制 │ │ - 心理分析 │ │
│ └──────────────┘ └──────────────────┘ └──────────────────┘ │
│ ▲ │ │ │
│ │ ▼ │ │
│ │ ┌──────────────────┐ │ │
│ └──────────────│ 医美服务器 │◀─────────────┘ │
│ │ (CRM + MCP) │ │
│ │ - 客户档案 │ │
│ │ - 保存清洗结果 │ │
│ │ - 知识库检索 │ │
│ └──────────────────┘ │
└─────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────┐
│ 试验环境 (本机) │
│ OpenClaw 试验 ──→ Dify ──→ MCP (本地模拟) │
└─────────────────────────────────────────────────────────────────────────┘
```
| 服务器 | 角色 | 主要职责 |
|-------|------|---------|
| **Dify 服务器** | 专家大脑 | 提供强模型能力:深度画像、心理分析、复杂推理 |
| **OpenClaw 生产** | 自动化引擎 | 流程编排、Agent调度、MCP 调用、工作流控制 |
| **医美服务器** | 信息化底座 | CRM客户管理、MCP服务保存/查询)、知识库 |
| **OpenClaw 试验** | 测试验证 | 流程验证、Agent调试、功能测试 |
### 2.2 混合架构设计
**核心理念**OpenClaw 做"调度员"Dify 做"专家"
| 层级 | 能力 | 适用场景 |
|-----|------|---------|
| **OpenClaw** | 弱模型 + 自动化 | 流程控制、简单判断、API调用、任务编排 |
| **Dify** | 强模型 + 长上下文 | 深度分析、心理画像、复杂推理、专业输出 |
```
OpenClaw Agent (销售编排)
├──→ Sub-agent A1 (清洗) ──→ Dify 或 内置
├──→ Sub-agent A2 (复盘) ──→ Dify 或 内置
├──→ Sub-agent B (画像) ──→ Dify (强模型)
└──→ Sub-agent C (话术) ──→ Dify + 知识库
```
### 2.3 调用方式
#### 方式一IM 发起(飞书/企业微信)
```
用户(飞书) ──→ 飞书消息 ──→ OpenClaw Gateway ──→ 销售Agent
┌─────────────────────────┤
▼ ▼
清洗Agent Dify Agent
│ │
▼ ▼
医美服务器MCP 医美服务器MCP
│ │
▼ ▼
返回"面诊接待小贴士" 返回分析结果
```
#### 方式二:系统 API 发起
```
医美系统 ──→ POST /v1/chat/completions ──→ OpenClaw Gateway
┌─────────────────┼─────────────────┐
▼ ▼ ▼
清洗Agent 画像Agent 话术Agent
│ │ │
▼ ▼ ▼
医美MCP 医美MCP 医美MCP
│ │ │
▼ ▼ ▼
HTTP Response ─────────────────────────→ 医美系统
```
**API 调用示例**
```bash
curl -X POST 'http://<openclaw-host>:18789/v1/chat/completions' \
-H 'Authorization: Bearer <gateway-token>' \
-H 'Content-Type: application/json' \
-d '{
"model": "openclaw:sales",
"messages": [
{"role": "user", "content": "请清洗客户张三的聊天记录..."}
]
}'
```
---
**请确认以上内容是否准确,我来继续输出第三章和第四章。**
# 10
好的请继续输出第三和第四章,同时第三章需要补充智能体和子智能体的区别与设计。
好的,继续输出第三和第四章:
---
## 三、Agent 体系设计
### 3.1 Agent 与 Sub-agent 的区别
| 特性 | Agent智能体 | Sub-agent子智能体 |
|-----|----------------|---------------------|
| **身份** | 独立"大脑",有自己的人设 | 从属于主Agent |
| **会话** | 独立session有自己的记忆 | 共享主Agent上下文 |
| **模型** | 独立配置 | 可单独指定覆盖主Agent |
| **触发** | 独立接收消息通过bindings | 被主Agent调用 |
| **调用方式** | `sessions_spawn` 或 bindings | 主Agent内部调度 |
| **适用场景** | 独立角色、不同渠道入口 | 同一业务流程的分工环节 |
**在本方案中的定位**
```
┌─────────────────────────────────────────────────────────────┐
│ wantsong-sales (主Agent) │
│ - 角色:销售流程编排 │
│ - 模型:弱模型 (Qwen/Minimax) │
│ - 职责:接收请求 → 调度Sub-agent → 整合结果 → 返回 │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────┼─────────────────────┐
▼ ▼ ▼
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
│ Sub-agent A1 │ │ Sub-agent A2 │ │ Sub-agent B │
│ 聊天记录清洗 │ │ 面诊复盘质检 │ │ 深度心理画像 │
│ 模型:弱模型 │ │ 模型:弱模型 │ │ 模型Dify │
└───────────────┘ └───────────────┘ └───────────────┘
```
### 3.2 Agent 设计
#### 3.2.1 主Agentwantsong-sales销售编排
| 属性 | 值 |
|-----|-----|
| **Agent ID** | `wantsong-sales` |
| **模型** | minimax-portal/MiniMax-M2.5(弱模型,便宜) |
| **人设** | 医美销售顾问,擅长流程控制 |
| **工具** | sessions_spawn、exec、read、write |
**核心 PromptGL0**
```
你是医美销售智能体编排中心。你的任务是根据用户需求,
调度相应的子智能体完成销售流程。
销售流程:
1. 线索清洗 (A1) → 2. 面诊复盘 (A2) → 3. 深度画像 (B) → 4. 话术生成 (C)
根据输入内容判断当前处于哪个环节调用对应的Sub-agent。
简单任务可内置处理复杂分析调用Dify强模型。
```
#### 3.2.2 Sub-agent 设计
| Sub-agent | 功能 | 模型选择 | 调用方式 |
|----------|------|---------|---------|
| **A1-清洗** | 聊天记录清洗、结构化 | 弱模型(内置) | 直接处理 |
| **A2-复盘** | 面诊录音质检、摘要 | 弱模型(内置) | 直接处理 |
| **B-画像** | ORBIT/PRISM心理分析 | **Dify 强模型** | 调用 Dify API |
| **C-话术** | 知识库检索 + 话术生成 | **Dify 强模型** | 调用 Dify API |
### 3.3 通用销售心智模型
**核心逻辑**(适用于高客单价销售):
```
客户接触 ──→ 需求挖掘 ──→ 方案展示 ──→ 异议处理 ──→ 逼单转化 ──→ 关系维护
│ │ │ │ │ │
▼ ▼ ▼ ▼ ▼ ▼
渠道来源 痛点识别 个性化方案 价格/效果 成交信号 复购/转介绍
```
**心理分析框架**
| 维度 | 维度 | 说明 |
|-----|------|-----|
| **ORBIT** | Power | 决策权力(本人/配偶/父母) |
| | Relationship | 人际关系(依赖/独立) |
| | Motivation | 动机(变美/自信/社交) |
| **PRISM** | Meme | 深层恐惧(怕痛/怕贵/怕没效果) |
| | Reasoning | 认知逻辑(纠结点) |
### 3.4 三层配置结构
**核心理念**:通用内核 + 差异化外置
```
┌─────────────────────────────────────────────────────────────┐
│ 销售流程层(通用) │
│ SKILL.md / prompts/ │
│ - 销售流程PromptGL0-GL4
│ - 心理分析框架 │
│ - 工作流逻辑 │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ 行业话术层(可切换) │
│ knowledge-base/行业/ │
│ ├── 医美/ │
│ │ ├── 话术库.md │
│ │ ├── 术语表.md │
│ │ └── 常见问题.md │
│ ├── 眼镜/ │
│ └── 教育/ │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ 企业信息层(独立配置) │
│ knowledge-base/企业/ │
│ ├── 医美-A机构/ │
│ │ ├── 企业信息.md简介、地址、联系方式
│ │ ├── 产品资料.md项目、价格、优惠
│ │ └── 成功案例.md │
│ └── 医美-B机构/ │
└─────────────────────────────────────────────────────────────┘
```
**配置示例**
```yaml
# 销售Agent配置
industry: "医美"
enterprise: "A机构"
# 自动加载:
# 1. knowledge-base/行业/医美/话术库.md
# 2. knowledge-base/企业/医美-A机构/企业信息.md
# 3. knowledge-base/企业/医美-A机构/产品资料.md
```
---
## 四、技术实现
### 4.1 OpenClaw 配置
#### 4.1.1 Agent 注册
```json5
{
agents: {
list: [
{
id: "wantsong-sales",
name: "医美销售编排",
workspace: "/root/.openclaw/workspace/wantsong-sales",
model: "minimax-portal/MiniMax-M2.5"
}
]
}
}
```
#### 4.1.2 Sub-agent 调用Dify API
```bash
# 调用Dify深度画像Agent
curl -sL -X POST 'https://aiplatform.wantsong.life/v1/chat-messages' \
-H 'Authorization: Bearer {api_key}' \
-H 'Content-Type: application/json' \
-d '{
"inputs": {},
"query": "客户画像分析:{客户微信线索} + {面诊事实}",
"response_mode": "blocking",
"conversation_id": "",
"user": "openclaw-sales"
}'
```
#### 4.1.3 MCP 调用
```bash
# 调用医美服务器MCP服务
curl -X POST 'http://<yimei-server>:8080/mcp/save-clean-result' \
-H 'Content-Type: application/json' \
-d '{
"customer_id": "xxx",
"clean_result": {...}
}'
```
### 4.2 调用流程(完整示例)
#### 场景:用户通过飞书发起"清洗客户聊天记录"
```
1. 用户在飞书发送:"清洗客户张三的聊天记录"
2. 飞书 → OpenClaw Gateway (wantsong-sales)
3. 主Agent 解析意图 → 调用 Sub-agent A1 (清洗)
4. A1 处理 → 返回结构化线索 + 《面诊接待小贴士》
5. 主Agent 调用医美MCP保存结果
6. 返回结果给用户(飞书)
```
### 4.3 试验与生产切换
| 环境 | OpenClaw URL | Dify URL | MCP 地址 |
|-----|-------------|---------|---------|
| **试验** | 本机 :18789 | aiplatform.wantsong.life | 本地模拟 |
| **生产** | 生产服务器 | 同上 | 医美服务器真实地址 |
**切换方式**
- 更换 `skills/dify/SKILL.md` 中的 API 地址
- 更换 MCP 调用地址配置
---
**请确认以上内容,我来继续输出第五章和第六章。**
# 11
继续输出最后两章。
好的,继续输出最后两章:
---
## 五、实施计划
### 5.1 阶段划分
```
┌─────────────────────────────────────────────────────────────────────────┐
│ 实施路线图 │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ 阶段一:试验验证 (1-2周) │
│ ┌─────────────────────────────────────────────────────────────────┐ │
│ │ • 搭建 wantsong-sales 主Agent │ │
│ │ • 实现 A1 清洗 Sub-agent (内置弱模型) │ │
│ │ • 飞书渠道接入测试 │ │
│ │ • MCP 调用本地模拟 │ │
│ └─────────────────────────────────────────────────────────────────┘ │
│ ▼ │
│ 阶段二:能力扩展 (1周) │
│ ┌─────────────────────────────────────────────────────────────────┐ │
│ │ • 实现 A2 复盘 Sub-agent │ │
│ │ • 实现 B 画像 Sub-agent (调用Dify) │ │
│ │ • 实现 C 话术 Sub-agent │ │
│ │ • 行业话术库配置(医美) │ │
│ └─────────────────────────────────────────────────────────────────┘ │
│ ▼ │
│ 阶段三:生产部署 (1周) │
│ ┌─────────────────────────────────────────────────────────────────┐ │
│ │ • 部署到 OpenClaw 生产服务器 │ │
│ │ • 医美服务器 MCP 对接 │ │
│ │ • API 方式接入医美系统 │ │
│ │ • 监控与日志配置 │ │
│ └─────────────────────────────────────────────────────────────────┘ │
│ ▼ │
│ 阶段四:复制扩展 (持续) │
│ ┌─────────────────────────────────────────────────────────────────┐ │
│ │ • 复制到其他行业(眼镜、教育、金融) │ │
│ │ • 新增企业配置 │ │
│ │ • 优化迭代 │ │
│ └─────────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────┘
```
### 5.2 里程碑
| 阶段 | 里程碑 | 验收标准 |
|-----|--------|---------|
| 阶段一 | 试验环境跑通 | 飞书发起 → 清洗 → 返回结果,全流程跑通 |
| 阶段二 | 完整流程上线 | A1→A2→B→C 全流程跑通,结果准确 |
| 阶段三 | 生产部署完成 | 医美系统API接入稳定运行 |
| 阶段四 | 行业复制 | 第二个行业(眼镜/教育)配置完成 |
### 5.3 人员分工
| 角色 | 职责 |
|-----|------|
| **架构师(你)** | 方案设计、Agent配置、Prompt优化 |
| **轮机长(开发)** | MCP开发、API对接、医美系统改造 |
| **测试** | 功能测试、流程验证 |
---
## 六、附录
### 6.1 技术栈
| 组件 | 技术 | 说明 |
|-----|------|-----|
| **编排引擎** | OpenClaw | 流程控制、Agent调度 |
| **专家大脑** | Dify | 深度分析、强模型推理 |
| **信息化底座** | 医美服务器 | CRM、MCP、知识库 |
| **入口** | 飞书/企业微信/医美系统 | IM or HTTP API |
### 6.2 配置文件结构
```
wantsong-sales/
├── SKILL.md # 主Agent入口
├── prompts/
│ ├── sales-flow.md # 销售流程Prompt
│ └── psychology.md # 心理分析框架
├── knowledge-base/
│ ├── 行业/
│ │ ├── 医美/话术库.md
│ │ └── 眼镜/话术库.md
│ └── 企业/
│ ├── 医美-A机构/企业信息.md
│ └── 医美-A机构/产品资料.md
├── skills/
│ └── dify/ # Dify调用已实现
└── config.yaml # 环境配置
```
### 6.3 API 接口定义
#### 清洗接口
```yaml
POST /v1/chat/completions
Authorization: Bearer <token>
Content-Type: application/json
Request:
{
"model": "openclaw:sales",
"messages": [
{
"role": "user",
"content": "清洗客户聊天记录 | 客户ID: 12345 | 内容: <文本>"
}
]
}
Response:
{
"id": "...",
"choices": [
{
"message": {
"content": "{\"clues\": {...}, \"tips\": \"面诊接待小贴士...\"}"
}
}
]
}
```
### 6.4 风险与对策
| 风险 | 影响 | 对策 |
|-----|------|-----|
| Dify API 不稳定 | 画像/话术无法生成 | 增加重试机制 + 降级处理 |
| MCP 调用失败 | 数据无法保存 | 记录日志 + 告警 + 人工介入 |
| 强模型幻觉 | 画像分析不准确 | 增加人工审核环节 |
| 并发过高 | 响应延迟 | 限流 + 队列机制 |
---
## 方案完
---
**以上是完整方案。请确认是否需要修改或补充。**