@mmerterden/multi-agent-pipeline 12.5.0 → 12.7.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 (290) hide show
  1. package/CHANGELOG.md +213 -0
  2. package/README.md +19 -19
  3. package/docs/FIGMA_PIPELINE.md +34 -34
  4. package/docs/adr/0001-three-model-triage.md +12 -12
  5. package/docs/adr/0002-instruction-driven-flag.md +5 -5
  6. package/docs/adr/0003-unified-shared-skills.md +5 -5
  7. package/docs/adr/0004-zero-dependency-philosophy.md +5 -5
  8. package/docs/adr/0005-lazy-phase-docs.md +2 -2
  9. package/docs/adr/0006-skills-core-external-split.md +6 -6
  10. package/docs/adr/0007-multi-tool-adapter-framework.md +19 -19
  11. package/docs/adr/0008-installer-modularization-and-secret-leak-defense.md +19 -19
  12. package/docs/adr/README.md +1 -1
  13. package/docs/best-practices.md +3 -3
  14. package/docs/features.md +48 -28
  15. package/docs/performance.md +16 -16
  16. package/docs/recovery-guide.md +39 -39
  17. package/index.js +11 -5
  18. package/install/_common.mjs +5 -11
  19. package/install/_copilot-instructions.mjs +2 -2
  20. package/install/_dev-only-files.mjs +2 -1
  21. package/install/_platform-filter.mjs +1 -1
  22. package/install/_telemetry.mjs +1 -1
  23. package/install/claude.mjs +10 -9
  24. package/install/copilot.mjs +10 -19
  25. package/install/index.mjs +7 -15
  26. package/install/templates/copilot-instructions.md +54 -54
  27. package/install.js +1 -1
  28. package/package.json +15 -11
  29. package/pipeline/agents/security-auditor.md +1 -1
  30. package/pipeline/commands/archive-guard.md +5 -5
  31. package/pipeline/commands/multi-agent/SKILL.md +3 -1
  32. package/pipeline/commands/multi-agent/analysis/SKILL.md +1 -1
  33. package/pipeline/commands/multi-agent/analysis-resolve/SKILL.md +1 -1
  34. package/pipeline/commands/multi-agent/autopilot/SKILL.md +1 -1
  35. package/pipeline/commands/multi-agent/build-optimize/SKILL.md +1 -1
  36. package/pipeline/commands/multi-agent/create-jira/SKILL.md +1 -1
  37. package/pipeline/commands/multi-agent/design-check/SKILL.md +287 -0
  38. package/pipeline/commands/multi-agent/dev/SKILL.md +1 -1
  39. package/pipeline/commands/multi-agent/dev-autopilot/SKILL.md +1 -1
  40. package/pipeline/commands/multi-agent/dev-local/SKILL.md +1 -1
  41. package/pipeline/commands/multi-agent/dev-local-autopilot/SKILL.md +1 -1
  42. package/pipeline/commands/multi-agent/diff-explain/SKILL.md +1 -1
  43. package/pipeline/commands/multi-agent/finish/SKILL.md +6 -6
  44. package/pipeline/commands/multi-agent/forget/SKILL.md +1 -1
  45. package/pipeline/commands/multi-agent/garbage-collect/SKILL.md +1 -1
  46. package/pipeline/commands/multi-agent/help/SKILL.md +46 -6
  47. package/pipeline/commands/multi-agent/issue/SKILL.md +1 -1
  48. package/pipeline/commands/multi-agent/jira/SKILL.md +1 -1
  49. package/pipeline/commands/multi-agent/kill/SKILL.md +1 -1
  50. package/pipeline/commands/multi-agent/language/SKILL.md +1 -1
  51. package/pipeline/commands/multi-agent/local/SKILL.md +1 -1
  52. package/pipeline/commands/multi-agent/local-autopilot/SKILL.md +1 -1
  53. package/pipeline/commands/multi-agent/log/SKILL.md +1 -1
  54. package/pipeline/commands/multi-agent/manual-test/SKILL.md +1 -1
  55. package/pipeline/commands/multi-agent/prune-logs/SKILL.md +1 -1
  56. package/pipeline/commands/multi-agent/purge/SKILL.md +1 -1
  57. package/pipeline/commands/multi-agent/refactor/SKILL.md +107 -19
  58. package/pipeline/commands/multi-agent/resume/SKILL.md +2 -2
  59. package/pipeline/commands/multi-agent/review/SKILL.md +2 -2
  60. package/pipeline/commands/multi-agent/review-issue/SKILL.md +1 -1
  61. package/pipeline/commands/multi-agent/review-jira/SKILL.md +1 -1
  62. package/pipeline/commands/multi-agent/routines/SKILL.md +1 -1
  63. package/pipeline/commands/multi-agent/save/SKILL.md +1 -1
  64. package/pipeline/commands/multi-agent/scan/SKILL.md +1 -1
  65. package/pipeline/commands/multi-agent/search/SKILL.md +1 -1
  66. package/pipeline/commands/multi-agent/setup/SKILL.md +2 -2
  67. package/pipeline/commands/multi-agent/stack/SKILL.md +3 -3
  68. package/pipeline/commands/multi-agent/status/SKILL.md +1 -1
  69. package/pipeline/commands/multi-agent/sync/SKILL.md +123 -16
  70. package/pipeline/commands/multi-agent/test/SKILL.md +2 -2
  71. package/pipeline/commands/multi-agent/uninstall/SKILL.md +1 -1
  72. package/pipeline/commands/multi-agent/update/SKILL.md +3 -3
  73. package/pipeline/commands/sim-test.md +5 -5
  74. package/pipeline/eval/run-metrics-fixture.json +60 -13
  75. package/pipeline/lib/account-resolver.sh +1 -1
  76. package/pipeline/lib/channels-multi-repo.sh +1 -1
  77. package/pipeline/lib/context-link-extractor.sh +1 -1
  78. package/pipeline/lib/credential-store.sh +33 -1
  79. package/pipeline/lib/fetch-confluence.sh +1 -1
  80. package/pipeline/lib/fetch-crashlytics.sh +1 -1
  81. package/pipeline/lib/fetch-fortify.sh +1 -1
  82. package/pipeline/lib/fetch-graylog.sh +1 -1
  83. package/pipeline/lib/fetch-swagger.sh +1 -1
  84. package/pipeline/lib/issue-fetcher.sh +1 -1
  85. package/pipeline/lib/multi-repo-pipeline.sh +1 -1
  86. package/pipeline/lib/repo-cache.sh +1 -1
  87. package/pipeline/lib/submodule-detector.sh +1 -1
  88. package/pipeline/multi-agent-refs/component-dispatch.md +1 -1
  89. package/pipeline/multi-agent-refs/component-generation.md +121 -0
  90. package/pipeline/multi-agent-refs/cross-cli-contract.md +4 -4
  91. package/pipeline/multi-agent-refs/features/model-fallback.md +2 -2
  92. package/pipeline/multi-agent-refs/phases/phase-3-dev.md +2 -2
  93. package/pipeline/multi-agent-refs/phases/phase-4-review.md +1 -1
  94. package/pipeline/multi-agent-refs/phases/phase-5-test.md +4 -4
  95. package/pipeline/preferences-template.json +23 -12
  96. package/pipeline/schemas/agent-state.schema.json +125 -5
  97. package/pipeline/schemas/analysis-output.schema.json +18 -4
  98. package/pipeline/schemas/analysis-spec.schema.json +120 -32
  99. package/pipeline/schemas/clarify-output.schema.json +15 -5
  100. package/pipeline/schemas/design-check-config.schema.json +183 -0
  101. package/pipeline/schemas/dev-critic-output.schema.json +20 -5
  102. package/pipeline/schemas/figma-project-config.schema.json +42 -10
  103. package/pipeline/schemas/learnings-ledger.schema.json +10 -2
  104. package/pipeline/schemas/migrations/figma-config-1.0.0-to-2.0.0.mjs +1 -4
  105. package/pipeline/schemas/migrations/prefs-2.0.0-to-2.1.0.mjs +24 -7
  106. package/pipeline/schemas/migrations/state-2.0.0-to-2.1.0.mjs +30 -12
  107. package/pipeline/schemas/plan-todos.schema.json +6 -3
  108. package/pipeline/schemas/planning-output.schema.json +5 -1
  109. package/pipeline/schemas/prefs.schema.json +215 -197
  110. package/pipeline/schemas/test-gap.schema.json +5 -5
  111. package/pipeline/schemas/token-budget.json +8 -8
  112. package/pipeline/schemas/triage-corpus.schema.json +1 -1
  113. package/pipeline/scripts/README.md +7 -5
  114. package/pipeline/scripts/aggregate-metrics.mjs +18 -6
  115. package/pipeline/scripts/build-skills-index.mjs +6 -2
  116. package/pipeline/scripts/build-stack-plugins.mjs +142 -39
  117. package/pipeline/scripts/check-derived-drift.mjs +196 -0
  118. package/pipeline/scripts/check-md-links.mjs +6 -2
  119. package/pipeline/scripts/classify-plan-safety.mjs +26 -8
  120. package/pipeline/scripts/cost-budget-check.mjs +11 -6
  121. package/pipeline/scripts/cost-table.json +1 -1
  122. package/pipeline/scripts/diff-explain.mjs +7 -3
  123. package/pipeline/scripts/diff-risk-score.mjs +13 -3
  124. package/pipeline/scripts/eval-golden-tasks-live.mjs +8 -3
  125. package/pipeline/scripts/eval-golden-tasks.mjs +21 -9
  126. package/pipeline/scripts/eval-intent.mjs +8 -4
  127. package/pipeline/scripts/eval-mine-corpus.mjs +14 -4
  128. package/pipeline/scripts/evidence-gate.mjs +7 -2
  129. package/pipeline/scripts/fixtures/install-layout.tsv +7 -7
  130. package/pipeline/scripts/gen-mode-dispatch.mjs +38 -21
  131. package/pipeline/scripts/gen-skills-index.mjs +18 -3
  132. package/pipeline/scripts/learning-curve.mjs +13 -3
  133. package/pipeline/scripts/learnings-ledger.mjs +119 -34
  134. package/pipeline/scripts/lint-mcp-refs.mjs +218 -0
  135. package/pipeline/scripts/lint-skills.mjs +20 -9
  136. package/pipeline/scripts/localize-commands.mjs +6 -1
  137. package/pipeline/scripts/match-skills.mjs +15 -4
  138. package/pipeline/scripts/memory-load.sh +5 -1
  139. package/pipeline/scripts/migrate-prefs.mjs +33 -16
  140. package/pipeline/scripts/phase-tracker.sh +3 -1
  141. package/pipeline/scripts/render-work-summary.sh +4 -1
  142. package/pipeline/scripts/repo-map.mjs +110 -64
  143. package/pipeline/scripts/review-scope.mjs +7 -1
  144. package/pipeline/scripts/routine-registry.mjs +4 -9
  145. package/pipeline/scripts/run-aggregator.mjs +11 -5
  146. package/pipeline/scripts/run-metrics.mjs +13 -8
  147. package/pipeline/scripts/run-smokes.mjs +57 -3
  148. package/pipeline/scripts/scorecard.mjs +258 -0
  149. package/pipeline/scripts/smoke-command-inventory.sh +81 -0
  150. package/pipeline/scripts/smoke-commands-skills-parity.sh +1 -1
  151. package/pipeline/scripts/smoke-compliance-skills.sh +4 -4
  152. package/pipeline/scripts/smoke-context-budget.sh +72 -0
  153. package/pipeline/scripts/smoke-cross-cli-behavior.sh +12 -2
  154. package/pipeline/scripts/smoke-generate-issue.sh +6 -5
  155. package/pipeline/scripts/smoke-model-fallback.sh +1 -1
  156. package/pipeline/scripts/smoke-no-mcp-in-dev-phases.sh +86 -7
  157. package/pipeline/scripts/smoke-own-punctuation.sh +103 -0
  158. package/pipeline/scripts/smoke-per-repo-memory.sh +2 -2
  159. package/pipeline/scripts/smoke-review-readiness.sh +3 -2
  160. package/pipeline/scripts/smoke-schema-validation.sh +19 -5
  161. package/pipeline/scripts/smoke-shadow-git.sh +4 -2
  162. package/pipeline/scripts/smoke-workflow-audit.sh +43 -11
  163. package/pipeline/scripts/smoke-write-state.sh +49 -5
  164. package/pipeline/scripts/test-gap-rules/android.json +11 -11
  165. package/pipeline/scripts/test-gap-rules/ios.json +16 -11
  166. package/pipeline/scripts/test-gap-rules/node.json +19 -7
  167. package/pipeline/scripts/test-gap-rules/python.json +10 -4
  168. package/pipeline/scripts/test-gap-scan.mjs +44 -12
  169. package/pipeline/scripts/test-integrity-gate.mjs +5 -1
  170. package/pipeline/scripts/token-budget-report.mjs +44 -21
  171. package/pipeline/scripts/triage-memory.mjs +142 -32
  172. package/pipeline/scripts/uninstall.mjs +75 -31
  173. package/pipeline/scripts/validate-analysis-doc.mjs +15 -5
  174. package/pipeline/scripts/validate-diff-risk.mjs +32 -18
  175. package/pipeline/scripts/validate-test-gap.mjs +17 -7
  176. package/pipeline/scripts/validate-triage.mjs +17 -5
  177. package/pipeline/scripts/write-state.mjs +32 -9
  178. package/pipeline/skills/.skill-manifest.json +24 -8
  179. package/pipeline/skills/.skills-index.json +125 -89
  180. package/pipeline/skills/shared/README.md +65 -61
  181. package/pipeline/skills/shared/core/apple-archive-compliance/SKILL.md +10 -8
  182. package/pipeline/skills/shared/core/google-play-compliance/SKILL.md +1 -1
  183. package/pipeline/skills/shared/core/multi-agent/SKILL.md +26 -279
  184. package/pipeline/skills/shared/core/multi-agent-analysis/SKILL.md +1 -1
  185. package/pipeline/skills/shared/core/multi-agent-analysis-resolve/SKILL.md +1 -1
  186. package/pipeline/skills/shared/core/multi-agent-autopilot/SKILL.md +1 -1
  187. package/pipeline/skills/shared/core/multi-agent-build-optimize/SKILL.md +1 -1
  188. package/pipeline/skills/shared/core/multi-agent-create-jira/SKILL.md +1 -1
  189. package/pipeline/skills/shared/core/multi-agent-design-check/SKILL.md +248 -0
  190. package/pipeline/skills/shared/core/multi-agent-dev/SKILL.md +1 -1
  191. package/pipeline/skills/shared/core/multi-agent-dev-autopilot/SKILL.md +1 -1
  192. package/pipeline/skills/shared/core/multi-agent-dev-local/SKILL.md +1 -1
  193. package/pipeline/skills/shared/core/multi-agent-dev-local-autopilot/SKILL.md +1 -1
  194. package/pipeline/skills/shared/core/multi-agent-diff-explain/SKILL.md +1 -1
  195. package/pipeline/skills/shared/core/multi-agent-finish/SKILL.md +1 -1
  196. package/pipeline/skills/shared/core/multi-agent-forget/SKILL.md +1 -1
  197. package/pipeline/skills/shared/core/multi-agent-garbage-collect/SKILL.md +1 -1
  198. package/pipeline/skills/shared/core/multi-agent-help/SKILL.md +23 -1
  199. package/pipeline/skills/shared/core/multi-agent-issue/SKILL.md +1 -1
  200. package/pipeline/skills/shared/core/multi-agent-jira/SKILL.md +1 -1
  201. package/pipeline/skills/shared/core/multi-agent-kill/SKILL.md +1 -1
  202. package/pipeline/skills/shared/core/multi-agent-language/SKILL.md +1 -1
  203. package/pipeline/skills/shared/core/multi-agent-local/SKILL.md +1 -1
  204. package/pipeline/skills/shared/core/multi-agent-local-autopilot/SKILL.md +1 -1
  205. package/pipeline/skills/shared/core/multi-agent-log/SKILL.md +1 -1
  206. package/pipeline/skills/shared/core/multi-agent-manual-test/SKILL.md +1 -1
  207. package/pipeline/skills/shared/core/multi-agent-prune-logs/SKILL.md +1 -1
  208. package/pipeline/skills/shared/core/multi-agent-purge/SKILL.md +1 -1
  209. package/pipeline/skills/shared/core/multi-agent-refactor/SKILL.md +82 -18
  210. package/pipeline/skills/shared/core/multi-agent-resume/SKILL.md +1 -1
  211. package/pipeline/skills/shared/core/multi-agent-review/SKILL.md +2 -2
  212. package/pipeline/skills/shared/core/multi-agent-review-issue/SKILL.md +1 -1
  213. package/pipeline/skills/shared/core/multi-agent-review-jira/SKILL.md +1 -1
  214. package/pipeline/skills/shared/core/multi-agent-routines/SKILL.md +1 -1
  215. package/pipeline/skills/shared/core/multi-agent-save/SKILL.md +1 -1
  216. package/pipeline/skills/shared/core/multi-agent-scan/SKILL.md +1 -1
  217. package/pipeline/skills/shared/core/multi-agent-search/SKILL.md +1 -1
  218. package/pipeline/skills/shared/core/multi-agent-setup/SKILL.md +1 -1
  219. package/pipeline/skills/shared/core/multi-agent-stack/SKILL.md +3 -3
  220. package/pipeline/skills/shared/core/multi-agent-status/SKILL.md +1 -1
  221. package/pipeline/skills/shared/core/multi-agent-sync/SKILL.md +51 -9
  222. package/pipeline/skills/shared/core/multi-agent-test/SKILL.md +2 -2
  223. package/pipeline/skills/shared/core/multi-agent-uninstall/SKILL.md +1 -1
  224. package/pipeline/skills/shared/core/multi-agent-update/SKILL.md +1 -1
  225. package/pipeline/skills/shared/external/accessibility-compliance-accessibility-audit/SKILL.md +1 -1
  226. package/pipeline/skills/shared/external/agent-introspection-debugging/SKILL.md +4 -4
  227. package/pipeline/skills/shared/external/agentflow/SKILL.md +1 -1
  228. package/pipeline/skills/shared/external/android-jetpack-compose-expert/SKILL.md +1 -1
  229. package/pipeline/skills/shared/external/android_ui_verification/SKILL.md +1 -1
  230. package/pipeline/skills/shared/external/api-patterns/SKILL.md +1 -1
  231. package/pipeline/skills/shared/external/api-security-best-practices/SKILL.md +1 -1
  232. package/pipeline/skills/shared/external/app-store-changelog/SKILL.md +1 -1
  233. package/pipeline/skills/shared/external/backlog/BACKLOG.md +1 -1
  234. package/pipeline/skills/shared/external/backlog/SKILL.md +12 -12
  235. package/pipeline/skills/shared/external/ci-cd-pipelines/SKILL.md +1 -1
  236. package/pipeline/skills/shared/external/context-compression/SKILL.md +1 -1
  237. package/pipeline/skills/shared/external/council/SKILL.md +3 -3
  238. package/pipeline/skills/shared/external/css-modern/SKILL.md +1 -1
  239. package/pipeline/skills/shared/external/database-patterns/SKILL.md +1 -1
  240. package/pipeline/skills/shared/external/debugging-strategies/SKILL.md +1 -1
  241. package/pipeline/skills/shared/external/docker-expert/SKILL.md +1 -1
  242. package/pipeline/skills/shared/external/fastapi-pro/SKILL.md +1 -1
  243. package/pipeline/skills/shared/external/firebase/SKILL.md +1 -1
  244. package/pipeline/skills/shared/external/github-actions-templates/SKILL.md +1 -1
  245. package/pipeline/skills/shared/external/help-skills/SKILL.md +1 -1
  246. package/pipeline/skills/shared/external/hig-components-content/SKILL.md +1 -1
  247. package/pipeline/skills/shared/external/hig-components-layout/SKILL.md +1 -1
  248. package/pipeline/skills/shared/external/hig-components-status/SKILL.md +1 -1
  249. package/pipeline/skills/shared/external/hig-components-system/SKILL.md +1 -1
  250. package/pipeline/skills/shared/external/hig-foundations/SKILL.md +1 -1
  251. package/pipeline/skills/shared/external/hig-inputs/SKILL.md +1 -1
  252. package/pipeline/skills/shared/external/hig-patterns/SKILL.md +1 -1
  253. package/pipeline/skills/shared/external/hig-platforms/SKILL.md +1 -1
  254. package/pipeline/skills/shared/external/hig-technologies/SKILL.md +1 -1
  255. package/pipeline/skills/shared/external/html-semantic/SKILL.md +1 -1
  256. package/pipeline/skills/shared/external/humanizer/SKILL.md +1 -1
  257. package/pipeline/skills/shared/external/ios-debugger-agent/SKILL.md +1 -1
  258. package/pipeline/skills/shared/external/ios-developer/SKILL.md +1 -1
  259. package/pipeline/skills/shared/external/kotlin-coroutines-expert/SKILL.md +1 -1
  260. package/pipeline/skills/shared/external/macos-menubar-tuist-app/SKILL.md +1 -1
  261. package/pipeline/skills/shared/external/macos-spm-app-packaging/SKILL.md +1 -1
  262. package/pipeline/skills/shared/external/monorepo-architect/SKILL.md +1 -1
  263. package/pipeline/skills/shared/external/nextjs-app-router/SKILL.md +1 -1
  264. package/pipeline/skills/shared/external/nodejs-backend-patterns/SKILL.md +1 -1
  265. package/pipeline/skills/shared/external/observability-engineer/SKILL.md +1 -1
  266. package/pipeline/skills/shared/external/python-patterns/SKILL.md +1 -1
  267. package/pipeline/skills/shared/external/react-best-practices/SKILL.md +1 -1
  268. package/pipeline/skills/shared/external/rest-api-design/SKILL.md +1 -1
  269. package/pipeline/skills/shared/external/search-first/SKILL.md +2 -2
  270. package/pipeline/skills/shared/external/skill-creator/SKILL.md +12 -12
  271. package/pipeline/skills/shared/external/skill-creator/audit.md +21 -21
  272. package/pipeline/skills/shared/external/skill-creator/checklist.md +3 -3
  273. package/pipeline/skills/shared/external/skill-creator/examples.md +10 -10
  274. package/pipeline/skills/shared/external/skill-creator/label-check.md +17 -17
  275. package/pipeline/skills/shared/external/skill-creator/scripts/audit-panel.js +86 -50
  276. package/pipeline/skills/shared/external/skill-creator/template.md +9 -9
  277. package/pipeline/skills/shared/external/swift-concurrency-expert/SKILL.md +1 -1
  278. package/pipeline/skills/shared/external/swiftui-performance-audit/SKILL.md +1 -1
  279. package/pipeline/skills/shared/external/swiftui-ui-patterns/SKILL.md +1 -1
  280. package/pipeline/skills/shared/external/swiftui-view-refactor/SKILL.md +1 -1
  281. package/pipeline/skills/shared/external/tailwind-css/SKILL.md +1 -1
  282. package/pipeline/skills/shared/external/testing-backend/SKILL.md +1 -1
  283. package/pipeline/skills/shared/external/typescript-patterns/SKILL.md +1 -1
  284. package/pipeline/skills/shared/external/vue-composition/SKILL.md +1 -1
  285. package/pipeline/skills/shared/external/web-accessibility/SKILL.md +1 -1
  286. package/pipeline/skills/shared/external/web-performance/SKILL.md +1 -1
  287. package/pipeline/skills/shared/external/web-testing/SKILL.md +1 -1
  288. package/pipeline/skills/shared/external/xcode-build-benchmark/schemas/build-benchmark.schema.json +9 -49
  289. package/pipeline/skills/skills-index.md +63 -59
  290. package/pipeline/scripts/smoke-plugin-validate.sh +0 -64
