kungeskill 0.1.0 → 0.3.0

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.
@@ -0,0 +1,37 @@
1
+ {
2
+ "name": "kunge-skills",
3
+ "owner": {
4
+ "name": "kunge2013",
5
+ "email": "kun_ja@163.com"
6
+ },
7
+ "description": "OpenSpec-based development workflow skills for Claude Code",
8
+ "plugins": [
9
+ {
10
+ "name": "openspec-workflow",
11
+ "source": "./plugins/openspec-workflow",
12
+ "description": "Spec-driven change lifecycle: explore, propose, apply, archive",
13
+ "author": { "name": "kunge2013" },
14
+ "license": "MIT",
15
+ "keywords": ["openspec", "workflow", "spec-driven", "planning"],
16
+ "category": "workflow"
17
+ },
18
+ {
19
+ "name": "openspec-trace",
20
+ "source": "./plugins/openspec-trace",
21
+ "description": "Code analysis and business logic knowledge base",
22
+ "author": { "name": "kunge2013" },
23
+ "license": "MIT",
24
+ "keywords": ["openspec", "knowledge-base", "code-analysis", "documentation"],
25
+ "category": "documentation"
26
+ },
27
+ {
28
+ "name": "publish",
29
+ "source": "./plugins/publish",
30
+ "description": "Package publishing skills — npm, PyPI, and other registries",
31
+ "author": { "name": "kunge2013" },
32
+ "license": "MIT",
33
+ "keywords": ["npm", "publish", "registry", "package"],
34
+ "category": "devops"
35
+ }
36
+ ]
37
+ }
package/README.md CHANGED
@@ -6,13 +6,48 @@ This marketplace provides reusable skills that enable a spec-driven approach to
6
6
 
7
7
  ## Installation
8
8
 
9
- ### Add the marketplace
9
+ ### Option 1: Install kungeskill CLI (Recommended)
10
+
11
+ Manage skills via npm — install, remove, update skills with one command.
12
+
13
+ ```bash
14
+ # Install globally
15
+ npm install -g kungeskill
16
+
17
+ # Initialize marketplace cache (first time only)
18
+ kungeskill init
19
+
20
+ # View available skills
21
+ kungeskill list
22
+
23
+ # Install a skill (creates symlink in your project)
24
+ cd your-project
25
+ kungeskill add openspec-explore
26
+ ```
27
+
28
+ **CLI Commands:**
29
+
30
+ | Command | Description |
31
+ |---------|-------------|
32
+ | `kungeskill init` | Download marketplace cache (first time only) |
33
+ | `kungeskill list` | List all available skills |
34
+ | `kungeskill add <skill>` | Install a skill into your project via symlink |
35
+ | `kungeskill remove <skill>` | Remove a skill from your project |
36
+ | `kungeskill view` | Show installed skills with health status |
37
+ | `kungeskill update` | Update marketplace cache to latest |
38
+ | `kungeskill doctor` | Check symlink health and detect broken links |
39
+
40
+ ### Option 2: Claude Code Plugin Marketplace
41
+
42
+ Install skills via Claude Code's built-in plugin system.
43
+
44
+ #### Add the marketplace
10
45
 
11
46
  ```
12
47
  /plugin marketplace add kunge2013/skills
13
48
  ```
14
49
 
15
- ### Install individual plugins
50
+ #### Install individual plugins
16
51
 
17
52
  ```
18
53
  # Spec-driven change lifecycle (explore, propose, apply, archive)
@@ -22,7 +57,7 @@ This marketplace provides reusable skills that enable a spec-driven approach to
22
57
  /plugin install openspec-trace@kunge-skills
23
58
  ```
24
59
 
25
- ### Update to latest
60
+ #### Update to latest
26
61
 
