@dzhechkov/skills-idea2prd 0.1.0 → 0.1.3

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,153 @@
1
+ {
2
+ "manifest": {
3
+ "version": 1,
4
+ "pack": "skills-idea2prd",
5
+ "files": [
6
+ {
7
+ "path": "CHANGELOG.md",
8
+ "sha256": "44fbbf4909ce837794d0b46b1ac29c01a909ec9c46fd25baeb4247b63443ac77"
9
+ },
10
+ {
11
+ "path": "LICENSE",
12
+ "sha256": "3b93f7070f6843f37e0cae255f7caff22b466a4017fd2020d7d3216237e5a701"
13
+ },
14
+ {
15
+ "path": "README.md",
16
+ "sha256": "b7a4afb47ec0b84e32278400911fa9c42cf0d350fc2a88842226eae1ad533b61"
17
+ },
18
+ {
19
+ "path": "bin/cli.js",
20
+ "sha256": "a210174d6b63d053f7744757972d31acb0f4d9c59f8dacff7b62872a19ebd31a"
21
+ },
22
+ {
23
+ "path": "package.json",
24
+ "sha256": "bb159a378cb3f254761c27d45b0d72434a12b860370a0127889070b6ea8fe006"
25
+ },
26
+ {
27
+ "path": "sources.json",
28
+ "sha256": "3712bcefb43e3f38a926974c6e6b7b1d36992549dabdfd82e68d0fb7b8ba4481"
29
+ },
30
+ {
31
+ "path": "src/cli.js",
32
+ "sha256": "4ec553ef49d30599672cbaf5583fa999a0be4c06207433390d7d0bdd985bb804"
33
+ },
34
+ {
35
+ "path": "src/commands/doctor.js",
36
+ "sha256": "82f35dabfeef6033ec3ee6142e04cd195002e7855f2d7ac7aa3222748a3e6de2"
37
+ },
38
+ {
39
+ "path": "src/commands/init.js",
40
+ "sha256": "3bcd444ba61681bf5bd882fdbcbfbc7d180b5e0f370c0dd5ace6309a6e98040f"
41
+ },
42
+ {
43
+ "path": "src/commands/list.js",
44
+ "sha256": "f7b3a45abd3a3fcd3b9d8dcfb4540ae55f57f0fd74a51cdd898f0faa9d8cfc43"
45
+ },
46
+ {
47
+ "path": "src/commands/remove.js",
48
+ "sha256": "5d49c362a97092c878a3c1871a038d1e49a8bb01c8c82a53e7b49652c1526299"
49
+ },
50
+ {
51
+ "path": "src/commands/update.js",
52
+ "sha256": "7e7a8720afcf9e2b58c910dc2b630e5c6fc1b1eea88ba02f427f195616727249"
53
+ },
54
+ {
55
+ "path": "src/utils.js",
56
+ "sha256": "e07c5e711d54821869d6d76ff861920f37f54277b1a2fc953e45e3823aff4da4"
57
+ },
58
+ {
59
+ "path": "templates/.claude/commands/idea2prd-manual.md",
60
+ "sha256": "dcb6c72f3dba8ed1a6c087012658a822b9ce5a9e06da4d59520c7845600cac8b"
61
+ },
62
+ {
63
+ "path": "templates/.claude/skills/explore/SKILL.md",
64
+ "sha256": "c755a7bcdfe97fb7cb0bcd7bf3b1fd8a2d238ef082967fbf87740fc808302542"
65
+ },
66
+ {
67
+ "path": "templates/.claude/skills/explore/references/questioning-techniques.md",
68
+ "sha256": "ec0dd00871d3abe950f9cf375216a43043827897166c4165c3fa581839851195"
69
+ },
70
+ {
71
+ "path": "templates/.claude/skills/explore/references/task-brief-templates.md",
72
+ "sha256": "4e9292479e120afce944b747bb7b4a7226c41e9880708d620de3ea4fa4ef0249"
73
+ },
74
+ {
75
+ "path": "templates/.claude/skills/goap-research-ed25519/SKILL.md",
76
+ "sha256": "e23770a81922103571eb2645fb82509f7046bc7dd407a33b06f67ad2e709b9b4"
77
+ },
78
+ {
79
+ "path": "templates/.claude/skills/goap-research-ed25519/references/ed25519-verification.md",
80
+ "sha256": "2742f14b472bff69c83f24d9bac5bf023bd7f9ecc3e659742ac3152a239dd68f"
81
+ },
82
+ {
83
+ "path": "templates/.claude/skills/goap-research-ed25519/references/research-actions.md",
84
+ "sha256": "156d2f8ce342f7013bc758fe7c0d3ad3041b4f67f30dbcf8d59e091cb70d9a9c"
85
+ },
86
+ {
87
+ "path": "templates/.claude/skills/goap-research-ed25519/references/source-evaluation.md",
88
+ "sha256": "d6a19abb6be64dc9e1f539903080029125d2d899da4de3063e75e1afb7e4906f"
89
+ },
90
+ {
91
+ "path": "templates/.claude/skills/goap-research-ed25519/scripts/ed25519_verifier.py",
92
+ "sha256": "dc9edc4d7907d13b28dfa74cc86b30a27a41de707ce72f39aca0ae08f07b5703"
93
+ },
94
+ {
95
+ "path": "templates/.claude/skills/goap-research-ed25519/scripts/goap_planner.py",
96
+ "sha256": "2ec359e1ddc52ca3118144532ed483dcc609e856a04b29bb191b875c60ff4260"
97
+ },
98
+ {
99
+ "path": "templates/.claude/skills/goap-research-ed25519/scripts/test_ed25519_verifier.py",
100
+ "sha256": "ea6d888ac53bac3a0fe236c101f90a984edbac044d787d73c8414f1c4fc540d3"
101
+ },
102
+ {
103
+ "path": "templates/.claude/skills/idea2prd-manual/SKILL.md",
104
+ "sha256": "a871e47547ee349db19f6413e296db137e2833e2aa2277672ba33bac730855a5"
105
+ },
106
+ {
107
+ "path": "templates/.claude/skills/idea2prd-manual/references/adr-catalog.md",
108
+ "sha256": "165aebf4d997dc7ca34ac813befb62e82faa507be66cbf70af897192913a51b4"
109
+ },
110
+ {
111
+ "path": "templates/.claude/skills/idea2prd-manual/references/c4-model.md",
112
+ "sha256": "5da67750e3b4c580252cd7368601a635d555dc2e6048751246f7c24d5a984f74"
113
+ },
114
+ {
115
+ "path": "templates/.claude/skills/idea2prd-manual/references/completion-checklist-template.md",
116
+ "sha256": "4bb8a09829a7d616eef11833f71cba4f9a56f24364eccb9061c57f275abd82f7"
117
+ },
118
+ {
119
+ "path": "templates/.claude/skills/idea2prd-manual/references/ddd-patterns.md",
120
+ "sha256": "897cdc8c51113080ddef1167e02e1fa9a711475bebbc144ec3bbf4ccf1b464be"
121
+ },
122
+ {
123
+ "path": "templates/.claude/skills/idea2prd-manual/references/fitness-functions-catalog.md",
124
+ "sha256": "3b32dfd48d4b1cdd0845a5e4934eb7589cf553dc6d6850d2d0acb80c88568dd9"
125
+ },
126
+ {
127
+ "path": "templates/.claude/skills/idea2prd-manual/references/pseudocode-style.md",
128
+ "sha256": "49b53a85ac55ef2c9836979da929abbdbf9b1a7069b86790c9c2df9b909cce2e"
129
+ },
130
+ {
131
+ "path": "templates/.claude/skills/idea2prd-manual/scripts/ai_context_builder.py",
132
+ "sha256": "3468e0fa2f283107e9e0fb6b4598cea6d3f916508a528613efe416c79841f86e"
133
+ },
134
+ {
135
+ "path": "templates/.claude/skills/idea2prd-manual/scripts/c4_generator.py",
136
+ "sha256": "96d0c26edcd370c16fb5b171941b84dfe7a0b19c1b52cd7c3de234986ca8cbb6"
137
+ },
138
+ {
139
+ "path": "templates/.claude/skills/idea2prd-manual/scripts/fitness_validator.py",
140
+ "sha256": "50b552669b1797072632982bdc0eb661239c2a21f37563b23f67eeb7af1677c9"
141
+ },
142
+ {
143
+ "path": "templates/.claude/skills/idea2prd-manual/scripts/pseudocode_generator.py",
144
+ "sha256": "880cff2cc7b040c71114fe9dfea4d80f74686dfa8af6c6a90aed1ebe6ae21cfc"
145
+ },
146
+ {
147
+ "path": "templates/.claude/skills/problem-solver-enhanced/SKILL.md",
148
+ "sha256": "530623c986dee931d47314c22195ea9de50a75f2a0daecfc469fb015c3dd3415"
149
+ }
150
+ ]
151
+ },
152
+ "signature": "ijQ6u7pzx73w7JYknodK0orJvVrVmxmurNGnTbyMZgfh3EF7bFPov8tGzH3gQpnVVssdODRdmvESKXaSfuFLAA=="
153
+ }
package/README.md CHANGED
@@ -11,6 +11,22 @@ Auto-detects the input (problem vs idea) and runs up to two pipelines with **9 c
11
11
 