@@ -8,20 +8,20 @@
8
8
 
9
9
  8-phase development workflow (Phase 0 through Phase 7). Describe your task and follow the phases:
10
10
 
11
- 0. **Init** Project setup, worktree, branch creation, identity binding
12
- 1. **Analysis** Stack detection, codebase exploration
13
- 2. **Planning** Task decomposition, architecture review, user approval
14
- 3. **Dev** TDD cycle: test -> code -> build
15
- 4. **Review** Deterministic gates + CLI-aware parallel review + Opus triage.
11
+ 0. **Init** - Project setup, worktree, branch creation, identity binding
12
+ 1. **Analysis** - Stack detection, codebase exploration
13
+ 2. **Planning** - Task decomposition, architecture review, user approval
14
+ 3. **Dev** - TDD cycle: test -> code -> build
15
+ 4. **Review** - Deterministic gates + CLI-aware parallel review + Opus triage.
16
16
  Copilot CLI dispatches **3 reviewers in parallel**: GPT-5.4 (edge cases +
17
17
  cross-provider diversity) + Opus (security + architecture) + Sonnet (quality +
18
18
  correctness). Findings flow into an Opus triage pass that filters false-positives
19
19
  and out-of-scope items before looping back to Phase 3. Claude Code drops GPT-5.4
