wize-dev-kit 0.15.0 → 0.16.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.
Files changed (232) hide show
  1. package/ARCH.md +24 -77
  2. package/CHANGELOG.md +9 -0
  3. package/DECISIONS.md +1 -27
  4. package/README.md +4 -0
  5. package/ROSTER.md +3 -11
  6. package/adapters/README.md +7 -8
  7. package/adapters/antigravity/README.md +5 -5
  8. package/adapters/claude-code/README.md +1 -1
  9. package/adapters/codex/README.md +5 -5
  10. package/adapters/codex/adapter.yaml +1 -1
  11. package/adapters/codex/render.js +1 -1
  12. package/adapters/continue/README.md +5 -5
  13. package/adapters/cursor/README.md +2 -2
  14. package/adapters/generic/README.md +1 -1
  15. package/adapters/kimi-code/README.md +5 -5
  16. package/adapters/kimi-code/render.js +2 -2
  17. package/adapters/opencode/README.md +3 -3
  18. package/adapters/opencode/render.js +1 -27
  19. package/adapters/windsurf/README.md +3 -3
  20. package/package.json +1 -1
  21. package/schemas/agent.schema.json +2 -2
  22. package/schemas/workflow.schema.json +1 -1
  23. package/src/app-overlay/wize-app-release-channels/workflow.md +0 -2
  24. package/src/app-overlay/wize-app-scaffold/workflow.md +0 -2
  25. package/src/app-overlay/wize-app-store-listing/workflow.md +0 -2
  26. package/src/builder-skills/wize-create-agent/workflow.md +0 -2
  27. package/src/builder-skills/wize-create-skill/workflow.md +0 -2
  28. package/src/builder-skills/wize-create-workflow/workflow.md +0 -2
  29. package/src/core-skills/module.yaml +3 -0
  30. package/src/core-skills/wize-advanced-elicitation/skill.md +0 -2
  31. package/src/core-skills/wize-brainstorming/skill.md +0 -2
  32. package/src/core-skills/wize-eli5/skill.md +72 -0
  33. package/src/core-skills/wize-review-adversarial/skill.md +0 -3
  34. package/src/core-skills/wize-shard-doc/skill.md +0 -2
  35. package/src/method-skills/1-analysis/wize-agent-analyst/agent.yaml +0 -3
  36. package/src/method-skills/1-analysis/wize-document-project/workflow.md +20 -213
  37. package/src/method-skills/1-analysis/wize-prfaq/workflow.md +11 -152
  38. package/src/method-skills/1-analysis/wize-product-brief/workflow.md +19 -92
  39. package/src/method-skills/1-analysis/wize-research/workflow.md +12 -39
  40. package/src/method-skills/1-analysis/wize-trigger-map/workflow.md +16 -82
  41. package/src/method-skills/2-plan-workflows/wize-create-prd/workflow.md +23 -135
  42. package/src/method-skills/2-plan-workflows/wize-ux-design/workflow.md +28 -134
  43. package/src/method-skills/2-plan-workflows/wize-ux-scenarios/workflow.md +15 -93
  44. package/src/method-skills/2-plan-workflows/wize-validate-prd/workflow.md +12 -108
  45. package/src/method-skills/3-solutioning/wize-check-implementation-readiness/workflow.md +11 -103
  46. package/src/method-skills/3-solutioning/wize-create-architecture/workflow.md +48 -55
  47. package/src/method-skills/3-solutioning/wize-create-epics-and-stories/workflow.md +15 -154
  48. package/src/method-skills/3-solutioning/wize-design-system/workflow.md +22 -184
  49. package/src/method-skills/3-solutioning/wize-nfr-principles/workflow.md +17 -145
  50. package/src/method-skills/3-solutioning/wize-tech-vision/workflow.md +22 -130
  51. package/src/method-skills/4-implementation/wize-agent-dev/persona.md +0 -12
  52. package/src/method-skills/4-implementation/wize-code-review/workflow.md +12 -54
  53. package/src/method-skills/4-implementation/wize-create-story/workflow.md +10 -154
  54. package/src/method-skills/4-implementation/wize-dev-story/workflow.md +17 -185
  55. package/src/method-skills/4-implementation/wize-quick-dev/workflow.md +18 -136
  56. package/src/method-skills/4-implementation/wize-retrospective/workflow.md +10 -114
  57. package/src/method-skills/4-implementation/wize-sprint-planning/workflow.md +11 -78
  58. package/src/method-skills/4-implementation/wize-sprint-status/workflow.md +11 -45
  59. package/src/method-skills/module.yaml +0 -28
  60. package/src/orchestrator-skills/module.yaml +1 -7
  61. package/src/orchestrator-skills/wize-help/skill.md +67 -227
  62. package/src/orchestrator-skills/wize-onboarding/workflow.md +14 -78
  63. package/src/orchestrator-skills/wize-orchestrator/agent.yaml +0 -2
  64. package/src/orchestrator-skills/wize-orchestrator/persona.md +3 -44
  65. package/src/orchestrator-skills/wize-party-mode/workflow.md +0 -2
  66. package/src/tea-skills/wize-tea-design/workflow.md +13 -107
  67. package/src/tea-skills/wize-tea-gate/workflow.md +25 -118
  68. package/src/tea-skills/wize-tea-nfr/workflow.md +14 -107
  69. package/src/tea-skills/wize-tea-review/workflow.md +13 -123
  70. package/src/tea-skills/wize-tea-risk/workflow.md +10 -113
  71. package/src/tea-skills/wize-tea-trace/workflow.md +12 -86
  72. package/src/web-overlay/wize-web-deploy/workflow.md +0 -2
  73. package/src/web-overlay/wize-web-scaffold/workflow.md +0 -2
  74. package/src/web-overlay/wize-web-seo-audit/workflow.md +0 -2
  75. package/tools/check-eli5-all-adapters.js +50 -0
  76. package/tools/installer/onboarding.js +20 -14
  77. package/tools/installer/render-shared.js +15 -159
  78. package/tools/installer/setup-helpers.js +0 -1
  79. package/tools/installer/validators/run-all.js +2 -3
  80. package/tools/installer/wize-cli.js +70 -500
  81. package/AGENTS.md +0 -37
  82. package/README.es.md +0 -295
  83. package/README.pt-BR.md +0 -293
  84. package/adapters/hermes/README.md +0 -23
  85. package/adapters/hermes/adapter.yaml +0 -8
  86. package/adapters/hermes/render.js +0 -17
  87. package/docs/harnesses/antigravity.md +0 -20
  88. package/docs/harnesses/antigravity.pt-BR.md +0 -20
  89. package/docs/harnesses/claude-code.md +0 -23
  90. package/docs/harnesses/claude-code.pt-BR.md +0 -23
  91. package/docs/harnesses/codex.md +0 -21
  92. package/docs/harnesses/codex.pt-BR.md +0 -21
  93. package/docs/harnesses/continue.md +0 -21
  94. package/docs/harnesses/continue.pt-BR.md +0 -21
  95. package/docs/harnesses/cursor.md +0 -22
  96. package/docs/harnesses/cursor.pt-BR.md +0 -22
  97. package/docs/harnesses/generic.md +0 -20
  98. package/docs/harnesses/generic.pt-BR.md +0 -20
  99. package/docs/harnesses/hermes.md +0 -26
  100. package/docs/harnesses/hermes.pt-BR.md +0 -26
  101. package/docs/harnesses/kimi-code.md +0 -19
  102. package/docs/harnesses/kimi-code.pt-BR.md +0 -19
  103. package/docs/harnesses/opencode.md +0 -31
  104. package/docs/harnesses/opencode.pt-BR.md +0 -31
  105. package/docs/harnesses/windsurf.md +0 -22
  106. package/docs/harnesses/windsurf.pt-BR.md +0 -22
  107. package/src/core-skills/wize-customize/skill.md +0 -116
  108. package/src/core-skills/wize-editorial-review-prose/skill.md +0 -94
  109. package/src/core-skills/wize-editorial-review-structure/skill.md +0 -99
  110. package/src/core-skills/wize-grill/skill.md +0 -77
  111. package/src/core-skills/wize-index-docs/skill.md +0 -119
  112. package/src/core-skills/wize-pre-pr-check/skill.md +0 -134
  113. package/src/core-skills/wize-review-edge-case-hunter/skill.md +0 -115
  114. package/src/core-skills/wize-spec/assets/headless-schemas.md +0 -39
  115. package/src/core-skills/wize-spec/assets/spec-template.md +0 -40
  116. package/src/core-skills/wize-spec/customize.toml +0 -20
  117. package/src/core-skills/wize-spec/skill.md +0 -112
  118. package/src/method-skills/1-analysis/wize-document-project/documentation-requirements.csv +0 -12
  119. package/src/method-skills/1-analysis/wize-document-project/templates/api-contracts-template.md +0 -38
  120. package/src/method-skills/1-analysis/wize-document-project/templates/architecture-template.md +0 -54
  121. package/src/method-skills/1-analysis/wize-document-project/templates/component-inventory-template.md +0 -40
  122. package/src/method-skills/1-analysis/wize-document-project/templates/contribution-guide-template.md +0 -34
  123. package/src/method-skills/1-analysis/wize-document-project/templates/data-models-template.md +0 -36
  124. package/src/method-skills/1-analysis/wize-document-project/templates/deep-dive-template.md +0 -312
  125. package/src/method-skills/1-analysis/wize-document-project/templates/deployment-guide-template.md +0 -42
  126. package/src/method-skills/1-analysis/wize-document-project/templates/development-guide-template.md +0 -61
  127. package/src/method-skills/1-analysis/wize-document-project/templates/index-template.md +0 -185
  128. package/src/method-skills/1-analysis/wize-document-project/templates/project-overview-template.md +0 -110
  129. package/src/method-skills/1-analysis/wize-document-project/templates/project-scan-report-schema.json +0 -159
  130. package/src/method-skills/1-analysis/wize-document-project/templates/source-tree-template.md +0 -142
  131. package/src/method-skills/1-analysis/wize-domain-research/customize.toml +0 -14
  132. package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-01-init.md +0 -49
  133. package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-02-domain-analysis.md +0 -39
  134. package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-03-competitive-landscape.md +0 -39
  135. package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-04-regulatory-focus.md +0 -39
  136. package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-05-technical-trends.md +0 -39
  137. package/src/method-skills/1-analysis/wize-domain-research/domain-steps/step-06-research-synthesis.md +0 -43
  138. package/src/method-skills/1-analysis/wize-domain-research/research.template.md +0 -31
  139. package/src/method-skills/1-analysis/wize-domain-research/workflow.md +0 -58
  140. package/src/method-skills/1-analysis/wize-market-research/customize.toml +0 -14
  141. package/src/method-skills/1-analysis/wize-market-research/research.template.md +0 -31
  142. package/src/method-skills/1-analysis/wize-market-research/steps/step-01-init.md +0 -57
  143. package/src/method-skills/1-analysis/wize-market-research/steps/step-02-customer-behavior.md +0 -39
  144. package/src/method-skills/1-analysis/wize-market-research/steps/step-03-customer-pain-points.md +0 -37
  145. package/src/method-skills/1-analysis/wize-market-research/steps/step-04-customer-decisions.md +0 -39
  146. package/src/method-skills/1-analysis/wize-market-research/steps/step-05-competitive-analysis.md +0 -37
  147. package/src/method-skills/1-analysis/wize-market-research/steps/step-06-research-completion.md +0 -47
  148. package/src/method-skills/1-analysis/wize-market-research/workflow.md +0 -66
  149. package/src/method-skills/1-analysis/wize-refresh-knowledge/workflow.md +0 -129
  150. package/src/method-skills/1-analysis/wize-technical-research/customize.toml +0 -14
  151. package/src/method-skills/1-analysis/wize-technical-research/research.template.md +0 -31
  152. package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-01-init.md +0 -49
  153. package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-02-technical-overview.md +0 -45
  154. package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-03-integration-patterns.md +0 -39
  155. package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-04-architectural-patterns.md +0 -39
  156. package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-05-implementation-research.md +0 -42
  157. package/src/method-skills/1-analysis/wize-technical-research/technical-steps/step-06-research-synthesis.md +0 -46
  158. package/src/method-skills/1-analysis/wize-technical-research/workflow.md +0 -60
  159. package/src/method-skills/2-plan-workflows/wize-edit-prd/workflow.md +0 -110
  160. package/src/method-skills/3-solutioning/wize-create-architecture/architecture-decision-template.md +0 -41
  161. package/src/method-skills/3-solutioning/wize-create-architecture/customize.toml +0 -20
  162. package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-01-init.md +0 -95
  163. package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-01b-continue.md +0 -32
  164. package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-02-context.md +0 -126
  165. package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-03-starter.md +0 -110
  166. package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-04-decisions.md +0 -129
  167. package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-05-patterns.md +0 -109
  168. package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-06-structure.md +0 -97
  169. package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-07-validation.md +0 -124
  170. package/src/method-skills/3-solutioning/wize-create-architecture/steps/step-08-complete.md +0 -59
  171. package/src/method-skills/3-solutioning/wize-project-context/workflow.md +0 -120
  172. package/src/method-skills/4-implementation/wize-changelog/workflow.md +0 -184
  173. package/src/method-skills/4-implementation/wize-checkpoint-preview/workflow.md +0 -117
  174. package/src/method-skills/4-implementation/wize-code-review/customize.toml +0 -21
  175. package/src/method-skills/4-implementation/wize-code-review/steps/step-01-gather-context.md +0 -64
  176. package/src/method-skills/4-implementation/wize-code-review/steps/step-02-review.md +0 -40
  177. package/src/method-skills/4-implementation/wize-code-review/steps/step-03-triage.md +0 -43
  178. package/src/method-skills/4-implementation/wize-code-review/steps/step-04-present.md +0 -100
  179. package/src/method-skills/4-implementation/wize-correct-course/workflow.md +0 -93
  180. package/src/method-skills/4-implementation/wize-investigate/workflow.md +0 -123
  181. package/src/method-skills/4-implementation/wize-release/workflow.md +0 -162
  182. package/src/orchestrator-skills/wize/skill.md +0 -164
  183. package/src/orchestrator-skills/wize-check/skill.md +0 -98
  184. package/src/security-overlay/_shared/allowlist.js +0 -154
  185. package/src/security-overlay/_shared/backlog.js +0 -169
  186. package/src/security-overlay/_shared/cli-runner.js +0 -87
  187. package/src/security-overlay/_shared/cvss.js +0 -108
  188. package/src/security-overlay/_shared/detect.js +0 -125
  189. package/src/security-overlay/_shared/install-script.js +0 -205
  190. package/src/security-overlay/_shared/invoke-phase.js +0 -86
  191. package/src/security-overlay/_shared/owasp.js +0 -56
  192. package/src/security-overlay/_shared/partial.js +0 -225
  193. package/src/security-overlay/_shared/preflight.js +0 -175
  194. package/src/security-overlay/_shared/scope-gate.js +0 -172
  195. package/src/security-overlay/_shared/scope-parser.js +0 -147
  196. package/src/security-overlay/agents/red-teamer/agent.yaml +0 -54
  197. package/src/security-overlay/agents/red-teamer/persona.md +0 -49
  198. package/src/security-overlay/data/common.txt +0 -115
  199. package/src/security-overlay/data/owasp-top10.json +0 -15
  200. package/src/security-overlay/data/tool-allowlist.json +0 -31
  201. package/src/security-overlay/skills/wize-sec-enumerate/scripts/run-enumerate.js +0 -180
  202. package/src/security-overlay/skills/wize-sec-enumerate/skill.md +0 -34
  203. package/src/security-overlay/skills/wize-sec-exploit/data/common.txt +0 -117
  204. package/src/security-overlay/skills/wize-sec-exploit/scripts/run-ffuf.js +0 -147
  205. package/src/security-overlay/skills/wize-sec-exploit/scripts/run-nikto.js +0 -145
  206. package/src/security-overlay/skills/wize-sec-exploit/scripts/run-nuclei.js +0 -176
  207. package/src/security-overlay/skills/wize-sec-exploit/scripts/run-sqlmap.js +0 -139
  208. package/src/security-overlay/skills/wize-sec-pentest/scripts/run-pipeline.js +0 -184
  209. package/src/security-overlay/skills/wize-sec-pentest/skill.md +0 -54
  210. package/src/security-overlay/skills/wize-sec-recon/scripts/run-gitleaks.js +0 -139
  211. package/src/security-overlay/skills/wize-sec-recon/scripts/run-osv.js +0 -227
  212. package/src/security-overlay/skills/wize-sec-recon/scripts/run-recon.js +0 -162
  213. package/src/security-overlay/skills/wize-sec-recon/skill.md +0 -37
  214. package/src/security-overlay/skills/wize-sec-report/scripts/render-report.js +0 -1033
  215. package/src/security-overlay/skills/wize-sec-scope/scripts/generate-scope.js +0 -106
  216. package/src/security-overlay/skills/wize-sec-scope/skill.md +0 -52
  217. package/src/tea-skills/wize-qa-generate-e2e-tests/workflow.md +0 -121
  218. package/tools/installer/baseline.js +0 -133
  219. package/tools/installer/commands/agent.js +0 -197
  220. package/tools/installer/commands/doctor.js +0 -320
  221. package/tools/installer/commands/document-project.js +0 -93
  222. package/tools/installer/commands/sync.js +0 -45
  223. package/tools/installer/commands/update.js +0 -172
  224. package/tools/installer/document-project/batch-scanner.js +0 -93
  225. package/tools/installer/document-project/classify.js +0 -170
  226. package/tools/installer/document-project/modes/deep-dive.js +0 -196
  227. package/tools/installer/document-project/modes/full-rescan.js +0 -15
  228. package/tools/installer/document-project/modes/initial-scan.js +0 -100
  229. package/tools/installer/document-project/modes/quick.js +0 -211
  230. package/tools/installer/document-project/render-index.js +0 -101
  231. package/tools/installer/document-project/state.js +0 -110
  232. package/tools/installer/version-check.js +0 -117
