Install
openclaw skills install @iichaner/harness-skill-generator引导用户从 0 构建一个基于 Harness 工程的 Skill。适用于具有一定复杂度的任务场景(多阶段、多分支、需要质检、需要状态持久化)。不适用于简单的单步任务或纯 prompt 优化。触发词:'创建 Skill'、'新建 Skill'、'做一个 Skill'、'构建 Skill'、'skill generator'、'harness skill'。
openclaw skills install @iichaner/harness-skill-generatorPhase 0 Trigger 用户说"创建/新建一个 Skill" → 判断是否需要 harness
▼
Phase 1 Problem Scan 收集痛点 + 边界定义 + 人类工作流拆解 + 步骤归属审查
└ ★Checkpoint 1 确认:痛点 / 边界 / 人类工作流 / 步骤归属
▼
Phase 2 Agent Architecture 方案调研 → 总体方案概览 → 逐项细化每个阶段
└ ★Checkpoint 2 分两步:先确认总体方案,再逐项确认每个阶段
▼
Phase 3 Scaffold 生成文件结构 + SKILL.md 骨架
▼
Phase 4 Fill 逐个填写 references/,逐个与用户确认
└ ★Checkpoint 3 验收:用一个小样本跑通,人类确认方向对
▼
Phase 5 Test Run 用真实任务试运行完整流程 + 修复
▼
Phase 6 Delivery 交付 + 交付确认 + 项目复盘
| 节点 | 方式 | 产物 | 为什么 |
|---|---|---|---|
| Phase 1-2 各阶段 | 主 Agent 内联自查(上下文矛盾排查) | 无 | 主 Agent 热上下文,自己检查关联性 |
| Phase 3 骨架 | 主 Agent 内联自查 | 无 | 文件少,结构简单 |
| Phase 4 每个 reference | 用户逐个确认 | 无 | 逐个确认方向对 |
| Phase 4 整体审查 | SubAgent + 消息返回 | 无 | 交付前一致性审查 |
| Phase 4 Checkpoint 3 | 用户跑小样本验收 | checkpoint-3-review.md | 定调,防止方向错 |
| Phase 5 试运行 | 用户 + Agent 联合验收 | test-run-report.md | 最终验收 |
做什么: 判断用户需求是否需要 harness 工程。
| 用户说的话 | 该做的 |
|---|---|
| "创建/新建一个 Skill" | 进入 Phase 1 |
| "帮我做一个 XX 的自动化流程" | 进入 Phase 1(可能是 harness 场景) |
| "帮我写一个 prompt" | 问清楚:是单步任务还是多步?如果是多步 → 推荐进入本 Skill |
| "修改/升级已有的 Skill" | 停下来:不在本 Skill 范围内 |
自检: 用户的任务是否有以下特征?
如果有 2 个以上 → 推荐用 harness 工程。 如果只有 1 个或没有 → 建议用简化方案。
做什么: 定义问题 → 收集痛点 → 拆解人类工作流 → 步骤归属审查。
问用户两个问题:
问题 1: "你想利用这个 Skill 解决什么问题?"
问题 2: "你在自己处理这个问题的过程中,想要解决的痛点是什么?"
记录为 plan/problem-definition.md。
基于问题和痛点,定义 Skill 的边界:
问用户:"如果是你人工来做这件事,你的步骤是什么?"
要求用户按步骤列出,每步包括:做什么 / 输入 / 输出 / 最容易出错的地方。
记录为 plan/human-workflow.md。
对人类描述的每个步骤,判断:这一步是解决当前问题所必需的,还是属于另一个独立任务?
确认项:
铁律:每项独立确认,禁止打包。
做什么: 基于人类工作流,设计 Agent 工作流。
在设计 Agent 方案之前,先调研市场上的成熟解决方案。
调研优先级(从高到低):
| 优先级 | 方案来源 | 适用场景 | 举例 |
|---|---|---|---|
| P0 · 市场成熟方案 | 权威 SaaS 软件 / 行业标准工具 / 官方 API | 通用任务,市场上已有成熟方案 | 数据采集用 Apify/八爪鱼;内容生成用 Jasper/Copy.ai |
| P1 · Agent 原生能力 | Agent 自身能力(脚本/API/推理)替代人类操作 | 市场方案不适用,但 Agent 有更高效的方式 | 人类逐个复制 → Agent 批量提取;人类手动分析 → Agent 结构化推理 |
| P2 · 模拟人类行为 | 浏览器自动化 / RPA / 模拟点击 | 平台限制严格,无法用 API 或脚本绕过 | 小红书/BOSS直聘等有反爬机制的平台 |
★ 特殊情况:平台限制场景
当任务涉及小红书、BOSS 直聘等有反爬虫/反 AI 政策的平台时,优先级反转:
调研输出 plan/solution-research.md,包含:
不能一步生成所有工作阶段方案。 必须分两步:
第一步:给用户看总体方案概览
## 总体方案
### 工作阶段概览
| 阶段 | 名称 | 一句话描述 | 依赖 |
|---|---|---|---|
| Phase 0 | [名称] | [做什么] | - |
| Phase 1 | [名称] | [做什么] | Phase 0 |
| ... | ... | ... | ... |
### 分支路由概览
[如有分支,列出条件和路径]
### 关键决策点
[列出需要人类确认的节点]
等用户确认总体方案后,进入第二步。
第二步:逐项细化每个阶段
对每个阶段,逐一与用户确认:
每个阶段确认完毕后,才能进入下一个阶段的细化。
输出 plan/agent-workflow.md,包含所有阶段的完整定义。
如果任务有多条路径,设计路由规则:
## 分支路由
| 条件 | 路径 | 优先级 |
|---|---|---|
| [条件1] | 方案A | P0 |
| [条件2] | 方案B | P1 |
| [条件3] | 方案C | P2 |
| 无法判断 | ★停下来问用户 | - |
铁律:无法判断时必须停下来问用户,不能猜。
对每个阶段设计质检方式:
| 阶段 | 产出 | 风险 | 质检方式 | 产物 |
|---|---|---|---|---|
| [阶段名] | [文件] | 低/中/高/最高 | 内联自查/SubAgent+消息/SubAgent+文件 | [无/review/xxx.md] |
定义项目工作区结构:
<project>/
├── [状态文件1] [作用]
├── [状态文件2] [作用]
├── [产出目录]/
│ └── [产出文件]
└── review/
└── [审查文件](按需)
分两步确认:
第一步:确认总体方案
第二步:逐项确认每个阶段
对每个阶段,独立确认:
铁律:每个阶段独立确认,不能一次性全部确认。Agent 必须解释每个设计决策的理由。
做什么: 生成 Skill 文件结构 + SKILL.md 骨架。
mkdir -p <skill-name>/{references,templates}
按以下模板生成,只填骨架不填细节:
---
name: <skill-name>
description: "<一句话描述> + 触发词:<触发词列表>"
---
# <Skill 名称>
## 边界
[从 Phase 1.2 填入]
## 工作流
[从 Phase 2.2 填入阶段名和箭头]
## 质检协议
[从 Phase 2.4 填入表格]
## Phase 0 - [名称]
做什么(2-3行)
必读:references/xxx.md
## Phase 1 - [名称]
...
## ★Checkpoint N - [名称] ★硬节点
确认项:[清单]
铁律:[约束]
## 铁律
[从 Phase 2 提取最重要的 3-7 条约束]
为每个阶段创建一个 reference 文件骨架:
references/
├── [阶段1]-rules.md Phase 1 的详细规则
├── [阶段2]-template.md Phase 2 的模板
├── quality-checklist.md 质检清单
├── style-contract.md 风格契约(如有输出格式要求)
├── branch-routing.md 分支路由规则(如有多分支)
└── repair-rules.md 修复规则
做什么: 逐个填写 references/ 的内容,逐个与用户确认。
1. quality-checklist.md 质检清单(先定义标准,再写规则)
2. style-contract.md 风格契约(如有)
3. [阶段1]-rules.md 第一个阶段的详细规则
4. [阶段2]-template.md 第二个阶段的模板
5. ... 按阶段顺序逐个填写
6. branch-routing.md 分支路由规则(最后写,因为需要全局视角)
7. repair-rules.md 修复规则(最后写)
每个 reference 文件必须包含:
不能一次性全部写完让用户自己看。必须逐个确认:
所有 reference 写完 + 用户逐个确认通过后,交付前进行一次整体审查:
在填写完所有 reference 后,用一个小样本跑通 Phase 0-2(至少到第一个 Checkpoint)。
确认项:
铁律:人类必须验收小样本后才能进入 Phase 5 全量测试。
做什么: 用一个真实的、中等复杂度的任务试运行完整 Skill 流程。
test-run-report.md做什么: 交付完整 Skill + 使用说明 + 项目复盘。
/Users/ii/.agents/skills/<skill-name>/(所有 Agent 共享)交付后不能直接结束。必须与用户确认:
只有用户确认"任务完成"后,才能进入复盘。
生成 project-summary.md,包含:
# 项目总结 - [Skill 名称]
## 1. 任务目标
[简要描述最初的任务目标]
## 2. 交付评估
- [ ] 交付物是否完整?
- [ ] 是否满足任务目标?
- [ ] 用户是否确认完成?
## 3. 过程记录
### 3.1 是否有返工/中断/调整?
| # | 阶段 | 调整内容 | 原因分析 |
|---|---|---|---|
| 1 | [阶段] | [改了什么] | [为什么] |
### 3.2 调整原因分类
对每个调整,分析根因:
- **A. 任务目标不清晰** - 当初需求细化不够,导致中途改方向
- **B. 用户预期调整** - 用户在过程中改变了想法(合理调整)
- **C. Skill 能力不足** - Skill 的设计有缺陷,无法处理某种情况
### 3.3 Skill 优化建议
如果调整原因属于 C(Skill 能力不足),记录优化建议:
| # | 问题 | 优化建议 | 优先级 |
|---|---|---|---|
| 1 | [问题] | [怎么改 Skill] | P0/P1/P2 |
## 4. 总结
[一句话总结本次项目的关键收获]
复盘的目的: 把本次项目的经验变成下次可以复用的资产。如果发现 Skill 的缺陷,记录优化建议,方便后续迭代。
| 阶段 | 必读 | 按需查 |
|---|---|---|
| Phase 0 Trigger | -- | -- |
| Phase 1 Problem Scan | references/problem-scan-guide.md | -- |
| Phase 2 Architecture | references/architecture-guide.md, references/branch-routing.md | references/quality-matrix.md |
| Phase 3 Scaffold | references/scaffold-template.md | -- |
| Phase 4 Fill | references/reference-writing-guide.md, references/style-contract.md | references/quality-checklist.md |
| Phase 5 Test Run | references/test-run-guide.md | -- |
| Phase 6 Delivery | -- | -- |