20
- (not natively reachable there) and runs a 2-model set this is the only
20
+ (not natively reachable there) and runs a 2-model set - this is the only
21
21
  intentional cross-CLI asymmetry for Phase 4.
22
- 5. **Test** Optional manual testing + on-demand device audits
23
- 6. **Commit** Secret scan · commit · push · PR creation
24
- 7. **Report** Jira comment · Wiki + Figma screenshots · Confluence · log · knowledge + memory
22
+ 5. **Test** - Optional manual testing + on-demand device audits
23
+ 6. **Commit** - Secret scan · commit · push · PR creation
24
+ 7. **Report** - Jira comment · Wiki + Figma screenshots · Confluence · log · knowledge + memory
25
25
 
26
26
  ## Modes
27
27
 
@@ -29,21 +29,21 @@
29
29
  - **Fast (multi-agent-dev)**: Init -> Dev(Opus) -> Commit -> Report
30
30
  - **Autopilot (multi-agent-autopilot)**: Skip confirmations, auto commit/PR
31
31
  - **Fastest (multi-agent-dev-autopilot)**: Combine dev + autopilot
32
- - **Local (multi-agent-local)**: Full 8 phases on current branch no worktree
33
- - **Fast + Local (multi-agent-dev-local)**: Dev on current branch no worktree
32
+ - **Local (multi-agent-local)**: Full 8 phases on current branch - no worktree
33
+ - **Fast + Local (multi-agent-dev-local)**: Dev on current branch - no worktree
34
34
  - **Fastest + Local (multi-agent-dev-local-autopilot)**: Dev + autopilot, no worktree