27
62
  ```
28
63
  /plugin marketplace update kunge-skills
@@ -62,6 +97,7 @@ Code analysis and business logic knowledge base. Enables you to:
62
97
 
63
98
  - OpenSpec (spec-driven development workflow)
64
99
  - Claude Code skills framework
100
+ - Node.js >= 18 (kungeskill CLI)
65
101
 
66
102
  ## License
67
103
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kungeskill",
3
- "version": "0.1.0",
3
+ "version": "0.3.0",
4
4
  "description": "Manage Claude Code skills via symlinks — install, remove, update skills from a marketplace cache",
5
5
  "main": "src/cli.js",
6
6
  "bin": {
@@ -10,7 +10,9 @@
10
10
  "node": ">=18"
11
11
  },
12
12
  "files": [
13
- "src/**/*.js"
13
+ "src/**/*.js",
14
+ "plugins/**/*",
15
+ ".claude-plugin/**/*"
14
16
  ],
15
17
  "scripts": {
16
18
  "start": "node src/cli.js",
@@ -0,0 +1,6 @@
1
+ {
2
+ "name": "openspec-trace",
3
+ "description": "Code analysis and business logic knowledge base with versioned design documents",
4
+ "author": { "name": "kunge2013" },
5
+ "license": "MIT"
6
+ }
@@ -0,0 +1,154 @@
1
+ ---
2
+ name: opst-business-search
3
+ description: >
4
+ 检索 openspec/<领域>/<模块>/ 知识库中已归档的业务逻辑文档。支持关键词检索、领域浏览、精确模块查看三种模式。当用户提到"业务检索"、"搜索业务逻辑"、"business-search"、"查找模块"时使用此技能。
5
+ license: MIT
6
+ compatibility: Requires openspec CLI.
7
+ metadata:
8
+ author: fangkun
9
+ version: "1.0"
10
+ generatedBy: "openspec-trace@1.0.0"
11
+ ---
12
+
13
+ 在 openspec/<领域>/<模块>/ 知识库中检索已归档的业务逻辑文档。
14
+
15
+ ## 检索模式
16
+
17
+ | 模式 | 触发条件 | 示例 |
18
+ |------|----------|------|
19
+ | **关键词检索** | 用户提供具体关键词 | `payment`、`销账`、`write-off` |
20
+ | **浏览模式** | 用户要求"列出所有"或"展示领域" | `列出所有模块`、`展示领域` |
21
+ | **精确查看** | 用户指定具体模块或文档版本 | `查看 billing/payment-processing` |
22
+
23
+ ---
24
+
25
+ ## 工作流
26
+
27
+ ### 步骤 1:解析查询
28
+
29
+ 从用户输入提取关键词,判断检索模式:
30
+
31
+ - **浏览模式**:用户输入包含"列出"、"所有"、"展示领域"、"list"、"all" → 浏览模式
32
+ - **精确查看**:用户输入包含 `领域/模块` 路径格式(如 `billing/payment-processing`) → 精确查看
33
+ - **关键词检索**:其他情况 → 关键词检索
34
+
35
+ **若用户未提供任何输入**:使用 **AskUserQuestion** 询问检索关键词,并提供模式选项。
36
+
37
+ **检查知识库是否存在**:
38
+
39
+ 若 `openspec/openspec-trace/GLOBAL_INDEX.md` 不存在,提示用户先执行 `/opst:code-anysic` 归档业务逻辑后再检索。
40
+
41
+ ### 步骤 2:执行检索
42
+
43
+ #### 关键词检索模式
44
+
45
+ 1. 读取全局索引:
46
+ ```
47
+ Read: openspec/openspec-trace/GLOBAL_INDEX.md
48
+ ```
49
+ 2. 在"按关键词"表中匹配关键词列(精确匹配优先,模糊匹配补充)
50
+ 3. 在"按领域"表中匹配模块名称和领域名称
51
+ 4. 扫描各模块 INDEX.md 进行深度匹配:
52
+ ```
53
+ Glob: openspec/**/INDEX.md
54
+ ```
55
+ 对每个 INDEX.md:
56
+ ```
57
+ Grep: <关键词> → openspec/<领域>/<模块>/INDEX.md
58
+ ```
59
+ 5. 合并结果,按相关性排序(精确匹配 > 模块名匹配 > 内容匹配)
60
+
61
+ #### 浏览模式
62
+
63
+ ```
64
+ Read: openspec/openspec-trace/GLOBAL_INDEX.md
65
+ ```
66
+ 直接展示完整的按领域分类树。
67
+
68
+ #### 精确查看模式
69
+
70
+ 读取指定模块的索引文件:
71
+ ```
72
+ Read: openspec/<领域>/<模块>/INDEX.md
73
+ ```
74
+
75
+ 若用户还指定了版本号(如 `v1`):
76
+ ```
77
+ Glob: openspec/<领域>/<模块>/v1-*.md
78
+ Read: openspec/<领域>/<模块>/v1-<日期>.md
79
+ ```
80
+
81
+ ### 步骤 3:展示结果
82
+
83
+ #### 关键词检索结果格式
84
+
85
+ ```
86
+ 检索关键词:"<关键词>"
87
+
88
+ 找到 <N> 个匹配模块:
89
+
90
+ ### <领域>/<模块>
91
+ 领域:<领域>
92
+ 入口:<入口类名>(<HTTP方法> <路径>)
93
+ 版本:v<N>(<日期>)
94
+ 关键词:<keyword1>, <keyword2>, ...
95
+ 摘要:<模块概述>
96
+ ```
97
+
98
+ 每个匹配模块后提供 **AskUserQuestion** 后续操作选项:
99
+ - 查看完整 INDEX.md
100
+ - 查看 CHANGELOG.md(版本历史)
101
+ - 阅读指定版本的设计文档
102
+
103
+ #### 浏览模式结果格式
104
+
105
+ 直接展示 GLOBAL_INDEX.md 内容,然后询问用户是否需要查看某个具体模块。
106
+
107
+ #### 精确查看结果格式
108
+
109
+ 展示 INDEX.md 完整内容,然后询问用户是否需要阅读具体版本的设计文档。
110
+
111
+ ### 步骤 4(可选):JSON 输出
112
+
113
+ 若用户要求 JSON 输出(提到 `--json` 或"以 JSON 输出"):
114
+
115
+ ```json
116
+ {
117
+ "query": "<关键词>",
118
+ "mode": "search | browse | exact",
119
+ "results": [
120
+ {
121
+ "domain": "<领域>",
122
+ "module": "<模块>",
123
+ "index_path": "openspec/<领域>/<模块>/INDEX.md",
124
+ "versions": [
125
+ {
126
+ "version": "<N>",
127
+ "date": "<YYYY-MM-DD>",
128
+ "change": "<变更名>",
129
+ "doc_path": "openspec/<领域>/<模块>/v<N>-<日期>.md"
130
+ }
131
+ ],
132
+ "keywords": ["<keyword1>", "<keyword2>"],
133
+ "entry_points": [
134
+ {
135
+ "url": "<HTTP方法> <路径>",
136
+ "method": "<方法名>()",
137
+ "file": "<Controller文件名>:<行号>"
138
+ }
139
+ ],
140
+ "summary": "<模块概述>"
141
+ }
142
+ ]
143
+ }
144
+ ```
145
+
146
+ ---
147
+
148
+ ## 注意事项
149
+
150
+ 1. **知识库不存在时**:若 `openspec/openspec-trace/GLOBAL_INDEX.md` 不存在,提示用户先执行 `/opst:code-anysic` 归档业务逻辑后再检索
151
+ 2. **无匹配结果时**:展示现有所有领域树,提示用户尝试其他关键词
152
+ 3. **关键词模糊匹配**:支持中英文混合匹配(如搜索 "sales" 可匹配中文描述中的"销账")
153
+ 4. **深度查看**:查看设计文档时,如文档较长,优先展示接口定义和业务流程图章节
154
+ 5. **版本历史**:展示模块时默认显示最新版本信息,用户可指定查看历史版本
@@ -0,0 +1,237 @@
1
+ ---
2
+ name: opst-code-anysic
3
+ description: >
4
+ 分析已归档的 OpenSpec 变更代码,提取业务逻辑并自动归档到 openspec/<领域>/<模块>/ 知识库。继承 code2doc-kunge2013 的五段式文档生成逻辑,并扩展为版本化归档、三级索引维护。当用户提到"代码归档"、"业务逻辑归档"、"code-anysic"、"分析变更代码"时使用此技能。
5
+ license: MIT
6
+ compatibility: Requires openspec CLI and git.
7
+ metadata:
8
+ author: fangkun
9
+ version: "1.0"
10
+ generatedBy: "openspec-trace@1.0.0"
11
+ ---
12
+
13
+ 分析已归档的 OpenSpec 变更代码,提取业务逻辑并自动归档到 openspec/<领域>/<模块>/ 知识库。
14
+
15
+ ## 工作流
16
+
17
+ ### 步骤 1:确定分析目标
18
+
19
+ 若用户未提供变更名称,列出已归档的变更供选择:
20
+
21
+ ```bash
22
+ ls -t openspec/changes/archive/
23
+ ```
24
+
25
+ 使用 **AskUserQuestion** 让用户从列表中选择目标变更。
26
+
27
+ **重要**:必须经用户确认后才能继续。
28
+
29
+ ### 步骤 2:读取变更上下文
30
+
31
+ 并行读取以下文件,提取功能描述、技术领域、模块名称:
32
+
33
+ - `openspec/changes/archive/<变更名>/proposal.md`
34
+ - `openspec/changes/archive/<变更名>/design.md`
35
+ - `openspec/changes/archive/<变更名>/tasks.md`
36
+
37
+ ### 步骤 3:分析代码变更
38
+
39
+ 通过 git log 定位该变更对应的 commit 范围,获取涉及的文件列表:
40
+
41
+ ```bash
42
+ git log --oneline -20
43
+ git diff <base-commit>..<head-commit> --name-only
44
+ ```
45
+
46
+ 将文件按层次分类:
47
+
48
+ | 分类 | 匹配模式 |
49
+ |------|----------|
50
+ | Controller | `*Controller.java` |
51
+ | Service | `*Service.java`, `*ServiceImpl.java` |
52
+ | Mapper | `*Mapper.java` |
53
+ | XML | `*Mapper.xml` |
54
+ | Entity | `*Entity.java`, `*DO.java`, `*PO.java` |
55
+
56
+ 使用 **Grep** 提取关键注解:
57
+
58
+ - `@TableName` → 数据表映射
59
+ - `@RequestMapping` → API 路径前缀
60
+ - `@PostMapping` / `@GetMapping` / `@PutMapping` / `@DeleteMapping` → HTTP 方法与路径
61
+
62
+ ### 步骤 4:确定领域与模块
63
+
64
+ 从 Java 包名推导领域和模块,规则如下:
65
+
66
+ | 包名示例 | 领域推导 | 模块推导 |
67
+ |----------|----------|----------|
68
+ | `com.example.bill.payment` | `billing` | `payment-processing` |
69
+ | `com.example.invoice.calc` | `invoice` | `calculation` |
70
+ | `com.example.order.service` | `order` | `order-management` |
71
+
72
+ 使用 **AskUserQuestion** 让用户确认或覆盖推导结果(领域名 + 模块名)。
73
+
74
+ ### 步骤 5:生成五段式设计文档
75
+
76
+ 读取各层源码文件(Controller → Service → ServiceImpl → Entity/Mapper → XML),
77
+ 继承 code2doc-kunge2013 的五段式结构生成设计文档。
78
+
79
+ **文档结构**:
80
+
81
+ ```
82
+ ---
83
+ domain: <领域>
84
+ module: <模块>
85
+ version: <N>
86
+ date: <YYYY-MM-DD>
87
+ change: <变更名称>
88
+ keywords: [<kw1>, <kw2>, ...]
89
+ code-entry: <Controller类名>(<HTTP方法> <路径>)
90
+ ---
91
+
92
+ # <模块名> — v<N>(<YYYY-MM-DD>)
93
+
94
+ ## 1. 接口定义
95
+
96
+ | 字段 | 值 |
97
+ |------|----|
98
+ | URL | `<HTTP方法> <路径>` |
99
+ | Controller | `<类名>.<方法名>()` |
100
+ | 入参 | ```json\n{...}\n``` |
101
+ | 出参 | ```json\n{...}\n``` |
102
+
103
+ ## 2. 业务流程图
104
+
105
+ ```mermaid
106
+ flowchart TD
107
+ ...
108
+ ```
109
+
110
+ ## 3. 业务逻辑详情
111
+
112
+ (SQL 查询 + Java 代码逻辑详解,覆盖核心分支)
113
+
114
+ ## 4. 表结构 ER 图
115
+
116
+ ```mermaid
117
+ erDiagram
118
+ ...
119
+ ```
120
+
121
+ ## 5. 源码文件清单
122
+
123
+ | 文件 | 类型 | 说明 |
124
+ |------|------|------|
125
+ | ... | ... | ... |
126
+ ```
127
+
128
+ **版本号确定**:
129
+
130
+ ```
131
+ Glob: openspec/<领域>/<模块>/v*.md
132
+ ```
133
+
134
+ 取已有文件中最大版本号 N,新版本为 N+1;若目录不存在,从 v1 开始。
135
+
136
+ ### 步骤 6:写入知识库并更新索引
137
+
138
+ **写入版本化设计文档**:
139
+
140
+ ```
141
+ Write: openspec/<领域>/<模块>/v<N>-<YYYY-MM-DD>.md
142
+ ```
143
+
144
+ **INDEX.md 处理**:
145
+
146
+ - 若 `openspec/<领域>/<模块>/INDEX.md` 不存在:创建新文件,包含模块概览、版本表、入口点、已知业务规则。
147
+ - 若已存在:Edit INDEX.md,在版本表中追加新版本行。
148
+
149
+ INDEX.md 格式:
150
+
151
+ ```markdown
152
+ # <模块名> — 模块索引
153
+
154
+ > 领域:<领域> | 最后更新:<YYYY-MM-DD>
155
+
156
+ ## 模块概览
157
+
158
+ <功能概述>
159
+
160
+ ## 版本历史
161
+
162
+ | 版本 | 日期 | 变更 | 文档 |
163
+ |------|------|------|------|
164
+ | v<N> | <日期> | <变更名> | [查看](v<N>-<日期>.md) |
165
+
166
+ ## 入口点
167
+
168
+ | 方法 | 路径 | 说明 |
169
+ |------|------|------|
170
+
171
+ ## 已知业务规则
172
+
173
+ - <规则 1>
174
+ - <规则 2>
175
+ ```
176
+
177
+ **CHANGELOG.md 处理**:
178
+
179
+ ```
180
+ Append: openspec/<领域>/<模块>/CHANGELOG.md
181
+ ```
182
+
183
+ 追加格式:
184
+
185
+ ```markdown
186
+ ## v<N> — <YYYY-MM-DD>
187
+
188
+ **变更**:<变更名>
189
+
190
+ <本次变更的主要业务逻辑说明>
191
+ ```
192
+
193
+ ### 步骤 7:更新全局索引
194
+
195
+ 读取 `openspec/openspec-trace/GLOBAL_INDEX.md`,按以下规则更新:
196
+
197
+ **按领域表**:若模块是新增的,追加新行:
198
+
199
+ ```
200
+ | <领域> | <模块> | <Controller>(<HTTP方法> <路径>) | <YYYY-MM-DD> | <kw1>, <kw2> |
201
+ ```
202
+
203
+ **按关键词表**:为每个新关键词追加行:
204
+
205
+ ```
206
+ | <关键词> | <领域> | <模块> | [INDEX](openspec/<领域>/<模块>/INDEX.md) |
207
+ ```
208
+
209
+ Write 更新后的 GLOBAL_INDEX.md。
210
+
211
+ ---
212
+
213
+ ## 输出格式
214
+
215
+ ```
216
+ ## 归档完成
217
+
218
+ **变更**:<变更名>
219
+ **知识库路径**:openspec/<领域>/<模块>/
220
+ **版本**:v<N>-<YYYY-MM-DD>.md
221
+ **INDEX.md**:✓ 已创建 / ✓ 已更新
222
+ **CHANGELOG.md**:✓ 已追加
223
+ **GLOBAL_INDEX.md**:✓ 已更新
224
+
225
+ 关键词:<kw1>, <kw2>, ...
226
+ 入口点:<Controller>(<HTTP方法> <路径>)
227
+ ```
228
+
229
+ ---
230
+
231
+ ## 注意事项
232
+
233
+ 1. 必须经用户确认分析目标后才能继续
234
+ 2. 领域和模块名称必须经用户确认
235
+ 3. 所有生成文档使用中文,技术术语(类名、方法名、注解)保留英文
236
+ 4. 版本号基于现有 v*.md 文件自动递增,不跳号
237
+ 5. 若 git diff 无法获取,从 proposal.md/design.md 中推断文件列表
@@ -0,0 +1,6 @@
1
+ {
2
+ "name": "openspec-workflow",
3
+ "description": "Spec-driven change lifecycle for Claude Code: explore, propose, apply, archive",
4
+ "author": { "name": "kunge2013" },
5
+ "license": "MIT"
6
+ }
@@ -0,0 +1,156 @@
1
+ ---
2
+ name: openspec-apply-change
3
+ description: Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through tasks.
4
+ license: MIT
5
+ compatibility: Requires openspec CLI.
6
+ metadata:
7
+ author: openspec
8
+ version: "1.0"
9
+ generatedBy: "1.3.1"
10
+ ---
11
+
12
+ Implement tasks from an OpenSpec change.
13
+
14
+ **Input**: Optionally specify a change name. If omitted, check if it can be inferred from conversation context. If vague or ambiguous you MUST prompt for available changes.
15
+
16
+ **Steps**
17
+
18
+ 1. **Select the change**
19
+
20
+ If a name is provided, use it. Otherwise:
21
+ - Infer from conversation context if the user mentioned a change
22
+ - Auto-select if only one active change exists
23
+ - If ambiguous, run `openspec list --json` to get available changes and use the **AskUserQuestion tool** to let the user select
24
+
25
+ Always announce: "Using change: <name>" and how to override (e.g., `/opsx:apply <other>`).
26
+
27
+ 2. **Check status to understand the schema**
28
+ ```bash
29
+ openspec status --change "<name>" --json
30
+ ```
31
+ Parse the JSON to understand:
32
+ - `schemaName`: The workflow being used (e.g., "spec-driven")
33
+ - Which artifact contains the tasks (typically "tasks" for spec-driven, check status for others)
34
+
35
+ 3. **Get apply instructions**
36
+
37
+ ```bash
38
+ openspec instructions apply --change "<name>" --json
39
+ ```
40
+
41
+ This returns:
42
+ - `contextFiles`: artifact ID -> array of concrete file paths (varies by schema - could be proposal/specs/design/tasks or spec/tests/implementation/docs)
43
+ - Progress (total, complete, remaining)
44
+ - Task list with status
45
+ - Dynamic instruction based on current state
46
+
47
+ **Handle states:**
48
+ - If `state: "blocked"` (missing artifacts): show message, suggest using openspec-continue-change
49
+ - If `state: "all_done"`: congratulate, suggest archive
50
+ - Otherwise: proceed to implementation
51
+
52
+ 4. **Read context files**
53
+
54
+ Read every file path listed under `contextFiles` from the apply instructions output.
55
+ The files depend on the schema being used:
56
+ - **spec-driven**: proposal, specs, design, tasks
57
+ - Other schemas: follow the contextFiles from CLI output
58
+
59
+ 5. **Show current progress**
60
+
61
+ Display:
62
+ - Schema being used
63
+ - Progress: "N/M tasks complete"
64
+ - Remaining tasks overview
65
+ - Dynamic instruction from CLI
66
+
67
+ 6. **Implement tasks (loop until done or blocked)**
68
+
69
+ For each pending task:
70
+ - Show which task is being worked on
71
+ - Make the code changes required
72
+ - Keep changes minimal and focused
73
+ - Mark task complete in the tasks file: `- [ ]` → `- [x]`
74
+ - Continue to next task
75
+
76
+ **Pause if:**
77
+ - Task is unclear → ask for clarification
78
+ - Implementation reveals a design issue → suggest updating artifacts
79
+ - Error or blocker encountered → report and wait for guidance
80
+ - User interrupts
81
+
82
+ 7. **On completion or pause, show status**
83
+
84
+ Display:
85
+ - Tasks completed this session
86
+ - Overall progress: "N/M tasks complete"
87
+ - If all done: suggest archive
88
+ - If paused: explain why and wait for guidance
89
+
90
+ **Output During Implementation**
91
+
92
+ ```
93
+ ## Implementing: <change-name> (schema: <schema-name>)
94
+
95
+ Working on task 3/7: <task description>
96
+ [...implementation happening...]
97
+ ✓ Task complete
98
+
99
+ Working on task 4/7: <task description>
100
+ [...implementation happening...]
101
+ ✓ Task complete
102
+ ```
103
+
104
+ **Output On Completion**
105
+
106
+ ```
107
+ ## Implementation Complete
108
+
109
+ **Change:** <change-name>
110
+ **Schema:** <schema-name>
111
+ **Progress:** 7/7 tasks complete ✓
112
+
113
+ ### Completed This Session
114
+ - [x] Task 1
115
+ - [x] Task 2
116
+ ...
117
+
118
+ All tasks complete! Ready to archive this change.
119
+ ```
120
+
121
+ **Output On Pause (Issue Encountered)**
122
+
123
+ ```
124
+ ## Implementation Paused
125
+
126
+ **Change:** <change-name>
127
+ **Schema:** <schema-name>
128
+ **Progress:** 4/7 tasks complete
129
+
130
+ ### Issue Encountered
131
+ <description of the issue>
132
+
133
+ **Options:**
134
+ 1. <option 1>
135
+ 2. <option 2>
136
+ 3. Other approach
137
+
138
+ What would you like to do?
139
+ ```
140
+
141
+ **Guardrails**
142
+ - Keep going through tasks until done or blocked
143
+ - Always read context files before starting (from the apply instructions output)
144
+ - If task is ambiguous, pause and ask before implementing
145
+ - If implementation reveals issues, pause and suggest artifact updates
146
+ - Keep code changes minimal and scoped to each task
147
+ - Update task checkbox immediately after completing each task
148
+ - Pause on errors, blockers, or unclear requirements - don't guess
149
+ - Use contextFiles from CLI output, don't assume specific file names
150
+
151
+ **Fluid Workflow Integration**
152
+
153
+ This skill supports the "actions on a change" model:
154
+
155
+ - **Can be invoked anytime**: Before all artifacts are done (if tasks exist), after partial implementation, interleaved with other actions
156
+ - **Allows artifact updates**: If implementation reveals design issues, suggest updating artifacts - not phase-locked, work fluidly