@x0rium/devkit-cli 0.6.0 → 0.8.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.
- package/dist/constitution.d.ts.map +1 -1
- package/dist/constitution.js +62 -8
- package/dist/constitution.js.map +1 -1
- package/dist/dashboard.d.ts.map +1 -1
- package/dist/dashboard.js +6 -2
- package/dist/dashboard.js.map +1 -1
- package/dist/detector.d.ts.map +1 -1
- package/dist/detector.js +5 -2
- package/dist/detector.js.map +1 -1
- package/dist/escalate.d.ts.map +1 -1
- package/dist/escalate.js +8 -3
- package/dist/escalate.js.map +1 -1
- package/dist/gate.d.ts.map +1 -1
- package/dist/gate.js +57 -10
- package/dist/gate.js.map +1 -1
- package/dist/index.js +64 -8
- package/dist/index.js.map +1 -1
- package/dist/inject.d.ts +26 -0
- package/dist/inject.d.ts.map +1 -0
- package/dist/inject.js +161 -0
- package/dist/inject.js.map +1 -0
- package/dist/investigate.d.ts.map +1 -1
- package/dist/investigate.js +8 -10
- package/dist/investigate.js.map +1 -1
- package/dist/rfc.d.ts.map +1 -1
- package/dist/rfc.js +8 -10
- package/dist/rfc.js.map +1 -1
- package/dist/scaffold.d.ts +1 -0
- package/dist/scaffold.d.ts.map +1 -1
- package/dist/scaffold.js +11 -1
- package/dist/scaffold.js.map +1 -1
- package/dist/schemas.js +2 -2
- package/dist/schemas.js.map +1 -1
- package/dist/status.d.ts.map +1 -1
- package/dist/status.js +7 -4
- package/dist/status.js.map +1 -1
- package/dist/validator.js +1 -1
- package/dist/validator.js.map +1 -1
- package/dist/watch.js +10 -10
- package/dist/watch.js.map +1 -1
- package/package.json +2 -4
- package/skills/arch-kit/SKILL.md +66 -4
- package/skills/devkit-init/SKILL.md +35 -60
- package/skills/product-kit/SKILL.md +28 -3
- package/skills/qa-kit/SKILL.md +44 -2
- package/skills/research-kit/SKILL.md +30 -8
- package/skills/spec-kit/SKILL.md +133 -39
- package/skills/spec-kit/commands/speckit.analyze.md +201 -0
- package/skills/spec-kit/commands/speckit.checklist.md +304 -0
- package/skills/spec-kit/commands/speckit.clarify.md +199 -0
- package/skills/spec-kit/commands/speckit.implement.md +163 -0
- package/skills/spec-kit/commands/speckit.plan.md +119 -0
- package/skills/spec-kit/commands/speckit.specify.md +298 -0
- package/skills/spec-kit/commands/speckit.tasks.md +153 -0
- package/skills/spec-kit/hooks/analyze.coverage-pass.md +14 -0
- package/skills/spec-kit/hooks/checklist.invariant-category.md +7 -0
- package/skills/spec-kit/hooks/clarify.invariant-check.md +15 -0
- package/skills/spec-kit/hooks/implement.phase-guards.md +25 -0
- package/skills/spec-kit/hooks/plan.constitution-precheck.md +7 -0
- package/skills/spec-kit/hooks/plan.plan-postcheck.md +17 -0
- package/skills/spec-kit/hooks/specify.invariant-guard.md +37 -0
- package/skills/spec-kit/hooks/tasks.validate-checkpoints.md +13 -0
package/dist/validator.js
CHANGED
|
@@ -174,7 +174,7 @@ export function formatValidation(result) {
|
|
|
174
174
|
lines.push(` 📄 ${file}`);
|
|
175
175
|
for (const err of errs) {
|
|
176
176
|
const loc = err.line > 0 ? `:${err.line}` : '';
|
|
177
|
-
lines.push(` ✖ ${err.message}`);
|
|
177
|
+
lines.push(` ✖ ${err.message} (line${loc})`);
|
|
178
178
|
lines.push(` → Fix: ${err.fix}`);
|
|
179
179
|
}
|
|
180
180
|
lines.push('');
|
package/dist/validator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
|
package/dist/watch.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { watch } from 'chokidar';
|
|
2
|
-
import { join } from 'node:path';
|
|
2
|
+
import { join, relative } from 'node:path';
|
|
3
3
|
import chalk from 'chalk';
|
|
4
4
|
import { validateArtifacts, formatValidation } from './validator.js';
|
|
5
5
|
export function watchValidate(cwd) {
|
|
@@ -17,19 +17,19 @@ export function watchValidate(cwd) {
|
|
|
17
17
|
pollInterval: 100,
|
|
18
18
|
},
|
|
19
19
|
});
|
|
20
|
-
watcher.on('change', (
|
|
21
|
-
const
|
|
22
|
-
console.log(chalk.cyan(`\n 📝 Changed: ${
|
|
20
|
+
watcher.on('change', (filePath) => {
|
|
21
|
+
const rel = relative(cwd, filePath);
|
|
22
|
+
console.log(chalk.cyan(`\n 📝 Changed: ${rel}`));
|
|
23
23
|
runValidation(cwd);
|
|
24
24
|
});
|
|
25
|
-
watcher.on('add', (
|
|
26
|
-
const
|
|
27
|
-
console.log(chalk.green(`\n ➕ Added: ${
|
|
25
|
+
watcher.on('add', (filePath) => {
|
|
26
|
+
const rel = relative(cwd, filePath);
|
|
27
|
+
console.log(chalk.green(`\n ➕ Added: ${rel}`));
|
|
28
28
|
runValidation(cwd);
|
|
29
29
|
});
|
|
30
|
-
watcher.on('unlink', (
|
|
31
|
-
const
|
|
32
|
-
console.log(chalk.red(`\n ➖ Removed: ${
|
|
30
|
+
watcher.on('unlink', (filePath) => {
|
|
31
|
+
const rel = relative(cwd, filePath);
|
|
32
|
+
console.log(chalk.red(`\n ➖ Removed: ${rel}`));
|
|
33
33
|
runValidation(cwd);
|
|
34
34
|
});
|
|
35
35
|
}
|
package/dist/watch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watch.js","sourceRoot":"","sources":["../src/watch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"watch.js","sourceRoot":"","sources":["../src/watch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAErE,MAAM,UAAU,aAAa,CAAC,GAAW;IACrC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAEvC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC,CAAC;IAC5E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,SAAS,UAAU,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,CAAC;IAEpD,yBAAyB;IACzB,aAAa,CAAC,GAAG,CAAC,CAAC;IAEnB,6BAA6B;IAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE;QAC9C,aAAa,EAAE,IAAI;QACnB,gBAAgB,EAAE;YACd,kBAAkB,EAAE,GAAG;YACvB,YAAY,EAAE,GAAG;SACpB;KACJ,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE;QAC9B,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAC,CAAC;QAClD,aAAa,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,EAAE;QAC3B,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,gBAAgB,GAAG,EAAE,CAAC,CAAC,CAAC;QAChD,aAAa,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE;QAC9B,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,GAAG,EAAE,CAAC,CAAC,CAAC;QAChD,aAAa,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,aAAa,CAAC,GAAW;IAC9B,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,kBAAkB,EAAE,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC;IAE5C,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;IAEtC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC/C,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,WAAW,CAAC,CAAC,CAAC;IACnE,CAAC;AACL,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@x0rium/devkit-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"description": "CLI for DevKit — AI-Native Development Methodology",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
@@ -33,12 +33,10 @@
|
|
|
33
33
|
"node": ">=18"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"ajv": "^8.17.1",
|
|
37
36
|
"chalk": "^5.4.1",
|
|
38
37
|
"chokidar": "^5.0.0",
|
|
39
38
|
"commander": "^13.1.0",
|
|
40
|
-
"glob": "^11.0.1"
|
|
41
|
-
"gray-matter": "^4.0.3"
|
|
39
|
+
"glob": "^11.0.1"
|
|
42
40
|
},
|
|
43
41
|
"devDependencies": {
|
|
44
42
|
"@types/node": "^22.0.0",
|
package/skills/arch-kit/SKILL.md
CHANGED
|
@@ -4,7 +4,7 @@ description: DevKit Level 3. Use after ProductKit to explore architecture varian
|
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
author: devkit
|
|
7
|
-
version: "1.
|
|
7
|
+
version: "1.1"
|
|
8
8
|
layer: "3-of-5"
|
|
9
9
|
prev: product-kit
|
|
10
10
|
next: spec-kit
|
|
@@ -14,6 +14,14 @@ metadata:
|
|
|
14
14
|
|
|
15
15
|
You are operating in ArchKit phase. Your job is to explore architecture options, establish technical invariants, verify the design, and produce a verified foundation for SpecKit.
|
|
16
16
|
|
|
17
|
+
## Start
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
devkit status
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Confirm you are in the arch phase. If not, check gate status of the previous phase.
|
|
24
|
+
|
|
17
25
|
## Your Role
|
|
18
26
|
|
|
19
27
|
- Explore multiple architecture variants with explicit tradeoffs
|
|
@@ -57,6 +65,21 @@ Formalize the chosen architecture:
|
|
|
57
65
|
- Failure modes and how each is handled
|
|
58
66
|
- Explicit OPEN_QUESTIONS that block progress
|
|
59
67
|
|
|
68
|
+
Before creating an RFC for a change, check what it affects:
|
|
69
|
+
```bash
|
|
70
|
+
devkit impact "description of change"
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
To create an RFC:
|
|
74
|
+
```bash
|
|
75
|
+
devkit rfc "description"
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
To open an investigation:
|
|
79
|
+
```bash
|
|
80
|
+
devkit investigate "description"
|
|
81
|
+
```
|
|
82
|
+
|
|
60
83
|
### Phase 4: Adversarial Verification
|
|
61
84
|
Play the role of a hostile environment. For every critical path, ask:
|
|
62
85
|
- What if this service crashes mid-transaction?
|
|
@@ -81,7 +104,18 @@ Read templates from:
|
|
|
81
104
|
- [Impact map template](references/impact.md)
|
|
82
105
|
|
|
83
106
|
Save to `.devkit/arch/`.
|
|
84
|
-
|
|
107
|
+
|
|
108
|
+
Generate constitution and sync:
|
|
109
|
+
```bash
|
|
110
|
+
devkit generate-constitution
|
|
111
|
+
devkit sync
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
**After creating or updating artifacts, always run:**
|
|
115
|
+
```bash
|
|
116
|
+
devkit validate
|
|
117
|
+
```
|
|
118
|
+
Fix any errors before proceeding.
|
|
85
119
|
|
|
86
120
|
## Event Detection During SpecKit
|
|
87
121
|
|
|
@@ -92,7 +126,12 @@ Check invariants.md. If any invariant is touched:
|
|
|
92
126
|
> "This touches invariant [I_N]. I'm stopping SpecKit and opening an RFC.
|
|
93
127
|
> Here's what's affected and the cost of the change."
|
|
94
128
|
|
|
95
|
-
|
|
129
|
+
```bash
|
|
130
|
+
devkit impact "description of change"
|
|
131
|
+
devkit rfc "description"
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
Run delta ArchKit cycle. Resume SpecKit only after RFC is resolved.
|
|
96
135
|
|
|
97
136
|
### Investigation Trigger
|
|
98
137
|
Developer says: "found a bug in lib X", "benchmark failed", "this doesn't work as expected", "library doesn't support Y"
|
|
@@ -100,10 +139,25 @@ Developer says: "found a bug in lib X", "benchmark failed", "this doesn't work a
|
|
|
100
139
|
Check which ADR this breaks:
|
|
101
140
|
> "This breaks assumption in [ADR-N]. Opening Investigation."
|
|
102
141
|
|
|
103
|
-
|
|
142
|
+
```bash
|
|
143
|
+
devkit investigate "description"
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
Present options with costs. Developer decides. Update affected specs.
|
|
147
|
+
|
|
148
|
+
After resolving, regenerate constitution if invariants changed:
|
|
149
|
+
```bash
|
|
150
|
+
devkit generate-constitution
|
|
151
|
+
devkit sync
|
|
152
|
+
devkit validate
|
|
153
|
+
```
|
|
104
154
|
|
|
105
155
|
## Gate: When Can We Move to SpecKit?
|
|
106
156
|
|
|
157
|
+
```bash
|
|
158
|
+
devkit gate
|
|
159
|
+
```
|
|
160
|
+
|
|
107
161
|
ALLOWED when:
|
|
108
162
|
- All adversarial scenarios have answers
|
|
109
163
|
- No OPEN_QUESTIONS of blocking type remain
|
|
@@ -118,6 +172,14 @@ BLOCKED when:
|
|
|
118
172
|
|
|
119
173
|
## Handoff
|
|
120
174
|
|
|
175
|
+
When `devkit gate` shows ALLOWED:
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
devkit advance
|
|
179
|
+
devkit status
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
Then generate summary:
|
|
121
183
|
```
|
|
122
184
|
ARCHITECTURE VERIFIED
|
|
123
185
|
VARIANT CHOSEN: [name and one-line rationale]
|
|
@@ -4,54 +4,38 @@ description: Initialize DevKit in any project. Use when developer wants to start
|
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
author: devkit
|
|
7
|
-
version: "1.
|
|
7
|
+
version: "1.1"
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# DevKit Init
|
|
11
11
|
|
|
12
12
|
Initialize DevKit for any project state. Detect what exists, choose the right mode, set up what's needed.
|
|
13
13
|
|
|
14
|
-
## Step 1:
|
|
14
|
+
## Step 1: Run CLI Init
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
Run the CLI command — it auto-detects project state and creates the structure:
|
|
17
17
|
|
|
18
|
+
```bash
|
|
19
|
+
devkit init
|
|
18
20
|
```
|
|
19
|
-
Check for:
|
|
20
|
-
.devkit/ → already initialized
|
|
21
|
-
.specify/ → spec-kit exists, no DevKit
|
|
22
|
-
source code files → brownfield (code without DevKit)
|
|
23
|
-
empty directory → greenfield
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
Based on findings, choose mode:
|
|
27
21
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
| Empty / no code | Greenfield mode → start fresh |
|
|
22
|
+
This will:
|
|
23
|
+
- Detect project state (greenfield / brownfield / upgrade / already initialized)
|
|
24
|
+
- Create `.devkit/` directory structure
|
|
25
|
+
- Generate `STATUS.md` with correct mode and phase
|
|
26
|
+
- Report what was created vs skipped
|
|
34
27
|
|
|
35
|
-
|
|
36
|
-
- Greenfield: [greenfield.md](references/greenfield.md)
|
|
37
|
-
- Brownfield: [brownfield.md](references/brownfield.md)
|
|
38
|
-
- Upgrade from spec-kit: [upgrade.md](references/upgrade.md)
|
|
28
|
+
If `.devkit/` already exists, it safely skips (idempotent).
|
|
39
29
|
|
|
40
|
-
## Step 2:
|
|
30
|
+
## Step 2: Verify State
|
|
41
31
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
```
|
|
45
|
-
.devkit/
|
|
46
|
-
research/ ← ResearchKit artifacts
|
|
47
|
-
product/ ← ProductKit artifacts
|
|
48
|
-
arch/
|
|
49
|
-
decisions/ ← ADR, RFC, Investigation files
|
|
50
|
-
qa/
|
|
51
|
-
escalations/ ← QA escalation history
|
|
32
|
+
```bash
|
|
33
|
+
devkit status
|
|
52
34
|
```
|
|
53
35
|
|
|
54
|
-
|
|
36
|
+
Review the output: mode, current phase, progress. This confirms init worked correctly.
|
|
37
|
+
|
|
38
|
+
## Step 3: Install spec-kit if not present (optional)
|
|
55
39
|
|
|
56
40
|
Check if `specify` CLI is available:
|
|
57
41
|
|
|
@@ -59,41 +43,32 @@ Check if `specify` CLI is available:
|
|
|
59
43
|
specify --version
|
|
60
44
|
```
|
|
61
45
|
|
|
62
|
-
If not found,
|
|
46
|
+
If not found, inform the developer (do not block init):
|
|
63
47
|
```
|
|
64
|
-
spec-kit not found.
|
|
48
|
+
Note: spec-kit not found. DevKit works independently.
|
|
49
|
+
If you want SpecKit integration, install with:
|
|
65
50
|
uv tool install specify-cli --from git+https://github.com/github/spec-kit.git
|
|
66
|
-
|
|
67
51
|
Then run: specify init . --ai claude
|
|
68
52
|
```
|
|
69
53
|
|
|
70
|
-
|
|
71
|
-
```bash
|
|
72
|
-
specify init . --ai claude
|
|
73
|
-
```
|
|
54
|
+
Important: spec-kit installation is optional. DevKit init must succeed regardless of spec-kit availability.
|
|
74
55
|
|
|
75
|
-
## Step 4:
|
|
56
|
+
## Step 4: Mode-Specific Setup
|
|
76
57
|
|
|
77
|
-
|
|
58
|
+
For **brownfield** mode, also follow [brownfield.md](references/brownfield.md) to reconstruct invariants from existing code.
|
|
78
59
|
|
|
79
|
-
|
|
80
|
-
```
|
|
81
|
-
DevKit initialized.
|
|
82
|
-
Start with: /research-kit
|
|
83
|
-
Describe your idea and we'll explore feasibility together.
|
|
84
|
-
```
|
|
60
|
+
For **upgrade** mode, follow [upgrade.md](references/upgrade.md) to extract artifacts from existing constitution.
|
|
85
61
|
|
|
86
|
-
|
|
87
|
-
```
|
|
88
|
-
DevKit initialized in brownfield mode.
|
|
89
|
-
Reconstructed N invariants (review required).
|
|
90
|
-
Next: review .devkit/arch/invariants.md and confirm or correct.
|
|
91
|
-
Then: /arch-kit to fill gaps.
|
|
92
|
-
```
|
|
62
|
+
For **greenfield**, no extra setup needed.
|
|
93
63
|
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
Next: review .devkit/arch/invariants.md
|
|
64
|
+
## Step 5: Confirm and Show Next Step
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
devkit status
|
|
99
68
|
```
|
|
69
|
+
|
|
70
|
+
Tell developer what to do next based on detected mode:
|
|
71
|
+
|
|
72
|
+
- Greenfield: "Start with: /research-kit — describe your idea"
|
|
73
|
+
- Brownfield: "Review .devkit/arch/invariants.md, then /arch-kit to fill gaps"
|
|
74
|
+
- Upgrade: "Review .devkit/arch/invariants.md extracted from constitution"
|
|
@@ -4,7 +4,7 @@ description: DevKit Level 2. Use after ResearchKit when developer needs to defin
|
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
author: devkit
|
|
7
|
-
version: "1.
|
|
7
|
+
version: "1.1"
|
|
8
8
|
layer: "2-of-5"
|
|
9
9
|
prev: research-kit
|
|
10
10
|
next: arch-kit
|
|
@@ -14,6 +14,14 @@ metadata:
|
|
|
14
14
|
|
|
15
15
|
You are operating in ProductKit phase. Your job is to define the user, establish UX invariants, and set roadmap priorities before any architecture decisions are made.
|
|
16
16
|
|
|
17
|
+
## Start
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
devkit status
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Confirm you are in the product phase. If not, check gate status of the previous phase.
|
|
24
|
+
|
|
17
25
|
## Your Role
|
|
18
26
|
|
|
19
27
|
- Define who the user is and how they interact with the product
|
|
@@ -62,8 +70,18 @@ Read templates from:
|
|
|
62
70
|
|
|
63
71
|
Save artifacts to `.devkit/product/`.
|
|
64
72
|
|
|
73
|
+
**After creating or updating artifacts, always run:**
|
|
74
|
+
```bash
|
|
75
|
+
devkit validate
|
|
76
|
+
```
|
|
77
|
+
Fix any errors before proceeding.
|
|
78
|
+
|
|
65
79
|
## Gate: When Can We Move to ArchKit?
|
|
66
80
|
|
|
81
|
+
```bash
|
|
82
|
+
devkit gate
|
|
83
|
+
```
|
|
84
|
+
|
|
67
85
|
ALLOWED to proceed when:
|
|
68
86
|
- Primary user and happy path defined
|
|
69
87
|
- UX invariants established for MVP scope
|
|
@@ -85,11 +103,18 @@ Response:
|
|
|
85
103
|
> [check ux_invariants.md]
|
|
86
104
|
> This conflicts with [U_N]. Running ProductKit investigation before continuing."
|
|
87
105
|
|
|
88
|
-
|
|
106
|
+
Review ux_invariants.md, explore options, update invariants if needed, propagate changes to ArchKit via `devkit rfc`.
|
|
89
107
|
|
|
90
108
|
## Handoff
|
|
91
109
|
|
|
92
|
-
When gate
|
|
110
|
+
When `devkit gate` shows ALLOWED:
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
devkit advance
|
|
114
|
+
devkit status
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
Then generate summary:
|
|
93
118
|
```
|
|
94
119
|
PRODUCT COMPLETE
|
|
95
120
|
USER: [one-line description]
|
package/skills/qa-kit/SKILL.md
CHANGED
|
@@ -4,7 +4,7 @@ description: DevKit Level 5. Use after implementation to verify the system again
|
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
author: devkit
|
|
7
|
-
version: "1.
|
|
7
|
+
version: "1.1"
|
|
8
8
|
layer: "5-of-5"
|
|
9
9
|
prev: spec-kit
|
|
10
10
|
---
|
|
@@ -13,6 +13,14 @@ metadata:
|
|
|
13
13
|
|
|
14
14
|
You are operating in QAKit phase. Your job is not just to find bugs — it is to verify the system against every level of decisions made in DevKit.
|
|
15
15
|
|
|
16
|
+
## Start
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
devkit status
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Confirm you are in the qa phase. If not, check gate status of the previous phase.
|
|
23
|
+
|
|
16
24
|
## Your Role
|
|
17
25
|
|
|
18
26
|
- Generate test contracts from invariants (not from code)
|
|
@@ -44,9 +52,19 @@ For each invariant, generate a test contract:
|
|
|
44
52
|
|
|
45
53
|
Save to `.devkit/qa/test_contracts.md`.
|
|
46
54
|
|
|
55
|
+
**After creating contracts, validate:**
|
|
56
|
+
```bash
|
|
57
|
+
devkit validate
|
|
58
|
+
```
|
|
59
|
+
|
|
47
60
|
### Phase 2: Coverage Analysis
|
|
48
61
|
Map every invariant to its test contract.
|
|
49
62
|
Identify uncovered invariants — these are explicit technical debt.
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
devkit coverage
|
|
66
|
+
```
|
|
67
|
+
|
|
50
68
|
Save to `.devkit/qa/coverage_map.md`.
|
|
51
69
|
|
|
52
70
|
### Phase 3: Assumption Validation
|
|
@@ -55,6 +73,10 @@ For each assumption, check whether reality confirmed or rejected it.
|
|
|
55
73
|
Rejected assumptions → escalate to ResearchKit.
|
|
56
74
|
Save findings to `.devkit/qa/assumption_checks.md`.
|
|
57
75
|
|
|
76
|
+
```bash
|
|
77
|
+
devkit validate
|
|
78
|
+
```
|
|
79
|
+
|
|
58
80
|
## Artifacts to Produce
|
|
59
81
|
|
|
60
82
|
Read templates from:
|
|
@@ -64,6 +86,12 @@ Read templates from:
|
|
|
64
86
|
|
|
65
87
|
Save to `.devkit/qa/`.
|
|
66
88
|
|
|
89
|
+
**After creating or updating artifacts, always run:**
|
|
90
|
+
```bash
|
|
91
|
+
devkit validate
|
|
92
|
+
```
|
|
93
|
+
Fix any errors before proceeding.
|
|
94
|
+
|
|
67
95
|
## Escalation Logic
|
|
68
96
|
|
|
69
97
|
When a test fails or a problem is found:
|
|
@@ -87,7 +115,12 @@ Did a research assumption prove false in production?
|
|
|
87
115
|
```
|
|
88
116
|
|
|
89
117
|
### Step 3: Document the escalation
|
|
90
|
-
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
devkit escalate "description of failure"
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
This creates `.devkit/qa/escalations/ESC-XXX.md`. Fill in:
|
|
91
124
|
- What was found
|
|
92
125
|
- Which level it escalated to
|
|
93
126
|
- What decision was triggered
|
|
@@ -95,6 +128,10 @@ Create `.devkit/qa/escalations/ESC-XXX.md`:
|
|
|
95
128
|
|
|
96
129
|
## Gate: Ready for Production?
|
|
97
130
|
|
|
131
|
+
```bash
|
|
132
|
+
devkit gate
|
|
133
|
+
```
|
|
134
|
+
|
|
98
135
|
ALLOWED when:
|
|
99
136
|
- All BLOCKER test contracts pass
|
|
100
137
|
- No open escalations of blocker severity
|
|
@@ -104,6 +141,11 @@ BLOCKED when:
|
|
|
104
141
|
- Any BLOCKER contract fails
|
|
105
142
|
- Open blocker-level escalation exists
|
|
106
143
|
|
|
144
|
+
Check coverage threshold:
|
|
145
|
+
```bash
|
|
146
|
+
devkit coverage
|
|
147
|
+
```
|
|
148
|
+
|
|
107
149
|
## Continuous QA
|
|
108
150
|
|
|
109
151
|
QAKit is not a one-time gate. It runs:
|
|
@@ -4,7 +4,7 @@ description: DevKit Level 1. Use when developer has a new idea and needs to expl
|
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
author: devkit
|
|
7
|
-
version: "1.
|
|
7
|
+
version: "1.1"
|
|
8
8
|
layer: "1-of-5"
|
|
9
9
|
next: product-kit
|
|
10
10
|
---
|
|
@@ -13,6 +13,10 @@ metadata:
|
|
|
13
13
|
|
|
14
14
|
You are operating in ResearchKit phase. Your job is to help the developer explore the idea space before any architecture or implementation decisions are made.
|
|
15
15
|
|
|
16
|
+
## Start
|
|
17
|
+
|
|
18
|
+
Run `devkit status` to confirm you are in the research phase. If the project is not initialized, run `devkit init` first.
|
|
19
|
+
|
|
16
20
|
## Your Role
|
|
17
21
|
|
|
18
22
|
- Ask questions, explore unknowns, map risks
|
|
@@ -54,8 +58,19 @@ Read templates from:
|
|
|
54
58
|
|
|
55
59
|
Save artifacts to `.devkit/research/`.
|
|
56
60
|
|
|
61
|
+
**After creating or updating artifacts, always run:**
|
|
62
|
+
```bash
|
|
63
|
+
devkit validate
|
|
64
|
+
```
|
|
65
|
+
Fix any errors before proceeding.
|
|
66
|
+
|
|
57
67
|
## Gate: When Can We Move to ProductKit?
|
|
58
68
|
|
|
69
|
+
Check readiness with CLI:
|
|
70
|
+
```bash
|
|
71
|
+
devkit gate
|
|
72
|
+
```
|
|
73
|
+
|
|
59
74
|
ALLOWED to proceed when:
|
|
60
75
|
- All HIGH RISK unknowns have a validation path
|
|
61
76
|
- Feasibility is `yes` or `conditional` with known conditions
|
|
@@ -65,16 +80,16 @@ BLOCKED when:
|
|
|
65
80
|
- Any BLOCKER unknown has no validation path
|
|
66
81
|
- Feasibility is `no`
|
|
67
82
|
|
|
68
|
-
##
|
|
83
|
+
## Handoff
|
|
69
84
|
|
|
70
|
-
|
|
71
|
-
- New technical constraint → update feasibility.md
|
|
72
|
-
- New analogue found → update market.md
|
|
73
|
-
- Resolved unknown → update status in unknowns.md
|
|
85
|
+
When `devkit gate` shows ALLOWED:
|
|
74
86
|
|
|
75
|
-
|
|
87
|
+
```bash
|
|
88
|
+
devkit advance
|
|
89
|
+
devkit status
|
|
90
|
+
```
|
|
76
91
|
|
|
77
|
-
|
|
92
|
+
Then generate summary:
|
|
78
93
|
```
|
|
79
94
|
RESEARCH COMPLETE
|
|
80
95
|
FEASIBILITY: yes/conditional/no
|
|
@@ -82,3 +97,10 @@ KEY UNKNOWNS RESOLVED: N
|
|
|
82
97
|
REMAINING RISKS: [list with mitigations]
|
|
83
98
|
READY FOR: ProductKit
|
|
84
99
|
```
|
|
100
|
+
|
|
101
|
+
## Event Detection
|
|
102
|
+
|
|
103
|
+
If developer mentions during ResearchKit:
|
|
104
|
+
- New technical constraint → update feasibility.md → `devkit validate`
|
|
105
|
+
- New analogue found → update market.md → `devkit validate`
|
|
106
|
+
- Resolved unknown → update status in unknowns.md → `devkit validate`
|