35
35
 
36
36
  ## Prompt Language (en/tr)
37
37
 
38
38
  The pipeline honors `prefs.global.promptLanguage` (set via `/multi-agent:setup` or
39
39
  `/multi-agent:language en|tr`). This controls the language of **interactive prompts
40
- only** e.g. the Phase 6 pre-commit local-checkout test prompt, Plan Approval Gate
40
+ only** - e.g. the Phase 6 pre-commit local-checkout test prompt, Plan Approval Gate
41
41
  questions, multi-repo branch picker labels, and phase-banner.sh banners (when
42
42
  PHASE_LANG env is unset, it auto-reads prefs).
43
43
 
44
44
  Default: `en`. Supported: `en`, `tr`. Commit messages, PR bodies, Jira comments,
45
45
  and any external-facing payload **always stay in English** regardless of this
46
- setting only the user-facing prompts change.
46
+ setting - only the user-facing prompts change.
47
47
 
48
48
  When writing TR prompts, use the same keyword/menu numbers as EN (e.g. `[1-4]`)
49
49
  so the user's input pattern stays language-agnostic.
@@ -51,7 +51,7 @@ so the user's input pattern stays language-agnostic.
51
51
  ## Sub-Agent Personas
52
52
 
53
53
  Phase 1 (Analysis) and Phase 4 (Review) dispatch sub-agents for parallel exploration
54
- and review. The persona prompts live at `~/.copilot/agents/*.md` installed by the
54
+ and review. The persona prompts live at `~/.copilot/agents/*.md` - installed by the
55
55
  pipeline installer alongside the Claude Code equivalents at `~/.claude/agents/`.
56
56
 
57
57
  | Agent | File | Used in |
@@ -63,37 +63,37 @@ pipeline installer alongside the Claude Code equivalents at `~/.claude/agents/`.
63
63
  | Backend Architect | `~/.copilot/agents/backend-architect.md` | Phase 4 API/backend review |
64
64
  | Security Auditor | `~/.copilot/agents/security-auditor.md` | Phase 4 security audit (OWASP-based) |
65
65
 
66
- Load the matching persona file before dispatching each reviewer the prompt defines
66
+ Load the matching persona file before dispatching each reviewer - the prompt defines
67
67
  the model's focus area, severity rubric, and output format the triage pass expects.
68
68
 
69
- ## Phase 0 Interactive Steps (required)
69
+ ## Phase 0 - Interactive Steps (required)
70
70
 
71
71
  The orchestrator skill (`multi-agent/SKILL.md`) shows a condensed Phase 0 for brevity,
72
72
  but the actual contract is **8 interactive steps** from `refs/phases/phase-0-init.md`.
73
73
  Copilot CLI has no slash-command infrastructure to auto-route through the full ref file,
74
74
  so execute ALL of these explicitly before touching code:
75
75
 
76
- 1. **Bootstrap tracker** `bash ~/.copilot/scripts/phase-tracker.sh init 8` (once, before Step 0)
77
- 2. **Load prefs** read `~/.claude/multi-agent-preferences.json`; warn + stop if setup never ran
78
- 3. **Parse input** classify (Jira ID, GitHub URL, free-text) + fetch issue via `gh` / Jira API
79
- 4. **Select project(s) single OR multi-repo** scan `$HOME`, present numbered list,
76
+ 1. **Bootstrap tracker** - `bash ~/.copilot/scripts/phase-tracker.sh init 8` (once, before Step 0)
77
+ 2. **Load prefs** - read `~/.claude/multi-agent-preferences.json`; warn + stop if setup never ran
78
+ 3. **Parse input** - classify (Jira ID, GitHub URL, free-text) + fetch issue via `gh` / Jira API
79
+ 4. **Select project(s) - single OR multi-repo** - scan `$HOME`, present numbered list,
80
80
  honor `global.recentProjects`. Picker accepts space-separated numbers (`1 3 4`) for
81
81
  multi-select. Surface `global.recentGroups` at top of list. Component/refactor tasks
82
82
  commonly span repos (component repo + consumer app). **Never auto-pick one repo when