@@ -12,51 +12,11 @@ const fs = require('node:fs');
12
12
  const path = require('node:path');
13
13
  const { walkAgents, walkWorkflows, walkSkills } = require('./validators/walk.js');
14
14
 
15
- // Shared block-scalar reader used by both readYamlField (agent.yaml) and
16
- // readFrontmatter (skill.md / workflow.md). Returns { value, nextIndex }.
17
- function readBlockScalar(lines, startIndex, folded) {
18
- const collected = [];
19
- let baseIndent = null;
20
- let i = startIndex;
21
- for (; i < lines.length; i++) {
22
- const line = lines[i];
23
- if (line.trim() === '') { collected.push(''); continue; }
24
- const indent = line.match(/^(\s*)/)[1].length;
25
- if (indent === 0) break; // dedent to a sibling top-level key ends the block
26
- if (baseIndent === null) baseIndent = indent;
27
- collected.push(line.slice(baseIndent));
28
- }
29
- while (collected.length && collected[collected.length - 1] === '') collected.pop();
30
- if (folded) {
31
- const value = collected.reduce((acc, ln, idx) => {
32
- if (idx === 0) return ln;
33
- if (ln === '' || collected[idx - 1] === '') return acc + '\n' + ln;
34
- return acc + ' ' + ln;
35
- }, '').trim();
36
- return { value, nextIndex: i };
37
- }
38
- return { value: collected.join('\n').trim(), nextIndex: i };
39
- }
40
-
41
15
  function readYamlField(content, field) {
42
- const lines = content.split('\n');
43
- const keyRe = new RegExp('^' + field + ':\\s*(.*)$');
44
- for (let i = 0; i < lines.length; i++) {
45
- const m = lines[i].match(keyRe);
46
- if (!m) continue;
47
- const inline = m[1].trim();
48
-
49
- // Block scalar (| literal, > folded) with optional chomp/indent indicator.
50
- const block = inline.match(/^([|>])[+-]?\d*\s*$/);
51
- if (block) {
52
- return readBlockScalar(lines, i + 1, block[1] === '>').value;
53
- }
54
-
55
- // Inline scalar: quoted or plain.
56
- const q = inline.match(/^"([^"]*)"$/) || inline.match(/^'([^']*)'$/);
57
- return (q ? q[1] : inline).trim();
58
- }
59
- return null;
16
+ const re = new RegExp('^' + field + ':\\s*(?:"([^"]*)"|\'([^\']*)\'|(.*?))\\s*$', 'm');
17
+ const m = content.match(re);
18
+ if (!m) return null;
19
+ return (m[1] || m[2] || m[3] || '').trim();
60
20
  }