12
12
  Output: a complete doc set ready to hand to a coding agent — PRD, ADRs, DDD model, C4 diagrams, pseudocode, test scenarios, and a CI/CD/deploy completion checklist.
13
13
 
14
+ ## Honesty + Memory Layer (v3)
15
+
16
+ Three disciplines the harness proved out after the initial freeze are now baked into the emitted docs:
17
+
18
+ - **ADR `## Confirmation` stanza** — every generated ADR names its *load-bearing property* and the
19
+ fitness function / Gherkin test that would falsify it, wiring Phase 3 (ADR) to Phase 5 (fitness/tests).
20
+ The stanza is REQUIRED (MEASURED — reproducer: the `## Confirmation` block in
21
+ `templates/.claude/skills/idea2prd-manual/references/adr-catalog.md`).
22
+ - **Claim Discipline** — accuracy/count/percentage claims in emitted docs carry an honest tag
23
+ (`MEASURED` / `CLAIMED` / `ESTIMATED`); no unsourced numbers. A `dz claim-check docs/` scan should pass.
24
+ - **Brain memory** — a Step-0 `dz recall` folds prior PRD/ADR lessons into the brief and a closing
25
+ `dz teach` records new ones, both pinned to ONE canonical brain store (the project root, `--project`),
26
+ so the skill stops being write-once (MEASURED — reproducer: the "Step 0: Brain Recall" and
27
+ "Closing: Brain Teach" sections in `templates/.claude/skills/idea2prd-manual/SKILL.md`). Guarded by
28
+ "if `dz` present" — absent the CLI, the pipeline runs unchanged.
29
+
14
30
  ## Why