83
- the task could touch more than one** ask user to confirm single vs multi.
84
- 5. **Pick base branch PER REPO** REQUIRED INTERACTIVE STEP. Single repo: run
83
+ the task could touch more than one** - ask user to confirm single vs multi.
84
+ 5. **Pick base branch - PER REPO** - REQUIRED INTERACTIVE STEP. Single repo: run
85
85
  `git ls-remote --heads origin` on that repo, present sorted list (develop* / release/*
86
86
  / main/master first), suggest top of `global.recentBranches[{projectKey}]`.
87
- **Multiple repos selected: fire the branch picker SEPARATELY for each repo**
87
+ **Multiple repos selected: fire the branch picker SEPARATELY for each repo** -
88
88
  per phase-0-init.md the prompt fires per-repo, because different repos often have
89
89
  different base branches (e.g. component repo on `iteration/develop`, consumer app on
90
90
  `develop`). Skip the picker ONLY if user's input explicitly specified a branch.
91
- 6. **Branch name confirm** `feature/PROJ-{id}-{kebab}` or `bugfix/...`. In multi-repo
91
+ 6. **Branch name confirm** - `feature/PROJ-{id}-{kebab}` or `bugfix/...`. In multi-repo
92
92
  mode, branch name is shared across all selected repos (collision check per-repo;
93
93
  any collision applies the suffix to all, keeping cross-repo uniformity).
94
- 7. **Git identity per repo** route via `prefs.global.platformIdentityRouting`;
94
+ 7. **Git identity - per repo** - route via `prefs.global.platformIdentityRouting`;
95
95
  resolves independently for each repo in multi-repo mode.
96
- 8. **Workspace creation serially per repo** detect `.instructions/figma/` etc.;
96
+ 8. **Workspace creation - serially per repo** - detect `.instructions/figma/` etc.;
97
97
  in multi-repo mode loop worktree creation per repo serially; any failure rolls back
98
98
  previously-created worktrees (no partial state). Write `agent-state.json` with
99
99
  `state.projects[]` array; scalar `project`/`projectRoot`/`branch` mirror `projects[0]`
@@ -104,19 +104,19 @@ https://github.com/mmerterden/multi-agent-pipeline/blob/main/pipeline/multi-agen
104
104
  or, on machines with Claude Code also installed:
105
105
  `~/.claude/multi-agent-refs/phases/phase-0-init.md`
106
106
 
107
- ## Progress Tracking required
107
+ ## Progress Tracking - required
108
108
 
109
109
  Every phase boundary MUST call the cross-CLI tracker. The tracker is the single source of truth
110
110
  for user-visible phase progress on Copilot CLI (no TaskCreate native UI here). Banner is optional flair.
111
111
 
112
112
  ```bash
113
- # Bootstrap once at Phase 0 start initialize all 8 phase tiles:
113
+ # Bootstrap once at Phase 0 start - initialize all 8 phase tiles:
114
114
  bash ~/.copilot/scripts/phase-tracker.sh init "$TASK_ID"
115
115
  for p in 0:Init 1:Analysis 2:Planning 3:Dev 4:Review 5:Test 6:Commit 7:Report; do
116
116
  bash ~/.copilot/scripts/phase-tracker.sh add "${p%%:*}" "${p#*:}"
117
117
  done
118
118
 
119
- # At each phase boundary update status. Tracker stamps started_at on first
119
+ # At each phase boundary - update status. Tracker stamps started_at on first
120
120
  # transition to in_progress, completed_at on terminal status (completed/failed/skipped).
121
121
  # Render now shows a 16-char ASCII progress bar + elapsed time + per-phase token
122
122
  # usage + Total footer (v5.5.0):
@@ -128,16 +128,16 @@ bash ~/.copilot/scripts/phase-tracker.sh update <N> completed # or failed / s
128
128
  # After every LLM dispatch, record its token cost against the active phase (v5.5.0):
129
129
  bash ~/.copilot/scripts/phase-tracker.sh tokens <N> <input_tokens> <output_tokens>
130
130
 
131
- # v8.3+ single-call-site token forwarder (preferred). Mirrors tokens_in/out/model
131
+ # v8.3+ - single-call-site token forwarder (preferred). Mirrors tokens_in/out/model
132
132
  # into both metrics.jsonl AND the phase tracker, so the agent-log Cost Breakdown
133
133
  # stays in sync without two calls. Best-effort.
134
134
  LOG_METRIC_FORWARD_TO_TRACKER=1 bash ~/.copilot/scripts/log-metric.sh "$TASK_ID" <N> <event> \
135
135
  model=<opus|sonnet|haiku|gpt-5.4> tokens_in=$IN tokens_out=$OUT duration_ms=$DUR
136
136
 
137
- # v8.3+ phase model tag (used by render-agent-log-cost.sh):
137
+ # v8.3+ - phase model tag (used by render-agent-log-cost.sh):
138
138
  bash ~/.copilot/scripts/phase-tracker.sh model <N> <opus|sonnet|haiku|gpt-5.4>
139
139
 
140
- # Phase 7 sub-step enforcement (v5.4.1) register all 5 steps up front so
140
+ # Phase 7 sub-step enforcement (v5.4.1) - register all 5 steps up front so
141
141
  # wiki/confluence skips are VISIBLE, not silent. User reported prior silent-skip
142
142
  # behaviour losing visibility of component wiki generation:
143
143
  bash ~/.copilot/scripts/phase-tracker.sh update 7 in_progress
@@ -145,7 +145,7 @@ for s in 1:Jira-Comment 2:Wiki+Figma 3:Confluence 4:Log+Telemetry 5:Knowledge+Me
145
145
  bash ~/.copilot/scripts/phase-tracker.sh sub 7 "${s%%:*}" "${s#*:}" pending
146
146
  done
147
147
 
148
- # Optional single-event banner for extra emphasis (phase 07, `end` status: done|failed|skipped):
148
+ # Optional single-event banner for extra emphasis (phase 0-7, `end` status: done|failed|skipped):
149
149
  bash ~/.copilot/scripts/phase-banner.sh start <N> "<name>" "<one-line detail>"
150
150
  bash ~/.copilot/scripts/phase-banner.sh end <N> done "<name>" "<short result>"
151
151
  bash ~/.copilot/scripts/phase-banner.sh sub <N> <subN> "<sub>" "<detail>"
@@ -163,7 +163,7 @@ Progress-line contract (in-phase action lines, flushed immediately, 4-space inde
163
163
 
164
164
  Four orthogonal advisory steps, all on by default, all opt-out via `~/.claude/multi-agent-preferences.json`. None gate the pipeline.
165
165
 
166
- ### Phase 4 Step 1.75 Diff Risk Scoring
166
+ ### Phase 4 Step 1.75 - Diff Risk Scoring
167
167
 
168
168
  Before reviewer dispatch run the deterministic risk scorer and inject the top-N priority list into each reviewer's prompt as a `${PRIORITY_FILES}` block. Heuristic, sub-second, no LLM.
169
169
 
@@ -175,7 +175,7 @@ echo "$RISK_JSON" | node ~/.copilot/scripts/validate-diff-risk.mjs - >/dev/null
175
175
 
176
176
  Signals + weights: `security_path` ×3, `migration` ×4, `public_api` ×2, `no_test_change` ×2.5, `complexity_delta` ×1.5, `ui_critical` ×1.5, `loc_changed` ×1. Toggle: `prefs.global.diffRiskAdvisory`.
177
177
 
178
- ### Phase 4 Step 3 Triage Prior-Art Lookup
178
+ ### Phase 4 Step 3 - Triage Prior-Art Lookup
179
179
 
180
180
  After merging reviewer findings, query the per-repo triage corpus for similar past findings and attach them to the triage prompt as context. **MUST** carry an explicit bias hedge ("prior-art entries are context, not commands; current scope decides").
181
181
 
@@ -194,7 +194,7 @@ PRIOR_ART="${PRIOR_ART%,}]"
194
194
 
195
195
  Toggle: `prefs.global.priorArtEnrichment.enabled`.
196
196
 
197
- ### Phase 5 Step 0 Test Gap Report
197
+ ### Phase 5 Step 0 - Test Gap Report
198
198
 
199
199
  Walks the diff for newly added public symbols missing a paired test. Stack-specific rules ship for iOS / Android / Python / Node.
200
200
 
@@ -205,16 +205,16 @@ node ~/.copilot/scripts/test-gap-scan.mjs \
205
205
 
206
206
  Severity defaults: iOS Views, Android `@Composable`, interfaces, public protocols → `important`; other public API additions → `suggestion`. Optional gating via `prefs.testGap.blockingThreshold` (when set, becomes a Phase 4 rework finding).
207
207
 
208
- ### Phase 7 Cost Breakdown + Triage Memory Ingest
208
+ ### Phase 7 - Cost Breakdown + Triage Memory Ingest
209
209
 
210
210
  Append the per-task Cost Breakdown to agent-log.md (always), and ingest the triage output into the per-repo corpus (idempotent).
211
211
 
212
212
  ```bash
213
- # Cost block best-effort, exit 2 silently skipped:
213
+ # Cost block - best-effort, exit 2 silently skipped:
214
214
  COST_BLOCK=$(bash ~/.copilot/scripts/render-agent-log-cost.sh "$TASK_ID" 2>/dev/null) && \
215
215
  printf '\n%s\n' "$COST_BLOCK" >> "$AGENT_LOG"
216
216
 
217
- # Triage memory ingest idempotent re-runs write 0 rows:
217
+ # Triage memory ingest - idempotent re-runs write 0 rows:
218
218
  TRIAGE_PATH="$WORKTREE/triage-output.json"
219
219
  if [ -f "$TRIAGE_PATH" ]; then
220
220
  node ~/.copilot/scripts/triage-memory.mjs ingest \
@@ -251,18 +251,18 @@ multi-agent-stack [ios|android|mobile|backend|frontend|fullstack|all]
251
251
  ## UI Bug Hunter
252
252
 
253
253
  For visual testing, use the dev-toolkit MCP server tools:
254
- - ios_screenshot / android_screenshot capture screen
255
- - ios_tap / android_tap interact with UI
256
- - ios_set_appearance toggle dark mode
257
- - ios_get_ui_tree / android_get_ui_tree accessibility tree
254
+ - ios_screenshot / android_screenshot - capture screen
255
+ - ios_tap / android_tap - interact with UI
256
+ - ios_set_appearance - toggle dark mode
257
+ - ios_get_ui_tree / android_get_ui_tree - accessibility tree
258
258
 
259
259
  Requires: @mmerterden/dev-toolkit-mcp MCP server running
260
260
 
261
- ## Post-Development Integration Build (Multi-Repo) required
261
+ ## Post-Development Integration Build (Multi-Repo) - required
262
262
 
263
263
  When a task touches multiple repositories that have a producer→consumer dependency
264
264
  (e.g. shared codegen library + consuming UI library), the pipeline MUST build the
265
- **host project** that integrates them after all changes are complete before commit/PR.
265
+ **host project** that integrates them after all changes are complete - before commit/PR.
266
266
 
267
267
  ### When this applies
268
268
 
@@ -270,12 +270,12 @@ When a task touches multiple repositories that have a producer→consumer depend
270
270
  - Repo B is consumed as a submodule or SPM/Gradle dependency by a host project (Repo C)
271
271
  - Changes in Repo A or B can silently break Repo C if key structures diverge (e.g. nested enum vs flat access pattern)
272
272
 
273
- ### Required steps (Phase 6 · Step 0 before pre-commit checkout)
273
+ ### Required steps (Phase 6 · Step 0 - before pre-commit checkout)
274
274
 
275
- 1. **Identify the host project** check `prefs.global.multiRepoIntegrationHosts` for a matching `repoSet` combo. If no match, ASK the user once (record the answer to skip re-asking); autopilot refuses to prompt, skips visibly.
276
- 2. **Update submodules** refresh each listed submodule path inside `hostPath` to pick up this task's feature branch / merged commits.
277
- 3. **Resolve package dependencies** flush stale SPM/Gradle/CocoaPods cache.
278
- 4. **Build the host scheme/module** capture error lines from stderr.
275
+ 1. **Identify the host project** - check `prefs.global.multiRepoIntegrationHosts` for a matching `repoSet` combo. If no match, ASK the user once (record the answer to skip re-asking); autopilot refuses to prompt, skips visibly.
276
+ 2. **Update submodules** - refresh each listed submodule path inside `hostPath` to pick up this task's feature branch / merged commits.
277
+ 3. **Resolve package dependencies** - flush stale SPM/Gradle/CocoaPods cache.
278
+ 4. **Build the host scheme/module** - capture error lines from stderr.
279
279
  5. **Evaluate**:
280
280
  - Zero new errors → sub-step `completed`, proceed to commit/PR.
281
281
  - New errors from our changes → sub-step `failed`, STOP. Offer: return to Phase 3 for auto-fix / pause for manual fix / override with warning.
@@ -286,12 +286,12 @@ When a task touches multiple repositories that have a producer→consumer depend
286
286
  Codegen mismatches only surface when the full dependency chain builds together. Building repos in
287
287
  isolation gives false confidence. Skipping this step has caused post-merge build failures that required
288
288
  additional fix PRs and wasted review cycles. The pipeline **learns** each combo's host project on first
289
- encounter and auto-applies on subsequent runs no repeated configuration.
289
+ encounter and auto-applies on subsequent runs - no repeated configuration.
290
290
 
291
291
  ### Tracker integration
292
292
 
293
293
  ```bash
294
- # Phase 6 entry if multi-repo, register the integration-build sub-step:
294
+ # Phase 6 entry - if multi-repo, register the integration-build sub-step:
295
295
  if [ "$(jq '.projects | length' "$STATE_FILE")" -ge 2 ]; then
296
296
  bash ~/.copilot/scripts/phase-tracker.sh sub 6 0 "Integration build" in_progress
297
297
  # ... run the build per refs/multi-repo-integration-build.md ...
@@ -305,7 +305,7 @@ Full contract: `~/.copilot/skills/multi-agent/refs/multi-repo-integration-build.
305
305
  ## Permissions Expectation
306
306
 
307
307
  Copilot CLI reads `~/.copilot/permissions-config.json` for its allowlist. The pipeline
308
- regularly uses these command groups ensure they are present in `tools.allow` to avoid
308
+ regularly uses these command groups - ensure they are present in `tools.allow` to avoid
309
309
  prompt fatigue during long pipeline runs:
310
310
 
311
311
  - Shell basics: `cd`, `ls`, `cat`, `grep`, `find`, `mkdir`, `rm`, `mv`, `cp`
@@ -316,4 +316,4 @@ prompt fatigue during long pipeline runs:
316
316
  - Pipeline scripts: `bash` (invokes phase-tracker.sh, phase-banner.sh, etc.)
317
317
 
318
318
  Destructive commands (`rm -rf /`, `git push --force` to main, `chmod 777`) remain in `deny`
319
- or `ask` by design do not broaden these.
319
+ or `ask` by design - do not broaden these.
package/install.js CHANGED
@@ -6,7 +6,7 @@
6
6
  * v8.0.0 split the monolithic 1246-LOC installer into focused modules under
7
7
  * `install/`. This file remains as the entry point npm exposes via the
8
8
  * `multi-agent-pipeline` bin and the `./install` package export, so existing
9
- * `node install.js …` and `npx multi-agent-pipeline install …` invocations
9
+ * `node install.js ...` and `npx multi-agent-pipeline install ...` invocations
10
10
  * continue to work without API changes.
11
11
  *
12
12
  * @module multi-agent-pipeline/install
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mmerterden/multi-agent-pipeline",
3
- "version": "12.5.0",
3
+ "version": "12.7.0",
4
4
  "description": "8-phase AI development pipeline with full orchestration on Claude Code and Copilot CLI. Analysis, planning, TDD, CLI-aware parallel review with consensus surfacing + Fable triage, default-FAIL evidence gates, secret + intent guards, per-phase cost ledger, persistent learnings memory, wiki generation, commit automation. Token-preserving uninstall.",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -14,16 +14,17 @@
14
14
  },
15
15
  "scripts": {
16
16
  "start": "node index.js",
17
- "test": "node --test test/*.test.mjs && node pipeline/scripts/run-smokes.mjs && node pipeline/scripts/lint-skills.mjs && node pipeline/scripts/eval-triage.mjs && node pipeline/scripts/eval-golden-tasks.mjs && node pipeline/scripts/eval-intent.mjs && node pipeline/scripts/validate-schemas.mjs",
17
+ "test": "node --test test/*.test.mjs && node pipeline/scripts/run-smokes.mjs && node pipeline/scripts/lint-skills.mjs && node pipeline/scripts/lint-mcp-refs.mjs && node pipeline/scripts/eval-triage.mjs && node pipeline/scripts/eval-golden-tasks.mjs && node pipeline/scripts/eval-intent.mjs && node pipeline/scripts/validate-schemas.mjs && node pipeline/scripts/validate-prefs.mjs && node pipeline/scripts/scorecard.mjs",
18
18
  "test:unit": "node --test test/*.test.mjs",
19
19
  "test:smoke": "node pipeline/scripts/run-smokes.mjs",
20
20
  "lint:skills": "node pipeline/scripts/lint-skills.mjs",
21
- "test:quick": "node --test test/*.test.mjs && node pipeline/scripts/lint-skills.mjs",
22
- "test:coverage": "c8 --check-coverage --reporter=text --reporter=lcov node --test test/*.test.mjs && c8 report",
21
+ "test:quick": "node --test test/*.test.mjs && node pipeline/scripts/lint-skills.mjs && node pipeline/scripts/lint-mcp-refs.mjs",
22
+ "test:coverage": "c8 --clean --reporter=none node --test test/*.test.mjs && c8 --clean=false --check-coverage --reporter=text --reporter=lcov node pipeline/scripts/run-smokes.mjs",
23
23
  "lint": "eslint .",
24
24
  "lint:fix": "eslint . --fix",
25
- "format": "prettier --write \"**/*.{js,mjs,json,md,yml}\" --ignore-path .gitignore",
26
- "format:check": "prettier --check \"**/*.{js,mjs,json,md,yml}\" --ignore-path .gitignore"
25
+ "format": "prettier --write \"**/*.{js,mjs,json,yml}\" --ignore-path .gitignore",
26
+ "format:check": "prettier --check \"**/*.{js,mjs,json,yml}\" --ignore-path .gitignore",
27
+ "scorecard": "node pipeline/scripts/scorecard.mjs"
27
28
  },
