agentic-flow-kit 1.8.2 → 2.0.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 (936) hide show
  1. package/README.md +113 -148
  2. package/bin/flow-kit.mjs +5 -2
  3. package/locales/en/installer.json +25 -0
  4. package/locales/en/overrides/.agents/commands/deploy.md +52 -0
  5. package/locales/en/overrides/.agents/commands/maintain.md +76 -0
  6. package/locales/en/overrides/.agents/commands/new-task.md +89 -0
  7. package/locales/en/overrides/.agents/commands/pipeline-run.md +56 -0
  8. package/locales/en/overrides/.agents/commands/pr-review.md +30 -0
  9. package/locales/en/overrides/.agents/commands/review.md +93 -0
  10. package/locales/en/overrides/.agents/commands/stages.md +256 -0
  11. package/locales/en/overrides/.agents/notes/pr-review-cost-discipline.md +48 -0
  12. package/locales/en/overrides/.agents/notes/process-order-rule.md +21 -0
  13. package/locales/en/overrides/.agents/notes/runtime-env.local.example.md +21 -0
  14. package/locales/en/overrides/.agents/pipelines/_TEMPLATE.md +75 -0
  15. package/locales/en/overrides/.agents/pipelines/pipeline-closing.md +28 -0
  16. package/locales/en/overrides/.agents/roles/implementer.md +28 -0
  17. package/locales/en/overrides/.agents/roles/independent-reviewer.md +39 -0
  18. package/locales/en/overrides/.agents/roles/pr-adjudicator.md +27 -0
  19. package/locales/en/overrides/.agents/roles/pr-finder.md +51 -0
  20. package/locales/en/overrides/.agents/roles/pr-verifier.md +44 -0
  21. package/locales/en/overrides/.agents/roles/ui-verifier.md +22 -0
  22. package/locales/en/overrides/.agents/roles/wiki-compiler.md +47 -0
  23. package/locales/en/overrides/.agents/skills/arena/SKILL.md +50 -0
  24. package/locales/en/overrides/.agents/skills/autonomous-run/SKILL.md +45 -0
  25. package/locales/en/overrides/.agents/skills/blast-radius/SKILL.md +53 -0
  26. package/locales/en/overrides/.agents/skills/csharp-quality-gates/SKILL.md +109 -0
  27. package/locales/en/overrides/.agents/skills/dev-tour/SKILL.md +98 -0
  28. package/locales/en/overrides/.agents/skills/dream/SKILL.md +63 -0
  29. package/locales/en/overrides/.agents/skills/eval/SKILL.md +42 -0
  30. package/locales/en/overrides/.agents/skills/interrogate/SKILL.md +49 -0
  31. package/locales/en/overrides/.agents/skills/number-vetting/SKILL.md +35 -0
  32. package/locales/en/overrides/.agents/skills/page-refactor/SKILL.md +192 -0
  33. package/locales/en/overrides/.agents/skills/papercut-fix/SKILL.md +92 -0
  34. package/locales/en/overrides/.agents/skills/pause-safely/SKILL.md +31 -0
  35. package/locales/en/overrides/.agents/skills/perf/SKILL.md +42 -0
  36. package/locales/en/overrides/.agents/skills/review-method/SKILL.md +92 -0
  37. package/locales/en/overrides/.agents/skills/session-resume/SKILL.md +69 -0
  38. package/locales/en/overrides/.agents/skills/shipyard-workflow-closeout/SKILL.md +109 -0
  39. package/locales/en/overrides/.agents/skills/show-me-your-work/SKILL.md +57 -0
  40. package/locales/en/overrides/.agents/skills/tfs-pr/SKILL.md +95 -0
  41. package/locales/en/overrides/.agents/skills/verify-ui/SKILL.md +116 -0
  42. package/locales/en/overrides/.agents/skills/visual-parity/SKILL.md +35 -0
  43. package/locales/en/overrides/.agents/skills/why/SKILL.md +56 -0
  44. package/locales/en/overrides/.agents/skills/wiki/SKILL.md +53 -0
  45. package/locales/en/overrides/.claude/agents/implementer.md +9 -0
  46. package/locales/en/overrides/.claude/agents/independent-reviewer.md +10 -0
  47. package/locales/en/overrides/.claude/agents/pr-adjudicator.md +10 -0
  48. package/locales/en/overrides/.claude/agents/pr-finder.md +10 -0
  49. package/locales/en/overrides/.claude/agents/pr-verifier.md +10 -0
  50. package/locales/en/overrides/.claude/agents/ui-verifier.md +10 -0
  51. package/locales/en/overrides/.claude/agents/wiki-compiler.md +10 -0
  52. package/locales/en/overrides/.claude/commands/wf-deploy.md +8 -0
  53. package/locales/en/overrides/.claude/commands/wf-maintain.md +8 -0
  54. package/locales/en/overrides/.claude/commands/wf-new-task.md +8 -0
  55. package/locales/en/overrides/.claude/commands/wf-pipeline-run.md +8 -0
  56. package/locales/en/overrides/.claude/commands/wf-pr-review.md +8 -0
  57. package/locales/en/overrides/.claude/commands/wf-review.md +8 -0
  58. package/locales/en/overrides/.claude/commands/wf-stages.md +8 -0
  59. package/locales/en/overrides/.cline/agents/implementer.yml +13 -0
  60. package/locales/en/overrides/.cline/agents/independent-reviewer.yml +11 -0
  61. package/locales/en/overrides/.cline/agents/pr-adjudicator.yml +11 -0
  62. package/locales/en/overrides/.cline/agents/pr-finder.yml +11 -0
  63. package/locales/en/overrides/.cline/agents/pr-verifier.yml +11 -0
  64. package/locales/en/overrides/.cline/agents/ui-verifier.yml +8 -0
  65. package/locales/en/overrides/.cline/agents/wiki-compiler.yml +14 -0
  66. package/locales/en/overrides/.cline/workflows/wf-deploy.md +8 -0
  67. package/locales/en/overrides/.cline/workflows/wf-maintain.md +8 -0
  68. package/locales/en/overrides/.cline/workflows/wf-new-task.md +8 -0
  69. package/locales/en/overrides/.cline/workflows/wf-pipeline-run.md +8 -0
  70. package/locales/en/overrides/.cline/workflows/wf-pr-review.md +8 -0
  71. package/locales/en/overrides/.cline/workflows/wf-review.md +8 -0
  72. package/locales/en/overrides/.cline/workflows/wf-stages.md +8 -0
  73. package/locales/en/overrides/.codebuddy/CODEBUDDY.md +7 -0
  74. package/locales/en/overrides/.codebuddy/agents/implementer.md +9 -0
  75. package/locales/en/overrides/.codebuddy/agents/independent-reviewer.md +10 -0
  76. package/locales/en/overrides/.codebuddy/agents/pr-adjudicator.md +10 -0
  77. package/locales/en/overrides/.codebuddy/agents/pr-finder.md +10 -0
  78. package/locales/en/overrides/.codebuddy/agents/pr-verifier.md +10 -0
  79. package/locales/en/overrides/.codebuddy/agents/ui-verifier.md +11 -0
  80. package/locales/en/overrides/.codebuddy/agents/wiki-compiler.md +10 -0
  81. package/locales/en/overrides/.codebuddy/commands/wf-deploy.md +8 -0
  82. package/locales/en/overrides/.codebuddy/commands/wf-maintain.md +8 -0
  83. package/locales/en/overrides/.codebuddy/commands/wf-new-task.md +8 -0
  84. package/locales/en/overrides/.codebuddy/commands/wf-pipeline-run.md +8 -0
  85. package/locales/en/overrides/.codebuddy/commands/wf-pr-review.md +8 -0
  86. package/locales/en/overrides/.codebuddy/commands/wf-review.md +8 -0
  87. package/locales/en/overrides/.codebuddy/commands/wf-stages.md +8 -0
  88. package/locales/en/overrides/.codebuddy/rules/backend-scope.md +5 -0
  89. package/locales/en/overrides/.codebuddy/rules/frontend-scope.md +5 -0
  90. package/locales/en/overrides/.codebuddy/skills/tfs-pr/SKILL.md +6 -0
  91. package/locales/en/overrides/.commandcode/agents/implementer.md +10 -0
  92. package/locales/en/overrides/.commandcode/agents/independent-reviewer.md +9 -0
  93. package/locales/en/overrides/.commandcode/agents/pr-adjudicator.md +9 -0
  94. package/locales/en/overrides/.commandcode/agents/pr-finder.md +9 -0
  95. package/locales/en/overrides/.commandcode/agents/pr-verifier.md +9 -0
  96. package/locales/en/overrides/.commandcode/agents/ui-verifier.md +10 -0
  97. package/locales/en/overrides/.commandcode/agents/wiki-compiler.md +10 -0
  98. package/locales/en/overrides/.commandcode/commands/wf-deploy.md +7 -0
  99. package/locales/en/overrides/.commandcode/commands/wf-maintain.md +7 -0
  100. package/locales/en/overrides/.commandcode/commands/wf-new-task.md +7 -0
  101. package/locales/en/overrides/.commandcode/commands/wf-pipeline-run.md +7 -0
  102. package/locales/en/overrides/.commandcode/commands/wf-pr-review.md +7 -0
  103. package/locales/en/overrides/.commandcode/commands/wf-review.md +7 -0
  104. package/locales/en/overrides/.commandcode/commands/wf-stages.md +7 -0
  105. package/locales/en/overrides/.opencode/agents/implementer.md +51 -0
  106. package/locales/en/overrides/.opencode/agents/independent-reviewer.md +18 -0
  107. package/locales/en/overrides/.opencode/agents/pr-adjudicator.md +18 -0
  108. package/locales/en/overrides/.opencode/agents/pr-finder.md +18 -0
  109. package/locales/en/overrides/.opencode/agents/pr-verifier.md +18 -0
  110. package/locales/en/overrides/.opencode/agents/ui-verifier.md +45 -0
  111. package/locales/en/overrides/.opencode/agents/wiki-compiler.md +51 -0
  112. package/locales/en/overrides/.opencode/commands/wf-deploy.md +7 -0
  113. package/locales/en/overrides/.opencode/commands/wf-maintain.md +7 -0
  114. package/locales/en/overrides/.opencode/commands/wf-new-task.md +7 -0
  115. package/locales/en/overrides/.opencode/commands/wf-pipeline-run.md +7 -0
  116. package/locales/en/overrides/.opencode/commands/wf-pr-review.md +7 -0
  117. package/locales/en/overrides/.opencode/commands/wf-review.md +7 -0
  118. package/locales/en/overrides/.opencode/commands/wf-stages.md +7 -0
  119. package/locales/en/overrides/.pi/agents/implementer.md +11 -0
  120. package/locales/en/overrides/.pi/agents/independent-reviewer.md +12 -0
  121. package/locales/en/overrides/.pi/agents/pr-adjudicator.md +12 -0
  122. package/locales/en/overrides/.pi/agents/pr-finder.md +11 -0
  123. package/locales/en/overrides/.pi/agents/pr-verifier.md +11 -0
  124. package/locales/en/overrides/.pi/agents/ui-verifier.md +11 -0
  125. package/locales/en/overrides/.pi/agents/wiki-compiler.md +11 -0
  126. package/locales/en/overrides/.qoder/agents/implementer.md +9 -0
  127. package/locales/en/overrides/.qoder/agents/independent-reviewer.md +10 -0
  128. package/locales/en/overrides/.qoder/agents/pr-adjudicator.md +10 -0
  129. package/locales/en/overrides/.qoder/agents/pr-finder.md +10 -0
  130. package/locales/en/overrides/.qoder/agents/pr-verifier.md +10 -0
  131. package/locales/en/overrides/.qoder/agents/ui-verifier.md +10 -0
  132. package/locales/en/overrides/.qoder/agents/wiki-compiler.md +10 -0
  133. package/locales/en/overrides/.qoder/commands/wf-deploy.md +8 -0
  134. package/locales/en/overrides/.qoder/commands/wf-maintain.md +8 -0
  135. package/locales/en/overrides/.qoder/commands/wf-new-task.md +8 -0
  136. package/locales/en/overrides/.qoder/commands/wf-pipeline-run.md +8 -0
  137. package/locales/en/overrides/.qoder/commands/wf-pr-review.md +8 -0
  138. package/locales/en/overrides/.qoder/commands/wf-review.md +8 -0
  139. package/locales/en/overrides/.qoder/commands/wf-stages.md +8 -0
  140. package/locales/en/overrides/.qwen/agents/implementer.md +10 -0
  141. package/locales/en/overrides/.qwen/agents/independent-reviewer.md +10 -0
  142. package/locales/en/overrides/.qwen/agents/pr-adjudicator.md +10 -0
  143. package/locales/en/overrides/.qwen/agents/pr-finder.md +10 -0
  144. package/locales/en/overrides/.qwen/agents/pr-verifier.md +10 -0
  145. package/locales/en/overrides/.qwen/agents/ui-verifier.md +10 -0
  146. package/locales/en/overrides/.qwen/agents/wiki-compiler.md +13 -0
  147. package/locales/en/overrides/.qwen/commands/wf-deploy.md +7 -0
  148. package/locales/en/overrides/.qwen/commands/wf-maintain.md +7 -0
  149. package/locales/en/overrides/.qwen/commands/wf-new-task.md +7 -0
  150. package/locales/en/overrides/.qwen/commands/wf-pipeline-run.md +7 -0
  151. package/locales/en/overrides/.qwen/commands/wf-pr-review.md +7 -0
  152. package/locales/en/overrides/.qwen/commands/wf-review.md +7 -0
  153. package/locales/en/overrides/.qwen/commands/wf-stages.md +7 -0
  154. package/locales/en/overrides/.trae/agents/implementer.md +9 -0
  155. package/locales/en/overrides/.trae/agents/independent-reviewer.md +10 -0
  156. package/locales/en/overrides/.trae/agents/pr-adjudicator.md +10 -0
  157. package/locales/en/overrides/.trae/agents/pr-finder.md +10 -0
  158. package/locales/en/overrides/.trae/agents/pr-verifier.md +10 -0
  159. package/locales/en/overrides/.trae/agents/ui-verifier.md +10 -0
  160. package/locales/en/overrides/.trae/agents/wiki-compiler.md +10 -0
  161. package/locales/en/overrides/.trae/commands/wf-deploy.md +8 -0
  162. package/locales/en/overrides/.trae/commands/wf-maintain.md +8 -0
  163. package/locales/en/overrides/.trae/commands/wf-new-task.md +8 -0
  164. package/locales/en/overrides/.trae/commands/wf-pipeline-run.md +8 -0
  165. package/locales/en/overrides/.trae/commands/wf-pr-review.md +8 -0
  166. package/locales/en/overrides/.trae/commands/wf-review.md +8 -0
  167. package/locales/en/overrides/.trae/commands/wf-stages.md +8 -0
  168. package/locales/en/overrides/.trae/rules/backend-scope.md +5 -0
  169. package/locales/en/overrides/.trae/rules/frontend-scope.md +5 -0
  170. package/locales/en/overrides/.zcode/agents/implementer.md +8 -0
  171. package/locales/en/overrides/.zcode/agents/independent-reviewer.md +8 -0
  172. package/locales/en/overrides/.zcode/agents/ui-verifier.md +8 -0
  173. package/locales/en/overrides/.zcode/agents/wiki-compiler.md +8 -0
  174. package/locales/en/overrides/AGENTS.md +52 -0
  175. package/locales/en/overrides/CLAUDE.md +20 -0
  176. package/locales/en/overrides/wiki/INDEX.md +33 -0
  177. package/locales/en/overrides/wiki/drafts-archive/README.md +6 -0
  178. package/locales/en/overrides/wiki//346/225/260/346/215/256/347/273/264/346/212/244/README.md +22 -0
  179. package/locales/en/overrides/wiki//347/237/245/350/257/206/346/262/211/346/267/200/346/200/273/350/247/210.html +230 -0
  180. package/locales/en/overrides/workflow/INDEX.md +13 -0
  181. package/locales/en/overrides/workflow/README.md +67 -0
  182. package/locales/en/overrides/workflow/archive/README.md +3 -0
  183. package/locales/en/overrides/workflow/delegations.md +4 -0
  184. package/locales/en/overrides/workflow/effective-policy.md +4 -0
  185. package/locales/en/overrides/workflow/gate-cost.md +4 -0
  186. package/locales/en/overrides/workflow/incidents/_TEMPLATE.md +49 -0
  187. package/locales/en/overrides/workflow/intents/_TEMPLATE.md +43 -0
  188. package/locales/en/overrides/workflow/metrics.md +4 -0
  189. package/locales/en/overrides/workflow/papercuts.md +3 -0
  190. package/locales/en/overrides/workflow/plans/_TEMPLATE.md +47 -0
  191. package/locales/en/overrides/workflow/regression-checklist.md +3 -0
  192. package/locales/en/overrides/workflow/specs/_TEMPLATE.md +86 -0
  193. package/locales/en/overrides/workflow/verify-evidence.md +4 -0
  194. package/locales/zh-CN/installer.json +25 -0
  195. package/package.json +23 -36
  196. package/schemas/install-manifest.schema.json +24 -0
  197. package/schemas/project-profile.schema.json +28 -0
  198. package/src/cli/args.mjs +41 -0
  199. package/src/cli/main.mjs +72 -0
  200. package/src/commands/add-host.mjs +29 -0
  201. package/src/commands/doctor.mjs +80 -0
  202. package/src/commands/install.mjs +149 -0
  203. package/src/commands/upgrade.mjs +30 -0
  204. package/src/git/config.mjs +61 -0
  205. package/src/hosts/registry.mjs +26 -0
  206. package/src/i18n.mjs +32 -0
  207. package/src/install/apply.mjs +124 -0
  208. package/src/install/manifest.mjs +40 -0
  209. package/src/install/plan.mjs +83 -0
  210. package/src/render/tokens.mjs +58 -0
  211. package/templates/engine/.agents/board/dev-tour.html +1940 -0
  212. package/templates/engine/.agents/board/index.html +835 -0
  213. package/templates/engine/.agents/commands/deploy.md +52 -0
  214. package/templates/engine/.agents/commands/maintain.md +76 -0
  215. package/templates/engine/.agents/commands/new-task.md +89 -0
  216. package/templates/engine/.agents/commands/pipeline-run.md +56 -0
  217. package/templates/engine/.agents/commands/pr-review.md +30 -0
  218. package/templates/engine/.agents/commands/review.md +93 -0
  219. package/templates/engine/.agents/commands/stages.md +256 -0
  220. package/templates/engine/.agents/config/commit-msg-rules.json +7 -0
  221. package/templates/engine/.agents/config/engine.json +11 -0
  222. package/templates/engine/.agents/config/gate-budgets.json +5 -0
  223. package/templates/engine/.agents/config/mechanism-registry.md +62 -0
  224. package/templates/engine/.agents/config/model-roles.json +26 -0
  225. package/templates/engine/.agents/config/model-roles.local.example.json +7 -0
  226. package/templates/engine/.agents/config/pr-review.json +67 -0
  227. package/templates/engine/.agents/config/principles.md +32 -0
  228. package/templates/engine/.agents/config/workflow-enums.txt +25 -0
  229. package/templates/engine/.agents/hooks/check-architecture.mjs +168 -0
  230. package/templates/engine/.agents/hooks/check-audit-fields.mjs +56 -0
  231. package/templates/engine/.agents/hooks/check-commit-plan-ref.mjs +84 -0
  232. package/templates/engine/.agents/hooks/check-confirm-order.mjs +281 -0
  233. package/templates/engine/.agents/hooks/check-delete-guard.mjs +63 -0
  234. package/templates/engine/.agents/hooks/check-notify-guard.mjs +55 -0
  235. package/templates/engine/.agents/hooks/commit-check.cjs +208 -0
  236. package/templates/engine/.agents/hooks/gates.json +33 -0
  237. package/templates/engine/.agents/hooks/local-pre-commit.mjs +27 -0
  238. package/templates/engine/.agents/hooks/pre-shell-check.cjs +361 -0
  239. package/templates/engine/.agents/hooks/pre-write-check.cjs +220 -0
  240. package/templates/engine/.agents/notes/gate-diet.md +75 -0
  241. package/templates/engine/.agents/notes/pr-review-cost-discipline.md +48 -0
  242. package/templates/engine/.agents/notes/process-order-rule.md +21 -0
  243. package/templates/engine/.agents/notes/runtime-env.local.example.md +21 -0
  244. package/templates/engine/.agents/pipelines/_TEMPLATE.md +75 -0
  245. package/templates/engine/.agents/pipelines/pipeline-closing.md +28 -0
  246. package/templates/engine/.agents/pipelines//347/244/272/344/276/213-/345/271/266/350/241/214/345/256/236/347/216/260/350/257/204/345/256/241.md +16 -0
  247. package/templates/engine/.agents/roles/implementer.md +28 -0
  248. package/templates/engine/.agents/roles/independent-reviewer.md +39 -0
  249. package/templates/engine/.agents/roles/pr-adjudicator.md +27 -0
  250. package/templates/engine/.agents/roles/pr-finder.md +51 -0
  251. package/templates/engine/.agents/roles/pr-verifier.md +44 -0
  252. package/templates/engine/.agents/roles/ui-verifier.md +22 -0
  253. package/templates/engine/.agents/roles/wiki-compiler.md +47 -0
  254. package/templates/engine/.agents/scripts/agg-delegations.mjs +439 -0
  255. package/templates/engine/.agents/scripts/agg-judgments.mjs +301 -0
  256. package/templates/engine/.agents/scripts/agg-kb-usage.mjs +196 -0
  257. package/templates/engine/.agents/scripts/append-compensation.mjs +109 -0
  258. package/templates/engine/.agents/scripts/archive-sweep.mjs +229 -0
  259. package/templates/engine/.agents/scripts/auto-tour.mjs +77 -0
  260. package/templates/engine/.agents/scripts/board-port.mjs +17 -0
  261. package/templates/engine/.agents/scripts/check-doc-body-drift.mjs +102 -0
  262. package/templates/engine/.agents/scripts/check-engine-artifacts.mjs +54 -0
  263. package/templates/engine/.agents/scripts/check-hook-wiring.mjs +75 -0
  264. package/templates/engine/.agents/scripts/check-lane-surface.mjs +393 -0
  265. package/templates/engine/.agents/scripts/check-ledger-doc-presence.mjs +71 -0
  266. package/templates/engine/.agents/scripts/check-ledger-invariant.mjs +873 -0
  267. package/templates/engine/.agents/scripts/check-local-gate-config.mjs +95 -0
  268. package/templates/engine/.agents/scripts/check-local-gates.mjs +248 -0
  269. package/templates/engine/.agents/scripts/check-loop-kit.mjs +550 -0
  270. package/templates/engine/.agents/scripts/check-loop-rev-semantics.mjs +59 -0
  271. package/templates/engine/.agents/scripts/check-loop-sections/s01-pairing.mjs +116 -0
  272. package/templates/engine/.agents/scripts/check-loop-sections/s03x-regr-evidence.mjs +38 -0
  273. package/templates/engine/.agents/scripts/check-loop-sections/s08-acceptance.mjs +130 -0
  274. package/templates/engine/.agents/scripts/check-loop-sections/s15-fingerprint.mjs +152 -0
  275. package/templates/engine/.agents/scripts/check-loop-sections/s23-convergence-audit.mjs +182 -0
  276. package/templates/engine/.agents/scripts/check-loop-sections/s29-regr-enforcer.mjs +69 -0
  277. package/templates/engine/.agents/scripts/check-loop.mjs +131 -0
  278. package/templates/engine/.agents/scripts/check-regression-consistency.mjs +252 -0
  279. package/templates/engine/.agents/scripts/check-schema-residue.mjs +144 -0
  280. package/templates/engine/.agents/scripts/check-scope-range.mjs +156 -0
  281. package/templates/engine/.agents/scripts/check-scope.mjs +121 -0
  282. package/templates/engine/.agents/scripts/check-scripts-syntax.mjs +138 -0
  283. package/templates/engine/.agents/scripts/check-secrets-lite.mjs +239 -0
  284. package/templates/engine/.agents/scripts/check-secrets.mjs +104 -0
  285. package/templates/engine/.agents/scripts/check-test-impact-map.mjs +107 -0
  286. package/templates/engine/.agents/scripts/ci-assert-frontend-deps.mjs +42 -0
  287. package/templates/engine/.agents/scripts/ci-commit-hygiene.mjs +86 -0
  288. package/templates/engine/.agents/scripts/ci-install-gitleaks.mjs +75 -0
  289. package/templates/engine/.agents/scripts/ci-push-before.mjs +49 -0
  290. package/templates/engine/.agents/scripts/closeout.mjs +127 -0
  291. package/templates/engine/.agents/scripts/compact-ledgers.mjs +70 -0
  292. package/templates/engine/.agents/scripts/confirm-doc.mjs +737 -0
  293. package/templates/engine/.agents/scripts/delegation-presence.mjs +38 -0
  294. package/templates/engine/.agents/scripts/dev-tour-model.mjs +1398 -0
  295. package/templates/engine/.agents/scripts/dream-run.mjs +283 -0
  296. package/templates/engine/.agents/scripts/ensure-board.mjs +187 -0
  297. package/templates/engine/.agents/scripts/failure-attribution.mjs +11 -0
  298. package/templates/engine/.agents/scripts/fill-intent.mjs +60 -0
  299. package/templates/engine/.agents/scripts/fill-plan.mjs +105 -0
  300. package/templates/engine/.agents/scripts/fill-spec.mjs +72 -0
  301. package/templates/engine/.agents/scripts/gen-dev-tour.mjs +191 -0
  302. package/templates/engine/.agents/scripts/gen-effective-policy.mjs +113 -0
  303. package/templates/engine/.agents/scripts/gen-engine-map.mjs +292 -0
  304. package/templates/engine/.agents/scripts/gen-narrative-claims.mjs +275 -0
  305. package/templates/engine/.agents/scripts/gen-verify-evidence.mjs +115 -0
  306. package/templates/engine/.agents/scripts/gen-wiki-board.mjs +221 -0
  307. package/templates/engine/.agents/scripts/gen-workflow-index.mjs +201 -0
  308. package/templates/engine/.agents/scripts/gen-workflow-metrics.mjs +692 -0
  309. package/templates/engine/.agents/scripts/git-merge-jsonl.mjs +62 -0
  310. package/templates/engine/.agents/scripts/judgment-ledger.mjs +68 -0
  311. package/templates/engine/.agents/scripts/kb-cache-evict.mjs +50 -0
  312. package/templates/engine/.agents/scripts/kb-search.mjs +423 -0
  313. package/templates/engine/.agents/scripts/lane-surface-audit.mjs +145 -0
  314. package/templates/engine/.agents/scripts/ledger-loader.mjs +77 -0
  315. package/templates/engine/.agents/scripts/ledger-shards.mjs +346 -0
  316. package/templates/engine/.agents/scripts/metrics-core.mjs +131 -0
  317. package/templates/engine/.agents/scripts/pipeline-run.mjs +964 -0
  318. package/templates/engine/.agents/scripts/policy.mjs +250 -0
  319. package/templates/engine/.agents/scripts/pr-create.mjs +54 -0
  320. package/templates/engine/.agents/scripts/pr-review.mjs +1551 -0
  321. package/templates/engine/.agents/scripts/quote-grounding.mjs +233 -0
  322. package/templates/engine/.agents/scripts/regen-ledgers.mjs +59 -0
  323. package/templates/engine/.agents/scripts/rewrite-file.mjs +135 -0
  324. package/templates/engine/.agents/scripts/rule-budget.mjs +246 -0
  325. package/templates/engine/.agents/scripts/stage-gates.mjs +812 -0
  326. package/templates/engine/.agents/scripts/test-impact-lib.mjs +451 -0
  327. package/templates/engine/.agents/scripts/test-impact.mjs +105 -0
  328. package/templates/engine/.agents/scripts/trust-mode.mjs +130 -0
  329. package/templates/engine/.agents/scripts/verify-scope.mjs +163 -0
  330. package/templates/engine/.agents/scripts/verify-wiki-consistency.mjs +264 -0
  331. package/templates/engine/.agents/scripts/verify.mjs +847 -0
  332. package/templates/engine/.agents/scripts/warn-format.mjs +57 -0
  333. package/templates/engine/.agents/scripts/wf-journal.mjs +230 -0
  334. package/templates/engine/.agents/scripts/workflow-board-server.mjs +696 -0
  335. package/templates/engine/.agents/scripts/workflow-enums.mjs +70 -0
  336. package/templates/engine/.agents/scripts/workflows-check.mjs +260 -0
  337. package/templates/engine/.agents/settings.json +33 -0
  338. package/templates/engine/.agents/skills/arena/SKILL.md +50 -0
  339. package/templates/engine/.agents/skills/autonomous-run/SKILL.md +45 -0
  340. package/templates/engine/.agents/skills/blast-radius/SKILL.md +53 -0
  341. package/templates/engine/.agents/skills/csharp-quality-gates/SKILL.md +109 -0
  342. package/templates/engine/.agents/skills/csharp-quality-gates/scripts/quality-gates.mjs +430 -0
  343. package/templates/engine/.agents/skills/dev-tour/SKILL.md +98 -0
  344. package/templates/engine/.agents/skills/dream/SKILL.md +63 -0
  345. package/templates/engine/.agents/skills/eval/SKILL.md +42 -0
  346. package/templates/engine/.agents/skills/eval/scripts/eval-score.mjs +59 -0
  347. package/templates/engine/.agents/skills/interrogate/SKILL.md +49 -0
  348. package/templates/engine/.agents/skills/interrogate/scripts/interrogate-plan.mjs +72 -0
  349. package/templates/engine/.agents/skills/number-vetting/SKILL.md +35 -0
  350. package/templates/engine/.agents/skills/page-refactor/SKILL.md +192 -0
  351. package/templates/engine/.agents/skills/page-refactor/references/templates.md +989 -0
  352. package/templates/engine/.agents/skills/papercut-fix/SKILL.md +92 -0
  353. package/templates/engine/.agents/skills/papercut-fix/references/response-template.md +81 -0
  354. package/templates/engine/.agents/skills/pause-safely/SKILL.md +31 -0
  355. package/templates/engine/.agents/skills/perf/SKILL.md +42 -0
  356. package/templates/engine/.agents/skills/review-method/SKILL.md +92 -0
  357. package/templates/engine/.agents/skills/review-method/golden-set.md +61 -0
  358. package/templates/engine/.agents/skills/session-resume/SKILL.md +69 -0
  359. package/templates/engine/.agents/skills/session-resume/scripts/worktree-audit.mjs +110 -0
  360. package/templates/engine/.agents/skills/shipyard-workflow-closeout/SKILL.md +109 -0
  361. package/templates/engine/.agents/skills/show-me-your-work/SKILL.md +57 -0
  362. package/templates/engine/.agents/skills/show-me-your-work/references/decision-log-template.tsv +1 -0
  363. package/templates/engine/.agents/skills/show-me-your-work/scripts/decision-log.mjs +24 -0
  364. package/templates/engine/.agents/skills/tfs-pr/SKILL.md +95 -0
  365. package/templates/engine/.agents/skills/tfs-pr/scripts/tfs-pr.mjs +947 -0
  366. package/templates/engine/.agents/skills/verify-ui/SKILL.md +116 -0
  367. package/templates/engine/.agents/skills/verify-ui/features/.gitkeep +0 -0
  368. package/templates/engine/.agents/skills/verify-ui/scripts/gen-verify-feature.mjs +114 -0
  369. package/templates/engine/.agents/skills/visual-parity/SKILL.md +35 -0
  370. package/templates/engine/.agents/skills/why/SKILL.md +56 -0
  371. package/templates/engine/.agents/skills/why/scripts/why-evidence.mjs +74 -0
  372. package/templates/engine/.agents/skills/wiki/SKILL.md +53 -0
  373. package/templates/engine/.agents/tests/auto-tour.test.mjs +82 -0
  374. package/templates/engine/.agents/tests/dev-tour-model.test.mjs +452 -0
  375. package/templates/engine/.agents/tests/fill-plan-lite.test.mjs +46 -0
  376. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-bare-mid-path.md +14 -0
  377. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-bare-mid-path.model.json +179 -0
  378. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-fake-path-guard.md +21 -0
  379. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-fake-path-guard.model.json +194 -0
  380. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-h3-batches.md +20 -0
  381. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-h3-batches.model.json +207 -0
  382. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-issues.md +24 -0
  383. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-issues.model.json +225 -0
  384. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-l1-single-file.md +15 -0
  385. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-l1-single-file.model.json +160 -0
  386. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-layer-word-unique.md +29 -0
  387. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-layer-word-unique.model.json +266 -0
  388. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-layers-fallback.md +17 -0
  389. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-layers-fallback.model.json +207 -0
  390. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-numbered-steps.md +39 -0
  391. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-numbered-steps.model.json +359 -0
  392. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-path-guess.md +16 -0
  393. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-path-guess.model.json +131 -0
  394. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-table-rows.md +29 -0
  395. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-table-rows.model.json +190 -0
  396. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-task-checkboxes.md +39 -0
  397. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-task-checkboxes.model.json +362 -0
  398. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-union-label.md +24 -0
  399. package/templates/engine/.agents/tests/fixtures/dev-tour/plan-union-label.model.json +224 -0
  400. package/templates/engine/.agents/tests/tools/gen-synthetic-plan.mjs +108 -0
  401. package/templates/git/.gitattributes +22 -0
  402. package/templates/git/.githooks/commit-msg +72 -0
  403. package/templates/git/.githooks/post-commit +62 -0
  404. package/templates/git/.githooks/pre-commit +197 -0
  405. package/templates/git/.githooks/pre-merge-commit +28 -0
  406. package/templates/git/.githooks/pre-push +201 -0
  407. package/templates/git/.gitignore.engine +11 -0
  408. package/templates/hosts/claude/CLAUDE.md +55 -0
  409. package/templates/hosts/claude/agents/implementer.md +7 -0
  410. package/templates/hosts/claude/agents/independent-reviewer.md +8 -0
  411. package/templates/hosts/claude/agents/pr-adjudicator.md +8 -0
  412. package/templates/hosts/claude/agents/pr-finder.md +8 -0
  413. package/templates/hosts/claude/agents/pr-verifier.md +8 -0
  414. package/templates/hosts/claude/agents/ui-verifier.md +8 -0
  415. package/templates/hosts/claude/agents/wiki-compiler.md +8 -0
  416. package/templates/hosts/claude/commands/wf-deploy.md +10 -0
  417. package/templates/hosts/claude/commands/wf-maintain.md +10 -0
  418. package/templates/hosts/claude/commands/wf-new-task.md +10 -0
  419. package/templates/hosts/claude/commands/wf-pipeline-run.md +10 -0
  420. package/templates/hosts/claude/commands/wf-pr-review.md +10 -0
  421. package/templates/hosts/claude/commands/wf-review.md +10 -0
  422. package/templates/hosts/claude/commands/wf-stages.md +10 -0
  423. package/templates/hosts/claude/settings.json +57 -0
  424. package/templates/hosts/cline/agents/implementer.yml +15 -0
  425. package/templates/hosts/cline/agents/independent-reviewer.yml +20 -0
  426. package/templates/hosts/cline/agents/pr-adjudicator.yml +18 -0
  427. package/templates/hosts/cline/agents/pr-finder.yml +19 -0
  428. package/templates/hosts/cline/agents/pr-verifier.yml +18 -0
  429. package/templates/hosts/cline/agents/ui-verifier.yml +17 -0
  430. package/templates/hosts/cline/agents/wiki-compiler.yml +20 -0
  431. package/templates/hosts/cline/hooks/PreToolUse.cjs +260 -0
  432. package/templates/hosts/cline/workflows/wf-deploy.md +8 -0
  433. package/templates/hosts/cline/workflows/wf-maintain.md +8 -0
  434. package/templates/hosts/cline/workflows/wf-new-task.md +8 -0
  435. package/templates/hosts/cline/workflows/wf-pipeline-run.md +8 -0
  436. package/templates/hosts/cline/workflows/wf-pr-review.md +8 -0
  437. package/templates/hosts/cline/workflows/wf-review.md +8 -0
  438. package/templates/hosts/cline/workflows/wf-stages.md +8 -0
  439. package/templates/hosts/codebuddy/CODEBUDDY.md +7 -0
  440. package/templates/hosts/codebuddy/agents/implementer.md +9 -0
  441. package/templates/hosts/codebuddy/agents/independent-reviewer.md +10 -0
  442. package/templates/hosts/codebuddy/agents/pr-adjudicator.md +10 -0
  443. package/templates/hosts/codebuddy/agents/pr-finder.md +10 -0
  444. package/templates/hosts/codebuddy/agents/pr-verifier.md +10 -0
  445. package/templates/hosts/codebuddy/agents/ui-verifier.md +11 -0
  446. package/templates/hosts/codebuddy/agents/wiki-compiler.md +10 -0
  447. package/templates/hosts/codebuddy/commands/wf-deploy.md +10 -0
  448. package/templates/hosts/codebuddy/commands/wf-maintain.md +10 -0
  449. package/templates/hosts/codebuddy/commands/wf-new-task.md +10 -0
  450. package/templates/hosts/codebuddy/commands/wf-pipeline-run.md +10 -0
  451. package/templates/hosts/codebuddy/commands/wf-pr-review.md +10 -0
  452. package/templates/hosts/codebuddy/commands/wf-review.md +10 -0
  453. package/templates/hosts/codebuddy/commands/wf-stages.md +10 -0
  454. package/templates/hosts/codebuddy/rules/backend-scope.md +5 -0
  455. package/templates/hosts/codebuddy/rules/frontend-scope.md +5 -0
  456. package/templates/hosts/codebuddy/settings.json +31 -0
  457. package/templates/hosts/codebuddy/skills/tfs-pr/SKILL.md +6 -0
  458. package/templates/hosts/commandcode/agents/implementer.md +10 -0
  459. package/templates/hosts/commandcode/agents/independent-reviewer.md +9 -0
  460. package/templates/hosts/commandcode/agents/pr-adjudicator.md +9 -0
  461. package/templates/hosts/commandcode/agents/pr-finder.md +9 -0
  462. package/templates/hosts/commandcode/agents/pr-verifier.md +9 -0
  463. package/templates/hosts/commandcode/agents/ui-verifier.md +11 -0
  464. package/templates/hosts/commandcode/agents/wiki-compiler.md +10 -0
  465. package/templates/hosts/commandcode/commands/wf-deploy.md +9 -0
  466. package/templates/hosts/commandcode/commands/wf-maintain.md +9 -0
  467. package/templates/hosts/commandcode/commands/wf-new-task.md +9 -0
  468. package/templates/hosts/commandcode/commands/wf-pipeline-run.md +9 -0
  469. package/templates/hosts/commandcode/commands/wf-pr-review.md +9 -0
  470. package/templates/hosts/commandcode/commands/wf-review.md +9 -0
  471. package/templates/hosts/commandcode/commands/wf-stages.md +9 -0
  472. package/templates/hosts/commandcode/settings.json +59 -0
  473. package/templates/hosts/opencode/agents/implementer.md +51 -0
  474. package/templates/hosts/opencode/agents/independent-reviewer.md +18 -0
  475. package/templates/hosts/opencode/agents/pr-adjudicator.md +18 -0
  476. package/templates/hosts/opencode/agents/pr-finder.md +18 -0
  477. package/templates/hosts/opencode/agents/pr-verifier.md +18 -0
  478. package/templates/hosts/opencode/agents/ui-verifier.md +45 -0
  479. package/templates/hosts/opencode/agents/wiki-compiler.md +51 -0
  480. package/templates/hosts/opencode/commands/wf-deploy.md +7 -0
  481. package/templates/hosts/opencode/commands/wf-maintain.md +7 -0
  482. package/templates/hosts/opencode/commands/wf-new-task.md +7 -0
  483. package/templates/hosts/opencode/commands/wf-pipeline-run.md +7 -0
  484. package/templates/hosts/opencode/commands/wf-pr-review.md +7 -0
  485. package/templates/hosts/opencode/commands/wf-review.md +7 -0
  486. package/templates/hosts/opencode/commands/wf-stages.md +7 -0
  487. package/templates/hosts/pi/agents/implementer.md +10 -0
  488. package/templates/hosts/pi/agents/independent-reviewer.md +11 -0
  489. package/templates/hosts/pi/agents/pr-adjudicator.md +11 -0
  490. package/templates/hosts/pi/agents/pr-finder.md +10 -0
  491. package/templates/hosts/pi/agents/pr-verifier.md +10 -0
  492. package/templates/hosts/pi/agents/ui-verifier.md +10 -0
  493. package/templates/hosts/pi/agents/wiki-compiler.md +10 -0
  494. package/templates/hosts/pi/extensions/lib/gates-core.cjs +196 -0
  495. package/templates/hosts/pi/extensions/shipyard-gates.ts +95 -0
  496. package/templates/hosts/pi/settings.json +5 -0
  497. package/templates/hosts/qoder/agents/implementer.md +9 -0
  498. package/templates/hosts/qoder/agents/independent-reviewer.md +10 -0
  499. package/templates/hosts/qoder/agents/pr-adjudicator.md +10 -0
  500. package/templates/hosts/qoder/agents/pr-finder.md +10 -0
  501. package/templates/hosts/qoder/agents/pr-verifier.md +10 -0
  502. package/templates/hosts/qoder/agents/ui-verifier.md +10 -0
  503. package/templates/hosts/qoder/agents/wiki-compiler.md +10 -0
  504. package/templates/hosts/qoder/commands/wf-deploy.md +8 -0
  505. package/templates/hosts/qoder/commands/wf-maintain.md +8 -0
  506. package/templates/hosts/qoder/commands/wf-new-task.md +8 -0
  507. package/templates/hosts/qoder/commands/wf-pipeline-run.md +8 -0
  508. package/templates/hosts/qoder/commands/wf-pr-review.md +8 -0
  509. package/templates/hosts/qoder/commands/wf-review.md +8 -0
  510. package/templates/hosts/qoder/commands/wf-stages.md +8 -0
  511. package/templates/hosts/qoder/settings.json +63 -0
  512. package/templates/hosts/qwen/agents/implementer.md +8 -0
  513. package/templates/hosts/qwen/agents/independent-reviewer.md +8 -0
  514. package/templates/hosts/qwen/agents/pr-adjudicator.md +8 -0
  515. package/templates/hosts/qwen/agents/pr-finder.md +8 -0
  516. package/templates/hosts/qwen/agents/pr-verifier.md +8 -0
  517. package/templates/hosts/qwen/agents/ui-verifier.md +8 -0
  518. package/templates/hosts/qwen/agents/wiki-compiler.md +11 -0
  519. package/templates/hosts/qwen/commands/wf-deploy.md +9 -0
  520. package/templates/hosts/qwen/commands/wf-maintain.md +9 -0
  521. package/templates/hosts/qwen/commands/wf-new-task.md +9 -0
  522. package/templates/hosts/qwen/commands/wf-pipeline-run.md +9 -0
  523. package/templates/hosts/qwen/commands/wf-pr-review.md +9 -0
  524. package/templates/hosts/qwen/commands/wf-review.md +9 -0
  525. package/templates/hosts/qwen/commands/wf-stages.md +9 -0
  526. package/templates/hosts/qwen/settings.json +59 -0
  527. package/templates/hosts/trae/agents/implementer.md +9 -0
  528. package/templates/hosts/trae/agents/independent-reviewer.md +10 -0
  529. package/templates/hosts/trae/agents/pr-adjudicator.md +10 -0
  530. package/templates/hosts/trae/agents/pr-finder.md +10 -0
  531. package/templates/hosts/trae/agents/pr-verifier.md +10 -0
  532. package/templates/hosts/trae/agents/ui-verifier.md +10 -0
  533. package/templates/hosts/trae/agents/wiki-compiler.md +10 -0
  534. package/templates/hosts/trae/commands/wf-deploy.md +8 -0
  535. package/templates/hosts/trae/commands/wf-maintain.md +8 -0
  536. package/templates/hosts/trae/commands/wf-new-task.md +8 -0
  537. package/templates/hosts/trae/commands/wf-pipeline-run.md +8 -0
  538. package/templates/hosts/trae/commands/wf-pr-review.md +8 -0
  539. package/templates/hosts/trae/commands/wf-review.md +8 -0
  540. package/templates/hosts/trae/commands/wf-stages.md +8 -0
  541. package/templates/hosts/trae/hooks.json +17 -0
  542. package/templates/hosts/trae/rules/backend-scope.md +5 -0
  543. package/templates/hosts/trae/rules/frontend-scope.md +5 -0
  544. package/templates/hosts/zcode/agents/implementer.md +8 -0
  545. package/templates/hosts/zcode/agents/independent-reviewer.md +8 -0
  546. package/templates/hosts/zcode/agents/ui-verifier.md +8 -0
  547. package/templates/hosts/zcode/agents/wiki-compiler.md +8 -0
  548. package/templates/hosts/zcode/config.json +31 -0
  549. package/templates/hosts/zcode/workflows/code-review.dwf.ts +428 -0
  550. package/templates/hosts/zcode/workflows/fullchain-flow-test.dwf.ts +898 -0
  551. package/templates/profiles/dotnet/.agents/config/lane-surfaces.txt +33 -0
  552. package/templates/profiles/dotnet/.agents/config/rule-budgets.txt +84 -0
  553. package/templates/profiles/dotnet/.agents/config/test-impact-map.json +590 -0
  554. package/templates/profiles/dotnet/.agents/config/workflow-modules.txt +18 -0
  555. package/templates/profiles/dotnet/.agents/hooks/commit-check.config.json +18 -0
  556. package/templates/profiles/dotnet/.agents/hooks/delete-guard-allowlist.txt +28 -0
  557. package/templates/profiles/dotnet/.agents/notes/runtime-env.md +178 -0
  558. package/templates/profiles/dotnet/AGENTS.md +52 -0
  559. package/templates/profiles/empty/.agents/config/lane-surfaces.txt +12 -0
  560. package/templates/profiles/empty/.agents/config/rule-budgets.txt +3 -0
  561. package/templates/profiles/empty/.agents/config/test-impact-map.json +8 -0
  562. package/templates/profiles/empty/.agents/config/workflow-modules.txt +2 -0
  563. package/templates/profiles/empty/.agents/hooks/commit-check.config.json +5 -0
  564. package/templates/profiles/empty/.agents/hooks/delete-guard-allowlist.txt +2 -0
  565. package/templates/profiles/empty/.agents/notes/runtime-env.md +44 -0
  566. package/templates/profiles/empty/AGENTS.md +52 -0
  567. package/templates/profiles/node/.agents/config/lane-surfaces.txt +12 -0
  568. package/templates/profiles/node/.agents/config/rule-budgets.txt +3 -0
  569. package/templates/profiles/node/.agents/config/test-impact-map.json +8 -0
  570. package/templates/profiles/node/.agents/config/workflow-modules.txt +2 -0
  571. package/templates/profiles/node/.agents/hooks/commit-check.config.json +5 -0
  572. package/templates/profiles/node/.agents/hooks/delete-guard-allowlist.txt +2 -0
  573. package/templates/profiles/node/.agents/notes/runtime-env.md +44 -0
  574. package/templates/profiles/node/AGENTS.md +52 -0
  575. package/templates/scaffold/wiki/INDEX.md +33 -0
  576. package/templates/scaffold/wiki/drafts-archive/README.md +7 -0
  577. package/templates/scaffold/wiki//344/272/247/345/223/201/351/234/200/346/261/202/.gitkeep +0 -0
  578. package/templates/scaffold/wiki//345/274/200/345/217/221/346/226/271/346/241/210/.gitkeep +0 -0
  579. package/templates/scaffold/wiki//346/225/260/346/215/256/347/273/264/346/212/244/README.md +22 -0
  580. package/templates/scaffold/wiki//346/265/213/350/257/225/346/212/245/345/221/212/.gitkeep +0 -0
  581. package/templates/scaffold/wiki//347/224/250/346/210/267/345/212/237/350/203/275/.gitkeep +0 -0
  582. package/templates/scaffold/wiki//347/237/245/350/257/206/346/262/211/346/267/200/346/200/273/350/247/210.html +230 -0
  583. package/templates/scaffold/wiki//351/241/271/347/233/256/350/247/204/350/214/203/.gitkeep +0 -0
  584. package/templates/scaffold/workflow/INDEX.md +13 -0
  585. package/templates/scaffold/workflow/README.md +67 -0
  586. package/templates/scaffold/workflow/archive/README.md +3 -0
  587. package/templates/scaffold/workflow/delegations.d/.gitkeep +0 -0
  588. package/templates/scaffold/workflow/delegations.md +4 -0
  589. package/templates/scaffold/workflow/effective-policy.md +4 -0
  590. package/templates/scaffold/workflow/evidence/.gitkeep +0 -0
  591. package/templates/scaffold/workflow/gate-cost.md +4 -0
  592. package/templates/scaffold/workflow/gate-metrics.d/.gitkeep +0 -0
  593. package/templates/scaffold/workflow/incidents/_TEMPLATE.md +49 -0
  594. package/templates/scaffold/workflow/intents/_TEMPLATE.md +43 -0
  595. package/templates/scaffold/workflow/metrics.md +4 -0
  596. package/templates/scaffold/workflow/papercuts.d/.gitkeep +0 -0
  597. package/templates/scaffold/workflow/papercuts.md +3 -0
  598. package/templates/scaffold/workflow/plans/_TEMPLATE.md +47 -0
  599. package/templates/scaffold/workflow/regression-checklist.d/.gitkeep +0 -0
  600. package/templates/scaffold/workflow/regression-checklist.md +3 -0
  601. package/templates/scaffold/workflow/research/.gitkeep +0 -0
  602. package/templates/scaffold/workflow/reviews.d/.gitkeep +0 -0
  603. package/templates/scaffold/workflow/specs/_TEMPLATE.md +87 -0
  604. package/templates/scaffold/workflow/verify-evidence/.gitkeep +0 -0
  605. package/templates/scaffold/workflow/verify-evidence.md +4 -0
  606. package/LICENSE +0 -21
  607. package/modules/gates/README.md +0 -25
  608. package/modules/gates/dotnet-ca/README.md +0 -24
  609. package/modules/gates/dotnet-ca/check-architecture.sh +0 -150
  610. package/modules/gates/dotnet-ca/local-pre-commit.line +0 -1
  611. package/modules/gates/generated-readonly/README.md +0 -13
  612. package/modules/gates/generated-readonly/check-generated.mjs +0 -61
  613. package/modules/gates/generated-readonly/local-pre-commit.line +0 -1
  614. package/modules/gates/node-layer/README.md +0 -9
  615. package/modules/gates/node-layer/check-node-layer.mjs +0 -29
  616. package/modules/gates/node-layer/local-pre-commit.line +0 -1
  617. package/modules/gates/py-import/README.md +0 -9
  618. package/modules/gates/py-import/check-py-import.mjs +0 -30
  619. package/modules/gates/py-import/local-pre-commit.line +0 -1
  620. package/modules/gates/test-protect/README.md +0 -23
  621. package/modules/gates/test-protect/check-test-protect.mjs +0 -64
  622. package/modules/gates/test-protect/local-pre-commit.line +0 -1
  623. package/modules/hosts/README.md +0 -57
  624. package/modules/hosts/claude/agents/implementer.md +0 -51
  625. package/modules/hosts/claude/agents/independent-reviewer.md +0 -49
  626. package/modules/hosts/claude/agents/ui-verifier.md +0 -48
  627. package/modules/hosts/claude/commands/wf-build.md +0 -69
  628. package/modules/hosts/claude/commands/wf-deploy.md +0 -58
  629. package/modules/hosts/claude/commands/wf-design.md +0 -49
  630. package/modules/hosts/claude/commands/wf-gate-checklist.md +0 -77
  631. package/modules/hosts/claude/commands/wf-maintain.md +0 -76
  632. package/modules/hosts/claude/commands/wf-new-task.md +0 -102
  633. package/modules/hosts/claude/commands/wf-pipeline-run.md +0 -35
  634. package/modules/hosts/claude/commands/wf-plan.md +0 -40
  635. package/modules/hosts/claude/commands/wf-review.md +0 -49
  636. package/modules/hosts/claude/commands/wf-sync-hosts.md +0 -64
  637. package/modules/hosts/claude/commands/wf-test.md +0 -68
  638. package/modules/hosts/codex/agents/implementer.md +0 -51
  639. package/modules/hosts/codex/agents/independent-reviewer.md +0 -49
  640. package/modules/hosts/codex/agents/ui-verifier.md +0 -48
  641. package/modules/hosts/codex/commands/wf-build.md +0 -69
  642. package/modules/hosts/codex/commands/wf-deploy.md +0 -58
  643. package/modules/hosts/codex/commands/wf-design.md +0 -49
  644. package/modules/hosts/codex/commands/wf-gate-checklist.md +0 -77
  645. package/modules/hosts/codex/commands/wf-maintain.md +0 -76
  646. package/modules/hosts/codex/commands/wf-new-task.md +0 -102
  647. package/modules/hosts/codex/commands/wf-pipeline-run.md +0 -35
  648. package/modules/hosts/codex/commands/wf-plan.md +0 -40
  649. package/modules/hosts/codex/commands/wf-review.md +0 -49
  650. package/modules/hosts/codex/commands/wf-sync-hosts.md +0 -64
  651. package/modules/hosts/codex/commands/wf-test.md +0 -68
  652. package/modules/hosts/codex/skills/flow-kit/SKILL.md +0 -14
  653. package/modules/hosts/cursor/agents/implementer.md +0 -51
  654. package/modules/hosts/cursor/agents/independent-reviewer.md +0 -49
  655. package/modules/hosts/cursor/agents/ui-verifier.md +0 -48
  656. package/modules/hosts/cursor/commands/wf-build.md +0 -69
  657. package/modules/hosts/cursor/commands/wf-deploy.md +0 -58
  658. package/modules/hosts/cursor/commands/wf-design.md +0 -49
  659. package/modules/hosts/cursor/commands/wf-gate-checklist.md +0 -77
  660. package/modules/hosts/cursor/commands/wf-maintain.md +0 -76
  661. package/modules/hosts/cursor/commands/wf-new-task.md +0 -102
  662. package/modules/hosts/cursor/commands/wf-pipeline-run.md +0 -35
  663. package/modules/hosts/cursor/commands/wf-plan.md +0 -40
  664. package/modules/hosts/cursor/commands/wf-review.md +0 -49
  665. package/modules/hosts/cursor/commands/wf-sync-hosts.md +0 -64
  666. package/modules/hosts/cursor/commands/wf-test.md +0 -68
  667. package/modules/hosts/omp/agents/implementer.md +0 -52
  668. package/modules/hosts/omp/agents/independent-reviewer.md +0 -50
  669. package/modules/hosts/omp/agents/ui-verifier.md +0 -49
  670. package/modules/hosts/opencode/agents/implementer.md +0 -59
  671. package/modules/hosts/opencode/agents/independent-reviewer.md +0 -53
  672. package/modules/hosts/opencode/agents/ui-verifier.md +0 -52
  673. package/modules/hosts/opencode/commands/wf-build.md +0 -69
  674. package/modules/hosts/opencode/commands/wf-deploy.md +0 -58
  675. package/modules/hosts/opencode/commands/wf-design.md +0 -49
  676. package/modules/hosts/opencode/commands/wf-gate-checklist.md +0 -77
  677. package/modules/hosts/opencode/commands/wf-maintain.md +0 -76
  678. package/modules/hosts/opencode/commands/wf-new-task.md +0 -102
  679. package/modules/hosts/opencode/commands/wf-pipeline-run.md +0 -35
  680. package/modules/hosts/opencode/commands/wf-plan.md +0 -40
  681. package/modules/hosts/opencode/commands/wf-review.md +0 -49
  682. package/modules/hosts/opencode/commands/wf-sync-hosts.md +0 -64
  683. package/modules/hosts/opencode/commands/wf-test.md +0 -68
  684. package/modules/hosts/trae/agents/implementer.md +0 -52
  685. package/modules/hosts/trae/agents/independent-reviewer.md +0 -51
  686. package/modules/hosts/trae/agents/ui-verifier.md +0 -50
  687. package/modules/hosts/trae/commands/wf-build.md +0 -70
  688. package/modules/hosts/trae/commands/wf-deploy.md +0 -59
  689. package/modules/hosts/trae/commands/wf-design.md +0 -50
  690. package/modules/hosts/trae/commands/wf-gate-checklist.md +0 -78
  691. package/modules/hosts/trae/commands/wf-maintain.md +0 -77
  692. package/modules/hosts/trae/commands/wf-new-task.md +0 -103
  693. package/modules/hosts/trae/commands/wf-pipeline-run.md +0 -36
  694. package/modules/hosts/trae/commands/wf-plan.md +0 -41
  695. package/modules/hosts/trae/commands/wf-review.md +0 -50
  696. package/modules/hosts/trae/commands/wf-sync-hosts.md +0 -65
  697. package/modules/hosts/trae/commands/wf-test.md +0 -69
  698. package/modules/hosts/trae/hooks/post-edit-check.cjs +0 -98
  699. package/modules/hosts/trae/hooks/pre-shell-check.cjs +0 -192
  700. package/modules/hosts/trae/hooks/resolve-shell.cjs +0 -30
  701. package/modules/hosts/trae/hooks.json +0 -29
  702. package/modules/hosts/trae/rules/beautify-input-chinese.md +0 -6
  703. package/modules/hosts/trae/rules/git-commit-message.md +0 -10
  704. package/modules/hosts/trae/rules/project-workflow.md +0 -14
  705. package/modules/hosts/zcode/agents/implementer.md +0 -51
  706. package/modules/hosts/zcode/agents/independent-reviewer.md +0 -49
  707. package/modules/hosts/zcode/agents/ui-verifier.md +0 -48
  708. package/src/add-gate.mjs +0 -116
  709. package/src/add-gate.test.mjs +0 -103
  710. package/src/add-host.mjs +0 -68
  711. package/src/cli.mjs +0 -169
  712. package/src/doctor.mjs +0 -629
  713. package/src/executor.mjs +0 -262
  714. package/src/executor.test.mjs +0 -295
  715. package/src/fresh-init.test.mjs +0 -64
  716. package/src/gate-dotnet-ca.test.mjs +0 -124
  717. package/src/gates.test.mjs +0 -143
  718. package/src/init.mjs +0 -382
  719. package/src/init.test.mjs +0 -163
  720. package/src/instance-ref.test.mjs +0 -62
  721. package/src/jscpd-drift.test.mjs +0 -144
  722. package/src/pack.test.mjs +0 -24
  723. package/src/profiles.mjs +0 -183
  724. package/src/render.mjs +0 -132
  725. package/src/rule-budget.test.mjs +0 -103
  726. package/src/run-tests.mjs +0 -56
  727. package/src/stack-profile.test.mjs +0 -95
  728. package/src/sync-hosts.mjs +0 -257
  729. package/src/sync-hosts.test.mjs +0 -291
  730. package/src/sync.mjs +0 -228
  731. package/src/sync.test.mjs +0 -452
  732. package/src/trae-hooks.test.mjs +0 -127
  733. package/src/validate.mjs +0 -77
  734. package/src/validate.test.mjs +0 -95
  735. package/templates/.gitattributes +0 -17
  736. package/templates/AGENTS.md +0 -57
  737. package/templates/_agents/board/index.html +0 -676
  738. package/templates/_agents/commands/build.md +0 -84
  739. package/templates/_agents/commands/deploy.md +0 -66
  740. package/templates/_agents/commands/design.md +0 -63
  741. package/templates/_agents/commands/gate-checklist.md +0 -91
  742. package/templates/_agents/commands/maintain.md +0 -90
  743. package/templates/_agents/commands/new-task.md +0 -110
  744. package/templates/_agents/commands/pipeline-run.md +0 -43
  745. package/templates/_agents/commands/plan.md +0 -48
  746. package/templates/_agents/commands/review.md +0 -62
  747. package/templates/_agents/commands/sync-hosts.md +0 -77
  748. package/templates/_agents/commands/test.md +0 -87
  749. package/templates/_agents/control-surfaces.txt +0 -53
  750. package/templates/_agents/engine-lock.json +0 -342
  751. package/templates/_agents/hooks/check-index-incremental.mjs +0 -48
  752. package/templates/_agents/hooks/check-pairing-incremental.mjs +0 -66
  753. package/templates/_agents/hooks/check-wiki-ledger.mjs +0 -30
  754. package/templates/_agents/hooks/commit-check.cjs +0 -193
  755. package/templates/_agents/hooks/local-pre-commit +0 -6
  756. package/templates/_agents/lane-surfaces.txt +0 -17
  757. package/templates/_agents/level-hints.txt +0 -30
  758. package/templates/_agents/loop/papercut-debt/DESIGN.md +0 -112
  759. package/templates/_agents/mechanism-registry.md +0 -27
  760. package/templates/_agents/metric-claims.txt +0 -81
  761. package/templates/_agents/notes/engine-internals.md +0 -17
  762. package/templates/_agents/notes/runtime-env.md +0 -18
  763. package/templates/_agents/roles/implementer.md +0 -47
  764. package/templates/_agents/roles/independent-reviewer.md +0 -45
  765. package/templates/_agents/roles/ui-verifier.md +0 -44
  766. package/templates/_agents/rule-budgets.txt +0 -18
  767. package/templates/_agents/scripts/agg-delegations.cjs +0 -302
  768. package/templates/_agents/scripts/agg-delegations.test.mjs +0 -282
  769. package/templates/_agents/scripts/agg-gate-stats.mjs +0 -113
  770. package/templates/_agents/scripts/agg-gate-stats.test.mjs +0 -95
  771. package/templates/_agents/scripts/agg-judgments.mjs +0 -156
  772. package/templates/_agents/scripts/agg-judgments.test.mjs +0 -93
  773. package/templates/_agents/scripts/archive-sweep.mjs +0 -235
  774. package/templates/_agents/scripts/archive-sweep.test.mjs +0 -129
  775. package/templates/_agents/scripts/check-attribution.mjs +0 -37
  776. package/templates/_agents/scripts/check-convergence.mjs +0 -124
  777. package/templates/_agents/scripts/check-engine-integrity.mjs +0 -220
  778. package/templates/_agents/scripts/check-engine-integrity.test.mjs +0 -215
  779. package/templates/_agents/scripts/check-funnel.mjs +0 -56
  780. package/templates/_agents/scripts/check-hygiene.mjs +0 -167
  781. package/templates/_agents/scripts/check-hygiene.test.mjs +0 -182
  782. package/templates/_agents/scripts/check-index-incremental.test.mjs +0 -73
  783. package/templates/_agents/scripts/check-lane-surface.mjs +0 -238
  784. package/templates/_agents/scripts/check-lane-surface.test.mjs +0 -302
  785. package/templates/_agents/scripts/check-ledger-invariant.mjs +0 -527
  786. package/templates/_agents/scripts/check-ledger-invariant.test.mjs +0 -639
  787. package/templates/_agents/scripts/check-loop-rev.test.mjs +0 -336
  788. package/templates/_agents/scripts/check-loop-unit.test.mjs +0 -103
  789. package/templates/_agents/scripts/check-loop.mjs +0 -1958
  790. package/templates/_agents/scripts/check-loop.sh +0 -6
  791. package/templates/_agents/scripts/check-loop.test.mjs +0 -3875
  792. package/templates/_agents/scripts/check-metric-claims.mjs +0 -277
  793. package/templates/_agents/scripts/check-prejudgment.mjs +0 -64
  794. package/templates/_agents/scripts/check-registry.mjs +0 -45
  795. package/templates/_agents/scripts/check-scope.mjs +0 -96
  796. package/templates/_agents/scripts/check-scope.test.mjs +0 -96
  797. package/templates/_agents/scripts/check-scripts-syntax.mjs +0 -61
  798. package/templates/_agents/scripts/check-scripts-syntax.test.mjs +0 -72
  799. package/templates/_agents/scripts/check-spec-verif.mjs +0 -47
  800. package/templates/_agents/scripts/check-stage-index.mjs +0 -40
  801. package/templates/_agents/scripts/check-stage-index.test.mjs +0 -77
  802. package/templates/_agents/scripts/closeout-l1.mjs +0 -217
  803. package/templates/_agents/scripts/closeout-l1.test.mjs +0 -105
  804. package/templates/_agents/scripts/commit-check-trigger.test.mjs +0 -205
  805. package/templates/_agents/scripts/compact-ledgers.mjs +0 -97
  806. package/templates/_agents/scripts/compact-ledgers.test.mjs +0 -162
  807. package/templates/_agents/scripts/confirm-doc.mjs +0 -603
  808. package/templates/_agents/scripts/confirm-doc.test.mjs +0 -1103
  809. package/templates/_agents/scripts/doctor.test.mjs +0 -770
  810. package/templates/_agents/scripts/draft-sediment.mjs +0 -178
  811. package/templates/_agents/scripts/draft-sediment.test.mjs +0 -272
  812. package/templates/_agents/scripts/edit-face-check.mjs +0 -109
  813. package/templates/_agents/scripts/edit-face-check.test.mjs +0 -99
  814. package/templates/_agents/scripts/ensure-board.mjs +0 -185
  815. package/templates/_agents/scripts/fill-intent.mjs +0 -91
  816. package/templates/_agents/scripts/fill-intent.test.mjs +0 -113
  817. package/templates/_agents/scripts/fill-plan.mjs +0 -79
  818. package/templates/_agents/scripts/fill-plan.test.mjs +0 -224
  819. package/templates/_agents/scripts/fill-spec.mjs +0 -70
  820. package/templates/_agents/scripts/fill-spec.test.mjs +0 -266
  821. package/templates/_agents/scripts/fixture-scripts.mjs +0 -153
  822. package/templates/_agents/scripts/fixture-scripts.test.mjs +0 -112
  823. package/templates/_agents/scripts/gate-checklist.mjs +0 -209
  824. package/templates/_agents/scripts/gate-checklist.test.mjs +0 -201
  825. package/templates/_agents/scripts/gate-seg.mjs +0 -54
  826. package/templates/_agents/scripts/gate-seg.test.mjs +0 -112
  827. package/templates/_agents/scripts/gen-effective-policy.mjs +0 -107
  828. package/templates/_agents/scripts/gen-effective-policy.test.mjs +0 -100
  829. package/templates/_agents/scripts/gen-verify-evidence.mjs +0 -107
  830. package/templates/_agents/scripts/gen-verify-evidence.test.mjs +0 -84
  831. package/templates/_agents/scripts/gen-wiki-board.mjs +0 -276
  832. package/templates/_agents/scripts/gen-wiki-board.test.mjs +0 -249
  833. package/templates/_agents/scripts/gen-workflow-dashboard.mjs +0 -251
  834. package/templates/_agents/scripts/gen-workflow-dashboard.test.mjs +0 -188
  835. package/templates/_agents/scripts/gen-workflow-index.mjs +0 -201
  836. package/templates/_agents/scripts/gen-workflow-index.test.mjs +0 -152
  837. package/templates/_agents/scripts/gen-workflow-metrics.mjs +0 -334
  838. package/templates/_agents/scripts/gen-workflow-metrics.test.mjs +0 -224
  839. package/templates/_agents/scripts/git-merge-jsonl.mjs +0 -63
  840. package/templates/_agents/scripts/git-merge-jsonl.test.mjs +0 -125
  841. package/templates/_agents/scripts/judgment-ledger.mjs +0 -65
  842. package/templates/_agents/scripts/judgment-ledger.test.mjs +0 -129
  843. package/templates/_agents/scripts/kb-cache-evict.mjs +0 -50
  844. package/templates/_agents/scripts/kb-cache-evict.test.mjs +0 -104
  845. package/templates/_agents/scripts/kb-search.mjs +0 -413
  846. package/templates/_agents/scripts/kb-search.test.mjs +0 -299
  847. package/templates/_agents/scripts/lane-surface-audit.mjs +0 -143
  848. package/templates/_agents/scripts/lane-surface-audit.test.mjs +0 -93
  849. package/templates/_agents/scripts/ledger-doc-chain.test.mjs +0 -166
  850. package/templates/_agents/scripts/ledger-loader.mjs +0 -108
  851. package/templates/_agents/scripts/ledger-loader.test.mjs +0 -131
  852. package/templates/_agents/scripts/ledger-prune.mjs +0 -96
  853. package/templates/_agents/scripts/ledger-prune.test.mjs +0 -120
  854. package/templates/_agents/scripts/ledger-shards.mjs +0 -344
  855. package/templates/_agents/scripts/ledger-shards.test.mjs +0 -356
  856. package/templates/_agents/scripts/ledger-ts-monotonic.test.mjs +0 -135
  857. package/templates/_agents/scripts/level-criteria.mjs +0 -231
  858. package/templates/_agents/scripts/level-criteria.test.mjs +0 -281
  859. package/templates/_agents/scripts/mechanism-retire-watch.mjs +0 -183
  860. package/templates/_agents/scripts/mechanism-retire-watch.test.mjs +0 -114
  861. package/templates/_agents/scripts/papercut-debt-controller.mjs +0 -141
  862. package/templates/_agents/scripts/papercut-debt-controller.test.mjs +0 -127
  863. package/templates/_agents/scripts/papercut-debt-sensor.mjs +0 -170
  864. package/templates/_agents/scripts/papercut-debt-sensor.test.mjs +0 -146
  865. package/templates/_agents/scripts/pipeline-run-docs.mjs +0 -76
  866. package/templates/_agents/scripts/pipeline-run-run.mjs +0 -63
  867. package/templates/_agents/scripts/pipeline-run.mjs +0 -867
  868. package/templates/_agents/scripts/pipeline-run.test.mjs +0 -517
  869. package/templates/_agents/scripts/policy.mjs +0 -281
  870. package/templates/_agents/scripts/pre-push.test.mjs +0 -105
  871. package/templates/_agents/scripts/resolve-merge-conflicts.mjs +0 -110
  872. package/templates/_agents/scripts/resolve-merge-conflicts.test.mjs +0 -87
  873. package/templates/_agents/scripts/rewrite-file.mjs +0 -133
  874. package/templates/_agents/scripts/rewrite-file.test.mjs +0 -148
  875. package/templates/_agents/scripts/rule-budget.mjs +0 -96
  876. package/templates/_agents/scripts/rule-budget.test.mjs +0 -118
  877. package/templates/_agents/scripts/run-tests.mjs +0 -99
  878. package/templates/_agents/scripts/run-tests.test.mjs +0 -105
  879. package/templates/_agents/scripts/solidify-task.mjs +0 -107
  880. package/templates/_agents/scripts/solidify-task.test.mjs +0 -129
  881. package/templates/_agents/scripts/stage-gates.mjs +0 -343
  882. package/templates/_agents/scripts/stage-gates.test.mjs +0 -105
  883. package/templates/_agents/scripts/trust-mode.mjs +0 -67
  884. package/templates/_agents/scripts/trust-mode.test.mjs +0 -110
  885. package/templates/_agents/scripts/verify-wiki-consistency.mjs +0 -253
  886. package/templates/_agents/scripts/verify-wiki-consistency.test.mjs +0 -123
  887. package/templates/_agents/scripts/verify.mjs +0 -210
  888. package/templates/_agents/scripts/verify.test.mjs +0 -358
  889. package/templates/_agents/scripts/wf-journal.mjs +0 -231
  890. package/templates/_agents/scripts/wf-journal.test.mjs +0 -216
  891. package/templates/_agents/scripts/wiki-search.mjs +0 -19
  892. package/templates/_agents/scripts/wiki-search.test.mjs +0 -57
  893. package/templates/_agents/scripts/workflow-board-server.mjs +0 -393
  894. package/templates/_agents/scripts/workflow-board-server.test.mjs +0 -201
  895. package/templates/_agents/scripts/workflow-enums.mjs +0 -70
  896. package/templates/_agents/scripts/workflow-enums.test.mjs +0 -118
  897. package/templates/_agents/scripts/workflows-check.mjs +0 -260
  898. package/templates/_agents/scripts/workflows-check.test.mjs +0 -278
  899. package/templates/_agents/scripts-test-exempt.txt +0 -16
  900. package/templates/_agents/skills/papercut-fix/SKILL.md +0 -60
  901. package/templates/_agents/skills/papercut-fix/references/response-template.md +0 -81
  902. package/templates/_agents/skills/review-method/SKILL.md +0 -55
  903. package/templates/_agents/skills/verify-ui/SKILL.md +0 -61
  904. package/templates/_agents/skills/wiki/SKILL.md +0 -106
  905. package/templates/_agents/workflow-enums.txt +0 -26
  906. package/templates/_agents/workflow-modules.txt +0 -11
  907. package/templates/_agents/workflows/_TEMPLATE.md +0 -75
  908. package/templates/_agents/workflows/pipeline-closing.md +0 -28
  909. package/templates/_agents/workflows//347/244/272/344/276/213-/345/271/266/350/241/214/345/256/236/347/216/260/350/257/204/345/256/241.md +0 -16
  910. package/templates/_githooks/commit-msg +0 -17
  911. package/templates/_githooks/post-commit +0 -10
  912. package/templates/_githooks/pre-commit +0 -126
  913. package/templates/_githooks/pre-merge-commit +0 -29
  914. package/templates/_githooks/pre-push +0 -136
  915. package/templates/_github/workflows/kit-ci.yml +0 -49
  916. package/templates/wiki/INDEX.md +0 -73
  917. package/templates/wiki/drafts-archive/README.md +0 -3
  918. package/templates/wiki//344/272/247/345/223/201/351/234/200/346/261/202/README.md +0 -3
  919. package/templates/wiki//345/274/200/345/217/221/346/226/271/346/241/210/README.md +0 -3
  920. package/templates/wiki//346/225/260/346/215/256/347/273/264/346/212/244/README.md +0 -3
  921. package/templates/wiki//346/265/213/350/257/225/346/212/245/345/221/212/README.md +0 -3
  922. package/templates/wiki//347/224/250/346/210/267/345/212/237/350/203/275/README.md +0 -3
  923. package/templates/wiki//347/237/245/350/257/206/346/262/211/346/267/200/346/200/273/350/247/210.html +0 -77
  924. package/templates/wiki//351/241/271/347/233/256/350/247/204/350/214/203/README.md +0 -3
  925. package/templates/wiki//351/241/271/347/233/256/350/256/241/345/210/222/README.md +0 -3
  926. package/templates/workflow/README.md +0 -90
  927. package/templates/workflow/delegations.md +0 -29
  928. package/templates/workflow/incidents/_TEMPLATE.md +0 -51
  929. package/templates/workflow/intents/_TEMPLATE.md +0 -46
  930. package/templates/workflow/papercuts.md +0 -9
  931. package/templates/workflow/plans/_TEMPLATE.md +0 -47
  932. package/templates/workflow/regression-checklist.md +0 -23
  933. package/templates/workflow/specs/_TEMPLATE.md +0 -80
  934. /package/templates/{_agents → engine/.agents}/board/marked.min.js +0 -0
  935. /package/templates/{_agents/workflows → engine/.agents/pipelines}/steps//347/244/272/344/276/213-/351/203/250/347/275/262/351/252/214/350/257/201.md" +0 -0
  936. /package/templates/{_agents → engine/.agents}/scripts/git-core.mjs +0 -0
