@pigcloud/skills 1.0.4 → 1.0.6
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/CHANGELOG.md +29 -28
- package/README.en.md +4 -3
- package/README.md +37 -35
- package/bin/cli.js +98 -71
- package/package.json +69 -69
- package/rules/coding/implementation.md +6 -5
- package/rules/product/project-context.md +6 -5
- package/rules/skill-profile-map.json +6 -5
- package/rules/skill-profile-map.md +6 -5
- package/scripts/ci-validator.sh +19 -19
- package/scripts/validate-skill-shapes.js +5 -4
- package/scripts/validate-skills.ps1 +6 -6
- package/scripts/validate-skills.sh +5 -5
- package/skills/{api-docs → api-contract-docs}/SKILL.md +5 -4
- package/skills/{extract-business-facts → business-fact-extraction}/SKILL.md +9 -8
- package/skills/{extract-business-facts → business-fact-extraction}/scripts/write-knowledge-base.js +4 -3
- package/skills/code-review/SKILL.md +7 -6
- package/skills/domain-modeling/SKILL.md +4 -3
- package/skills/feature-build/SKILL.md +10 -10
- package/skills/feature-build/references/comment-specification.md +1 -1
- package/skills/knowledge-capture/SKILL.md +1 -1
- package/skills/{performance-check → performance-audit}/SKILL.md +5 -4
- package/skills/project-bootstrap/SKILL.md +3 -2
- package/skills/references/business-fact-extraction.md +9 -8
- package/skills/references/engineering-delivery-method.md +4 -3
- package/skills/references/engineering-delivery-template.md +3 -2
- package/skills/references/golden-prompt-suite.js +44 -43
- package/skills/references/project-requirement-alignment.md +2 -1
- package/skills/references/rule-loading-map.md +4 -3
- package/skills/references/skill-authoring-standard.md +4 -3
- package/skills/references/skill-reference-matrix.md +15 -14
- package/skills/{security-review → security-audit}/SKILL.md +4 -2
- package/skills/{spec → spec-refinement}/SKILL.md +19 -18
- package/skills/technical-design/SKILL.md +11 -10
- package/skills/test-design/SKILL.md +2 -1
|
@@ -177,7 +177,7 @@ Use the strongest source available first:
|
|
|
177
177
|
|
|
178
178
|
## Auto-Write Pack
|
|
179
179
|
|
|
180
|
-
Use `skills/
|
|
180
|
+
Use `skills/business-fact-extraction/scripts/write-knowledge-base.js` when the staged readout should be written into the knowledge base.
|
|
181
181
|
|
|
182
182
|
### Input Shape
|
|
183
183
|
|
|
@@ -200,7 +200,7 @@ Use `skills/extract-business-facts/scripts/write-knowledge-base.js` when the sta
|
|
|
200
200
|
### Command
|
|
201
201
|
|
|
202
202
|
```bash
|
|
203
|
-
node skills/
|
|
203
|
+
node skills/business-fact-extraction/scripts/write-knowledge-base.js --input fact-pack.json
|
|
204
204
|
```
|
|
205
205
|
|
|
206
206
|
### Behavior
|
|
@@ -214,7 +214,7 @@ node skills/extract-business-facts/scripts/write-knowledge-base.js --input fact-
|
|
|
214
214
|
## Handoff Targets
|
|
215
215
|
|
|
216
216
|
- `domain-modeling` when the facts need boundary or concept normalization
|
|
217
|
-
- `spec` when the facts need to become a user-confirmable spec
|
|
217
|
+
- `spec-refinement` when the facts need to become a user-confirmable spec-refinement
|
|
218
218
|
- `knowledge-capture` when the facts are stable and ready to persist
|
|
219
219
|
|
|
220
220
|
## Sample Readout
|
|
@@ -252,7 +252,7 @@ node skills/extract-business-facts/scripts/write-knowledge-base.js --input fact-
|
|
|
252
252
|
- decision: inventory must be reserved before order confirmation
|
|
253
253
|
- reason: avoid overselling
|
|
254
254
|
- date or context: 2026-06-22, order flow review
|
|
255
|
-
- affected artifact: checkout spec
|
|
255
|
+
- affected artifact: checkout spec-refinement
|
|
256
256
|
- notes: failure should return a clear stock shortage message
|
|
257
257
|
|
|
258
258
|
#### `knowledge-base/requirements/acceptance.md`
|
|
@@ -292,7 +292,7 @@ node skills/extract-business-facts/scripts/write-knowledge-base.js --input fact-
|
|
|
292
292
|
|
|
293
293
|
### 1. Source Input
|
|
294
294
|
|
|
295
|
-
- PRD / spec note: checkout must not confirm when stock is insufficient
|
|
295
|
+
- PRD / spec-refinement note: checkout must not confirm when stock is insufficient
|
|
296
296
|
- code evidence: `order-service` reserves inventory before creating the order
|
|
297
297
|
- runtime evidence: shortage returns a stock error before commit
|
|
298
298
|
|
|
@@ -330,7 +330,7 @@ node skills/extract-business-facts/scripts/write-knowledge-base.js --input fact-
|
|
|
330
330
|
"decision": "inventory must be reserved before order confirmation",
|
|
331
331
|
"reason": "avoid overselling",
|
|
332
332
|
"date or context": "2026-06-22, checkout review",
|
|
333
|
-
"affected artifact": "checkout spec",
|
|
333
|
+
"affected artifact": "checkout spec-refinement",
|
|
334
334
|
"notes": "shortage returns a clear error"
|
|
335
335
|
}
|
|
336
336
|
],
|
|
@@ -357,7 +357,7 @@ node skills/extract-business-facts/scripts/write-knowledge-base.js --input fact-
|
|
|
357
357
|
### 4. Persist
|
|
358
358
|
|
|
359
359
|
```bash
|
|
360
|
-
node skills/
|
|
360
|
+
node skills/business-fact-extraction/scripts/write-knowledge-base.js --input fact-pack.json
|
|
361
361
|
```
|
|
362
362
|
|
|
363
363
|
### 5. `knowledge-capture`
|
|
@@ -392,7 +392,7 @@ node skills/extract-business-facts/scripts/write-knowledge-base.js --input fact-
|
|
|
392
392
|
- decision: inventory must be reserved before order confirmation
|
|
393
393
|
- reason: avoid overselling
|
|
394
394
|
- date or context: 2026-06-22, order flow review
|
|
395
|
-
- affected artifact: checkout spec
|
|
395
|
+
- affected artifact: checkout spec-refinement
|
|
396
396
|
- notes: failure should return a clear stock shortage message
|
|
397
397
|
|
|
398
398
|
### CodeWiki Update
|
|
@@ -412,3 +412,4 @@ node skills/extract-business-facts/scripts/write-knowledge-base.js --input fact-
|
|
|
412
412
|
- context: checkout path
|
|
413
413
|
- why it failed: allowed overselling under concurrent requests
|
|
414
414
|
- how to avoid it: reserve before committing the order
|
|
415
|
+
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
## Goal
|
|
4
4
|
|
|
5
|
-
Help engineering teams turn an approved spec into executable work, decide complexity before coding, implement inside `feature-build`, self-verify locally, and then hand off to validation and review.
|
|
5
|
+
Help engineering teams turn an approved spec-refinement into executable work, decide complexity before coding, implement inside `feature-build`, self-verify locally, and then hand off to validation and review.
|
|
6
6
|
|
|
7
7
|
Use [`engineering-delivery-template.md`](engineering-delivery-template.md) when you need the copyable one-page form.
|
|
8
8
|
|
|
9
9
|
## Flow
|
|
10
10
|
|
|
11
|
-
1. Start from an approved spec or executable design.
|
|
12
|
-
2. Align the spec with current project facts and selected rules.
|
|
11
|
+
1. Start from an approved spec-refinement or executable design.
|
|
12
|
+
2. Align the spec-refinement with current project facts and selected rules.
|
|
13
13
|
3. Plan the task execution direction before coding.
|
|
14
14
|
4. Decide whether the change is simple or complex before coding.
|
|
15
15
|
5. If the change is complex, produce `technical-design` first.
|
|
@@ -61,3 +61,4 @@ Use [`engineering-delivery-template.md`](engineering-delivery-template.md) when
|
|
|
61
61
|
- `skills/references/project-requirement-alignment.md`
|
|
62
62
|
- `skills/references/flow-test-cases.md`
|
|
63
63
|
- `skills/references/full-chain-replay-scenarios.md`
|
|
64
|
+
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
## How to Use
|
|
4
4
|
|
|
5
|
-
- Start from an approved spec or executable design.
|
|
5
|
+
- Start from an approved spec-refinement or executable design.
|
|
6
6
|
- Fill this page before implementation.
|
|
7
7
|
- Keep each task small enough to implement and self-test independently.
|
|
8
8
|
- Do not add long background text.
|
|
@@ -73,8 +73,9 @@ Rules:
|
|
|
73
73
|
|
|
74
74
|
## Minimum Acceptance
|
|
75
75
|
|
|
76
|
-
- The spec is split into small tasks.
|
|
76
|
+
- The spec-refinement is split into small tasks.
|
|
77
77
|
- The execution direction is explicit before confirmation.
|
|
78
78
|
- Every task has a done criteria and a self-test.
|
|
79
79
|
- The implementation was verified task by task.
|
|
80
80
|
- The handoff includes evidence, not just code.
|
|
81
|
+
|
|
@@ -16,7 +16,7 @@ const cases = [
|
|
|
16
16
|
'We have a new request but I am not sure which stage should handle it.',
|
|
17
17
|
['next skill', 'stage decision', 'handoff note'],
|
|
18
18
|
'Do not perform the target skill\'s work.',
|
|
19
|
-
'spec',
|
|
19
|
+
'spec-refinement',
|
|
20
20
|
),
|
|
21
21
|
makeCase(
|
|
22
22
|
'workflow-router',
|
|
@@ -24,7 +24,7 @@ const cases = [
|
|
|
24
24
|
'The brief is ready. Which stage should receive it next?',
|
|
25
25
|
['next skill', 'stage decision', 'handoff note'],
|
|
26
26
|
'Do not perform the target skill\'s work.',
|
|
27
|
-
'spec',
|
|
27
|
+
'spec-refinement',
|
|
28
28
|
),
|
|
29
29
|
makeCase(
|
|
30
30
|
'workflow-router',
|
|
@@ -36,76 +36,76 @@ const cases = [
|
|
|
36
36
|
),
|
|
37
37
|
|
|
38
38
|
makeCase(
|
|
39
|
-
'spec',
|
|
39
|
+
'spec-refinement',
|
|
40
40
|
'product-reminder-feature',
|
|
41
41
|
'We need a reminder feature for inactive users.',
|
|
42
42
|
['product brief', 'scope', 'acceptance outline', 'open questions'],
|
|
43
43
|
'Do not jump into design or code.',
|
|
44
|
-
'spec',
|
|
44
|
+
'spec-refinement',
|
|
45
45
|
),
|
|
46
46
|
makeCase(
|
|
47
|
-
'spec',
|
|
47
|
+
'spec-refinement',
|
|
48
48
|
'product-retention-gap',
|
|
49
49
|
'Users keep missing renewal emails; help me define the product scope.',
|
|
50
50
|
['product objective', 'scope', 'acceptance outline', 'open questions'],
|
|
51
51
|
'Do not decide implementation details.',
|
|
52
|
-
'spec',
|
|
52
|
+
'spec-refinement',
|
|
53
53
|
),
|
|
54
54
|
makeCase(
|
|
55
|
-
'spec',
|
|
55
|
+
'spec-refinement',
|
|
56
56
|
'product-unclear-opportunity',
|
|
57
57
|
'We think there is a retention problem, but the exact feature is unclear.',
|
|
58
58
|
['product objective', 'scope', 'acceptance outline', 'open questions'],
|
|
59
59
|
'Do not write technical design.',
|
|
60
|
-
'spec',
|
|
60
|
+
'spec-refinement',
|
|
61
61
|
),
|
|
62
62
|
|
|
63
63
|
makeCase(
|
|
64
|
-
'spec',
|
|
64
|
+
'spec-refinement',
|
|
65
65
|
'spec-approved-brief',
|
|
66
|
-
'The brief is approved; turn it into an executable spec and task breakdown.',
|
|
67
|
-
['executable spec', 'task breakdown plan', 'acceptance criteria', 'confirmation package'],
|
|
66
|
+
'The brief is approved; turn it into an executable spec-refinement and task breakdown.',
|
|
67
|
+
['executable spec-refinement', 'task breakdown plan', 'acceptance criteria', 'confirmation package'],
|
|
68
68
|
'Do not generate code or reopen discovery.',
|
|
69
69
|
'feature-build',
|
|
70
70
|
),
|
|
71
71
|
makeCase(
|
|
72
|
-
'spec',
|
|
72
|
+
'spec-refinement',
|
|
73
73
|
'spec-code-alignment',
|
|
74
|
-
'Compare the PRD with current project facts and implementation evidence, then produce the engineering spec.',
|
|
74
|
+
'Compare the PRD with current project facts and implementation evidence, then produce the engineering spec-refinement.',
|
|
75
75
|
['execution direction plan', 'impact scope', 'implementation inputs', 'conflict map'],
|
|
76
76
|
'Do not jump into implementation.',
|
|
77
77
|
'technical-design',
|
|
78
78
|
),
|
|
79
79
|
makeCase(
|
|
80
|
-
'spec',
|
|
80
|
+
'spec-refinement',
|
|
81
81
|
'spec-confirmation-pack',
|
|
82
|
-
'I need a confirmation package with the spec, tasks, and acceptance criteria before coding.',
|
|
83
|
-
['executable spec', 'task breakdown plan', 'confirmation package'],
|
|
82
|
+
'I need a confirmation package with the spec-refinement, tasks, and acceptance criteria before coding.',
|
|
83
|
+
['executable spec-refinement', 'task breakdown plan', 'confirmation package'],
|
|
84
84
|
'Do not write code.',
|
|
85
85
|
'feature-build',
|
|
86
86
|
),
|
|
87
87
|
|
|
88
88
|
makeCase(
|
|
89
|
-
'spec',
|
|
89
|
+
'spec-refinement',
|
|
90
90
|
'spec-approved-brief',
|
|
91
|
-
'The brief is approved; turn it into an executable spec.',
|
|
92
|
-
['executable spec', 'acceptance criteria', 'impact scope', 'implementation inputs'],
|
|
91
|
+
'The brief is approved; turn it into an executable spec-refinement.',
|
|
92
|
+
['executable spec-refinement', 'acceptance criteria', 'impact scope', 'implementation inputs'],
|
|
93
93
|
'Do not rewrite the PRD or code the change.',
|
|
94
94
|
'feature-build',
|
|
95
95
|
),
|
|
96
96
|
makeCase(
|
|
97
|
-
'spec',
|
|
97
|
+
'spec-refinement',
|
|
98
98
|
'spec-code-gap',
|
|
99
99
|
'Compare the PRD with the current code and identify gaps.',
|
|
100
|
-
['executable spec', 'impact scope', 'implementation inputs'],
|
|
100
|
+
['executable spec-refinement', 'impact scope', 'implementation inputs'],
|
|
101
101
|
'Do not jump into implementation.',
|
|
102
102
|
'feature-build',
|
|
103
103
|
),
|
|
104
104
|
makeCase(
|
|
105
|
-
'spec',
|
|
105
|
+
'spec-refinement',
|
|
106
106
|
'spec-align-with-code',
|
|
107
107
|
'The requirement is messy; align it with existing behavior and make it engineer-ready.',
|
|
108
|
-
['executable spec', 'acceptance criteria', 'implementation input summary'],
|
|
108
|
+
['executable spec-refinement', 'acceptance criteria', 'implementation input summary'],
|
|
109
109
|
'Do not rewrite the PRD.',
|
|
110
110
|
'technical-design',
|
|
111
111
|
),
|
|
@@ -138,7 +138,7 @@ const cases = [
|
|
|
138
138
|
makeCase(
|
|
139
139
|
'feature-build',
|
|
140
140
|
'build-approved-spec',
|
|
141
|
-
'Implement the approved spec in the controller and service.',
|
|
141
|
+
'Implement the approved spec-refinement in the controller and service.',
|
|
142
142
|
['code changes', 'implementation notes', 'validation evidence'],
|
|
143
143
|
'Do not expand scope or rewrite requirements.',
|
|
144
144
|
'test-design',
|
|
@@ -156,7 +156,7 @@ const cases = [
|
|
|
156
156
|
'build-simple-refactor',
|
|
157
157
|
'This controller needs a simple refactor that does not change behavior.',
|
|
158
158
|
['code changes', 'implementation notes', 'validation evidence'],
|
|
159
|
-
'Do not rewrite the spec.',
|
|
159
|
+
'Do not rewrite the spec-refinement.',
|
|
160
160
|
'test-design',
|
|
161
161
|
),
|
|
162
162
|
|
|
@@ -236,7 +236,7 @@ const cases = [
|
|
|
236
236
|
),
|
|
237
237
|
|
|
238
238
|
makeCase(
|
|
239
|
-
'api-docs',
|
|
239
|
+
'api-contract-docs',
|
|
240
240
|
'api-profile-docs',
|
|
241
241
|
'Document the user profile endpoints with request and response shapes.',
|
|
242
242
|
['API document', 'contract notes', 'examples'],
|
|
@@ -244,7 +244,7 @@ const cases = [
|
|
|
244
244
|
'knowledge-capture',
|
|
245
245
|
),
|
|
246
246
|
makeCase(
|
|
247
|
-
'api-docs',
|
|
247
|
+
'api-contract-docs',
|
|
248
248
|
'api-payment-contract',
|
|
249
249
|
'Write the contract for this payment endpoint with examples.',
|
|
250
250
|
['API document', 'contract notes', 'examples'],
|
|
@@ -252,7 +252,7 @@ const cases = [
|
|
|
252
252
|
'knowledge-capture',
|
|
253
253
|
),
|
|
254
254
|
makeCase(
|
|
255
|
-
'api-docs',
|
|
255
|
+
'api-contract-docs',
|
|
256
256
|
'api-openapi-notes',
|
|
257
257
|
'Capture the OpenAPI notes for a new endpoint.',
|
|
258
258
|
['API document', 'contract notes', 'examples'],
|
|
@@ -282,19 +282,19 @@ const cases = [
|
|
|
282
282
|
'Extract ubiquitous language from the current product notes.',
|
|
283
283
|
['domain map', 'core concepts', 'boundary notes'],
|
|
284
284
|
'Do not write implementation code.',
|
|
285
|
-
'spec',
|
|
285
|
+
'spec-refinement',
|
|
286
286
|
),
|
|
287
287
|
|
|
288
288
|
makeCase(
|
|
289
|
-
'
|
|
290
|
-
'
|
|
289
|
+
'business-fact-extraction',
|
|
290
|
+
'business-fact-extraction-from-code',
|
|
291
291
|
'Extract the business facts expressed by this order-processing code and explain the current behavior.',
|
|
292
292
|
['code fact map', 'business fact map', 'codewiki delta'],
|
|
293
293
|
'Do not design a new solution.',
|
|
294
294
|
'knowledge-capture',
|
|
295
295
|
),
|
|
296
296
|
makeCase(
|
|
297
|
-
'
|
|
297
|
+
'business-fact-extraction',
|
|
298
298
|
'extract-business-invariants',
|
|
299
299
|
'From these service methods and tests, identify the business invariants and open questions.',
|
|
300
300
|
['code fact map', 'business fact map', 'codewiki delta'],
|
|
@@ -302,16 +302,16 @@ const cases = [
|
|
|
302
302
|
'domain-modeling',
|
|
303
303
|
),
|
|
304
304
|
makeCase(
|
|
305
|
-
'
|
|
305
|
+
'business-fact-extraction',
|
|
306
306
|
'extract-code-backed-terms',
|
|
307
307
|
'Turn this controller, service, and database flow into a terminology map with evidence.',
|
|
308
308
|
['code fact map', 'business fact map', 'codewiki delta'],
|
|
309
309
|
'Do not generate code.',
|
|
310
|
-
'spec',
|
|
310
|
+
'spec-refinement',
|
|
311
311
|
),
|
|
312
312
|
|
|
313
313
|
makeCase(
|
|
314
|
-
'security-
|
|
314
|
+
'security-audit',
|
|
315
315
|
'security-injection-auth',
|
|
316
316
|
'Check this change for injection, auth, and secret handling issues.',
|
|
317
317
|
['security findings', 'risk level', 'mitigation advice'],
|
|
@@ -319,7 +319,7 @@ const cases = [
|
|
|
319
319
|
'knowledge-capture',
|
|
320
320
|
),
|
|
321
321
|
makeCase(
|
|
322
|
-
'security-
|
|
322
|
+
'security-audit',
|
|
323
323
|
'security-permissions',
|
|
324
324
|
'Review permission boundaries and data exposure risks.',
|
|
325
325
|
['security findings', 'risk level', 'mitigation advice'],
|
|
@@ -327,7 +327,7 @@ const cases = [
|
|
|
327
327
|
'knowledge-capture',
|
|
328
328
|
),
|
|
329
329
|
makeCase(
|
|
330
|
-
'security-
|
|
330
|
+
'security-audit',
|
|
331
331
|
'security-bypass-check',
|
|
332
332
|
'Find any auth bypass or sensitive-data leaks in this diff.',
|
|
333
333
|
['security findings', 'risk level', 'mitigation advice'],
|
|
@@ -336,7 +336,7 @@ const cases = [
|
|
|
336
336
|
),
|
|
337
337
|
|
|
338
338
|
makeCase(
|
|
339
|
-
'performance-
|
|
339
|
+
'performance-audit',
|
|
340
340
|
'perf-slow-endpoint',
|
|
341
341
|
'This endpoint is slow; inspect query cost, cache, and concurrency.',
|
|
342
342
|
['performance findings', 'bottleneck map', 'optimization advice'],
|
|
@@ -344,7 +344,7 @@ const cases = [
|
|
|
344
344
|
'knowledge-capture',
|
|
345
345
|
),
|
|
346
346
|
makeCase(
|
|
347
|
-
'performance-
|
|
347
|
+
'performance-audit',
|
|
348
348
|
'perf-hot-path',
|
|
349
349
|
'Find bottlenecks in the hot path and suggest improvements.',
|
|
350
350
|
['performance findings', 'bottleneck map', 'optimization advice'],
|
|
@@ -352,7 +352,7 @@ const cases = [
|
|
|
352
352
|
'knowledge-capture',
|
|
353
353
|
),
|
|
354
354
|
makeCase(
|
|
355
|
-
'performance-
|
|
355
|
+
'performance-audit',
|
|
356
356
|
'perf-memory-latency',
|
|
357
357
|
'Review memory pressure and response latency risks.',
|
|
358
358
|
['performance findings', 'bottleneck map', 'optimization advice'],
|
|
@@ -382,7 +382,7 @@ const cases = [
|
|
|
382
382
|
'Bootstrap a fresh repository scaffold and hand it off.',
|
|
383
383
|
['starter structure', 'installed bundle', 'setup notes'],
|
|
384
384
|
'Do not start feature implementation.',
|
|
385
|
-
'spec',
|
|
385
|
+
'spec-refinement',
|
|
386
386
|
),
|
|
387
387
|
|
|
388
388
|
makeCase(
|
|
@@ -411,10 +411,10 @@ const cases = [
|
|
|
411
411
|
),
|
|
412
412
|
|
|
413
413
|
makeCase(
|
|
414
|
-
'spec',
|
|
414
|
+
'spec-refinement',
|
|
415
415
|
'negative-direct-code',
|
|
416
416
|
'Just code it, the PRD is small.',
|
|
417
|
-
['executable spec'],
|
|
417
|
+
['executable spec-refinement'],
|
|
418
418
|
'Do not jump directly into implementation.',
|
|
419
419
|
'feature-build',
|
|
420
420
|
),
|
|
@@ -433,3 +433,4 @@ module.exports = {
|
|
|
433
433
|
purpose: 'Golden prompt set for replay testing the full skill chain.',
|
|
434
434
|
cases,
|
|
435
435
|
};
|
|
436
|
+
|
|
@@ -16,7 +16,7 @@ Use this guide when a task needs both product intent and current project facts.
|
|
|
16
16
|
2. Summarize what the current project already does or guarantees.
|
|
17
17
|
3. Mark what is unchanged, what must change, and what is still unknown.
|
|
18
18
|
4. Record conflicts between product demand and current project facts.
|
|
19
|
-
5. Turn the result into either a product brief or an executable spec, depending on the stage.
|
|
19
|
+
5. Turn the result into either a product brief or an executable spec-refinement, depending on the stage.
|
|
20
20
|
|
|
21
21
|
## Output Shape
|
|
22
22
|
|
|
@@ -39,3 +39,4 @@ Use this guide when a task needs both product intent and current project facts.
|
|
|
39
39
|
|
|
40
40
|
- `skills/references/requirements-separation-map.md`
|
|
41
41
|
- `docs/engineering-workflow.md`
|
|
42
|
+
|
|
@@ -33,7 +33,7 @@ Use the workflow layer when the task involves routing, handoff, boundary changes
|
|
|
33
33
|
- `rules/workflow/selection.md`
|
|
34
34
|
- `rules/workflow/stop.md`
|
|
35
35
|
- `PIG_SKILLS_RULE_PROFILE=router|refinement`
|
|
36
|
-
- `PIG_SKILLS_RULE_SKILL=workflow-router|spec`
|
|
36
|
+
- `PIG_SKILLS_RULE_SKILL=workflow-router|spec-refinement`
|
|
37
37
|
|
|
38
38
|
### 3. Coding Layer
|
|
39
39
|
|
|
@@ -72,7 +72,7 @@ Use the review layer when the task involves code review, security review, perfor
|
|
|
72
72
|
- `rules/review/rubric.md`
|
|
73
73
|
- `rules/review/evidence.md`
|
|
74
74
|
- `PIG_SKILLS_RULE_PROFILE=code|code-java|code-vue|code-ts|security|performance`
|
|
75
|
-
- `PIG_SKILLS_RULE_SKILL=code-review|security-
|
|
75
|
+
- `PIG_SKILLS_RULE_SKILL=code-review|security-audit|performance-audit`
|
|
76
76
|
|
|
77
77
|
`code-review` now resolves to `code` in this repository. The loader keeps the generic review profile first, then auto-adds stack overlays such as `code-java`, `code-vue`, and `code-ts` when the workspace or changed-file signal indicates those stacks.
|
|
78
78
|
|
|
@@ -96,7 +96,7 @@ Use the product/docs layer when the task involves requirement intake, reverse-en
|
|
|
96
96
|
- `rules/docs/examples.md`
|
|
97
97
|
- `rules/docs/capture-summary.md`
|
|
98
98
|
- `PIG_SKILLS_RULE_PROFILE=intake|modeling|api|capture`
|
|
99
|
-
- `PIG_SKILLS_RULE_SKILL=spec|domain-modeling|
|
|
99
|
+
- `PIG_SKILLS_RULE_SKILL=spec-refinement|domain-modeling|business-fact-extraction|api-contract-docs|knowledge-capture`
|
|
100
100
|
|
|
101
101
|
### 6. Discovery Rules
|
|
102
102
|
|
|
@@ -114,3 +114,4 @@ Do not pull product discovery into the coding bundle. Discovery dependencies sho
|
|
|
114
114
|
- In non-production environments, the loader should fail fast when skill metadata and mapping metadata drift apart.
|
|
115
115
|
- A new skill should start from `skills/references/skill-boundary-template.md`, then add only the skill-specific I/O and stop rules.
|
|
116
116
|
- Negative replay tests should use `skills/references/negative-replay-scenarios.md` to validate stop boundaries and handoffs.
|
|
117
|
+
|
|
@@ -38,7 +38,7 @@ Make every skill easy for AI to detect, cheap to read, and hard to misuse.
|
|
|
38
38
|
- Keep `lifecycle_stage` and `dependencies` stable.
|
|
39
39
|
- Encode hard prerequisites in `dependencies`; keep soft routing hints in `triggers`.
|
|
40
40
|
- When a skill needs rules, declare its preferred `rule_profile` rather than repeating rules in prose.
|
|
41
|
-
- Add
|
|
41
|
+
- Add `閫傚悎 / 涓嶉€傚悎` when the skill needs fast routing.
|
|
42
42
|
- Put hard-stop rules in `gates`, not in prose.
|
|
43
43
|
- Use `Quick Start`, `Inputs / Outputs`, and `Gotchas` only in enhanced skills.
|
|
44
44
|
|
|
@@ -63,11 +63,12 @@ Make every skill easy for AI to detect, cheap to read, and hard to misuse.
|
|
|
63
63
|
- Negative replay scenarios
|
|
64
64
|
|
|
65
65
|
## Template Selection
|
|
66
|
-
- Short template: `workflow-router`, `knowledge-capture`, `api-docs`, `test-design`, `domain-modeling`, `project-bootstrap`, `environment-deploy`
|
|
67
|
-
- Enhanced template: `spec`, `technical-design`, `feature-build`, `code-review`, `security-
|
|
66
|
+
- Short template: `workflow-router`, `knowledge-capture`, `api-contract-docs`, `test-design`, `domain-modeling`, `project-bootstrap`, `environment-deploy`
|
|
67
|
+
- Enhanced template: `spec-refinement`, `technical-design`, `feature-build`, `code-review`, `security-audit`, `performance-audit`, `business-fact-extraction`
|
|
68
68
|
|
|
69
69
|
## Quality Bar
|
|
70
70
|
- A model should know whether to use the skill in under 10 seconds.
|
|
71
71
|
- A model should know what output to produce in under 20 seconds.
|
|
72
72
|
- A human should be able to maintain the skill without reading half the repo.
|
|
73
73
|
- A reviewer should be able to see the stop boundary and replay signal in one screen.
|
|
74
|
+
|
|
@@ -11,15 +11,15 @@
|
|
|
11
11
|
|
|
12
12
|
| Source | Best Practice | Applies To |
|
|
13
13
|
|---|---|---|
|
|
14
|
-
| GitHub Spec Kit | Define before build | `spec` |
|
|
15
|
-
| AWS Kiro EARS | Structured requirement writing | `spec` |
|
|
16
|
-
| RIPER | Research / Innovate / Plan / Execute / Review | `spec` / routing context |
|
|
14
|
+
| GitHub Spec Kit | Define before build | `spec-refinement` |
|
|
15
|
+
| AWS Kiro EARS | Structured requirement writing | `spec-refinement` |
|
|
16
|
+
| RIPER | Research / Innovate / Plan / Execute / Review | `spec-refinement` / routing context |
|
|
17
17
|
| Claude Code | Short, dense prompts | all skills |
|
|
18
18
|
| open-code-review | Deterministic review plus agent review | `code-review` |
|
|
19
|
-
| Skill Reviewer | Rubric-based review gate | `code-review` / `performance-
|
|
19
|
+
| Skill Reviewer | Rubric-based review gate | `code-review` / `performance-audit` / `security-audit` |
|
|
20
20
|
| Short boundary template | One screen for Purpose / Workflow / Replay Signals / Stop Rules | low-complexity skills |
|
|
21
|
-
| Enhanced template | Add Quick Start / Inputs / Outputs / Gotchas / References | `spec` / `technical-design` / `feature-build` / `code-review` / `security-
|
|
22
|
-
| Negative replay | Use counterexamples to verify stop boundaries | `spec` / `technical-design` / `feature-build` / `test-design` |
|
|
21
|
+
| Enhanced template | Add Quick Start / Inputs / Outputs / Gotchas / References | `spec-refinement` / `technical-design` / `feature-build` / `code-review` / `security-audit` / `performance-audit` |
|
|
22
|
+
| Negative replay | Use counterexamples to verify stop boundaries | `spec-refinement` / `technical-design` / `feature-build` / `test-design` |
|
|
23
23
|
| Engineering delivery method | Decide complexity first, then split and implement inside `feature-build` | `feature-build` / `test-design` / `code-review` |
|
|
24
24
|
| Engineering delivery template | One-page task card with facts, complexity, tasks, self-test, and validation | `feature-build` / `test-design` |
|
|
25
25
|
|
|
@@ -34,23 +34,23 @@
|
|
|
34
34
|
|
|
35
35
|
## Applicable Skills
|
|
36
36
|
|
|
37
|
-
- `spec`: turn product input, current facts, and implementation evidence into an executable spec
|
|
37
|
+
- `spec-refinement`: turn product input, current facts, and implementation evidence into an executable spec-refinement
|
|
38
38
|
- `technical-design`: turn complex changes into boundaries, dependencies, and rollback
|
|
39
|
-
- `feature-build`: turn the confirmed spec into code
|
|
39
|
+
- `feature-build`: turn the confirmed spec-refinement into code
|
|
40
40
|
- `test-design`: turn implementation results into a validation plan
|
|
41
41
|
- `knowledge-capture`: turn product and engineering facts into requirements knowledge, realtime code facts, CodeWiki entries, enterprise knowledge, and persisted knowledge-base packs
|
|
42
|
-
- `api-docs`: turn confirmed interfaces into docs
|
|
42
|
+
- `api-contract-docs`: turn confirmed interfaces into docs
|
|
43
43
|
- `domain-modeling`: turn domain language into boundaries
|
|
44
|
-
- `
|
|
44
|
+
- `business-fact-extraction`: turn code-backed evidence into code facts, business facts, CodeWiki deltas, and file targets
|
|
45
45
|
- `workflow-router`: route the stage
|
|
46
46
|
- `code-review`: output generic review findings
|
|
47
|
-
- `security-
|
|
48
|
-
- `performance-
|
|
47
|
+
- `security-audit`: output security findings
|
|
48
|
+
- `performance-audit`: output performance findings
|
|
49
49
|
|
|
50
50
|
## Template Selection
|
|
51
51
|
|
|
52
|
-
- Short template: `workflow-router`, `knowledge-capture`, `api-docs`, `test-design`, `domain-modeling`, `project-bootstrap`, `environment-deploy`
|
|
53
|
-
- Enhanced template: `spec`, `technical-design`, `feature-build`, `code-review`, `security-
|
|
52
|
+
- Short template: `workflow-router`, `knowledge-capture`, `api-contract-docs`, `test-design`, `domain-modeling`, `project-bootstrap`, `environment-deploy`
|
|
53
|
+
- Enhanced template: `spec-refinement`, `technical-design`, `feature-build`, `code-review`, `security-audit`, `performance-audit`, `business-fact-extraction`
|
|
54
54
|
|
|
55
55
|
## Rules Loading
|
|
56
56
|
|
|
@@ -59,3 +59,4 @@
|
|
|
59
59
|
- Load the smallest bundle that covers the task.
|
|
60
60
|
- Skills should reference at least one `rules` bundle when the task touches code.
|
|
61
61
|
|
|
62
|
+
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: security-
|
|
2
|
+
name: security-audit
|
|
3
3
|
description: 当需要安全结论时,对 diff、接口或设计说明中的认证、密钥或数据暴露风险进行审查
|
|
4
4
|
lifecycle_stage: review
|
|
5
5
|
rule_profile: security
|
|
@@ -40,7 +40,7 @@ refs:
|
|
|
40
40
|
- rules/index.md
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
# Security
|
|
43
|
+
# Security Audit
|
|
44
44
|
|
|
45
45
|
## Purpose
|
|
46
46
|
|
|
@@ -115,3 +115,5 @@ Find and rank security risks before release.
|
|
|
115
115
|
- `skills/references/prompt-replay-checklist.md`
|
|
116
116
|
- `skills/references/full-chain-replay-scenarios.md`
|
|
117
117
|
- `rules/index.md`
|
|
118
|
+
|
|
119
|
+
# Security Audit
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: spec
|
|
3
|
-
description:
|
|
2
|
+
name: spec-refinement
|
|
3
|
+
description: 当需求需要澄清并在设计或实现前对齐时,将 PRD、原型、项目事实、实现事实和知识库证据整理为可执行的规格说明、任务拆分和确认包
|
|
4
4
|
lifecycle_stage: refinement
|
|
5
5
|
rule_profile: refinement
|
|
6
6
|
dependencies:
|
|
7
7
|
- workflow-router
|
|
8
8
|
triggers:
|
|
9
|
-
- spec
|
|
9
|
+
- spec-refinement
|
|
10
10
|
- requirement clarification
|
|
11
11
|
- acceptance gap
|
|
12
|
-
- engineering spec
|
|
12
|
+
- engineering spec-refinement
|
|
13
13
|
- task breakdown
|
|
14
14
|
- execution direction
|
|
15
15
|
- confirmation package
|
|
@@ -22,7 +22,7 @@ inputs:
|
|
|
22
22
|
- open questions
|
|
23
23
|
- rules bundle
|
|
24
24
|
outputs:
|
|
25
|
-
- executable spec
|
|
25
|
+
- executable spec-refinement
|
|
26
26
|
- execution direction plan
|
|
27
27
|
- acceptance criteria
|
|
28
28
|
- impact scope
|
|
@@ -41,7 +41,7 @@ workflow:
|
|
|
41
41
|
- assemble a confirmation package for user sign-off
|
|
42
42
|
- hand off to `technical-design` or `feature-build` only after confirmation
|
|
43
43
|
gates:
|
|
44
|
-
- stop at spec clarity
|
|
44
|
+
- stop at spec-refinement clarity
|
|
45
45
|
- do not restart PRD writing
|
|
46
46
|
- do not generate code
|
|
47
47
|
- do not skip the selected rules bundle
|
|
@@ -57,11 +57,11 @@ refs:
|
|
|
57
57
|
- rules/index.md
|
|
58
58
|
---
|
|
59
59
|
|
|
60
|
-
# Spec
|
|
60
|
+
# Spec Refinement
|
|
61
61
|
|
|
62
62
|
## Purpose
|
|
63
63
|
|
|
64
|
-
Turn product input, current project facts, and implementation evidence into an executable engineering spec.
|
|
64
|
+
Turn product input, current project facts, and implementation evidence into an executable engineering spec-refinement.
|
|
65
65
|
|
|
66
66
|
## Suitable / Unsuitable
|
|
67
67
|
|
|
@@ -71,12 +71,12 @@ Turn product input, current project facts, and implementation evidence into an e
|
|
|
71
71
|
## Quick Start
|
|
72
72
|
|
|
73
73
|
- Start from the approved brief and compare it with current project facts, prototype notes, implementation facts, code, docs, and knowledge snippets.
|
|
74
|
-
- Identify acceptance gaps and fact conflicts before writing any implementation-facing spec.
|
|
74
|
+
- Identify acceptance gaps and fact conflicts before writing any implementation-facing spec-refinement.
|
|
75
75
|
- Decide the task execution direction before extracting the task breakdown plan.
|
|
76
76
|
- Extract the task breakdown plan so feature-build can break the work into small tasks.
|
|
77
|
-
- Convert the result into an executable spec that AI can follow without re-interpreting the PRD.
|
|
78
|
-
- Package the spec, task plan, and acceptance criteria into a confirmation package before execution starts.
|
|
79
|
-
- If scope is still unstable, stop and keep the output at spec clarity.
|
|
77
|
+
- Convert the result into an executable spec-refinement that AI can follow without re-interpreting the PRD.
|
|
78
|
+
- Package the spec-refinement, task plan, and acceptance criteria into a confirmation package before execution starts.
|
|
79
|
+
- If scope is still unstable, stop and keep the output at spec-refinement clarity.
|
|
80
80
|
|
|
81
81
|
## Inputs / Outputs
|
|
82
82
|
|
|
@@ -90,7 +90,7 @@ Turn product input, current project facts, and implementation evidence into an e
|
|
|
90
90
|
- open questions
|
|
91
91
|
- rules bundle
|
|
92
92
|
- Outputs:
|
|
93
|
-
- executable spec
|
|
93
|
+
- executable spec-refinement
|
|
94
94
|
- execution direction plan
|
|
95
95
|
- acceptance criteria
|
|
96
96
|
- impact scope
|
|
@@ -106,30 +106,30 @@ Turn product input, current project facts, and implementation evidence into an e
|
|
|
106
106
|
2. Compare the brief with current project facts, prototype notes, implementation facts, docs, and known constraints.
|
|
107
107
|
3. Clarify boundaries, assumptions, acceptance gaps, and fact conflicts.
|
|
108
108
|
4. Extract the task breakdown plan for later implementation.
|
|
109
|
-
5. Write the execution direction plan, executable spec, task breakdown plan, conflict map, implementation inputs, and confirmation package.
|
|
109
|
+
5. Write the execution direction plan, executable spec-refinement, task breakdown plan, conflict map, implementation inputs, and confirmation package.
|
|
110
110
|
6. Hand off to `technical-design` or `feature-build` when the scope is stable and confirmed.
|
|
111
111
|
7. Stop before code generation.
|
|
112
112
|
|
|
113
113
|
## Replay Signals
|
|
114
114
|
|
|
115
115
|
- Input signal: approved PRD, open acceptance gaps, or code-to-requirement alignment work.
|
|
116
|
-
- Output to verify: executable spec, execution direction plan, acceptance criteria, impact scope, alignment notes, conflict map, task breakdown plan, implementation input summary, confirmation package.
|
|
116
|
+
- Output to verify: executable spec-refinement, execution direction plan, acceptance criteria, impact scope, alignment notes, conflict map, task breakdown plan, implementation input summary, confirmation package.
|
|
117
117
|
- Stop signal: code generation, implementation detail expansion, or redoing the PRD.
|
|
118
|
-
- Handoff signal: the spec is stable enough for `technical-design` or `feature-build`.
|
|
118
|
+
- Handoff signal: the spec-refinement is stable enough for `technical-design` or `feature-build`.
|
|
119
119
|
|
|
120
120
|
## Gotchas
|
|
121
121
|
|
|
122
122
|
- Do not reopen product discovery.
|
|
123
123
|
- Do not ignore current project facts.
|
|
124
124
|
- Do not ignore knowledge-base evidence.
|
|
125
|
-
- Do not rewrite the PRD
|
|
125
|
+
- Do not rewrite the PRD during spec-refinement.
|
|
126
126
|
- Do not let implementation details leak into the brief.
|
|
127
127
|
- Do not collapse the task breakdown plan into one coarse requirement.
|
|
128
128
|
- Do not skip the selected rules bundle.
|
|
129
129
|
|
|
130
130
|
## Stop Rules
|
|
131
131
|
|
|
132
|
-
- Stop at spec clarity.
|
|
132
|
+
- Stop at spec-refinement clarity.
|
|
133
133
|
- Do not restart PRD writing.
|
|
134
134
|
- Do not rewrite the PRD.
|
|
135
135
|
- Do not jump into implementation.
|
|
@@ -146,3 +146,4 @@ Turn product input, current project facts, and implementation evidence into an e
|
|
|
146
146
|
- `skills/references/rule-loading-map.md`
|
|
147
147
|
- `rules/index.md`
|
|
148
148
|
|
|
149
|
+
|