28
29
  "keywords": [
29
30
  "multi-agent",
@@ -51,14 +52,14 @@
51
52
  },
52
53
  "repository": {
53
54
  "type": "git",
54
- "url": "https://github.com/mmerterden/multi-agent-pipeline.git"
55
+ "url": "git+https://github.com/mmerterden/multi-agent-pipeline.git"
55
56
  },
56
57
  "homepage": "https://github.com/mmerterden/multi-agent-pipeline#readme",
57
58
  "bugs": {
58
59
  "url": "https://github.com/mmerterden/multi-agent-pipeline/issues"
59
60
  },
60
61
  "engines": {
61
- "node": ">=20.0.0"
62
+ "node": ">=20.11.0"
62
63
  },
63
64
  "files": [
64
65
  "index.js",
@@ -72,6 +73,7 @@
72
73
  "LICENSE",
73
74
  "!pipeline/scripts/smoke-figma-config-schema.sh",
74
75
  "!pipeline/scripts/smoke-personal-data.sh",
76
+ "!pipeline/scripts/validate-prefs.mjs",
75
77
  "!pipeline/scripts/smoke-install-leak-gate.sh",
76
78
  "!docs/internal/**"
77
79
  ],
@@ -79,9 +81,11 @@
79
81
  "@eslint/js": "^10.0.1",