@@ -1,106 +0,0 @@
1
- ---
2
- name: wiki
3
- description: 项目 wiki 整理与验证技能。负责把项目内散落文档按主题归位到 wiki/,并维护 INDEX.md、知识沉淀总览.html、drafts-archive 归档一致性。当用户要求"整理 wiki/归类文档/建知识库/查文档归属"时使用。
4
- ---
5
-
6
- # Wiki 整理与验证技能
7
-
8
- ## 1. 何时调用本技能
9
-
10
- 触发短语:
11
- - "整理 wiki / 归类文档 / 建知识库 / 同步知识沉淀看板"
12
- - "新增一篇文档到 wiki"
13
- - "校对 wiki 与 INDEX 是否一致"
14
- - "把 X.md 归到 wiki 的哪个主题"
15
- - "wiki 草稿归档 / 把原文归档"
16
-
17
- 不要调用本技能的场景:
18
- - 询问文档内容本身(直接 Read 文件即可)
19
- - workflow/ 下文档(已明确排除);`docs/`、`.trae/documents/` 均已于 2026-09-12 删除
20
-
21
- ## 2. 核心约定(与 AGENTS.md 一致)
22
-
23
- - **范围**:主数据知识文档 + 全项目数据维护 SQL。MTO/采购/库存/UI 等非主数据知识文档原位不动,不入 wiki。
24
- - **目录结构**:`wiki/<主题>/<关键词文件>`,一级目录 = 主题,二级由文件组成(无强制二级子目录)。子目录(成套产物,见 INDEX 命名规则)中的 md/html 知识文档 2026-09-17 起计入登记与看板(`*.visual-check.*`/`.json`/`.png` 工具产物不计入;`数据维护` 主题子目录例外,仍走 README 台账)。看板中 html 格式文档的文件名为可点击链接(相对看板解析)。
25
- - **命名**:`<主题>-<关键词>[-范围/版本].ext`,例:`需求口径说明-正式.md`、`某系统-PRD-v3.0.md`。
26
- - **权威**:红线与闭环以 AGENTS.md / workflow 为准;wiki 承载当前态知识(领域 / 表 / 编码 / SQL 台账)。wiki 当前文档优于 `drafts-archive/`(归档仅历史快照)。
27
- - **双格式对(md + html 同内容)**:md 为权威内容源,html 为展示快照——内容冲突以 md 为准,改 md 后按需重出 html;速览表「用途」列标注权威关系。
28
- - **索引生成(2026-09-13 起)**:速览表计数/映射表/看板 DATA 由 `node .agents/scripts/gen-wiki-board.mjs` 自动生成——人工只维护磁盘文件 + 速览表「用途」列;收录/删除/移动文件后必跑生成器(新主题用途列为 `<待补>` 时补描述后重跑)。写盘前可先 `--dry-run` 看差异(`--help` 打印用法,未知参数 exit 1)。
29
- - **归档目录**:`wiki/drafts-archive/YYYY-MM-DD-<主题>/`,按整理批次日期+主题命名,保留原文件名。
30
- - **来源血缘(双向链接,2026-10-10 起)**:沉淀到 wiki 的知识在 frontmatter 记 `来源: workflow/<intents|incidents|...>/<文件>` 指回 workflow 归档;被沉淀的 workflow 文件记 `沉淀: wiki/<主题>/<文件>`(或 `沉淀: 无` 显式豁免)。两向字段由 `verify-wiki-consistency.mjs` 校验存在性(活跃层断链即拦,草稿未落地仅提示)——人工移动/改归类时须同步改这两行,否则 check-loop 的 `[WARN 沉淀断档]` 与验证脚本都会点名。
31
- - **关单自动沉淀(2026-10-10 起)**:intent 置 done / incident 置 closed 时,跑 `node .agents/scripts/draft-sediment.mjs <源文件>` 自动抽取高价值节(intent:影响面/触达红线;incident:影响面/根因/为什么之前没拦住/复盘三件套)→ 落 `wiki/drafts-archive/<日期-主题>/` 草稿(带 `来源` 字段)→ 回写源文件 `沉淀` 字段 → 重跑 gen-wiki-board。草稿是**中间态**:人工读一遍,归类到 `wiki/<主题>/`(补主题与用途,保留 `来源`)后跑生成器 + §4 验证。`--dry-run` 预览不写盘;仅占位的高价值节会被拒抽(内容无沉淀价值)。
32
- - **排除**:`workflow/`、依赖锁文件、IDE 配置。
33
-
34
- ## 3. 标准操作流程
35
-
36
- ### 3.1 整理(新建/批量归位)
37
-
38
- 1. **识别范围**:列出候选文件后逐篇读首行判断主题——pwsh:`Get-ChildItem -Recurse -File -Include *.md` / `Get-Content <文件> -TotalCount 8`;POSIX:`find` / `head -8`。
39
- 2. **主题判定**:主题由内容自决,不预设分类。当前已沉淀主题:`产品需求 / 项目计划 / 开发方案 / 用户功能 / 项目规范 / 测试报告 / 数据维护`。新增主题前先与用户对齐。
40
- 3. **建目录**:pwsh `New-Item -ItemType Directory -Force wiki/<主题>`(POSIX:`mkdir -p`);归档目录同理建 `wiki/drafts-archive/YYYY-MM-DD-<主题>`。
41
- 4. **复制并改名**:pwsh `Copy-Item 原路径 wiki/<主题>/<新名>`(POSIX:`cp`);来源为仓库内原位文件时,同时按原名复制一份到 `drafts-archive/YYYY-MM-DD-<主题>/` 留溯源。
42
- 5. **生成索引**:跑 `node .agents/scripts/gen-wiki-board.mjs`(速览计数/映射表/看板 DATA 自动重生成);新主题在速览表「用途」列补一行描述后重跑。
43
- 6. **自检**:跑第 4 节"验证脚本",确认三方一致、目录无孤儿。
44
-
45
- ### 3.2 新增单篇文档(新产出直接落活跃层)
46
-
47
- 新产出的文档**直接归入 `wiki/<主题>/`**,不强制进 `drafts-archive/`——归档只承载整理前的历史原位文档(口径见 §3.1 第 4 步)。
48
-
49
- ```
50
- 1. 读文件首行判定主题
51
- 2. Copy-Item 原文件 wiki/<主题>/<主题>-<关键词>.<ext> # POSIX:cp
52
- 3. node .agents/scripts/gen-wiki-board.mjs (索引自动生成,无需手工改映射表/看板)
53
- 4. 跑 §4 验证
54
- ```
55
-
56
- ### 3.3 删除/归档 wiki 中错误归位
57
-
58
- ```
59
- 1. 从 wiki/<错误主题>/ 移到 wiki/<正确主题>/,若改名也同步
60
- 2. drafts-archive 不动(归档记录原貌)
61
- 3. node .agents/scripts/gen-wiki-board.mjs
62
- 4. 跑 §4 验证
63
- ```
64
-
65
- ### 3.4 重建看板
66
-
67
- `wiki/知识沉淀总览.html` 的 DATA 块由生成器从磁盘 + 速览表用途列自动生成(2026-09-13 起)。看板与磁盘不一致时:先跑 `node .agents/scripts/gen-wiki-board.mjs` 再跑 §4 验证;仍不一致说明有人手改了生成区——以生成器输出为准。
68
-
69
- ## 4. 验证脚本(必跑)
70
- 一条命令完成全部校验(磁盘 ↔ INDEX ↔ 看板 DATA ↔ summary 统计 ↔ 幽灵目录 ↔ 活跃层 file:/// 断链守卫 ↔ 数据维护台账登记 ↔ 看板链接可达性):
71
-
72
- ```bash
73
- node .agents/scripts/verify-wiki-consistency.mjs
74
- ```
75
-
76
- - 通过:输出 `✅ wiki 三方一致:文件 N 份 / 主题 N 个(含占位)/ 归档 N 份`,exit 0
77
- - 失败:逐条列出不一致项,exit 1。除文件集合 / 计数外还覆盖:`wiki/数据维护/` 下子目录(含批次目录)未在 `wiki/数据维护/README.md` 登记、看板「打开目录」链接(`DATA.dir`,相对看板自身 `wiki/` 解析)指向不存在的目录
78
- - 占位主题(磁盘有目录但 0 文件)只输出 `ℹ️` 提示、不算失败;当前 7 个主题均非空(`开发方案` 2026-09-12 起已有 2 份表设计 md+html)
79
- - 改了 wiki 内容/INDEX/看板任一处后必须重跑;三者任何一处漏同步都会被拦下
80
-
81
- ## 5. 命名冲突与歧义处置
82
-
83
- - **同名不同扩展**:例如 `数据字典-修复.sql` 与 `数据字典-修复.md` —— 文件名可重复,但 `INDEX.md` 与看板 `DATA` 用 `file` 字段存完整文件名(含扩展)以区分。
84
- - **跨主题歧义**:用户说"X 放哪"拿不准时,读首行 + 第一段判断;仍无法判定就先与用户确认主题,不预设兜底主题、不自造归类。
85
- - **二进制(xlsx/csv/sql/json)**:允许直接归位到对应主题;不要为它们新建 markdown 索引——需要说明用途时写进 `wiki/INDEX.md` 速览表的「用途」列(唯一人工维护位,用例描述一句话;该表计数与映射表、看板 DATA 均为生成区,会被 `gen-wiki-board.mjs` 重写)。`wiki/数据维护/` 下的脚本与批次目录则在 `wiki/数据维护/README.md` 台账加登记行(verify 会拦未登记目录)。
86
-
87
- ## 6. 已知边界
88
-
89
- - **workflow/ 永不入 wiki**:闭环工作流目录是项目规范明文排除项。
90
- - **非主数据知识文档不入 wiki**(MTO/采购/库存/UI 等)——有意决策(2026-09-13 显式化;债与扩展触发条件见 `wiki/INDEX.md` §范围边界决策);数据维护 SQL 为全项目,不受此限。
91
- - **dependency 锁文件 / IDE 配置**:不入 wiki(`package-lock.json`、`pnpm-lock.yaml`、`*.sln`、`*.esproj` 等)。
92
- - **批量整理只动一份副本**:本技能只复制(`Copy-Item` / `cp`),不删除原文件;删除原文件需要用户在对话内单独确认(这是 STOP 线场景)。
93
-
94
- ## 7. 与 AGENTS.md 衔接
95
-
96
- - 改动 `wiki/INDEX.md`、`wiki/知识沉淀总览.html`、`.agents/skills/wiki/SKILL.md` 属 docs 级改动,**豁免 intent**,走 Conventional Commits 直接 commit:`docs(wiki): <动作>`。
97
- - 若同时改 wiki 内某个具体知识文档(含路径变更/改名),按该文档原主题级别立 intent / incident。
98
- - wiki 不替代 AGENTS.md / workflow 的红线与闭环;与二者冲突时以 AGENTS.md / workflow 为准。wiki 与 `drafts-archive/` 冲突时以 wiki 当前文档为准。
99
-
100
- ## 8. 失败模式与回滚
101
-
102
- - **忘跑生成器**:磁盘文件动了没跑 `gen-wiki-board.mjs` → §4 脚本报「仅在看板上 / 仅在磁盘上」差异 → 跑生成器即对齐。
103
- - **手改生成区**:速览计数/映射表/看板 DATA 是生成产物,手改会被 verify 拦且下次生成被覆盖——用途列才是人工编辑位。
104
- - **原文件误删**:本技能只复制(`Copy-Item` / `cp`),不删原文件;若用户单独要求删除原文件,必须先列目录确认(pwsh `Get-ChildItem` / POSIX `ls`)再操作。
105
- - **主题命名反复**:以 §4 脚本 A 段为最终事实;速览表用途列的 `<待补>` 提示新主题未补描述。
106
- - **全文检索**:找「哪个文件讲过 X」用 `node .agents/scripts/wiki-search.mjs <关键词>`(wiki 活跃层,多词 AND;不扫归档;默认跳过 json/csv、视觉校验产物与 >180KB bulk 文件,`--include-generated` 纳入);跨语料(workflow 流程留痕 + wiki)用 `node .agents/scripts/kb-search.mjs "<词>"`。
@@ -1,26 +0,0 @@
1
- # workflow 文档枚举单源(2026-09-25 enum-single-source)
2
- # 本文件会被 core.autocrlf 检出为 CRLF——读取方显式去 \r(node parseEnums),禁止依赖行尾格式(rule-budgets.txt 同约定)。
3
- # 消费方:check-loop.mjs / workflow-board-server.mjs / kb-search.mjs / gen-workflow-index.mjs /
4
- # fill-{intent,plan,spec}.mjs(均经 scripts/workflow-enums.mjs 读取器)——改枚举改这里,别改消费方。
5
- # 格式:key=value value value(空格分隔;# 注释行忽略;键重复 / 值重复 / 缺键 = 消费方 fail-loud)
6
- # 语义:doc = intent/spec/plan 三件;incident = 事故件。
7
- # all 全生命周期状态
8
- # confirmed 已确认(check-loop「状态未确认」放行口径 = 看板枚举告警口径)
9
- # active 活跃(INDEX 活跃层 / kb-search 活跃 ×1.3 排序)
10
- # terminal 终态(看板「入口已 done 而 plan 未终态」告警口径)
11
- # abandoned 放弃留档(L3 确认三件豁免口径)
12
- doc.status.all=draft approved done superseded cancelled
13
- doc.status.confirmed=approved done superseded cancelled
14
- doc.status.active=draft approved
15
- doc.status.terminal=done superseded cancelled
16
- doc.status.abandoned=superseded cancelled
17
- incident.status.all=open fixed closed
18
- incident.status.active=open
19
- # 归因枚举(2026-10-13 自 Shipyard 回灌 incident-attribution):归因检查(B6b 落地后编号以 check-loop.mjs 头部清单为准)校验 incident frontmatter 的「来源:」/「影响环境:」。
20
- # source = 谁发现(self=AI 自查 / user=用户报出 / test=测试或实测暴露 / monitor=监控告警)
21
- # env = 缺陷触达的环境(none=未触达任何运行环境,如仅静态检查发现)
22
- # 锚前存量不回填;新 open 件必填(生效锚随 B6b 归因检查落地)。
23
- incident.source.all=self user test monitor
24
- incident.env.all=dev staging prod none
25
- # 级别三档(2026-10-13 L0 退役自源仓收敛系列 1 回灌):L1 = 一份 plan 即入口(协作道);L2/L3 = 防御道。
26
- level.all=L1 L2 L3
@@ -1,11 +0,0 @@
1
- # workflow 文档模块词表(单源:check-loop.sh 与 .agents/scripts/gen-workflow-index.mjs、kb-search.mjs 共读)
2
- # 用法:workflow/{intents,specs,plans,incidents} 文档 frontmatter `模块:` 取下列之一(单值,取主导模块;
3
- # 跨模块任务取承载任务意图的模块,检索面由 kb-search 全文兜住)。
4
- # 新建文档必填;check-loop 只警告不阻断。按项目模块自行改这张表(改后同步 workflow/README.md「文档协议」段说明)。
5
- backend
6
- frontend
7
- ui
8
- infra
9
- integration
10
- pipeline
11
- wiki
@@ -1,75 +0,0 @@
1
- # Workflow 编排机制 — 编排脚本 + steps 扩展点
2
-
3
- > kit 的跨宿主编排机制:`.agents/workflows/` 下的编排脚本承载编排语义(依赖分层 / 并行 / 重试 / gate / 用户确认门 / run journal),**宿主 AI 经 AGENTS.md 常驻指令自动加载并按语义执行**——有子智能体的宿主并行 fan-out,没有的顺序自做,验收不变。零宿主协议适配:机制只依赖所有宿主共有的四样本领(读 AGENTS.md、读仓库文件、跑终端命令、子智能体)。
4
-
5
- ## 自动加载(AGENTS.md 常驻指令)
6
-
7
- > 多工作包编排——用户要跑编排、或 plan 执行多工作包时:读 `.agents/workflows/` 编排脚本按本文档语义执行;自定义步骤在 `steps/`。
8
-
9
- ## 编排脚本(`.agents/workflows/<主题>.md`)
10
-
11
- frontmatter(`name` / `description` / `concurrency` 默认 2)+ 一张 stages 表(`human` 列可选——不用确认门的可省该列,保持 9 列):
12
-
13
- ```md
14
- ---
15
- name: 并行修两域
16
- description: 后端+前端并行实现 → 汇聚过测试 → 部署验证(step)→ 独立评审
17
- concurrency: 2
18
- ---
19
- | id | after | role | step | task / params | files(授权) | accept(验收判据) | gate | human | retries |
20
- |----|-------|------|------|---------------|--------------|-------------------|------|-------|---------|
21
- | backend | — | implementer | — | 实现后端 X | src/api/** | 项目测试过 | | | 1 |
22
- | frontend | — | implementer | — | 改前端 Y | web/** | 构建过 | | | 0 |
23
- | gate-all | backend,frontend | — | — | — | — | — | npm test | | |
24
- | confirm-deploy | gate-all | — | — | 用户对话内确认可上 staging | — | 一句「可以」 | | 用户确认 | |
25
- | deploy-check | confirm-deploy | — | 部署验证 | env=staging | | 部署命令 exit 0 | | | 0 |
26
- | review | deploy-check | independent-reviewer | — | 评审两域改动 | | 符合 plan 与判据 | | | 0 |
27
- ```
28
-
29
- **stage 四形态**(互斥,恰填一项):
30
-
31
- | 形态 | 判据 | 执行 |
32
- |------|------|------|
33
- | role 派单行 | `role` 非空 | 派子智能体(`task` 目标 / `files` 授权清单 / `accept` 验收判据写进派单头 + 红线行) |
34
- | step 行 | `step` 非空 | 宿主 AI 读 `steps/<step>.md` 按指引执行,`task / params` 列传参 |
35
- | gate 行 | `gate` 非空(role/step/human 空) | 终端跑命令,非零即中止 |
36
- | human 确认门行 | `human` 非空(其余形态列空) | 宿主 AI **停下向用户询问**(`task` 列 = 问什么、`accept` 列 = 通过判据),通过才派下层;驳回 → 中止汇总。**不派子智能体**(机器判据层面落实「子智能体不跨确认门」,取代早前 role 行伪装确认门的写法) |
37
-
38
- **编排语义**(执行口径,全宿主同一):`after` 空 = 第 0 层;一层全 ok 才派依赖它的下一层;层内按 `concurrency` 分批——有子智能体的宿主并行 fan-out,没有的顺序自做(验收标准不变);失败且 `retries` > 0 → 重派(全新上下文);重试超限 / gate 非零 / human 驳回 → 中止后续、汇总报告失败项。human 行无重试语义(retries 视作 0)。
39
-
40
- **run journal**(断点续跑与重试计量):每个 stage 每次尝试出结果(pass / fail / blocked)即记一行;中止后重跑先看 status——已 pass 的 stage 不重跑,从就绪层续:
41
-
42
- ```bash
43
- node .agents/scripts/wf-journal.mjs add --wf <编排名> --stage <id> --status pass --form human # fail/blocked 同式;--form ∈ role|step|gate|human
44
- node .agents/scripts/wf-journal.mjs status --wf <编排名> # 已完成 / 就绪(含重试就绪×N)/ 待定
45
- ```
46
-
47
- journal 落 `.agents/cache/orchestration-runs.jsonl`(本地运行态,可丢弃;同 run 同 stage 多行按末次生效,attempt 自动计次;`--new-run` 新起一轮)。
48
-
49
- ## steps 扩展点(`.agents/workflows/steps/<名>.md`)
50
-
51
- kit 定义的扩展机制:文件名即步骤名(steps 目录即注册表),项目把自己的领域动作(部署 / 迁移 / 审计上报…)注册进来,编排脚本 step 行引用即用。
52
-
53
- ```md
54
- ---
55
- params: env(目标环境);timeout-min(可选,默认 10)
56
- ---
57
- # 步骤 — 部署验证
58
-
59
- 1. 跑终端命令:`npm run deploy -- --env <env>`,非零即步骤失败并回报 stderr 尾段
60
- 2. 跑冒烟检查:`curl -fsS https://<env>.example.com/healthz`
61
- 3. 回报:部署版本号 + 冒烟结果
62
- ```
63
-
64
- - frontmatter `params`:参数约定(自由文本列明名称与含义);调用方在编排脚本 `task / params` 列传参(`k=v`,空格分隔多个)。
65
- - 正文:执行指引(编号步骤)——可指使命令、子智能体、检查动作;步骤失败按编排脚本行 `retries` 重试。
66
-
67
- ## 纪律(先读)
68
-
69
- - **声明随 plan 确认后方可执行**:编排脚本是 plan 任务拆解的执行器,随 plan 草稿一并全文过目。
70
- - 子智能体不跨确认门、不 commit / push(派单红线行:只改授权文件;缺输入或需偏离 → `BLOCKER:` 停下)。确认门一律用 human 形态行表达,不得派子智能体代行。
71
- - 收敛复核:派单返回后核对 diff 与授权文件范围(与 build.md 委派约定同口径);BLOCKER 停住待处置。
72
- - **run journal 三条**:① 每个 stage 每次尝试出结果即 `wf-journal.mjs add` 记一行(含重试与 human 门结论);② 中止后重跑先 `status`——已 pass 不重跑,从就绪层续;③ 收尾可把本 run 的 status 汇总粘 `workflow/delegations.md` 留痕(聚合脚本不读 journal)。
73
- - **journal 是自报态,非验证态**:run journal 由执行者(宿主 AI)自己记——concurrency / retry / 断点续跑语义的保证取决于记账纪律,编排层无运行时派发器强制(wf-run 已废,执行按本机制文档语义);中止续跑时对「已 pass」结论保留人工核对权(2026-09-27 audit-gate-hardening 边界声明)。
74
- - 留痕:每个派单 / step stage 完成后向 `workflow/delegations.md` 委派结果表追加一行(`一次通过` / `返工×N` / `返工待修`,口径与 agg-delegations.cjs 对齐)。
75
- - 解析校验先行(机器门):`node .agents/scripts/workflows-check.mjs`——role ∈ `.agents/roles/`、step ∈ `steps/`、after 引用存在且无环、四形态恰填一项、retries/concurrency 数值合法;任一不过即拒,不执行。
@@ -1,28 +0,0 @@
1
- ---
2
- name: pipeline-closing
3
- description: 推广环节 6 阶段闭环——起草 intent + plan(双写)→ 用户对话内确认 → 按 plan 改动面实施 → 2 关静态门(npm test / doctor)→ 关单留痕(intent + plan → done + docs commit)。可复用于本项目所有 L1 推广环节(新增工具 / 微改动 / 协议修补)
4
- concurrency: 2
5
- ---
6
- # workflow — pipeline-closing(推广环节 6 阶段闭环)
7
-
8
- > 把 5 个已闭环推广环节(E/A/D/C/F/B)的标准节奏固化为可复用编排。stage 用 role 派单 / gate 终端 / human 确认门三种形态——不引新 step(`_TEMPLATE.md` 解析校验要求 `step ∈ steps/`,新增 step 留给后续项目注册)。
9
-
10
- | id | after | role | step | task / params | files(授权) | accept(验收判据) | gate | human | retries |
11
- |----|-------|------|------|---------------|--------------|-------------------|------|-------|---------|
12
- | author | — | implementer | — | 起草 intent + plan(双写 fill-{intent,plan}.mjs 生成草稿 + AI 填实),状态 draft | workflow/intents/<date>-<topic>.md, workflow/plans/<date>-<topic>.md | intent frontmatter 6 字段齐(含 risk_level)+ 状态 draft + 验收标准 ≥ 5 条;plan L1 极简 2 节齐 | | | 1 |
13
- | gate-doc | author | — | — | — | — | — | node .agents/scripts/fill-intent.test.mjs && node .agents/scripts/fill-plan.test.mjs | | |
14
- | confirm | gate-doc | — | — | plan 草稿全文过目,用户对话内一句"可以" → plan 状态 draft → approved + 回填「确认与复核」节 | — | plan 状态 approved + 「确认结果:approved(YYYY-MM-DD 用户对话内确认)」 | | 用户确认(plan 确认门) | |
15
- | plan-commit | confirm | implementer | — | 提交 plan 立项 commit(docs(workflow)) | workflow/intents/, workflow/plans/, workflow/INDEX.md | pre-commit 钩子全过;commit message 含 plan 改动面摘要 | | | 0 |
16
- | build | plan-commit | implementer | — | 按 plan §改动面 执行 | 见 plan | plan 改动面全部完成 | | | 1 |
17
- | gate-test | build | — | — | — | — | — | npm test(必须全绿) | | |
18
- | gate-doctor | build | — | — | — | — | — | node bin/flow-kit.mjs doctor(必须 0 FAIL) | | |
19
- | feat-commit | gate-test,gate-doctor | implementer | — | 提交 feat commit(feat(模块名)) | 工作区所有变更文件 | pre-commit 钩子全过;commit message 含 build 改动面摘要 | | | 0 |
20
- | closeout | feat-commit | implementer | — | 补 intent 8 条验收勾验 + plan → done + 关单 docs commit 留痕;同步 INDEX.md(如适用) | workflow/intents/<date>-<topic>.md, workflow/plans/<date>-<topic>.md, workflow/INDEX.md | intent + plan 状态均 done;8 条验收勾验含 commit SHA 证据;commit message 含关单 commit + 8 条勾验摘要 | | | 0 |
21
-
22
- **编排语义**:第 0 层 author → 第 1 层 gate-doc + confirm(confirm 为 human 确认门形态——宿主 AI 停下询问用户,不派子智能体;通过才派下层)→ 第 2 层 plan-commit → 第 3 层 build → 第 4 层 2 关静态门(并行 fan-out)→ 第 5 层 feat-commit → 第 6 层 closeout。失败且 retries > 0 → 重派(全新上下文);gate 非零 / human 驳回 → 中止后续、汇总报告失败项。每个 stage 每次尝试出结果记 `wf-journal.mjs add`;中止续跑先 `wf-journal.mjs status --wf pipeline-closing`(已 pass 不重跑)。
23
-
24
- **纪律**(先读):
25
- - 声明随 plan 确认后方可执行——本 workflow 是 plan 任务拆解的执行器;plan 草稿先经用户对话内确认。
26
- - 子智能体不跨确认门、不 commit / push(派单红线行:只改授权文件;缺输入或需偏离 → `BLOCKER:` 停下)。确认门一律 human 形态行表达(confirm 行即此),不得派子智能体代行。
27
- - 留痕:每个派单 stage 完成后向 `workflow/delegations.md` 委派结果表追加一行(`一次通过` / `返工×N` / `返工待修`)。
28
- - 解析校验先行(机器门 `node .agents/scripts/workflows-check.mjs`):role ∈ `.agents/roles/`、after 引用存在且无环、四形态恰填一项——任一不过即拒,不执行。
@@ -1,16 +0,0 @@
1
- ---
2
- name: 示例-并行实现评审
3
- description: 两域并行实现 → 汇聚过测试门 → 部署验证(step)→ 独立评审(示例,按 plan 改写后使用)
4
- concurrency: 2
5
- ---
6
- # workflow — 示例:并行实现评审
7
-
8
- > 格式示例:三形态各一处(role 派单 / gate / step);id / after / task 按 plan 改写;随 plan 确认后方可执行。机制口径见 `_TEMPLATE.md`。
9
-
10
- | id | after | role | step | task / params | files(授权) | accept(验收判据) | gate | retries |
11
- |----|-------|------|------|---------------|--------------|-------------------|------|---------|
12
- | backend | — | implementer | — | 实现后端改动(示例占位,按 plan 改写) | src/api/** | 项目测试命令通过 | | 0 |
13
- | frontend | — | implementer | — | 实现前端改动(示例占位,按 plan 改写) | web/** | 项目构建命令通过 | | 0 |
14
- | gate-all | backend,frontend | — | — | — | — | — | npm test | |
15
- | deploy-check | gate-all | — | 示例-部署验证 | env=staging | | 部署命令与冒烟 exit 0 | | 0 |
16
- | review | deploy-check | independent-reviewer | — | 独立评审两域改动是否符合 plan 与验收判据 | | 符合 plan 与判据 | | 0 |
@@ -1,17 +0,0 @@
1
- #!/bin/sh
2
- # Git commit-msg hook:提交类型枚举校验(自 pre-commit 迁入,2026-09-18 papercut 升级修复)
3
- # AGENTS.md「git提交」:Conventional Commits 中文,feat/fix/docs/style/refactor/perf
4
- # 豁免仅限真实 merge/revert 形态:git 默认消息(Merge …/Revert …)与自定义小写 merge:/revert: 前缀。
5
- # 2026-09-24 收紧:不再匹配任意 merge/revert 开头(如 "merged xxx"),空首行不再豁免(fail-closed)。
6
- # $1 为 git 传入的本次消息文件(真实待提交内容)
7
-
8
- msg=$(head -1 "$1" 2>/dev/null)
9
- case "$msg" in
10
- "Merge "*|"merge:"*|"Revert "*|"revert:"*) ;;
11
- *)
12
- if ! echo "$msg" | grep -qE "^(feat|fix|docs|style|refactor|perf)(\(|:|()"; then
13
- echo "commit-msg: 提交类型须为 feat/fix/docs/style/refactor/perf(AGENTS.md「git提交」),当前首行:$msg" >&2
14
- exit 1
15
- fi
16
- ;;
17
- esac
@@ -1,10 +0,0 @@
1
- #!/bin/sh
2
- # Git 原生 post-commit hook(经 core.hooksPath 挂载,git commit 后触发)
3
- # 非阻断缓存维护:把本次提交触及的 workflow/、wiki/ 文件从 kb-search 结构缓存
4
- # (.agents/cache/kb-index.json)摘除,收敛 [mtimeMs,size] 两元组的
5
- # 「同刻同尺寸」失效盲区至提交时点。
6
- # 判据与设计:workflow/intents/2026-09-23-kb-cache-post-commit-evict.md
7
- # 失败绝不影响提交结果:post-commit 本身非阻断 + evict 脚本坏输入静默 exit 0 + 此处 || true 三重兜底。
8
- git diff-tree --no-commit-id --name-only -r HEAD \
9
- | node .agents/scripts/kb-cache-evict.mjs 2>/dev/null || true
10
- exit 0
@@ -1,126 +0,0 @@
1
- #!/usr/bin/env node
2
- // Git 原生 pre-commit hook(经 core.hooksPath 挂载)— agentic-flow-kit 通用编排
3
- // 2026-10-13 门禁去 sh 化(B2,自 Shipyard.Material 参考实现回灌):钩子体不再含 sh 逻辑——git 仍以自带
4
- // sh 启动本文件(钩子机制要求),但 shebang 即 node,PATH 无 sh 不再影响任何逻辑;语言单化后 CI 代理/
5
- // 本地行为一致。写法为 CommonJS——无扩展名文件 node 缺省按 CJS 解析,不依赖 ≥22.7 的 ESM 语法探测。
6
- // 通用门禁序:闭环配对(增量) → 泳道完整性(增量) → wiki 台账(增量) → 索引漂移(增量) → 常驻面体积预算(增量) → 确认台账不变量(暂存触台账) → 项目门禁(local-pre-commit) → 敏感信息扫描+条件构建(commit-check.cjs;2026-10-16 起常规提交 --no-build——条件构建后移 pre-push 按推送范围执法,合并提交仍 --full 全量构建)
7
- // 项目专属门禁(架构红线/业务守卫等)放 .agents/hooks/local-pre-commit——sh 挂载点(add-gate 生态按行接线),
8
- // 存在即在本钩子内以 sh(缺则 bash)执行,返回非零即阻断提交
9
- // 合并提交场景由 .githooks/pre-merge-commit 原样转发到本脚本(合并时 git 调的是 pre-merge-commit,
10
- // 不是 pre-commit)——门禁清单只此一份,避免两处分叉
11
- // fail-closed(沿 Shipyard 2026-10-09 口径;node 化后天然成立——本进程即 node):门脚本缺失 = 拒提交;
12
- // 仅 local-pre-commit 保留「存在即执行」挂载点语义(缺失打 advisory)。
13
- const { spawnSync } = require('node:child_process');
14
- const fs = require('node:fs');
15
-
16
- const top = spawnSync('git', ['rev-parse', '--show-toplevel'], { encoding: 'utf8' });
17
- if (top.status !== 0 || !top.stdout.trim()) {
18
- console.error('pre-commit: 无法定位仓库根(git rev-parse --show-toplevel 失败)——提交已阻止');
19
- process.exit(1);
20
- }
21
- process.chdir(top.stdout.trim());
22
-
23
- // gate(label, script, args):node 直跑门脚本,非零即阻断(含 fail-closed 缺失检查)
24
- const requireScript = (rel) => {
25
- if (!fs.existsSync(rel)) {
26
- console.error(`pre-commit: 门脚本缺失 ${rel}——提交已阻止(脚本随包下发;flow-kit sync 恢复后重试)`);
27
- process.exit(1);
28
- }
29
- };
30
- const gate = (label, script, args = []) => {
31
- requireScript(script);
32
- const r = spawnSync(process.execPath, [script, ...args], { stdio: 'inherit' });
33
- if (r.status !== 0) {
34
- console.error(`pre-commit: ${label} 未通过,提交已阻止`);
35
- process.exit(r.status === null ? 1 : r.status);
36
- }
37
- };
38
-
39
- // 闭环配对门禁(增量版,check-pairing-incremental.mjs:本次暂存的 intents/incidents 入口须已有同名 plan;
40
- // L2/L3 另须同名 spec)。experiment/* 泳道分支(2026-09-30 hybrid-governance-explore-hardening):
41
- // 降级为 advisory——快速 PoC 迭代不因闭环文档断档被拦(断档报告照出),转正合入 main 由 pre-push
42
- // 加固门(check-loop --hardening)兜底。仅降级闭环文档面:常驻面 / 台账 / 敏感信息扫描等门禁不豁免。
43
- // 分支不可判(detached HEAD 等)走严格模式。
44
- const branch = spawnSync('git', ['rev-parse', '--abbrev-ref', 'HEAD'], { encoding: 'utf8' });
45
- const branchName = branch.status === 0 ? branch.stdout.trim() : '';
46
- if (branchName.startsWith('experiment/')) {
47
- console.error('pre-commit: experiment/* 泳道分支——闭环配对门禁降级为 advisory(报告不阻断;转正入 main 须过加固门)');
48
- const adv = spawnSync(process.execPath, ['.agents/hooks/check-pairing-incremental.mjs'], { stdio: 'inherit' });
49
- if (adv.status !== 0) console.error('pre-commit: (advisory)闭环配对断档已在上方列出——experiment 泳道不阻断提交');
50
- } else {
51
- gate('闭环配对(增量)', '.agents/hooks/check-pairing-incremental.mjs');
52
- }
53
-
54
- // 泳道完整性(增量,check-lane-surface.mjs——2026-10-01 drift-hardening):
55
- // 检查 A「触达面判低」——暂存命中项目 L2 触达面(.agents/lane-surfaces.txt,ERE 逐行;缺失/空=跳过,
56
- // 装户无感)且活跃入口(draft/approved / open/fixed)全为 L0/L1 → 拦;有活跃 L2/L3 → 放行;无活跃入口 →
57
- // 仅 advisory(docs/bootstrap 豁免类)。experiment/* 分支降级 advisory(转正由 pre-push 加固门兜底)。
58
- // 检查 B「探索标记缺失」——experiment/* 分支暂存 intent 缺「阶段: exploring」→ 拦(标记零成本,
59
- // advisory 免纪律不免标记——标记是加固门覆盖率的前提)。
60
- // 脚本缺失 fail-closed 阻断(见 gate())。
61
- // `git merge` 自动提交由 pre-merge-commit 传入 `--merge`(此时 MERGE_HEAD 已不可靠,不能靠探测);
62
- // 冲突解决后的手动 `git commit` 仍由脚本自己看 MERGE_HEAD(2026-10-16 自源仓回灌)。
63
- const mergeCommit = process.argv.includes('--merge');
64
- gate('泳道完整性(增量)', '.agents/scripts/check-lane-surface.mjs', mergeCommit ? ['--merge'] : []);
65
-
66
- // wiki 台账门禁(增量,check-wiki-ledger.mjs:暂存区触及 wiki/ 时跑 verify-wiki-consistency 三方一致性;
67
- // 无 wiki/ 变更即跳过。脚本缺失 fail-closed)
68
- gate('wiki 台账(增量)', '.agents/hooks/check-wiki-ledger.mjs');
69
-
70
- // 索引漂移(增量硬拦,check-index-incremental.mjs):暂存触及 workflow 四目录 / 归档 / INDEX.md 时,
71
- // gen-workflow-index.mjs --check 不一致即拒。卫生段检查 11 仍是 WARN,挡不住关单提交。
72
- // 未触及这些路径则脚本内跳过。脚本缺失 fail-closed。
73
- gate('索引漂移(增量)', '.agents/hooks/check-index-incremental.mjs');
74
-
75
- // 常驻面体积预算(增量硬拦,rule-budget.mjs --staged:只查本次暂存触及的条目与触及目录的合计;
76
- // 超限即阻断——常驻面只增不减,须先删除或下沉一条被取代条目再增。预算登记表缺失同样 fail-closed)
77
- requireScript('.agents/rule-budgets.txt');
78
- gate('常驻面体积预算', '.agents/scripts/rule-budget.mjs', ['--staged']);
79
-
80
- // 确认台账不变量前置(--staged,2026-10-02 ledger-ci-invariant):暂存的 confirmations.jsonl 与分片
81
- // confirmations.d/*.jsonl(2026-10-13 ledger-shard-default 起分片为默认写入口径,触发面同步扩大)必须
82
- // 是 HEAD 的逐字节前缀扩展(append-only)——本地提交时刻即拦「顺手重写台账」,CI 历史全扫兜底。
83
- // 暂存未触台账静默;触台账而脚本缺失 fail-closed 阻断。
84
- const staged = spawnSync('git', ['-c', 'core.quotepath=off', 'diff', '--cached', '--name-only'], { encoding: 'utf8' });
85
- const stagedFiles = String(staged.stdout || '').split(/\r?\n/).filter(Boolean).map((f) => f.replace(/\\/g, '/'));
86
- const touchesLedger = stagedFiles.some((f) => /^\.agents\/confirmations\.jsonl$|^\.agents\/confirmations\.d\/[^/]+\.jsonl$/.test(f));
87
- if (touchesLedger) {
88
- requireScript('.agents/scripts/check-ledger-invariant.mjs');
89
- const li = spawnSync(process.execPath, ['.agents/scripts/check-ledger-invariant.mjs', '--staged'], { stdio: 'inherit' });
90
- if (li.status !== 0) {
91
- console.error('pre-commit: 确认台账不变量未通过,提交已阻止——历史行禁删改(append-only),修正走追加补偿行');
92
- process.exit(li.status === null ? 1 : li.status);
93
- }
94
- }
95
-
96
- // 项目门禁挂载点:.agents/hooks/local-pre-commit(项目自建门禁/门禁模块接线处,add-gate 生态往里写行)。
97
- // 保持 sh 形态:以 sh(缺则 bash)执行;存在即执行、缺失打 advisory 不阻断(挂载点可选语义),
98
- // 但缺失不再无声——该文件随包下发,advisory 即误删信号。
99
- if (fs.existsSync('.agents/hooks/local-pre-commit')) {
100
- const shBin = spawnSync('sh', ['-c', 'true']).status === 0 ? 'sh' : 'bash';
101
- const lp = spawnSync(shBin, ['.agents/hooks/local-pre-commit'], { stdio: 'inherit' });
102
- if (lp.status !== 0) {
103
- console.error('pre-commit: 项目门禁(local-pre-commit)未通过,提交已阻止');
104
- process.exit(lp.status === null ? 1 : lp.status);
105
- }
106
- } else {
107
- console.error('pre-commit: (advisory)项目门禁挂载点 .agents/hooks/local-pre-commit 不在场——add-gate 接线处随包下发,若为误删请 flow-kit sync 恢复');
108
- }
109
-
110
- // 合并提交 → 构建验证覆盖【完整合并树】,不做按扩展名的条件裁剪。
111
- // 常规提交 --no-build(2026-10-16 构建门后移 pre-push,自源仓回灌):提交内环只跑敏感扫描,条件构建在
112
- // 推送时按 old..new 范围执法(.githooks/pre-push);合并结果是没人验证过的新状态,仍全量构建。
113
- // 两条路径:`git merge` 自动提交由 .githooks/pre-merge-commit 显式传 `--full` 转发到本脚本;
114
- // 冲突解决后手动 `git commit` 由 git 直接调本脚本,此处按 MERGE_HEAD 探测补上(此时合并仍在进行)。
115
- let fullArgs = process.argv.slice(2).filter((a) => a !== '--merge');
116
- if (fullArgs.length === 0) {
117
- const mergeHead = spawnSync('git', ['rev-parse', '-q', '--verify', 'MERGE_HEAD'], { encoding: 'utf8' });
118
- fullArgs = mergeHead.status === 0 ? ['--full'] : ['--no-build'];
119
- }
120
-
121
- const cc = spawnSync(process.execPath, ['.agents/hooks/commit-check.cjs', ...fullArgs], { stdio: 'inherit' });
122
- if (cc.status !== 0) {
123
- console.error('pre-commit: 验证未通过,提交已阻止');
124
- process.exit(cc.status === null ? 1 : cc.status);
125
- }
126
- process.exit(0);
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env node
2
- // Git 原生 pre-merge-commit hook(经 core.hooksPath 挂载;2026-10-13 随 pre-commit node 化(B2)改为 node 转发
3
- // ——转发不再经 sh。CommonJS——无扩展名文件 node 缺省按 CJS 解析,不依赖 ESM 语法探测)
4
- //
5
- // 背景:git 对 `git merge` 调的是**本钩子**,不是 pre-commit。此前仓库只挂了
6
- // pre-commit / pre-push / commit-msg,故合并提交绕过全部门禁、未经任何校验直接落库
7
- // (2026-09-19 实测,见 workflow/papercuts.md 同日行——那次合并带入后端 .cs 改动,
8
- // 靠人工补跑静态门 + 全量测试才覆盖到)。
9
- //
10
- // 做法:转发到 .githooks/pre-commit(门禁清单只此一份,避免两份拷贝日后分叉),
11
- // 并显式传 `--full` 与 `--merge`——本钩子「只对 merge 触发」这一身份就是最强信号,无需再去探测
12
- // MERGE_HEAD(2026-09-19 实测:本时点 MERGE_HEAD 已不可靠)。`--full` 令编译验证
13
- // 覆盖【完整合并树】、不按扩展名的条件裁剪:合并结果是没人验证过的新状态,且其 diff
14
- // 相对第一父,裁剪会漏掉需要重跑的一侧。`--merge` 令泳道检查 A 跳过(2026-10-16 自源仓回灌:
15
- // 同窗口 MERGE_HEAD 已不在,已关单产品路径会被误判「触达面判低」)。
16
- //
17
- // 冲突解决后手动 `git commit` 走的是 pre-commit 自身,那条路径由 pre-commit 内部的
18
- // MERGE_HEAD 探测覆盖(此时合并仍在进行,MERGE_HEAD 确定存在)。
19
- const { spawnSync } = require('node:child_process');
20
- const path = require('node:path');
21
-
22
- const top = spawnSync('git', ['rev-parse', '--show-toplevel'], { encoding: 'utf8' });
23
- if (top.status !== 0 || !top.stdout.trim()) {
24
- console.error('pre-merge-commit: 无法定位仓库根——合并提交已阻止');
25
- process.exit(1);
26
- }
27
- const hook = path.join(top.stdout.trim(), '.githooks', 'pre-commit');
28
- const r = spawnSync(process.execPath, [hook, '--full', '--merge'], { stdio: 'inherit' });
29
- process.exit(r.status === null ? 1 : r.status);
@@ -1,136 +0,0 @@
1
- #!/usr/bin/env node
2
- // Git 原生 pre-push hook(经 core.hooksPath 挂载,git push 时触发)— agentic-flow-kit 通用编排
3
- // 2026-10-16 node 化(自源仓 2ff869a9/13f67ef7 回灌 pre-push 面):钩子体不再含 sh 逻辑——git 仍以自带
4
- // sh 启动本文件(钩子机制要求),但 shebang 即 node,PATH 无 sh 不影响任何逻辑。写法为 CommonJS——
5
- // 无扩展名文件 node 缺省按 CJS 解析,不依赖 ≥22.7 的 ESM 语法探测。
6
- // 跑 .agents/scripts/check-loop.mjs:扫 workflow/ 闭环骨架断档(默认只扫硬门)
7
- // - 硬阻断(exit 1)= 配对断裂 / 回路断档 / 证据与确认链 / 发版未收口 → push 立即阻断
8
- // - 卫生段(模板占位 / 引用漂移 / 宿主副本 / 索引)不在本钩子。要看时跑 --hygiene 或 --all
9
- // stdin 有行时,每个非删除的本地 sha 用 --rev 扫那棵树。没有行时(手跑钩子)仍无参数扫工作区。
10
- //
11
- // 构建门(2026-10-16 自 pre-commit 后移):另跑 commit-check.cjs --range <old> <new> 按推送范围条件构建
12
- // (常规提交时刻只做敏感扫描——提交内环提速;构建执法集中到推送与关单)。范围匹配逻辑单源 =
13
- // commit-check.cjs。experiment/* 目标降级 advisory。手动运行(无 stdin 推送行)无范围事实,构建门跳过。
14
- //
15
- // experiment/* 泳道:**目标分支**为 experiment/* 时,闭环扫描与构建门降级 advisory(报告不阻断)——
16
- // 快速 PoC 推送不因闭环断档/构建失败被拦;转正(目标为 main)由加固门兜底。
17
- // 加固门(2026-10-01 v09-review-defects):推送**目标**为 refs/heads/main 时以 --hardening 运行
18
- // (无论来源分支——experiment/* 直推 main 同样覆盖),exploring 任务须先收口(intent approved/done +
19
- // 同名 plan 在场 + L2/L3 另须同名 spec;判据见 check-loop.mjs 加固门段),hard 失败即阻断 push。
20
- //
21
- // 回路日检(2026-10-16 自源仓 13f67ef7 回灌):退役催办与 papercut 报债此前无调度,机制空转。每个
22
- // 本地日在推送成功路径跑一次,advisory,失败不改退出码。摘要落 .agents/cache/loop-watch.jsonl(gitignore)。
23
- //
24
- // 机器门:本地钩子跑 check-loop.mjs。装户仓的远端门是随包下发的 .github/workflows/kit-ci.yml(verify.mjs)。
25
- // kit 源仓:.github/workflows/ci.yml 于 push main / 全部 PR 跑 npm test(lint + 全量套件)。
26
- // 不要用 `git push --no-verify` 绕开——发现 hard-block 应先修 workflow 文档再推。
27
- const { spawnSync } = require('node:child_process');
28
- const fs = require('node:fs');
29
-
30
- const top = spawnSync('git', ['rev-parse', '--show-toplevel'], { encoding: 'utf8' });
31
- if (top.status !== 0 || !top.stdout.trim()) {
32
- console.error('pre-push: 无法定位仓库根——推送已阻止');
33
- process.exit(1);
34
- }
35
- process.chdir(top.stdout.trim());
36
-
37
- const LOOP = '.agents/scripts/check-loop.mjs';
38
- if (!fs.existsSync(LOOP)) {
39
- console.error(`pre-push: 未找到 ${LOOP}——闭环扫描无法执行,推送已阻止(脚本随包下发;flow-kit sync 恢复后重试)`);
40
- process.exit(1);
41
- }
42
- // 构建门脚本(2026-10-16 自 pre-commit 后移):缺失 fail-closed
43
- const BUILD_CHECK = '.agents/hooks/commit-check.cjs';
44
- if (!fs.existsSync(BUILD_CHECK)) {
45
- console.error(`pre-push: 未找到 ${BUILD_CHECK}——构建门无法执行,推送已阻止(脚本随包下发;git checkout -- ${BUILD_CHECK} 恢复后重试)`);
46
- process.exit(1);
47
- }
48
-
49
- const runLoop = (args = []) => spawnSync(process.execPath, [LOOP, ...args], { stdio: 'inherit' });
50
- // 范围参数:远端全零 sha(新分支首推)→ 全量构建语义(commit-check 认全零 old)
51
- const rangeArgsOf = (remoteSha, localSha) => ['--range', remoteSha && !/^0+$/.test(remoteSha) ? remoteSha : '0'.repeat(40), localSha];
52
-
53
- let stdinText = '';
54
- try { stdinText = fs.readFileSync(0, 'utf8'); } catch { stdinText = ''; }
55
-
56
- let saw = 0;
57
- let rc = 0;
58
- for (const line of stdinText.split(/\r?\n/)) {
59
- if (!line.trim()) continue;
60
- const parts = line.trim().split(/\s+/);
61
- if (parts.length < 4) continue;
62
- const [localRef, localSha, remoteRef, remoteSha] = parts;
63
- saw = 1;
64
- if (/^0+$/.test(localSha)) continue; // 删除推送不扫
65
- // 按目标分支分派(判定键 = remote_ref):
66
- // main → 加固门(必带 --hardening);experiment/* → advisory(报告不阻断);其他 → 全量扫描(硬门)
67
- if (/^refs\/heads\/main$|^main$/.test(remoteRef)) {
68
- const r = runLoop(['--rev', localSha, '--hardening']);
69
- if (r.status !== 0 && rc === 0) rc = r.status === null ? 1 : r.status;
70
- const rb = spawnSync(process.execPath, [BUILD_CHECK, ...rangeArgsOf(remoteSha, localSha)], { stdio: 'inherit' });
71
- if (rb.status !== 0 && rc === 0) rc = rb.status === null ? 1 : rb.status;
72
- } else if (/^refs\/heads\/experiment\/|^experiment\//.test(remoteRef)) {
73
- console.error(`pre-push: experiment/* 目标分支(${remoteRef})——闭环扫描与构建门降级 advisory,不阻断`);
74
- const adv = spawnSync(process.execPath, [LOOP, '--rev', localSha], { stdio: 'inherit' });
75
- if (adv.status !== 0) console.error('pre-push: (advisory)闭环断档已在上方列出——experiment 泳道可推送,转正(推 main)须过加固门');
76
- const advB = spawnSync(process.execPath, [BUILD_CHECK, ...rangeArgsOf(remoteSha, localSha)], { stdio: 'inherit' });
77
- if (advB.status !== 0) console.error('pre-push: (advisory)构建门未过已在上方列出——experiment 泳道不阻断推送');
78
- } else {
79
- const r = runLoop(['--rev', localSha]);
80
- if (r.status !== 0 && rc === 0) rc = r.status === null ? 1 : r.status;
81
- const rb = spawnSync(process.execPath, [BUILD_CHECK, ...rangeArgsOf(remoteSha, localSha)], { stdio: 'inherit' });
82
- if (rb.status !== 0 && rc === 0) rc = rb.status === null ? 1 : rb.status;
83
- }
84
- }
85
-
86
- if (saw === 0) {
87
- const r = runLoop();
88
- if (r.status !== 0) rc = r.status === null ? 1 : r.status;
89
- console.error('pre-push: 手动运行无推送范围——构建门跳过(真实推送时按 old..new 范围执法)');
90
- }
91
-
92
- if (rc !== 0) {
93
- console.error('pre-push: 闭环骨架断档 / 构建未过(hard-block)未通过,push 已阻断。修 workflow 文档 / 构建错误后重推——不要用 --no-verify 绕过(本钩子是唯一机器门,无服务端兜底,见头部说明)');
94
- console.error('pre-push: 若为「加固未过」= experiment 泳道件转正前须收口:intent approved/done + 同名 plan(L2/L3 另须 spec)且状态非 draft');
95
- process.exit(rc);
96
- }
97
-
98
- // 回路日检(2026-10-16 自源仓 13f67ef7 回灌):每个本地日在推送成功路径跑一次,advisory,失败不改退出码。
99
- try {
100
- const cacheDir = '.agents/cache';
101
- const stampPath = `${cacheDir}/loop-watch-stamp`;
102
- const ledgerPath = `${cacheDir}/loop-watch.jsonl`;
103
- const now = new Date();
104
- const today = `${now.getFullYear()}-${String(now.getMonth() + 1).padStart(2, '0')}-${String(now.getDate()).padStart(2, '0')}`;
105
- let prev = '';
106
- try { prev = fs.readFileSync(stampPath, 'utf8').trim(); } catch { /* 首跑 */ }
107
- if (prev !== today) {
108
- fs.mkdirSync(cacheDir, { recursive: true });
109
- // 退役催办:mechanism-retire-watch(--json 产 actions);papercut 报债:kit 复用 sensor --json 取 debt
110
- const jobs = [
111
- ['retire-watch', '.agents/scripts/mechanism-retire-watch.mjs'],
112
- ['papercut-report', '.agents/scripts/papercut-debt-sensor.mjs'],
113
- ];
114
- const runs = [];
115
- for (const [id, script] of jobs) {
116
- if (!fs.existsSync(script)) { runs.push({ id, missing: true }); continue; }
117
- const r = spawnSync(process.execPath, [script, '--json'], { encoding: 'utf8', maxBuffer: 8 * 1024 * 1024 });
118
- let summary = {};
119
- try { summary = JSON.parse(r.stdout || '{}'); } catch { summary = { parseError: true }; }
120
- runs.push({
121
- id,
122
- exit: r.status,
123
- actions: Array.isArray(summary.actions) ? summary.actions.length : null,
124
- debt: typeof summary.debt === 'number' ? summary.debt : null,
125
- });
126
- }
127
- fs.appendFileSync(ledgerPath, `${JSON.stringify({ ts: now.toISOString(), day: today, runs })}\n`);
128
- fs.writeFileSync(stampPath, `${today}\n`);
129
- const retire = runs.find((x) => x.id === 'retire-watch');
130
- const paper = runs.find((x) => x.id === 'papercut-report');
131
- console.error(`pre-push: (advisory)回路日检已记 ${ledgerPath}(退役动作 ${retire && retire.actions != null ? retire.actions : '?'},papercut debt ${paper && paper.debt != null ? paper.debt : '?'})`);
132
- }
133
- } catch (e) {
134
- console.error(`pre-push: (advisory)回路日检跳过——${e.message}`);
135
- }
136
- process.exit(0);