@wwkit/harness 1.0.8 → 1.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/agents/extract.md +2 -14
- package/agents/lint.md +367 -0
- package/agents/pyit.md +361 -0
- package/agents/pyut.md +347 -0
- package/agents/query.md +2 -14
- package/agents/revise.md +2 -14
- package/agents/work.md +151 -0
- package/commands/git-sync.md +218 -0
- package/commands/net-port.md +364 -0
- package/commands/pyit.md +6 -0
- package/commands/pyut.md +6 -0
- package/commands/resume.md +104 -0
- package/package.json +2 -2
- package/skills/better-skill/SKILL.md +124 -0
- package/skills/blame-skill/SKILL.md +201 -0
- package/skills/lint-ai-fix/SKILL.md +141 -0
- package/skills/lint-config-setup/SKILL.md +106 -0
- package/skills/lint-config-setup/references/languages/js.md +110 -0
- package/skills/lint-config-setup/references/languages/py.md +89 -0
- package/skills/lint-env-ensure/SKILL.md +92 -0
- package/skills/lint-env-ensure/references/config.md +65 -0
- package/skills/lint-language-detect/SKILL.md +79 -0
- package/skills/lint-language-detect/references/detect-language.js +65 -0
- package/skills/lint-rules-analyze/SKILL.md +129 -0
- package/skills/lint-suitability-check/SKILL.md +84 -0
- package/skills/lint-tool-fix/SKILL.md +94 -0
- package/skills/new-skill/SKILL.md +227 -0
- package/skills/new-skill/references/template.md +53 -0
- package/skills/new-skill/references/workflow-patterns.md +104 -0
- package/skills/pytest-case-create/SKILL.md +327 -0
- package/skills/pytest-case-create/references/test-standards.md +244 -0
- package/skills/pytest-case-fix/SKILL.md +274 -0
- package/skills/pytest-coverage-analyze/SKILL.md +226 -0
- package/skills/pytest-coverage-analyze/references/scoring-rules.md +57 -0
- package/skills/pytest-env-ensure/SKILL.md +198 -0
- package/skills/pytest-env-ensure/references/config.md +145 -0
- package/skills/pytest-execute/SKILL.md +155 -0
- package/skills/pytest-sample/SKILL.md +164 -0
- package/skills/pytest-sample/references/src/pytest-sample/Calculator.py +67 -0
- package/skills/pytest-sample/references/src/pytest-sample/ConfigManager.py +68 -0
- package/skills/pytest-sample/references/src/pytest-sample/FileProcessor.py +53 -0
- package/skills/pytest-sample/references/src/pytest-sample/OrderService.py +82 -0
- package/skills/pytest-sample/references/src/pytest-sample/TokenGenerator.py +50 -0
- package/skills/pytest-sample/references/src/pytest-sample/UserService.py +45 -0
- package/skills/pytest-sample/references/src/pytest-sample/__init__.py +0 -0
- package/skills/pytest-suitability-check/SKILL.md +224 -0
- package/skills/read-docs/SKILL.md +134 -0
- package/skills/read-docs/references/opencode/agents/cases.md +206 -0
- package/skills/read-docs/references/opencode/agents/design-pattern.md +47 -0
- package/skills/read-docs/references/opencode/agents/detail.md +191 -0
- package/skills/read-docs/references/opencode/agents/examples.md +100 -0
- package/skills/read-docs/references/opencode/agents/index.md +307 -0
- package/skills/read-docs/references/opencode/agents/workflow.md +161 -0
- package/skills/read-docs/references/opencode/cli/commands/acp.md +32 -0
- package/skills/read-docs/references/opencode/cli/commands/agent.md +16 -0
- package/skills/read-docs/references/opencode/cli/commands/attach.md +20 -0
- package/skills/read-docs/references/opencode/cli/commands/mcp.md +37 -0
- package/skills/read-docs/references/opencode/cli/commands/others.md +49 -0
- package/skills/read-docs/references/opencode/cli/commands/plugin.md +13 -0
- package/skills/read-docs/references/opencode/cli/commands/provider.md +44 -0
- package/skills/read-docs/references/opencode/cli/commands/run.md +81 -0
- package/skills/read-docs/references/opencode/cli/commands/serve.md +84 -0
- package/skills/read-docs/references/opencode/cli/commands/session.md +38 -0
- package/skills/read-docs/references/opencode/cli/commands/web.md +15 -0
- package/skills/read-docs/references/opencode/cli/env.md +39 -0
- package/skills/read-docs/references/opencode/cli/index.md +19 -0
- package/skills/read-docs/references/opencode/cli/tui.md +35 -0
- package/skills/read-docs/references/opencode/commands/examples.md +42 -0
- package/skills/read-docs/references/opencode/commands/index.md +185 -0
- package/skills/read-docs/references/opencode/config/provider.md +152 -0
- package/skills/read-docs/references/opencode/formatter/index.md +71 -0
- package/skills/read-docs/references/opencode/guide/config.md +419 -0
- package/skills/read-docs/references/opencode/guide/formatters.md +70 -0
- package/skills/read-docs/references/opencode/guide/index.md +37 -0
- package/skills/read-docs/references/opencode/guide/providers.md +31 -0
- package/skills/read-docs/references/opencode/guide/rules.md +63 -0
- package/skills/read-docs/references/opencode/plugins/examples.md +75 -0
- package/skills/read-docs/references/opencode/plugins/index.md +188 -0
- package/skills/read-docs/references/opencode/reference/index.md +119 -0
- package/skills/read-docs/references/opencode/rule/index.md +78 -0
- package/skills/read-docs/references/opencode/skills/detail.md +113 -0
- package/skills/read-docs/references/opencode/skills/examples.md +141 -0
- package/skills/read-docs/references/opencode/skills/index.md +126 -0
- package/skills/read-docs/references/opencode/skills/workflow.md +146 -0
- package/skills/read-docs/references/opencode/tests/agent.md +10 -0
- package/skills/read-docs/references/opencode/tests/config.md +60 -0
- package/skills/read-docs/references/opencode/tests/file.md +12 -0
- package/skills/read-docs/references/opencode/tests/serve.md +18 -0
- package/skills/read-docs/references/opencode/tests/session.md +31 -0
- package/skills/read-docs/references/opencode/tests/web.md +17 -0
- package/skills/read-docs/references/opencode/tools/arguments.md +305 -0
- package/skills/read-docs/references/opencode/tools/context.md +18 -0
- package/skills/read-docs/references/opencode/tools/custom.md +111 -0
- package/skills/read-docs/references/opencode/tools/detail.md +104 -0
- package/skills/read-docs/references/opencode/tools/examples.md +71 -0
- package/skills/read-docs/references/opencode/tools/index.md +56 -0
- package/skills/read-docs/references/opencode/tools/lsp.md +26 -0
- package/skills/read-docs/references/opencode/tools/mcp.md +132 -0
- package/skills/read-docs/references/opencode/train/README.md +135 -0
- package/skills/read-docs/references/opencode/train/agent-basic.md +772 -0
- package/skills/read-docs/references/opencode/train/command-basic.md +668 -0
- package/skills/read-docs/references/opencode/train/config-basic.md +509 -0
- package/skills/read-docs/references/opencode/train/index.md +164 -0
- package/skills/read-docs/references/opencode/train/practice.md +873 -0
- package/skills/read-docs/references/opencode/train/skill-basic.md +608 -0
- package/skills/read-docs/references/opencode/tui/commands/config.md +32 -0
- package/skills/read-docs/references/opencode/tui/commands/editor.md +47 -0
- package/skills/read-docs/references/opencode/tui/commands/index.md +125 -0
- package/skills/read-docs/references/opencode/tui/commands/init.md +5 -0
- package/skills/read-docs/references/opencode/tui/index.md +26 -0
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: new-skill
|
|
3
|
+
description: |
|
|
4
|
+
交互式引导创建符合最佳实践的 OpenCode Skill 定义文件,基于 blame-skill 评分规则逐项收集信息并生成高质量 SKILL.md。
|
|
5
|
+
提供:交互式引导流程、工作流模式参考、SKILL.md 模板、自动评分验证。
|
|
6
|
+
适用:新建 Skill 定义、Skill 脚手架生成、从零创建规范技能。
|
|
7
|
+
不适用:修改已有 Skill(使用 better-skill)、审查 Skill 质量(使用 blame-skill)、非 SKILL.md 文件创建。
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Skill 创建向导
|
|
11
|
+
|
|
12
|
+
## 工作流模式
|
|
13
|
+
|
|
14
|
+
本 Skill 采用 **上下文感知** 工作流:
|
|
15
|
+
|
|
16
|
+
1. **收集**:通过交互式问答逐项收集 Skill 定义所需信息
|
|
17
|
+
2. **决策**:根据收集的信息选择工作流模式和步骤设计
|
|
18
|
+
3. **生成**:基于模板和收集的信息生成 SKILL.md 及 references/ 文件
|
|
19
|
+
4. **验证**:调用 blame-skill 评分,确保达到 B 级(75分)以上
|
|
20
|
+
|
|
21
|
+
## 输入
|
|
22
|
+
|
|
23
|
+
| 参数 | 必填 | 类型 | 说明 |
|
|
24
|
+
|------|------|------|------|
|
|
25
|
+
| name | 是 | 字符串 | Skill 名称,须符合 `^[a-z0-9]+(-[a-z0-9]+)*$` 格式 |
|
|
26
|
+
| 其他信息 | 否 | 交互收集 | 通过阶段一的问答逐步收集,用户也可一次性提供 |
|
|
27
|
+
|
|
28
|
+
## 输出
|
|
29
|
+
|
|
30
|
+
- `packages/agent/src/skills/<name>/SKILL.md` — Skill 定义文件
|
|
31
|
+
- `packages/agent/src/skills/<name>/references/` — 参考文档目录(如需要)
|
|
32
|
+
- 创建报告(含 blame-skill 评分结果)
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## 阶段一:收集
|
|
37
|
+
|
|
38
|
+
**输入**:用户提供的 name 参数(或全部信息)
|
|
39
|
+
|
|
40
|
+
**操作**:通过交互式问答,逐项收集 Skill 定义的 6 类信息。如果用户在调用时已提供完整信息,则跳过对应问答。
|
|
41
|
+
|
|
42
|
+
### 1.1 基本信息(对应 Frontmatter 规范 15 分)
|
|
43
|
+
|
|
44
|
+
向用户收集:
|
|
45
|
+
|
|
46
|
+
| # | 问题 | 对应字段 | 约束 |
|
|
47
|
+
|---|------|---------|------|
|
|
48
|
+
| 1 | Skill 名称? | name | 必须符合 `^[a-z0-9]+(-[a-z0-9]+)*$`,与目录名一致 |
|
|
49
|
+
| 2 | 一句话描述核心能力? | description.具体能力 | 如"根据X规则对Y执行Z操作" |
|
|
50
|
+
| 3 | 适用场景? | description.适用 | 如"首次执行、定期扫描、问题修复" |
|
|
51
|
+
| 4 | 不适用场景? | description.不适用 | 如"功能逻辑Bug修复、性能优化" |
|
|
52
|
+
| 5 | 提供的资源? | description.提供 | 如"规则库、修复策略、迭代验证" |
|
|
53
|
+
|
|
54
|
+
**description 拼接规则**:将 2-5 的回答拼接为完整 description,控制在 50-300 字符:
|
|
55
|
+
```
|
|
56
|
+
{{核心能力}}。提供:{{提供资源}}。适用:{{适用场景}}。不适用:{{不适用场景}}。
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### 1.2 工作流模式(对应工作流匹配 20 分)
|
|
60
|
+
|
|
61
|
+
向用户收集:
|
|
62
|
+
|
|
63
|
+
| # | 问题 | 说明 |
|
|
64
|
+
|---|------|------|
|
|
65
|
+
| 6 | Skill 的核心执行逻辑是哪种? | 展示 5 种工作流模式供选择 |
|
|
66
|
+
|
|
67
|
+
**展示选项**(读取 `references/workflow-patterns.md` 中的摘要):
|
|
68
|
+
|
|
69
|
+
| 模式 | 特征 | 典型场景 |
|
|
70
|
+
|------|------|---------|
|
|
71
|
+
| 顺序工作流 | 步骤按固定顺序执行,无循环 | 提交流程、部署、迁移 |
|
|
72
|
+
| 迭代优化 | 执行→检查→改进→再检查,循环直到达标 | 质量修复、评分达标 |
|
|
73
|
+
| 多 MCP 协调 | 协调多个外部技能/工具 | 跨系统操作、多技能编排 |
|
|
74
|
+
| 上下文感知 | 根据运行时条件动态选择路径 | 条件分支、多模式切换 |
|
|
75
|
+
| 领域智能 | 基于知识库推理匹配 | 规则匹配、智能推荐 |
|
|
76
|
+
|
|
77
|
+
用户选择后,告知该模式的必要定义项(如迭代优化需定义目标条件和最大迭代次数)。
|
|
78
|
+
|
|
79
|
+
### 1.3 步骤设计(对应工作流完整性 5 分 + 指令可执行 3 分)
|
|
80
|
+
|
|
81
|
+
向用户收集:
|
|
82
|
+
|
|
83
|
+
| # | 问题 | 说明 |
|
|
84
|
+
|---|------|------|
|
|
85
|
+
| 7 | 列出 Skill 的主要执行步骤 | 每个步骤用一句话描述做什么 |
|
|
86
|
+
| 8 | 每个步骤的输入和输出分别是什么? | 如"输入:规则列表;输出:违规项清单" |
|
|
87
|
+
| 9 | 哪些步骤之间有循环? | 仅迭代优化模式需要,定义循环条件和终止策略 |
|
|
88
|
+
|
|
89
|
+
**步骤设计原则**:
|
|
90
|
+
- 每个步骤必须有明确的输入和输出
|
|
91
|
+
- 步骤粒度适中:太粗("处理文件")→ 拆分;太细("读取第1行")→ 合并
|
|
92
|
+
- 迭代类步骤必须定义:目标条件、最大迭代次数、终止策略
|
|
93
|
+
- 协调类步骤必须定义:调用的技能/工具、数据传递方式
|
|
94
|
+
|
|
95
|
+
### 1.4 输入输出规范(对应输入输出规范 5 分)
|
|
96
|
+
|
|
97
|
+
向用户收集:
|
|
98
|
+
|
|
99
|
+
| # | 问题 | 说明 |
|
|
100
|
+
|---|------|------|
|
|
101
|
+
| 10 | Skill 接受哪些参数? | 参数名、是否必填、类型、说明 |
|
|
102
|
+
| 11 | Skill 产生哪些输出? | 输出文件、报告格式、副作用 |
|
|
103
|
+
|
|
104
|
+
### 1.5 失败处理(对应失败处理 4 分)
|
|
105
|
+
|
|
106
|
+
向用户收集:
|
|
107
|
+
|
|
108
|
+
| # | 问题 | 说明 |
|
|
109
|
+
|---|------|------|
|
|
110
|
+
| 12 | 可能遇到哪些失败场景? | 文件不存在、语法错误、外部调用失败等 |
|
|
111
|
+
| 13 | 每种失败如何处理? | 回滚、重试、降级、跳过、人工介入 |
|
|
112
|
+
|
|
113
|
+
### 1.6 边界与资源(对应边界说明 5 分 + 渐进式加载 5 分)
|
|
114
|
+
|
|
115
|
+
向用户收集:
|
|
116
|
+
|
|
117
|
+
| # | 问题 | 说明 |
|
|
118
|
+
|---|------|------|
|
|
119
|
+
| 14 | 一定要做的事情? | 列出 3-8 条核心约束 |
|
|
120
|
+
| 15 | 一定不要做的事情? | 列出 3-8 条禁止项 |
|
|
121
|
+
| 16 | 是否有大量参考数据? | 如规则库、模板、配置等,有则放入 references/ |
|
|
122
|
+
|
|
123
|
+
**输出**:完整的 Skill 定义信息清单
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## 阶段二:生成
|
|
128
|
+
|
|
129
|
+
**输入**:阶段一收集的完整信息清单
|
|
130
|
+
|
|
131
|
+
**操作**:基于 `references/template.md` 模板和收集的信息,生成 SKILL.md 文件
|
|
132
|
+
|
|
133
|
+
**生成规则**:
|
|
134
|
+
|
|
135
|
+
1. **Frontmatter**:按模板格式拼接 name 和 description
|
|
136
|
+
2. **工作流声明**:在正文开头(一级标题后)添加工作流模式声明,列出步骤编号和名称
|
|
137
|
+
3. **输入输出表**:生成参数表和输出说明
|
|
138
|
+
4. **步骤正文**:每个步骤包含 `输入`/`操作`/`输出`/`失败`(如适用)四要素
|
|
139
|
+
5. **失败处理表**:汇总所有失败场景和处理方式
|
|
140
|
+
6. **一定要做/一定不要做**:列表格式
|
|
141
|
+
7. **references/ 目录**:如果用户提供了大量参考数据(规则库、模板等),创建对应文件
|
|
142
|
+
8. **行数控制**:主文件(SKILL.md)控制在 200 行以内,超出部分拆分到 references/
|
|
143
|
+
|
|
144
|
+
**输出**:
|
|
145
|
+
- `packages/agent/src/skills/<name>/SKILL.md`
|
|
146
|
+
- `packages/agent/src/skills/<name>/references/` 目录及文件(如需要)
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## 阶段三:验证
|
|
151
|
+
|
|
152
|
+
**输入**:生成的 SKILL.md 文件路径
|
|
153
|
+
|
|
154
|
+
**操作**:调用 blame-skill 对生成的 Skill 进行审计评分
|
|
155
|
+
|
|
156
|
+
**输出**:评分结果
|
|
157
|
+
|
|
158
|
+
**决策**:
|
|
159
|
+
|
|
160
|
+
| 条件 | 动作 |
|
|
161
|
+
|------|------|
|
|
162
|
+
| 得分 >= 75(B 级) | 输出创建报告,流程结束 |
|
|
163
|
+
| 得分 < 75 且迭代次数 < 3 | 调用 better-skill 自动优化,回到验证 |
|
|
164
|
+
| 得分 < 75 且迭代次数 >= 3 | 输出创建报告(含未达标说明和改进建议),流程结束 |
|
|
165
|
+
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
## 阶段四:输出
|
|
169
|
+
|
|
170
|
+
**输入**:生成的文件 + 评分结果
|
|
171
|
+
|
|
172
|
+
**操作**:生成创建报告
|
|
173
|
+
|
|
174
|
+
**输出**:
|
|
175
|
+
|
|
176
|
+
```markdown
|
|
177
|
+
## Skill 创建报告:[name]
|
|
178
|
+
|
|
179
|
+
### 生成文件
|
|
180
|
+
- SKILL.md:[行数] 行
|
|
181
|
+
- references/:[文件列表]
|
|
182
|
+
|
|
183
|
+
### 评分结果
|
|
184
|
+
- 得分:XX / 100(等级:X)
|
|
185
|
+
- 各项得分:[来自 blame-skill 的分项得分]
|
|
186
|
+
|
|
187
|
+
### 后续建议
|
|
188
|
+
- [如有未达标项,列出改进建议]
|
|
189
|
+
- 可使用 better-skill 进一步优化至 A 级
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## 失败处理
|
|
195
|
+
|
|
196
|
+
| 场景 | 处理方式 |
|
|
197
|
+
|------|---------|
|
|
198
|
+
| name 不符合命名规范 | 提示格式要求,要求用户重新输入 |
|
|
199
|
+
| 同名 Skill 已存在 | 提示用户确认是否覆盖,确认后继续 |
|
|
200
|
+
| 用户信息不完整 | 根据已有信息推断缺失项,用默认值填充并提示用户确认 |
|
|
201
|
+
| blame-skill 评分失败 | 跳过验证阶段,直接输出文件和手动验证建议 |
|
|
202
|
+
| better-skill 优化失败 | 输出当前文件和改进建议,由用户手动修改 |
|
|
203
|
+
|
|
204
|
+
## 一定要做
|
|
205
|
+
|
|
206
|
+
1. 按阶段一的问题顺序逐项收集信息,确保 6 类信息完整
|
|
207
|
+
2. 用户已提供的信息不重复询问
|
|
208
|
+
3. description 拼接后控制在 50-300 字符,包含具体能力、适用场景、不适用场景、提供资源
|
|
209
|
+
4. 工作流模式必须从 5 种标准模式中选择
|
|
210
|
+
5. 每个步骤必须定义输入和输出
|
|
211
|
+
6. 生成的 SKILL.md 必须包含工作流声明、输入输出表、失败处理、一定要做/一定不要做
|
|
212
|
+
7. 主文件控制在 200 行以内,超出部分拆分到 references/
|
|
213
|
+
8. 生成后必须调用 blame-skill 验证评分
|
|
214
|
+
|
|
215
|
+
## 一定不要做
|
|
216
|
+
|
|
217
|
+
1. 不要跳过交互收集直接生成(除非用户提供了完整信息)
|
|
218
|
+
2. 不要使用 5 种标准工作流以外的自定义模式
|
|
219
|
+
3. 不要生成没有输入输出定义的步骤
|
|
220
|
+
4. 不要在 description 中省略适用场景或不适用场景
|
|
221
|
+
5. 不要生成超过 200 行且无 references/ 拆分的 SKILL.md
|
|
222
|
+
6. 不要修改 blame-skill 的评分规则或 better-skill 的优化逻辑
|
|
223
|
+
|
|
224
|
+
## 参考资源
|
|
225
|
+
|
|
226
|
+
- `references/template.md`:SKILL.md 生成模板
|
|
227
|
+
- `references/workflow-patterns.md`:5 种工作流模式详细参考
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# Skill 模板
|
|
2
|
+
|
|
3
|
+
本文件为 new-skill 技能使用的 SKILL.md 生成模板。`{{占位符}}` 由收集的信息填充。
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
```yaml
|
|
8
|
+
---
|
|
9
|
+
name: {{name}}
|
|
10
|
+
description: |
|
|
11
|
+
{{description_capability}}。提供:{{description_resources}}。适用:{{description_applicable}}。不适用:{{description_not_applicable}}。
|
|
12
|
+
---
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
```markdown
|
|
16
|
+
# {{title}}
|
|
17
|
+
|
|
18
|
+
## 工作流模式
|
|
19
|
+
|
|
20
|
+
本 Skill 采用 **{{workflow_type}}** 工作流:
|
|
21
|
+
|
|
22
|
+
{{workflow_steps}}
|
|
23
|
+
|
|
24
|
+
## 输入
|
|
25
|
+
|
|
26
|
+
| 参数 | 必填 | 类型 | 说明 |
|
|
27
|
+
|------|------|------|------|
|
|
28
|
+
{{input_rows}}
|
|
29
|
+
|
|
30
|
+
## 输出
|
|
31
|
+
|
|
32
|
+
{{output_desc}}
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
{{stages}}
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## 失败处理
|
|
41
|
+
|
|
42
|
+
| 场景 | 处理方式 |
|
|
43
|
+
|------|---------|
|
|
44
|
+
{{failure_rows}}
|
|
45
|
+
|
|
46
|
+
## 一定要做
|
|
47
|
+
|
|
48
|
+
{{must_do_items}}
|
|
49
|
+
|
|
50
|
+
## 一定不要做
|
|
51
|
+
|
|
52
|
+
{{must_not_do_items}}
|
|
53
|
+
```
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# 工作流模式参考
|
|
2
|
+
|
|
3
|
+
创建 Skill 时,必须从以下 5 种工作流模式中选择一种。选择依据是 Skill 的核心执行逻辑。
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 1. 顺序工作流
|
|
8
|
+
|
|
9
|
+
**特征**:步骤按固定顺序依次执行,前一步的输出是后一步的输入,无循环。
|
|
10
|
+
|
|
11
|
+
**适用场景**:提交流程、部署流程、文件迁移、一次性转换。
|
|
12
|
+
|
|
13
|
+
**声明格式**:
|
|
14
|
+
```markdown
|
|
15
|
+
本 Skill 采用 **顺序工作流**:
|
|
16
|
+
1. **阶段A**:描述
|
|
17
|
+
2. **阶段B**:描述
|
|
18
|
+
3. **阶段C**:描述
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
**示例**:git-feat(分支→暂存→提交→推送→集成)
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## 2. 迭代优化工作流
|
|
26
|
+
|
|
27
|
+
**特征**:执行→检查→改进→再检查,循环直到达标或达到最大迭代次数。
|
|
28
|
+
|
|
29
|
+
**适用场景**:代码质量修复、文档优化、评分达标、搜索精炼。
|
|
30
|
+
|
|
31
|
+
**声明格式**:
|
|
32
|
+
```markdown
|
|
33
|
+
本 Skill 采用 **迭代优化** 工作流:
|
|
34
|
+
1. **执行**:描述
|
|
35
|
+
2. **检查**:描述
|
|
36
|
+
3. **判断**:达标→输出 / 未达标→改进
|
|
37
|
+
4. **改进**:描述
|
|
38
|
+
5. **循环**:回到步骤2
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
**必须定义**:目标条件、最大迭代次数、终止策略。
|
|
42
|
+
|
|
43
|
+
**示例**:pipeline-check(检查→修复→验证→迭代)、better-skill(评估→改进→重评→迭代)
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## 3. 多 MCP 协调工作流
|
|
48
|
+
|
|
49
|
+
**特征**:协调多个外部工具/技能/服务,主 Skill 负责调度和汇总。
|
|
50
|
+
|
|
51
|
+
**适用场景**:跨系统操作、多技能编排、API 聚合。
|
|
52
|
+
|
|
53
|
+
**声明格式**:
|
|
54
|
+
```markdown
|
|
55
|
+
本 Skill 采用 **多 MCP 协调** 工作流:
|
|
56
|
+
1. **调度**:描述如何选择和调用外部技能/工具
|
|
57
|
+
2. **协调**:描述数据在多个调用间如何传递
|
|
58
|
+
3. **汇总**:描述如何合并多个结果
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
**必须定义**:协调的技能/工具列表、数据传递方式、部分失败处理。
|
|
62
|
+
|
|
63
|
+
**示例**:pipeline-fix(读取bug→提取→生成→协调pipeline-check→输出)
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## 4. 上下文感知工作流
|
|
68
|
+
|
|
69
|
+
**特征**:根据运行时环境、用户输入或文件状态动态选择执行路径。
|
|
70
|
+
|
|
71
|
+
**适用场景**:条件分支处理、环境适配、多模式切换。
|
|
72
|
+
|
|
73
|
+
**声明格式**:
|
|
74
|
+
```markdown
|
|
75
|
+
本 Skill 采用 **上下文感知** 工作流:
|
|
76
|
+
1. **感知**:描述如何检测上下文(环境变量、文件状态、用户输入)
|
|
77
|
+
2. **决策**:描述根据上下文选择哪条执行路径
|
|
78
|
+
3. **执行**:描述各条路径的处理逻辑
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
**必须定义**:上下文检测方式、分支条件、每条分支的完整流程。
|
|
82
|
+
|
|
83
|
+
**示例**:pipeline-check(根据是否提供rules参数选择全量/定向模式)
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## 5. 领域智能工作流
|
|
88
|
+
|
|
89
|
+
**特征**:基于领域知识库进行推理、匹配和生成,核心是知识驱动而非流程驱动。
|
|
90
|
+
|
|
91
|
+
**适用场景**:规则匹配、知识问答、智能推荐、模式识别。
|
|
92
|
+
|
|
93
|
+
**声明格式**:
|
|
94
|
+
```markdown
|
|
95
|
+
本 Skill 采用 **领域智能** 工作流:
|
|
96
|
+
1. **加载**:加载领域知识库(references/)
|
|
97
|
+
2. **匹配**:将输入与知识库中的模式/规则进行匹配
|
|
98
|
+
3. **推理**:基于匹配结果进行推理或生成
|
|
99
|
+
4. **输出**:描述输出格式
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
**必须定义**:知识库位置和格式、匹配/推理逻辑。
|
|
103
|
+
|
|
104
|
+
**示例**:blame-skill(加载评分规则→匹配Skill特征→评分推理→输出报告)
|