80
82
  "ajv": "^8.20.0",
81
83
  "ajv-formats": "^3.0.1",
82
- "c8": "^11.0.0",
83
- "eslint": "^10.2.0",
84
+ "c8": "^12.0.0",
85
+ "eslint": "^10.8.0",
84
86
  "eslint-config-prettier": "^10.1.8",
85
- "prettier": "^3.8.2"
87
+ "eslint-plugin-n": "^18.2.2",
88
+ "prettier": "^3.9.6",
89
+ "publint": "0.3.22"
86
90
  }
87
91
  }
@@ -85,7 +85,7 @@ Example: new `MANAGE_EXTERNAL_STORAGE` permission → `(google-play-compliance /
85
85
 
86
86
  The two SKILL.md files contain tabular rule catalogs:
87
87
 
88
- - **apple-archive-compliance** - 17 rules (privacy-manifest, required-reason-api, info-plist, code-signing, embedded-sdk, entitlement, asset-validation, binary-size, team-id-consistency, provisioning-profile, swift-abi, extension-signing, ipv6-compliance, debug-tool-leak, production-hygiene, duplicate-resource, dead-reference) with ITMS codes + App Store Review Guideline refs.
88
+ - **apple-archive-compliance** - 18 rules (privacy-manifest, required-reason-api, info-plist, code-signing, embedded-sdk, entitlement, asset-validation, binary-size, team-id-consistency, provisioning-profile, swift-abi, extension-signing, ipv6-compliance, debug-tool-leak, production-hygiene, duplicate-resource, dead-reference, sdk-floor) with ITMS codes + App Store Review Guideline refs.
89
89
  - **google-play-compliance** - 21 rules across Technical / Security / Privacy / Hygiene categories with Play policy refs.
90
90
 
91
91
  Cite rule + ref in your Output Format's `Category:` line so the code-reviewer and triage layers inherit the reference text unchanged.
@@ -1,14 +1,14 @@
1
1
  ---
2
- description: Scan an .xcarchive for Apple App Store Review compliance (17-rule deep audit)
2
+ description: Scan an .xcarchive for Apple App Store Review compliance (18-rule deep audit)
3
3
  allowed-tools: Bash, Read, Glob
4
4
  ---
5
5
 
6
- Run the `ios_app_store_audit` MCP tool (shipped in `@mmerterden/dev-toolkit-mcp` ≥ v2.4)
7
- on an iOS archive. Backed by the same 17-rule catalog as `/multi-agent:test "store-ready"`
6
+ Run the `ios_app_store_audit` MCP tool (shipped in `@mmerterden/dev-toolkit-mcp` ≥ v2.9.0)
7
+ on an iOS archive. Backed by the same 18-rule catalog as `/multi-agent:test "store-ready"`
8
8
  - this command is the lighter, post-hoc form (no platform-detect, no UI sweep).
9
9
 
10
10
  > **v8.4.0 migration note:** The standalone `~/ArchiveGuard/.build/release/archive-guard`
11
- > binary has been retired. The 17 rules live in
11
+ > binary has been retired. The 18 rules live in
12
12
  > `dev-toolkit-mcp/tools/ios-app-store-audit/rules/` as a pure-Node port. Output JSON
13
13
  > shape is unchanged.
14
14
 
@@ -21,7 +21,7 @@ on an iOS archive. Backed by the same 17-rule catalog as `/multi-agent:test "sto
21
21
  2. Ask user which archive to scan (or use the argument if provided: $ARGUMENTS).
22
22
  3. Run the scan - preferred mode is the native MCP tool call:
23
23
  ```
24
- mcp__dev_toolkit__ios_app_store_audit({
24
+ mcp__dev-toolkit__ios_app_store_audit({
25
25
  archive_path: "<archive_path>",
26
26
  rules: "all" // "all" | "core" | "deep" | csv of ruleIDs
27
27
  })
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: "Task orchestrator - full pipeline via Jira ID + branch or GitHub Issue URL: analysis, plan, TDD development, parallel review + Fable triage (CLI-aware: 2-model on Claude Code, 3-model on Copilot CLI), commit, log"
2
+ description: "Task orchestrator - full pipeline via Jira ID + branch or GitHub Issue URL: analysis, plan, TDD development, parallel review + Fable triage (CLI-aware: 2-model on Claude Code, 3-model on Copilot CLI), commit, log. Use when given a Jira ID, a GitHub issue or a free-text task and the whole pipeline should run."
3
3
  description-tr: "Görev orkestratörü - Jira ID + branch veya GitHub Issue URL ile tam pipeline: analiz, plan, TDD geliştirme, paralel review + Fable triyajı (CLI'ya göre: Claude Code'da 2, Copilot CLI'da 3 model), commit, log"
4
4
  allowed-tools: Agent, Bash, Read, Write, Edit, Glob, Grep, TaskCreate, TaskUpdate, TaskList, TaskGet, AskUserQuestion, WebFetch, WebSearch, NotebookEdit, Skill
5
5
  ---
@@ -83,6 +83,7 @@ Lib scripts (`~/.claude/lib/`):
83
83
  | `create-jira ["desc"] [figma-url] [swagger-url]` | Create a standards-compliant Jira issue: asks the type (**Task** / **Bug** / **Story**), mines the project's recent same-type issues for conventions (summary format, labels, priority, test-scenario style), detects the active sprint, drafts from a standard template with auto-sizing sections (Design Reference / API Contract / Screenshots appear only when their source is given), asks about unknown fields, then full draft preview + explicit approval before create. No worktree, no commits. |
84
84
  | `test` or `test [args]` | UI Bug Hunter - screenshot + tap + analyze on booted simulator via MCP (read `$HOME/.claude/commands/sim-test.md`). `/multi-agent:test` also resolves here via the `commands/multi-agent/test/SKILL.md` delegate. |
85
85
  | `manual-test [#id]` | Phase 5 standalone Manual Test - checks out the task branch, prints Xcode / SourceTree hints, waits for user verdict (`ok` / `fix: ...`). |
86
+ | `design-check [scope]` | Mock-mode vs Figma design audit (iOS / Android, local-only). Pick repo + module → mock-support feasibility gate (halts if unsupported) → **scenario inventory** (every launch arg / scenario case / scenario code / fixture / deep link becomes a countable target with file+line evidence) → scope resolve (empty = module, screen, `screen@variant`, target id, Figma URLs, `--resume`) → worktree Debug build + mock launch → drive EACH target by its own driver, capturing tap-reachable sub-states with it → per-variant pixel + px-spacing + typography + color compare → report (side-by-side + annotated overlay + stacked findings + fix prompt) exported to `~/DesignChecks/` as HTML + PDF (+ Confluence if enabled). **Coverage gate**: a target is audited or skipped with a concrete reason, else the run is reported INCOMPLETE with the missing ids. No commits, no CI. |
86
87
  | `stack [ios\|android\|backend\|mobile\|all]` | Swap skills for next conversation. No arg = show current stack. |
87
88
  | `language [en\|tr]` | Show or set the assistant `outputLanguage` (explanations and chat replies). `promptLanguage` is locked to `en` and is not toggleable. No arg = show current `outputLanguage`. With `en` or `tr` = set and persist `outputLanguage`. External payloads (commits, PR bodies, Jira) stay English. |
88
89
  | `setup` | Keychain token + Git Identity onboarding |
@@ -134,6 +135,7 @@ This command uses lazy loading for token efficiency. Read the relevant sub-file
134
135
  | Audit tools (Phase 5/6) | `$HOME/.claude/multi-agent-refs/audit-guide.md` |
135
136
  | `test` | `$HOME/.claude/commands/sim-test.md` (colon-form `/multi-agent:test` uses the delegate at `commands/multi-agent/test/SKILL.md`) |
136
137
  | `manual-test` | `$HOME/.claude/commands/multi-agent/manual-test/SKILL.md` |
138
+ | `design-check` | `$HOME/.claude/commands/multi-agent/design-check/SKILL.md` |
137
139
 
138
140
  **Modifier flags** (`--dev`, `--local`, `autopilot`) and **ops** (`status`, `log`, `resume`, `kill`, `clear-logs`, `purge`, `review`) are parsed inline by this file - no separate spec files, they compose with the pipeline or do one-shot work.
139
141
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: "Standalone feature-spec analysis. Platform-agnostic concept layer with repo-driven convention extraction (Phase 1c) and per-platform Pass B render. 23 main sections + 3 footer in Full mode; 7 sections in Lite mode (auto for small features). Collects Figma / Swagger / Confluence / Jira / Standards (Confluence + Wiki + local file) / Firebase / repo inputs. Stops after emit - does not chain into /multi-agent:dev."
2
+ description: "Standalone feature-spec analysis. Platform-agnostic concept layer with repo-driven convention extraction (Phase 1c) and per-platform Pass B render. 23 main sections + 3 footer in Full mode; 7 sections in Lite mode (auto for small features). Collects Figma / Swagger / Confluence / Jira / Standards (Confluence + Wiki + local file) / Firebase / repo inputs. Stops after emit - does not chain into /multi-agent:dev. Use when a feature needs a written specification before any code, from Figma, Swagger, Confluence, Jira or repo inputs."
3
3
  description-tr: "Bağımsız özellik-spesifikasyonu analizi. Repo'dan konvansiyon çıkarımıyla (Faz 1c) platform-bağımsız kavram katmanı ve platform başına Pass B render. Full modda 23 ana + 3 dipnot bölümü; Lite modda 7 bölüm (küçük işlerde otomatik). Figma / Swagger / Confluence / Jira / Standartlar (Confluence + Wiki + yerel dosya) / Firebase / repo girdilerini toplar. Çıktıyı üretince durur - /multi-agent:dev'e zincirlenmez."
4
4
  argument-hint: "[\"<analysis-name>\"] [--lite | --full] [--no-cache] [--preview-conventions]"
5
5
  ---
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: "Resolve the Section 20 Risks and Open Questions of an analysis v3 document one row at a time. Proposes up to 3 source-labeled answer candidates per row (from evidence / from repo / AI reasoned), merges the chosen answer into the target body section, and updates the doc in place with a Section 23 changelog bump. Companion to /multi-agent:analysis - same Locked decisions apply (citation discipline, humanizer punctuation, no MCP, no auto-commit). Optional sibling propagation for per-platform file sets."
2
+ description: "Resolve the Section 20 Risks and Open Questions of an analysis v3 document one row at a time. Proposes up to 3 source-labeled answer candidates per row (from evidence / from repo / AI reasoned), merges the chosen answer into the target body section, and updates the doc in place with a Section 23 changelog bump. Companion to /multi-agent:analysis - same Locked decisions apply (citation discipline, humanizer punctuation, no MCP, no auto-commit). Optional sibling propagation for per-platform file sets. Use when an analysis document's open questions and risks need answering row by row before development starts."
3
3
  description-tr: "Analiz v3 dokümanının Bölüm 20 Riskler ve Açık Sorular satırlarını tek tek çözer. Satır başına en fazla 3 kaynak-etiketli cevap adayı önerir (kanıttan / repodan / AI çıkarımı), seçilen cevabı ilgili gövde bölümüne işler ve dokümanı Bölüm 23 changelog artışıyla yerinde günceller. /multi-agent:analysis'in eşlikçisi - aynı Kilitli kararlar geçerli (alıntı disiplini, humanizer noktalama, MCP yok, otomatik commit yok). Platform bazlı dosya setleri için isteğe bağlı kardeş yayılımı."
4
4
  argument-hint: "[path/to/analysis/<feature>-<platform>.md] [--autonomous]"
5
5
  ---
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: "Launch any task in autopilot mode: skips every confirmation, runs end-to-end autonomously."
2
+ description: "Launch any task in autopilot mode: skips every confirmation, runs end-to-end autonomously. Use when a task should run end to end with no confirmation prompts."
3
3
  description-tr: "Herhangi bir görevi autopilot modunda başlatır: tüm onayları atlar, uçtan uca otonom çalışır."
4
4
  argument-hint: '"task" - issue URL, Jira ID, free-text, or #id (for resume)'
5
5
  ---
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: "Thin wrapper that dispatches to xcode-build-orchestrator on iOS projects. Benchmarks current Xcode build, runs compilation / project / SPM analyzers, produces a recommend-first optimization plan, and re-benchmarks after the developer approves changes."
2
+ description: "Thin wrapper that dispatches to xcode-build-orchestrator on iOS projects. Benchmarks current Xcode build, runs compilation / project / SPM analyzers, produces a recommend-first optimization plan, and re-benchmarks after the developer approves changes. Use when an iOS build is slow and needs measuring before anything is changed."
3
3
  description-tr: "iOS projelerinde xcode-build-orchestrator'a delege eden ince sarmalayıcı. Mevcut Xcode build'ini ölçer, derleme / proje / SPM analizlerini koşar, önce-öneri yaklaşımlı bir optimizasyon planı üretir ve geliştirici onayından sonra yeniden ölçer."
4
4
  argument-hint: "(none - operates on current repo)"
5
5
  ---
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: "Create a standards-compliant Jira issue (Task / Bug / Story): asks the type, mines project conventions, drafts from a standard template with auto-sizing sections, full preview + explicit approval before create."
2
+ description: "Create a standards-compliant Jira issue (Task / Bug / Story): asks the type, mines project conventions, drafts from a standard template with auto-sizing sections, full preview + explicit approval before create. Use when a Jira Task, Bug or Story has to be written to the project's own conventions."
3
3
  description-tr: "Standartlara uygun Jira issue oluşturur (Task / Bug / Story): türü sorar, proje konvansiyonlarını çıkarır, otomatik boyutlanan bölümlerle standart şablondan taslak hazırlar, oluşturmadan önce tam önizleme + açık onay alır."
4
4
  argument-hint: "[\"<free-text description>\"] [figma-url] [swagger-url] - all optional, asked interactively when missing"
5
5
  ---