15
31
 
16
32
  Going from a raw idea straight to code skips the design that makes the code correct. Idea2PRD front-loads that design as *reviewable artifacts* and forces a human gate at each phase (MANUAL mode), so you catch a wrong assumption at the PRD stage instead of after implementation.
package/bin/cli.js CHANGED
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dzhechkov/skills-idea2prd",
3
- "version": "0.1.0",
3
+ "version": "0.1.3",
4
4
  "description": "Idea2PRD Manual — composite skill for Claude Code: from problem/idea to Vibe-Coding-ready docs (PRD + ADR + DDD + C4 + Pseudocode + Test Scenarios + Completion) with 9 checkpoints",
5
5
  "main": "src/cli.js",
6
6
  "bin": {
@@ -11,7 +11,9 @@
11
11
  "src/",
12
12
  "templates/",
13
13
  "sources.json",
14
- "LICENSE"
14
+ "LICENSE",
15
+ ".dz-manifest.json",
16
+ "sbom.json"
15
17
  ],
16
18
  "keywords": [
17
19
  "claude",
@@ -46,4 +48,4 @@
46
48
  "publishConfig": {
47
49
  "access": "public"
48
50
  }
49
- }
51
+ }
package/sbom.json ADDED
@@ -0,0 +1,373 @@
1
+ {
2
+ "bomFormat": "CycloneDX",
3
+ "specVersion": "1.5",
4
+ "version": 1,
5
+ "metadata": {
6
+ "component": {
7
+ "type": "library",
8
+ "name": "skills-idea2prd"
9
+ }
10
+ },
11
+ "components": [
12
+ {
13
+ "type": "file",
14
+ "name": "CHANGELOG.md",
15
+ "hashes": [
16
+ {
17
+ "alg": "SHA-256",
18
+ "content": "44fbbf4909ce837794d0b46b1ac29c01a909ec9c46fd25baeb4247b63443ac77"
19
+ }
20
+ ]
21
+ },
22
+ {
23
+ "type": "file",
24
+ "name": "LICENSE",
25
+ "hashes": [
26
+ {
27
+ "alg": "SHA-256",
28
+ "content": "3b93f7070f6843f37e0cae255f7caff22b466a4017fd2020d7d3216237e5a701"
29
+ }
30
+ ]
31
+ },
32
+ {
33
+ "type": "file",
34
+ "name": "README.md",
35
+ "hashes": [
36
+ {
37
+ "alg": "SHA-256",
38
+ "content": "b7a4afb47ec0b84e32278400911fa9c42cf0d350fc2a88842226eae1ad533b61"
39
+ }
40
+ ]
41
+ },
42
+ {
43
+ "type": "file",
44
+ "name": "bin/cli.js",
45
+ "hashes": [
46
+ {
47
+ "alg": "SHA-256",
48
+ "content": "a210174d6b63d053f7744757972d31acb0f4d9c59f8dacff7b62872a19ebd31a"
49
+ }
50
+ ]
51
+ },
52
+ {
53
+ "type": "file",
54
+ "name": "package.json",
55
+ "hashes": [
56
+ {
57
+ "alg": "SHA-256",
58
+ "content": "bb159a378cb3f254761c27d45b0d72434a12b860370a0127889070b6ea8fe006"
59
+ }
60
+ ]
61
+ },
62
+ {
63
+ "type": "file",
64
+ "name": "sources.json",
65
+ "hashes": [
66
+ {
67
+ "alg": "SHA-256",
68
+ "content": "3712bcefb43e3f38a926974c6e6b7b1d36992549dabdfd82e68d0fb7b8ba4481"
69
+ }
70
+ ]
71
+ },
72
+ {
73
+ "type": "file",
74
+ "name": "src/cli.js",
75
+ "hashes": [
76
+ {
77
+ "alg": "SHA-256",
78
+ "content": "4ec553ef49d30599672cbaf5583fa999a0be4c06207433390d7d0bdd985bb804"
79
+ }
80
+ ]
81
+ },
82
+ {
83
+ "type": "file",
84
+ "name": "src/commands/doctor.js",
85
+ "hashes": [
86
+ {
87
+ "alg": "SHA-256",
88
+ "content": "82f35dabfeef6033ec3ee6142e04cd195002e7855f2d7ac7aa3222748a3e6de2"
89
+ }
90
+ ]
91
+ },
92
+ {
93
+ "type": "file",
94
+ "name": "src/commands/init.js",
95
+ "hashes": [
96
+ {
97
+ "alg": "SHA-256",
98
+ "content": "3bcd444ba61681bf5bd882fdbcbfbc7d180b5e0f370c0dd5ace6309a6e98040f"
99
+ }
100
+ ]
101
+ },
102
+ {
103
+ "type": "file",
104
+ "name": "src/commands/list.js",
105
+ "hashes": [
106
+ {
107
+ "alg": "SHA-256",
108
+ "content": "f7b3a45abd3a3fcd3b9d8dcfb4540ae55f57f0fd74a51cdd898f0faa9d8cfc43"
109
+ }
110
+ ]
111
+ },
112
+ {
113
+ "type": "file",
114
+ "name": "src/commands/remove.js",
115
+ "hashes": [
116
+ {
117
+ "alg": "SHA-256",
118
+ "content": "5d49c362a97092c878a3c1871a038d1e49a8bb01c8c82a53e7b49652c1526299"
119
+ }
120
+ ]
121
+ },
122
+ {
123
+ "type": "file",
124
+ "name": "src/commands/update.js",
125
+ "hashes": [
126
+ {
127
+ "alg": "SHA-256",
128
+ "content": "7e7a8720afcf9e2b58c910dc2b630e5c6fc1b1eea88ba02f427f195616727249"
129
+ }
130
+ ]
131
+ },
132
+ {
133
+ "type": "file",
134
+ "name": "src/utils.js",
135
+ "hashes": [
136
+ {
137
+ "alg": "SHA-256",
138
+ "content": "e07c5e711d54821869d6d76ff861920f37f54277b1a2fc953e45e3823aff4da4"
139
+ }
140
+ ]
141
+ },
142
+ {
143
+ "type": "file",
144
+ "name": "templates/.claude/commands/idea2prd-manual.md",
145
+ "hashes": [
146
+ {
147
+ "alg": "SHA-256",
148
+ "content": "dcb6c72f3dba8ed1a6c087012658a822b9ce5a9e06da4d59520c7845600cac8b"
149
+ }
150
+ ]
151
+ },
152
+ {
153
+ "type": "file",
154
+ "name": "templates/.claude/skills/explore/SKILL.md",
155
+ "hashes": [
156
+ {
157
+ "alg": "SHA-256",
158
+ "content": "c755a7bcdfe97fb7cb0bcd7bf3b1fd8a2d238ef082967fbf87740fc808302542"
159
+ }
160
+ ]
161
+ },
162
+ {
163
+ "type": "file",
164
+ "name": "templates/.claude/skills/explore/references/questioning-techniques.md",
165
+ "hashes": [
166
+ {
167
+ "alg": "SHA-256",
168
+ "content": "ec0dd00871d3abe950f9cf375216a43043827897166c4165c3fa581839851195"
169
+ }
170
+ ]
171
+ },
172
+ {
173
+ "type": "file",
174
+ "name": "templates/.claude/skills/explore/references/task-brief-templates.md",
175
+ "hashes": [
176
+ {
177
+ "alg": "SHA-256",
178
+ "content": "4e9292479e120afce944b747bb7b4a7226c41e9880708d620de3ea4fa4ef0249"
179
+ }
180
+ ]
181
+ },
182
+ {
183
+ "type": "file",
184
+ "name": "templates/.claude/skills/goap-research-ed25519/SKILL.md",
185
+ "hashes": [
186
+ {
187
+ "alg": "SHA-256",
188
+ "content": "e23770a81922103571eb2645fb82509f7046bc7dd407a33b06f67ad2e709b9b4"
189
+ }
190
+ ]
191
+ },
192
+ {
193
+ "type": "file",
194
+ "name": "templates/.claude/skills/goap-research-ed25519/references/ed25519-verification.md",
195
+ "hashes": [
196
+ {
197
+ "alg": "SHA-256",
198
+ "content": "2742f14b472bff69c83f24d9bac5bf023bd7f9ecc3e659742ac3152a239dd68f"
199
+ }
200
+ ]
201
+ },
202
+ {
203
+ "type": "file",
204
+ "name": "templates/.claude/skills/goap-research-ed25519/references/research-actions.md",
205
+ "hashes": [
206
+ {
207
+ "alg": "SHA-256",
208
+ "content": "156d2f8ce342f7013bc758fe7c0d3ad3041b4f67f30dbcf8d59e091cb70d9a9c"
209
+ }
210
+ ]
211
+ },
212
+ {
213
+ "type": "file",
214
+ "name": "templates/.claude/skills/goap-research-ed25519/references/source-evaluation.md",
215
+ "hashes": [
216
+ {
217
+ "alg": "SHA-256",
218
+ "content": "d6a19abb6be64dc9e1f539903080029125d2d899da4de3063e75e1afb7e4906f"
219
+ }
220
+ ]
221
+ },
222
+ {
223
+ "type": "file",
224
+ "name": "templates/.claude/skills/goap-research-ed25519/scripts/ed25519_verifier.py",
225
+ "hashes": [
226
+ {
227
+ "alg": "SHA-256",
228
+ "content": "dc9edc4d7907d13b28dfa74cc86b30a27a41de707ce72f39aca0ae08f07b5703"
229
+ }
230
+ ]
231
+ },
232
+ {
233
+ "type": "file",
234
+ "name": "templates/.claude/skills/goap-research-ed25519/scripts/goap_planner.py",
235
+ "hashes": [
236
+ {
237
+ "alg": "SHA-256",
238
+ "content": "2ec359e1ddc52ca3118144532ed483dcc609e856a04b29bb191b875c60ff4260"
239
+ }
240
+ ]
241
+ },
242
+ {
243
+ "type": "file",
244
+ "name": "templates/.claude/skills/goap-research-ed25519/scripts/test_ed25519_verifier.py",
245
+ "hashes": [
246
+ {
247
+ "alg": "SHA-256",
248
+ "content": "ea6d888ac53bac3a0fe236c101f90a984edbac044d787d73c8414f1c4fc540d3"
249
+ }
250
+ ]
251
+ },
252
+ {
253
+ "type": "file",
254
+ "name": "templates/.claude/skills/idea2prd-manual/SKILL.md",
255
+ "hashes": [
256
+ {
257
+ "alg": "SHA-256",
258
+ "content": "a871e47547ee349db19f6413e296db137e2833e2aa2277672ba33bac730855a5"
259
+ }
260
+ ]
261
+ },
262
+ {
263
+ "type": "file",
264
+ "name": "templates/.claude/skills/idea2prd-manual/references/adr-catalog.md",
265
+ "hashes": [
266
+ {
267
+ "alg": "SHA-256",
268
+ "content": "165aebf4d997dc7ca34ac813befb62e82faa507be66cbf70af897192913a51b4"
269
+ }
270
+ ]
271
+ },
272
+ {
273
+ "type": "file",
274
+ "name": "templates/.claude/skills/idea2prd-manual/references/c4-model.md",
275
+ "hashes": [
276
+ {
277
+ "alg": "SHA-256",
278
+ "content": "5da67750e3b4c580252cd7368601a635d555dc2e6048751246f7c24d5a984f74"
279
+ }
280
+ ]
281
+ },
282
+ {
283
+ "type": "file",
284
+ "name": "templates/.claude/skills/idea2prd-manual/references/completion-checklist-template.md",
285
+ "hashes": [
286
+ {
287
+ "alg": "SHA-256",
288
+ "content": "4bb8a09829a7d616eef11833f71cba4f9a56f24364eccb9061c57f275abd82f7"
289
+ }
290
+ ]
291
+ },
292
+ {
293
+ "type": "file",
294
+ "name": "templates/.claude/skills/idea2prd-manual/references/ddd-patterns.md",
295
+ "hashes": [
296
+ {
297
+ "alg": "SHA-256",
298
+ "content": "897cdc8c51113080ddef1167e02e1fa9a711475bebbc144ec3bbf4ccf1b464be"
299
+ }
300
+ ]
301
+ },
302
+ {
303
+ "type": "file",
304
+ "name": "templates/.claude/skills/idea2prd-manual/references/fitness-functions-catalog.md",
305
+ "hashes": [
306
+ {
307
+ "alg": "SHA-256",
308
+ "content": "3b32dfd48d4b1cdd0845a5e4934eb7589cf553dc6d6850d2d0acb80c88568dd9"
309
+ }
310
+ ]
311
+ },
312
+ {
313
+ "type": "file",
314
+ "name": "templates/.claude/skills/idea2prd-manual/references/pseudocode-style.md",
315
+ "hashes": [
316
+ {
317
+ "alg": "SHA-256",
318
+ "content": "49b53a85ac55ef2c9836979da929abbdbf9b1a7069b86790c9c2df9b909cce2e"
319
+ }
320
+ ]
321
+ },
322
+ {
323
+ "type": "file",
324
+ "name": "templates/.claude/skills/idea2prd-manual/scripts/ai_context_builder.py",
325
+ "hashes": [
326
+ {
327
+ "alg": "SHA-256",
328
+ "content": "3468e0fa2f283107e9e0fb6b4598cea6d3f916508a528613efe416c79841f86e"
329
+ }
330
+ ]
331
+ },
332
+ {
333
+ "type": "file",
334
+ "name": "templates/.claude/skills/idea2prd-manual/scripts/c4_generator.py",
335
+ "hashes": [
336
+ {
337
+ "alg": "SHA-256",
338
+ "content": "96d0c26edcd370c16fb5b171941b84dfe7a0b19c1b52cd7c3de234986ca8cbb6"
339
+ }
340
+ ]
341
+ },
342
+ {
343
+ "type": "file",
344
+ "name": "templates/.claude/skills/idea2prd-manual/scripts/fitness_validator.py",
345
+ "hashes": [
346
+ {
347
+ "alg": "SHA-256",
348
+ "content": "50b552669b1797072632982bdc0eb661239c2a21f37563b23f67eeb7af1677c9"
349
+ }
350
+ ]
351
+ },
352
+ {
353
+ "type": "file",
354
+ "name": "templates/.claude/skills/idea2prd-manual/scripts/pseudocode_generator.py",
355
+ "hashes": [
356
+ {
357
+ "alg": "SHA-256",
358
+ "content": "880cff2cc7b040c71114fe9dfea4d80f74686dfa8af6c6a90aed1ebe6ae21cfc"
359
+ }
360
+ ]
361
+ },
362
+ {
363
+ "type": "file",
364
+ "name": "templates/.claude/skills/problem-solver-enhanced/SKILL.md",
365
+ "hashes": [
366
+ {
367
+ "alg": "SHA-256",
368
+ "content": "530623c986dee931d47314c22195ea9de50a75f2a0daecfc469fb015c3dd3415"
369
+ }
370
+ ]
371
+ }
372
+ ]
373
+ }