61
21
 
62
22
  function readFrontmatter(content) {
@@ -65,25 +25,9 @@ function readFrontmatter(content) {
65
25
  if (end === -1) return {};
66
26
  const lines = content.slice(3, end).split('\n');
67
27
  const out = {};
68
- for (let i = 0; i < lines.length; i++) {
69
- const line = lines[i];
28
+ for (const line of lines) {
70
29
  const m = line.match(/^([a-zA-Z_][a-zA-Z0-9_-]*):\s*(.*?)\s*$/);
71
- if (!m) continue;
72
- const key = m[1];
73
- const inline = m[2].trim();
74
-
75
- // Block scalar (| literal, > folded) with optional chomp/indent indicator.
76
- const block = inline.match(/^([|>])[+-]?\d*\s*$/);
77
- if (block) {
78
- const result = readBlockScalar(lines, i + 1, block[1] === '>');
79
- out[key] = result.value;
80
- i = result.nextIndex - 1; // -1 because the for loop will increment
81
- continue;
82
- }
83
-
84
- // Inline scalar: quoted or plain.
85
- const q = inline.match(/^"([^"]*)"$/) || inline.match(/^'([^']*)'$/);
86
- out[key] = (q ? q[1] : inline).trim();
30
+ if (m) out[m[1]] = m[2].replace(/^"|"$/g, '').replace(/^'|'$/g, '');
87
31
  }
88
32
  return out;
89
33
  }
@@ -109,42 +53,6 @@ function ensureDir(dir) {
109
53
  fs.mkdirSync(dir, { recursive: true });
110
54
  }
111
55
 
112
- // Companion files (steps/, templates/, data/, *.csv, *-template.md,
113
- // customize.toml, research.template.md, etc.) that micro-file workflows
114
- // reference from their body. We must copy these alongside the SKILL.md so
115
- // the IDE can resolve paths like "./steps/step-01-init.md" at runtime.
116
- const SKIP_NAMES = new Set(['.DS_Store', 'Thumbs.db', 'node_modules', '.git']);
117
- const SKIP_FILES = new Set([
118
- 'skill.md', 'workflow.md', 'agent.yaml', 'persona.md',
119
- 'package.json', 'package-lock.json'
120
- ]);
121
-
122
- function isCompanion(entry) {
123
- if (entry.name.startsWith('.')) return false;
124
- if (SKIP_NAMES.has(entry.name)) return false;
125
- if (SKIP_FILES.has(entry.name)) return false;
126
- if (entry.name.endsWith('.test.js')) return false;
127
- return true;
128
- }
129
-
130
- function copyCompanionFiles(srcDir, destDir, written, relPrefix = '') {
131
- if (!srcDir || !fs.existsSync(srcDir)) return;
132
- for (const entry of fs.readdirSync(srcDir, { withFileTypes: true })) {
133
- if (!isCompanion(entry)) continue;
134
- const s = path.join(srcDir, entry.name);
135
- const d = path.join(destDir, entry.name);
136
- const rel = relPrefix ? `${relPrefix}/${entry.name}` : entry.name;
137
- if (entry.isDirectory()) {
138
- ensureDir(d);
139
- copyCompanionFiles(s, d, written, rel);
140
- } else if (entry.isFile()) {
141
- ensureDir(path.dirname(d));
142
- fs.copyFileSync(s, d);
143
- written.push(rel);
144
- }
145
- }
146
- }
147
-
148
56
  // Walks the kit and returns a flat array of "assets" the adapters can render.
149
57
  // Each asset has: { kind: 'agent'|'workflow'|'skill', code, name, title, description, body, overlay }
150
58
  function collectAssets(kitRoot, { profiles = ['core'] } = {}) {
@@ -161,7 +69,7 @@ function collectAssets(kitRoot, { profiles = ['core'] } = {}) {
161
69
  if (!code || !name) continue;
162
70
  const personaPath = path.join(dir, 'persona.md');
163
71
  const persona = fs.existsSync(personaPath) ? fs.readFileSync(personaPath, 'utf-8') : '';
164
- out.push({ kind: 'agent', code, name, title, description, body: persona || description, overlay: null, srcDir: dir });
72
+ out.push({ kind: 'agent', code, name, title, description, body: persona || description, overlay: null });
165
73
  }
166
74
 
167
75
  for (const wfPath of walkWorkflows(kitRoot)) {
@@ -170,18 +78,14 @@ function collectAssets(kitRoot, { profiles = ['core'] } = {}) {
170
78
  if (!fm.code) continue;
171
79
  if (fm.overlay === 'web' && !profSet.has('web-overlay')) continue;
172
80
  if (fm.overlay === 'app' && !profSet.has('app-overlay')) continue;
173
- if (fm.overlay === 'security' && !profSet.has('security-overlay')) continue;
174
81
  out.push({
175
82
  kind: 'workflow',
176
83
  code: fm.code,
177
84
  name: fm.name || fm.code,
178
85
  title: fm.phase || fm.gate || '',
179
- description: fm.description || `${fm.phase || fm.gate || 'workflow'}: ${fm.name || fm.code}`,
86
+ description: `${fm.phase || fm.gate || 'workflow'}: ${fm.name || fm.code}`,
180
87
  body: bodyAfterFrontmatter(content),
181
- overlay: fm.overlay || null,
182
- owner: fm.owner || null,
183
- subtask: fm.subtask === 'true',
184
- srcDir: path.dirname(wfPath)
88
+ overlay: fm.overlay || null
185
89
  });
186
90
  }
187
91
 
@@ -189,20 +93,14 @@ function collectAssets(kitRoot, { profiles = ['core'] } = {}) {
189
93
  const content = fs.readFileSync(skPath, 'utf-8');
190
94
  const fm = readFrontmatter(content);
191
95
  if (!fm.code) continue;
192
- if (fm.overlay === 'web' && !profSet.has('web-overlay')) continue;
193
- if (fm.overlay === 'app' && !profSet.has('app-overlay')) continue;
194
- if (fm.overlay === 'security' && !profSet.has('security-overlay')) continue;
195
96
  out.push({
196
97
  kind: 'skill',
197
98
  code: fm.code,
198
99
  name: fm.name || fm.code,
199
100
  title: fm.module || '',
200
- description: fm.description || (fm.module ? `${fm.module} skill: ${fm.name || fm.code}` : (fm.name || fm.code)),
101
+ description: fm.module ? `${fm.module} skill: ${fm.name || fm.code}` : (fm.name || fm.code),
201
102
  body: bodyAfterFrontmatter(content),
202
- overlay: fm.overlay || null,
203
- owner: fm.owner || null,
204
- subtask: fm.subtask === 'true',
205
- srcDir: path.dirname(skPath)
103
+ overlay: null
206
104
  });
207
105
  }
208
106
 
@@ -242,10 +140,6 @@ function renderAnthropicSkills(kitRoot, targetDir, opts = {}) {
242
140
  ensureDir(skillDir);
243
141
  fs.writeFileSync(path.join(skillDir, 'SKILL.md'), content, 'utf-8');
244
142
  written.push(`${a.code}/SKILL.md`);
245
- // Copy companion files (steps/, templates/, data/, *.csv, customize.toml,
246
- // *-template.md, research.template.md, etc.) so micro-file workflows can
247
- // resolve relative paths from inside the SKILL body.
248
- copyCompanionFiles(a.srcDir, skillDir, written, a.code);
249
143
  }
250
144
  }
251
145
  return { written, skipped: [] };
@@ -253,30 +147,9 @@ function renderAnthropicSkills(kitRoot, targetDir, opts = {}) {
253
147
 
254
148
  // Convenience emitter for a root-level AGENTS.md — read by Codex, Cursor,
255
149
  // Windsurf and Antigravity as a baseline pointer to the kit's deeper docs.
256
- // Canonical roster order so AGENTS.md is deterministic regardless of the
257
- // filesystem walk order. Codes not listed sort last, alphabetically.
258
- const AGENT_ORDER = [
259
- 'wize-orchestrator',
260
- 'wize-agent-analyst',
261
- 'wize-agent-tech-writer',
262
- 'wize-agent-pm',
263
- 'wize-agent-ux-designer',
264
- 'wize-agent-solution-strategist',
265
- 'wize-agent-architect',
266
- 'wize-agent-test-architect',
267
- 'wize-agent-dev',
268
- 'wize-sec-red-teamer'
269
- ];
270
-
271
150
  function renderAgentsMd(kitRoot, projectRoot, opts = {}) {
272
151
  const assets = collectAssets(kitRoot, opts);
273
- const rank = (code) => {
274
- const i = AGENT_ORDER.indexOf(code);
275
- return i === -1 ? AGENT_ORDER.length : i;
276
- };
277
- const agents = assets
278
- .filter(a => a.kind === 'agent')
279
- .sort((a, b) => rank(a.code) - rank(b.code) || a.code.localeCompare(b.code));
152
+ const agents = assets.filter(a => a.kind === 'agent');
280
153
  const file = path.join(projectRoot, 'AGENTS.md');
281
154
  if (fs.existsSync(file) && !opts.overwrite) {
282
155
  return { written: [], skipped: ['AGENTS.md (already present; not overwritten)'] };
@@ -286,31 +159,15 @@ function renderAgentsMd(kitRoot, projectRoot, opts = {}) {
286
159
  '',
287
160
  'This repo is wired with the [`wize-dev-kit`](https://www.npmjs.com/package/wize-dev-kit).',
288
161
  'Detailed artifacts live under `.wize/`. The agents below are activated through your AI IDE',
289
- 'using slash commands (Claude Code, Codex, Cursor, Windsurf, Antigravity, Hermes all read this file).',
290
- '',
291
- '## Operating context',
292
- '',
293
- 'Treat `.wize/`, this `AGENTS.md`, and the installed `wize-*` skills as your operating',
294
- 'instructions and persistent memory — not background reading. Read project state before',
295
- 'acting; write what you change back into `.wize/` so the next session inherits it.',
296
- '',
297
- 'Before editing, classify the demand via `/wize` (or `/wize-help`): **Quick Dev** (small, predictable,',
298
- 'trivially scoped, no new feature / architecture / UX / security) or **Full Lifecycle**. Never pick',
299
- 'Quick Dev just to skip artifacts.',
300
- '',
301
- 'When a skill fans out to subagents, match the model tier to the task: a lightweight tier',
302
- 'for mechanical work (reads, greps, formatting, short summaries), the standard tier for',
303
- 'implementation and review, a high-capability tier only for architecture, critical',
304
- 'decisions, or final adversarial review.',
162
+ 'using slash commands (Claude Code, Codex, Cursor, Windsurf, Antigravity all read this file).',
305
163
  '',
306
164
  '## Roster',
307
165
  ''
308
166
  ];
309
167
  for (const a of agents) {
310
- const optIn = a.code.startsWith('wize-sec-') ? ' _(security-overlay, opt-in)_' : '';
311
- lines.push(`- **${a.name}** (\`${a.code}\`)${optIn} — ${a.title}. ${clipOneLine(a.description, 180)}`);
168
+ lines.push(`- **${a.name}** (\`${a.code}\`) — ${a.title}. ${clipOneLine(a.description, 180)}`);
312
169
  }
313
- lines.push('', '## Where to start', '', 'Activate the orchestrator: `/wize` (or `/wize-help`). Wizer will guide you.', '');
170
+ lines.push('', '## Where to start', '', 'Activate the orchestrator: `wize-orchestrator` (Wizer). Then ask `/wize-help`.', '');
314
171
 
315
172
  if (opts.dryRun) return { written: ['[dry-run] AGENTS.md'], skipped: [] };
316
173
  fs.writeFileSync(file, lines.join('\n'), 'utf-8');
@@ -321,7 +178,6 @@ module.exports = {
321
178
  collectAssets,
322
179
  renderAnthropicSkills,
323
180
  renderAgentsMd,
324
- copyCompanionFiles,
325
181
  // Re-exports for adapter authors who need to roll their own format:
326
182
  readFrontmatter,
327
183
  bodyAfterFrontmatter,
@@ -24,7 +24,6 @@ const GITIGNORE_BODY = [
24
24
  '.agent/skills/wize-*',
25
25
  '.agents/skills/wize-*',
26
26
  '.kimi/skills/wize-*',
27
- '.hermes/skills/wize-*',
28
27
  '.cursor/rules/wize-*.mdc',
29
28
  '.windsurf/rules/wize-*.md',
30
29
  '.continue/prompts/wize-*.prompt',
@@ -13,7 +13,7 @@ const { walkAgents, walkWorkflows, walkSkills } = require('./walk.js');
13
13
  function checkAgent(file) {
14
14
  const content = fs.readFileSync(file, 'utf-8');
15
15
  const errs = [];
16
- if (!/^code:\s+wize(-|$)/m.test(content)) errs.push('missing or invalid "code:" prefix');
16
+ if (!/^code:\s+wize-/m.test(content)) errs.push('missing or invalid "code:" prefix');
17
17
  if (!/^name:/m.test(content)) errs.push('missing "name:"');
18
18
  if (!/^title:/m.test(content)) errs.push('missing "title:"');
19
19
  if (!/^description:/m.test(content)) errs.push('missing "description:"');
@@ -24,10 +24,9 @@ function checkWorkflow(file) {
24
24
  const content = fs.readFileSync(file, 'utf-8');
25
25
  const errs = [];
26
26
  if (!/^---\s*$/m.test(content)) errs.push('missing YAML frontmatter');
27
- if (!/^code:\s+wize(-|$)/m.test(content)) errs.push('missing or invalid "code:" prefix');
27
+ if (!/^code:\s+wize-/m.test(content)) errs.push('missing or invalid "code:" prefix');
28
28
  if (!/^name:/m.test(content)) errs.push('missing "name:"');
29
29
  if (!/^owner:/m.test(content) && !/^module:/m.test(content)) errs.push('missing "owner:" or "module:"');
30
- if (!/^description:/m.test(content)) errs.push('missing "description:"');
31
30
  return errs;
32
31
  }
33
32