auto-sync: 2026-06-04 08:50:54
This commit is contained in:
@@ -808,13 +808,238 @@ Base:`http://localhost:8083/api/mail`
|
||||
|
||||
| 维度 | 旧设计(05) | 新设计(11) | 变化 |
|
||||
|------|-----------|-----------|------|
|
||||
| L2 定位 | 引擎注入 + 角色模板 + 操作规范 + 审查协议 + 经验 | 只放引擎流转数据+约束 | **大幅瘦身** |
|
||||
| 操作规范位置 | L2 prompt_templates/{role}.md | L3 blackboard-{role} Skill | **降级到 L3** |
|
||||
| 经验机制 | experiences 表 + tag 匹配 | L3 经验型 Skill | **简化** |
|
||||
| Skill 发现 | 两套(OpenClaw + SkillRegistry) | 一套(OpenClaw extraDirs) | **统一** |
|
||||
| BootstrapBuilder 复杂度 | 7 个组件 | 4 个组件 + 状态约束 | **减半** |
|
||||
| L2 token 预算 | ~1500 | ≤800 | **减半** |
|
||||
| 总 Skill 数量 | 42(现有)+ 4(蒸馏)| 42 + ~15(新增操作规范+方法论+经验)| **+15 个 Skill** |
|
||||
| L2 定位 | 引擎注入 + 角色模板 + 操作规范 + 审查协议 + 经验 | 任务上下文 + 角色操作规范全文 + 硬约束 | **重塑** |
|
||||
| 操作规范位置 | L2 prompt_templates/{role}.md | L3 A 类 Skill,由 L2 引擎读入注入 | **单一数据源** |
|
||||
| 经验机制 | experiences 表 + tag 匹配 | L3 D 类 Skill | **简化** |
|
||||
| Skill 发现 | 两套(OpenClaw + SkillRegistry) | 一套(extraDirs)+ skill-router 路由 | **统一** |
|
||||
| BootstrapBuilder 复杂度 | 7 个组件 | 4 段(ROLE_SKILL_MAP) | **减半** |
|
||||
| L2 token 预算 | ~1500 | ~600 | **减半多** |
|
||||
| Skill 分类 | 无分类 | A/B/C/D 四类 + skill-router | **结构化** |
|
||||
| Skill 注入方式 | 全部靠 Description 触发 | A 类引擎注入 + B/C/D 类 Description 触发 | **双轨制** |
|
||||
| 总 Skill 数量 | 42(现有)+ 4(蒸馏)| 42 + 15(新增)| **+15 个 Skill** |
|
||||
|
||||
---
|
||||
|
||||
## 十一、skill-router 详细设计
|
||||
|
||||
### 11.1 定位
|
||||
|
||||
`skill-router` 是 L3 路由层 Skill,作为 Agent 发现和使用其他 Skill 的入口。Agent 从 L1 SOUL.md 决策模式得知“执行任务前先读 skill-router”,在路由速查表中快速定位需要的 Skill。
|
||||
|
||||
### 11.2 内容结构
|
||||
|
||||
路由速查表按三个分类组织:
|
||||
|
||||
#### 分类 1:操作规范(A 类,6 个)
|
||||
|
||||
| Skill 名称 | 一句话定位 | 适用角色 |
|
||||
|------------|-----------|----------|
|
||||
| `blackboard-executor` | 执行者操作规范,定义能力列表、执行纪律、产出标准 | executor |
|
||||
| `blackboard-reviewer` | 通用审查者操作规范,审查思维 + Scope Reduction Detection | reviewer |
|
||||
| `blackboard-reviewer-simayi` | 司马懿特化审查,挑战者思维 + 审查层级 + 反驳权 | reviewer-simayi |
|
||||
| `blackboard-reviewer-pangtong` | 庞统 Review,三问框架 + 目标漂移检测 | reviewer-pangtong |
|
||||
| `blackboard-planner` | 规划者操作规范,规划思维 + 终态定义 | planner |
|
||||
| `blackboard-claim` | 广播认领操作规范,三级响应规则 | claim |
|
||||
|
||||
#### 分类 2:方法论(B 类,4 个)
|
||||
|
||||
| Skill 名称 | 一句话定位 | 触发场景 |
|
||||
|------------|-----------|----------|
|
||||
| `metacognition` | 置信度自评 + 升级机制 | 任务执行中不确定时 |
|
||||
| `scope-reduction-detection` | 反静默降级检查 | executor 自检 + reviewer 复检 |
|
||||
| `plan-approval-workflow` | 复杂任务先计划后执行 | 非平凡任务开始前 |
|
||||
| `team-collaboration` | Boids 协作规则 + 共享意识 | 多 Agent 协作时 |
|
||||
|
||||
#### 分类 3:经验参考(C 类 1 个 + D 类 3 个)
|
||||
|
||||
| Skill 名称 | 一句话定位 | 触发场景 |
|
||||
|------------|-----------|----------|
|
||||
| `review-quality` | 4 个评审质量模式 | 审查任务时 |
|
||||
| `trial-and-error-patterns` | 6 个试错模式 | 遇到类似问题时 |
|
||||
| `proven-practices` | 9 个成功最佳实践 | 寻找参考方案时 |
|
||||
| `self-reflection-wisdom` | 3 个自我反思模式 | 任务复盘时 |
|
||||
|
||||
### 11.3 L1 引导机制
|
||||
|
||||
在所有 Agent 的 SOUL.md 决策模式中加一条:
|
||||
|
||||
> 执行任务前,先读 skill-router Skill 查找相关操作规范和方法论
|
||||
|
||||
### 11.4 维护方式
|
||||
|
||||
- **维护者**:庞统(副军师)人工维护
|
||||
- **更新时机**:新增/修改/删除 Skill 时同步更新 skill-router 路由表
|
||||
- **更新流程**:创建/修改 Skill 文件 → 更新 skill-router 表格 → 重启 OpenClaw
|
||||
|
||||
### 11.5 Skill Description 编写规范
|
||||
|
||||
所有 Skill 的 description 必须包含以下要素,总长 ≤ 200 字:
|
||||
|
||||
1. **一句话定位**:这个 Skill 是什么
|
||||
2. **触发场景**:什么时候该用
|
||||
3. **核心能力**:能解决什么问题
|
||||
4. **触发词**(5-8 个关键词)
|
||||
5. **不触发词**:什么场景不该用
|
||||
|
||||
**示例**:
|
||||
|
||||
```yaml
|
||||
description: |
|
||||
黑板执行者操作规范。收到 moziplus 投递的执行任务时使用。
|
||||
包含能力列表、执行纪律、产出标准、交接责任。
|
||||
触发词:executor、执行、黑板执行、task execution、blackboard executor、任务执行、产出标准。
|
||||
不触发词:review、审查、规划、claim。
|
||||
```
|
||||
|
||||
### 11.6 BootstrapBuilder ROLE_SKILL_MAP 定义
|
||||
|
||||
```python
|
||||
ROLE_SKILL_MAP = {
|
||||
"executor": "blackboard-executor",
|
||||
"reviewer": "blackboard-reviewer",
|
||||
"reviewer-simayi": "blackboard-reviewer-simayi",
|
||||
"reviewer-pangtong": "blackboard-reviewer-pangtong",
|
||||
"planner": "blackboard-planner",
|
||||
"claim": "blackboard-claim",
|
||||
}
|
||||
```
|
||||
|
||||
### 11.7 Skill 目录结构(15 个新 Skill)
|
||||
|
||||
所有 Skill 放在 `~/.sanguo_projects/sanguo_mozi/skills/` 目录下:
|
||||
|
||||
```
|
||||
skills/
|
||||
├── skill-router/SKILL.md # 路由速查表
|
||||
├── blackboard-executor/SKILL.md # A 类
|
||||
├── blackboard-reviewer/SKILL.md # A 类
|
||||
├── blackboard-reviewer-simayi/SKILL.md # A 类
|
||||
├── blackboard-reviewer-pangtong/SKILL.md # A 类
|
||||
├── blackboard-planner/SKILL.md # A 类
|
||||
├── blackboard-claim/SKILL.md # A 类
|
||||
├── metacognition/SKILL.md # B 类
|
||||
├── scope-reduction-detection/SKILL.md # B 类
|
||||
├── plan-approval-workflow/SKILL.md # B 类
|
||||
├── team-collaboration/SKILL.md # B 类
|
||||
├── review-quality/SKILL.md # C 类
|
||||
├── trial-and-error-patterns/SKILL.md # D 类
|
||||
├── proven-practices/SKILL.md # D 类
|
||||
└── self-reflection-wisdom/SKILL.md # D 类
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 十二、L2 BootstrapBuilder 代码改动设计
|
||||
|
||||
### 12.1 输出结构
|
||||
|
||||
BootstrapBuilder 的 `build()` 方法输出 4 段内容:
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────┐
|
||||
│ 段 1: 任务上下文(~200 tokens) │
|
||||
│ title / description / must_haves / status │
|
||||
├─────────────────────────────────────────────┤
|
||||
│ 段 2: 前序产出(有依赖时注入) │
|
||||
│ depends_on 产出摘要 + handoff comment │
|
||||
├─────────────────────────────────────────────┤
|
||||
│ 段 3: 角色操作规范全文(~300 tokens) │
|
||||
│ 通过 ROLE_SKILL_MAP 从 Skill 文件读取 │
|
||||
│ 精确注入对应角色的 A 类 Skill 全文 │
|
||||
├─────────────────────────────────────────────┤
|
||||
│ 段 4: 硬约束(~100 tokens) │
|
||||
│ 完成后标 review / 产出物非空 / handoff ≥ 50字│
|
||||
└─────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
### 12.2 build() 核心逻辑
|
||||
|
||||
```python
|
||||
class BootstrapBuilder:
|
||||
"""L2 引擎注入层构建器"""
|
||||
|
||||
ROLE_SKILL_MAP = {
|
||||
"executor": "blackboard-executor",
|
||||
"reviewer": "blackboard-reviewer",
|
||||
"reviewer-simayi": "blackboard-reviewer-simayi",
|
||||
"reviewer-pangtong": "blackboard-reviewer-pangtong",
|
||||
"planner": "blackboard-planner",
|
||||
"claim": "blackboard-claim",
|
||||
}
|
||||
|
||||
SKILL_BASE_PATH = os.path.expanduser(
|
||||
"~/.sanguo_projects/sanguo_mozi/skills"
|
||||
)
|
||||
|
||||
def build(self, task: dict, role: str) -> str:
|
||||
"""构建 Agent 启动 prompt"""
|
||||
sections = []
|
||||
|
||||
# 段 1: 任务上下文
|
||||
sections.append(self._format_task_context(task))
|
||||
|
||||
# 段 2: 前序产出(有依赖时)
|
||||
if task.get("depends_on"):
|
||||
sections.append(self._format_prior_outputs(task))
|
||||
|
||||
# 段 3: 角色操作规范全文
|
||||
skill_name = self.ROLE_SKILL_MAP.get(role)
|
||||
if skill_name:
|
||||
skill_content = self._read_skill(skill_name)
|
||||
sections.append(skill_content)
|
||||
|
||||
# 段 4: 硬约束
|
||||
sections.append(self._format_constraints(role))
|
||||
|
||||
return "\n\n".join(sections)
|
||||
|
||||
def _read_skill(self, skill_name: str) -> str:
|
||||
"""从 Skill 文件读取全文"""
|
||||
path = os.path.join(self.SKILL_BASE_PATH, skill_name, "SKILL.md")
|
||||
with open(path) as f:
|
||||
return f.read()
|
||||
|
||||
def _format_constraints(self, role: str) -> str:
|
||||
"""格式化硬约束"""
|
||||
constraints = ["## 硬约束"]
|
||||
if role == "executor":
|
||||
constraints.extend([
|
||||
"- 完成后必须标 review",
|
||||
"- 产出物不能为空",
|
||||
"- handoff comment ≥ 50 字",
|
||||
])
|
||||
elif role.startswith("reviewer"):
|
||||
constraints.extend([
|
||||
"- 审查结果必须明确 pass/fail",
|
||||
"- 评审意见须附证据(文件:行号)",
|
||||
])
|
||||
return "\n".join(constraints)
|
||||
```
|
||||
|
||||
### 12.3 需要改的文件清单
|
||||
|
||||
| 文件 | 操作 | 说明 |
|
||||
|------|------|------|
|
||||
| `bootstrap.py` | **改造** | 加 ROLE_SKILL_MAP + _read_skill + _format_constraints |
|
||||
| `spawner.py` | **改造** | build_message() 走 BootstrapBuilder.build() 路径 |
|
||||
| `prompt_templates/executor.md` | **删除** | 已移到 Skill 文件 |
|
||||
| `prompt_templates/reviewer.md` | **删除** | 已移到 Skill 文件 |
|
||||
| `prompt_templates/review_simayi.md` | **删除** | 已移到 Skill 文件 |
|
||||
| `prompt_templates/review_pangtong.md` | **删除** | 已移到 Skill 文件 |
|
||||
| `prompt_templates/planner.md` | **删除** | 已移到 Skill 文件 |
|
||||
| `skill_system.py` | **删除** | 不再需要 SkillRegistry |
|
||||
| `experiences/` 目录 | **删除** | 已提炼为 D 类 Skill |
|
||||
|
||||
### 12.4 与旧版对比
|
||||
|
||||
| 维度 | 旧版 BootstrapBuilder | 新版 BootstrapBuilder |
|
||||
|------|----------------------|---------------------|
|
||||
| 数据源 | prompt_templates/ 目录 | Skill 文件 |
|
||||
| 组件数 | 7 个(任务上下文/项目背景/状态约束/前序信息/Guardrail/广播规则/审查规则) | 4 段(任务上下文/前序产出/角色操作规范/硬约束) |
|
||||
| 角色模板 | 读 .md 文件 | 读 Skill 文件(ROLE_SKILL_MAP) |
|
||||
| token 预算 | ~1500 | ~600 |
|
||||
| 经验注入 | experiences 表查询 | 无(靠 B/C/D 类 Skill 自主触发) |
|
||||
| 复杂度 | 高(7 个组件 + 条件注入 + tag 匹配) | 低(4 段 + 1 个映射表) |
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user