bigpowers 2.82.3 → 2.83.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 (355) hide show
  1. package/.agents/skills/align-grid/SKILL.md +110 -0
  2. package/.agents/skills/assess-impact/SKILL.md +91 -0
  3. package/.agents/skills/audit-code/SKILL.md +187 -0
  4. package/.agents/skills/audit-plan/SKILL.md +89 -0
  5. package/.agents/skills/build-epic/SKILL.md +105 -0
  6. package/.agents/skills/change-request/SKILL.md +121 -0
  7. package/.agents/skills/commit-message/SKILL.md +140 -0
  8. package/.agents/skills/compose-workflow/SKILL.md +82 -0
  9. package/.agents/skills/context7-mcp/SKILL.md +55 -0
  10. package/.agents/skills/craft-skill/SKILL.md +179 -0
  11. package/.agents/skills/deepen-architecture/SKILL.md +260 -0
  12. package/.agents/skills/define-language/SKILL.md +80 -0
  13. package/.agents/skills/define-success/SKILL.md +65 -0
  14. package/.agents/skills/delegate-task/SKILL.md +91 -0
  15. package/.agents/skills/deploy/SKILL.md +198 -0
  16. package/.agents/skills/design-interface/SKILL.md +97 -0
  17. package/.agents/skills/develop-tdd/SKILL.md +406 -0
  18. package/.agents/skills/diagnose-root/SKILL.md +24 -0
  19. package/.agents/skills/diagnose-stall/SKILL.md +54 -0
  20. package/.agents/skills/dispatch-agents/SKILL.md +118 -0
  21. package/.agents/skills/edit-document/SKILL.md +23 -0
  22. package/.agents/skills/elaborate-spec/SKILL.md +101 -0
  23. package/.agents/skills/enforce-first/SKILL.md +32 -0
  24. package/.agents/skills/evolve-skill/SKILL.md +55 -0
  25. package/.agents/skills/execute-plan/SKILL.md +61 -0
  26. package/.agents/skills/extract-design/SKILL.md +132 -0
  27. package/.agents/skills/find-way/SKILL.md +191 -0
  28. package/.agents/skills/fix-bug/SKILL.md +67 -0
  29. package/.agents/skills/gate-trace/SKILL.md +88 -0
  30. package/.agents/skills/generate-allure-report/SKILL.md +285 -0
  31. package/.agents/skills/grill-me/SKILL.md +96 -0
  32. package/.agents/skills/grill-with-docs/SKILL.md +41 -0
  33. package/.agents/skills/guard-git/SKILL.md +231 -0
  34. package/.agents/skills/harden-vps/SKILL.md +288 -0
  35. package/.agents/skills/hook-commits/SKILL.md +94 -0
  36. package/.agents/skills/inspect-quality/SKILL.md +106 -0
  37. package/.agents/skills/investigate-bug/SKILL.md +127 -0
  38. package/.agents/skills/kickoff-branch/SKILL.md +143 -0
  39. package/.agents/skills/maintain-wiki/SKILL.md +64 -0
  40. package/.agents/skills/map-codebase/SKILL.md +71 -0
  41. package/.agents/skills/migrate-spec/SKILL.md +862 -0
  42. package/.agents/skills/model-domain/SKILL.md +232 -0
  43. package/.agents/skills/orchestrate-project/SKILL.md +174 -0
  44. package/.agents/skills/organize-workspace/SKILL.md +164 -0
  45. package/.agents/skills/plan-refactor/SKILL.md +87 -0
  46. package/.agents/skills/plan-release/SKILL.md +145 -0
  47. package/.agents/skills/plan-tests/SKILL.md +75 -0
  48. package/.agents/skills/plan-work/SKILL.md +260 -0
  49. package/.agents/skills/publish-package/SKILL.md +328 -0
  50. package/.agents/skills/quick-fix/SKILL.md +114 -0
  51. package/.agents/skills/release-branch/SKILL.md +298 -0
  52. package/.agents/skills/request-review/SKILL.md +112 -0
  53. package/.agents/skills/research-first/SKILL.md +87 -0
  54. package/.agents/skills/reset-baseline/SKILL.md +21 -0
  55. package/.agents/skills/respond-review/SKILL.md +71 -0
  56. package/.agents/skills/run-benchmark/SKILL.md +85 -0
  57. package/.agents/skills/run-evals/SKILL.md +80 -0
  58. package/.agents/skills/run-planning/SKILL.md +101 -0
  59. package/.agents/skills/scope-work/SKILL.md +63 -0
  60. package/.agents/skills/search-skills/SKILL.md +73 -0
  61. package/.agents/skills/security-review/SKILL.md +384 -0
  62. package/.agents/skills/seed-conventions/SKILL.md +285 -0
  63. package/.agents/skills/session-state/SKILL.md +146 -0
  64. package/.agents/skills/setup-environment/SKILL.md +39 -0
  65. package/.agents/skills/simulate-agents/SKILL.md +26 -0
  66. package/.agents/skills/slice-tasks/SKILL.md +68 -0
  67. package/.agents/skills/smoke-test/SKILL.md +242 -0
  68. package/.agents/skills/spike-prototype/SKILL.md +95 -0
  69. package/.agents/skills/stocktake-skills/SKILL.md +72 -0
  70. package/.agents/skills/survey-context/SKILL.md +135 -0
  71. package/.agents/skills/terse-mode/SKILL.md +42 -0
  72. package/.agents/skills/trace-requirement/SKILL.md +69 -0
  73. package/.agents/skills/using-bigpowers/SKILL.md +111 -0
  74. package/.agents/skills/validate-contracts/SKILL.md +309 -0
  75. package/.agents/skills/validate-fix/SKILL.md +106 -0
  76. package/.agents/skills/verify-work/SKILL.md +191 -0
  77. package/.agents/skills/visual-dashboard/SKILL.md +50 -0
  78. package/.agents/skills/wire-ci/SKILL.md +375 -0
  79. package/.agents/skills/wire-observability/SKILL.md +97 -0
  80. package/.agents/skills/write-document/SKILL.md +255 -0
  81. package/.hermes/skills/align-grid/SKILL.md +110 -0
  82. package/.hermes/skills/assess-impact/SKILL.md +91 -0
  83. package/.hermes/skills/audit-code/SKILL.md +187 -0
  84. package/.hermes/skills/audit-plan/SKILL.md +89 -0
  85. package/.hermes/skills/build-epic/SKILL.md +105 -0
  86. package/.hermes/skills/change-request/SKILL.md +121 -0
  87. package/.hermes/skills/commit-message/SKILL.md +140 -0
  88. package/.hermes/skills/compose-workflow/SKILL.md +82 -0
  89. package/.hermes/skills/context7-mcp/SKILL.md +55 -0
  90. package/.hermes/skills/craft-skill/SKILL.md +179 -0
  91. package/.hermes/skills/deepen-architecture/SKILL.md +260 -0
  92. package/.hermes/skills/define-language/SKILL.md +80 -0
  93. package/.hermes/skills/define-success/SKILL.md +65 -0
  94. package/.hermes/skills/delegate-task/SKILL.md +91 -0
  95. package/.hermes/skills/deploy/SKILL.md +198 -0
  96. package/.hermes/skills/design-interface/SKILL.md +97 -0
  97. package/.hermes/skills/develop-tdd/SKILL.md +406 -0
  98. package/.hermes/skills/diagnose-root/SKILL.md +24 -0
  99. package/.hermes/skills/diagnose-stall/SKILL.md +54 -0
  100. package/.hermes/skills/dispatch-agents/SKILL.md +118 -0
  101. package/.hermes/skills/edit-document/SKILL.md +23 -0
  102. package/.hermes/skills/elaborate-spec/SKILL.md +101 -0
  103. package/.hermes/skills/enforce-first/SKILL.md +32 -0
  104. package/.hermes/skills/evolve-skill/SKILL.md +55 -0
  105. package/.hermes/skills/execute-plan/SKILL.md +61 -0
  106. package/.hermes/skills/extract-design/SKILL.md +132 -0
  107. package/.hermes/skills/find-way/SKILL.md +191 -0
  108. package/.hermes/skills/fix-bug/SKILL.md +67 -0
  109. package/.hermes/skills/gate-trace/SKILL.md +88 -0
  110. package/.hermes/skills/generate-allure-report/SKILL.md +285 -0
  111. package/.hermes/skills/grill-me/SKILL.md +96 -0
  112. package/.hermes/skills/grill-with-docs/SKILL.md +41 -0
  113. package/.hermes/skills/guard-git/SKILL.md +231 -0
  114. package/.hermes/skills/harden-vps/SKILL.md +288 -0
  115. package/.hermes/skills/hook-commits/SKILL.md +94 -0
  116. package/.hermes/skills/inspect-quality/SKILL.md +106 -0
  117. package/.hermes/skills/investigate-bug/SKILL.md +127 -0
  118. package/.hermes/skills/kickoff-branch/SKILL.md +143 -0
  119. package/.hermes/skills/maintain-wiki/SKILL.md +64 -0
  120. package/.hermes/skills/map-codebase/SKILL.md +71 -0
  121. package/.hermes/skills/migrate-spec/SKILL.md +862 -0
  122. package/.hermes/skills/model-domain/SKILL.md +232 -0
  123. package/.hermes/skills/orchestrate-project/SKILL.md +174 -0
  124. package/.hermes/skills/organize-workspace/SKILL.md +164 -0
  125. package/.hermes/skills/plan-refactor/SKILL.md +87 -0
  126. package/.hermes/skills/plan-release/SKILL.md +145 -0
  127. package/.hermes/skills/plan-tests/SKILL.md +75 -0
  128. package/.hermes/skills/plan-work/SKILL.md +260 -0
  129. package/.hermes/skills/publish-package/SKILL.md +328 -0
  130. package/.hermes/skills/quick-fix/SKILL.md +114 -0
  131. package/.hermes/skills/release-branch/SKILL.md +298 -0
  132. package/.hermes/skills/request-review/SKILL.md +112 -0
  133. package/.hermes/skills/research-first/SKILL.md +87 -0
  134. package/.hermes/skills/reset-baseline/SKILL.md +21 -0
  135. package/.hermes/skills/respond-review/SKILL.md +71 -0
  136. package/.hermes/skills/run-benchmark/SKILL.md +85 -0
  137. package/.hermes/skills/run-evals/SKILL.md +80 -0
  138. package/.hermes/skills/run-planning/SKILL.md +101 -0
  139. package/.hermes/skills/scope-work/SKILL.md +63 -0
  140. package/.hermes/skills/search-skills/SKILL.md +73 -0
  141. package/.hermes/skills/security-review/SKILL.md +384 -0
  142. package/.hermes/skills/seed-conventions/SKILL.md +285 -0
  143. package/.hermes/skills/session-state/SKILL.md +146 -0
  144. package/.hermes/skills/setup-environment/SKILL.md +39 -0
  145. package/.hermes/skills/simulate-agents/SKILL.md +26 -0
  146. package/.hermes/skills/slice-tasks/SKILL.md +68 -0
  147. package/.hermes/skills/smoke-test/SKILL.md +242 -0
  148. package/.hermes/skills/spike-prototype/SKILL.md +95 -0
  149. package/.hermes/skills/stocktake-skills/SKILL.md +72 -0
  150. package/.hermes/skills/survey-context/SKILL.md +135 -0
  151. package/.hermes/skills/terse-mode/SKILL.md +42 -0
  152. package/.hermes/skills/trace-requirement/SKILL.md +69 -0
  153. package/.hermes/skills/using-bigpowers/SKILL.md +111 -0
  154. package/.hermes/skills/validate-contracts/SKILL.md +309 -0
  155. package/.hermes/skills/validate-fix/SKILL.md +106 -0
  156. package/.hermes/skills/verify-work/SKILL.md +191 -0
  157. package/.hermes/skills/visual-dashboard/SKILL.md +50 -0
  158. package/.hermes/skills/wire-ci/SKILL.md +375 -0
  159. package/.hermes/skills/wire-observability/SKILL.md +97 -0
  160. package/.hermes/skills/write-document/SKILL.md +255 -0
  161. package/.mimocode/skills/align-grid/SKILL.md +110 -0
  162. package/.mimocode/skills/assess-impact/SKILL.md +91 -0
  163. package/.mimocode/skills/audit-code/SKILL.md +187 -0
  164. package/.mimocode/skills/audit-plan/SKILL.md +89 -0
  165. package/.mimocode/skills/build-epic/SKILL.md +105 -0
  166. package/.mimocode/skills/change-request/SKILL.md +121 -0
  167. package/.mimocode/skills/commit-message/SKILL.md +140 -0
  168. package/.mimocode/skills/compose-workflow/SKILL.md +82 -0
  169. package/.mimocode/skills/context7-mcp/SKILL.md +55 -0
  170. package/.mimocode/skills/craft-skill/SKILL.md +179 -0
  171. package/.mimocode/skills/deepen-architecture/SKILL.md +260 -0
  172. package/.mimocode/skills/define-language/SKILL.md +80 -0
  173. package/.mimocode/skills/define-success/SKILL.md +65 -0
  174. package/.mimocode/skills/delegate-task/SKILL.md +91 -0
  175. package/.mimocode/skills/deploy/SKILL.md +198 -0
  176. package/.mimocode/skills/design-interface/SKILL.md +97 -0
  177. package/.mimocode/skills/develop-tdd/SKILL.md +406 -0
  178. package/.mimocode/skills/diagnose-root/SKILL.md +24 -0
  179. package/.mimocode/skills/diagnose-stall/SKILL.md +54 -0
  180. package/.mimocode/skills/dispatch-agents/SKILL.md +118 -0
  181. package/.mimocode/skills/edit-document/SKILL.md +23 -0
  182. package/.mimocode/skills/elaborate-spec/SKILL.md +101 -0
  183. package/.mimocode/skills/enforce-first/SKILL.md +32 -0
  184. package/.mimocode/skills/evolve-skill/SKILL.md +55 -0
  185. package/.mimocode/skills/execute-plan/SKILL.md +61 -0
  186. package/.mimocode/skills/extract-design/SKILL.md +132 -0
  187. package/.mimocode/skills/find-way/SKILL.md +191 -0
  188. package/.mimocode/skills/fix-bug/SKILL.md +67 -0
  189. package/.mimocode/skills/gate-trace/SKILL.md +88 -0
  190. package/.mimocode/skills/generate-allure-report/SKILL.md +285 -0
  191. package/.mimocode/skills/grill-me/SKILL.md +96 -0
  192. package/.mimocode/skills/grill-with-docs/SKILL.md +41 -0
  193. package/.mimocode/skills/guard-git/SKILL.md +231 -0
  194. package/.mimocode/skills/harden-vps/SKILL.md +288 -0
  195. package/.mimocode/skills/hook-commits/SKILL.md +94 -0
  196. package/.mimocode/skills/inspect-quality/SKILL.md +106 -0
  197. package/.mimocode/skills/investigate-bug/SKILL.md +127 -0
  198. package/.mimocode/skills/kickoff-branch/SKILL.md +143 -0
  199. package/.mimocode/skills/maintain-wiki/SKILL.md +64 -0
  200. package/.mimocode/skills/map-codebase/SKILL.md +71 -0
  201. package/.mimocode/skills/migrate-spec/SKILL.md +862 -0
  202. package/.mimocode/skills/model-domain/SKILL.md +232 -0
  203. package/.mimocode/skills/orchestrate-project/SKILL.md +174 -0
  204. package/.mimocode/skills/organize-workspace/SKILL.md +164 -0
  205. package/.mimocode/skills/plan-refactor/SKILL.md +87 -0
  206. package/.mimocode/skills/plan-release/SKILL.md +145 -0
  207. package/.mimocode/skills/plan-tests/SKILL.md +75 -0
  208. package/.mimocode/skills/plan-work/SKILL.md +260 -0
  209. package/.mimocode/skills/publish-package/SKILL.md +328 -0
  210. package/.mimocode/skills/quick-fix/SKILL.md +114 -0
  211. package/.mimocode/skills/release-branch/SKILL.md +298 -0
  212. package/.mimocode/skills/request-review/SKILL.md +112 -0
  213. package/.mimocode/skills/research-first/SKILL.md +87 -0
  214. package/.mimocode/skills/reset-baseline/SKILL.md +21 -0
  215. package/.mimocode/skills/respond-review/SKILL.md +71 -0
  216. package/.mimocode/skills/run-benchmark/SKILL.md +85 -0
  217. package/.mimocode/skills/run-evals/SKILL.md +80 -0
  218. package/.mimocode/skills/run-planning/SKILL.md +101 -0
  219. package/.mimocode/skills/scope-work/SKILL.md +63 -0
  220. package/.mimocode/skills/search-skills/SKILL.md +73 -0
  221. package/.mimocode/skills/security-review/SKILL.md +384 -0
  222. package/.mimocode/skills/seed-conventions/SKILL.md +285 -0
  223. package/.mimocode/skills/session-state/SKILL.md +146 -0
  224. package/.mimocode/skills/setup-environment/SKILL.md +39 -0
  225. package/.mimocode/skills/simulate-agents/SKILL.md +26 -0
  226. package/.mimocode/skills/slice-tasks/SKILL.md +68 -0
  227. package/.mimocode/skills/smoke-test/SKILL.md +242 -0
  228. package/.mimocode/skills/spike-prototype/SKILL.md +95 -0
  229. package/.mimocode/skills/stocktake-skills/SKILL.md +72 -0
  230. package/.mimocode/skills/survey-context/SKILL.md +135 -0
  231. package/.mimocode/skills/terse-mode/SKILL.md +42 -0
  232. package/.mimocode/skills/trace-requirement/SKILL.md +69 -0
  233. package/.mimocode/skills/using-bigpowers/SKILL.md +111 -0
  234. package/.mimocode/skills/validate-contracts/SKILL.md +309 -0
  235. package/.mimocode/skills/validate-fix/SKILL.md +106 -0
  236. package/.mimocode/skills/verify-work/SKILL.md +191 -0
  237. package/.mimocode/skills/visual-dashboard/SKILL.md +50 -0
  238. package/.mimocode/skills/wire-ci/SKILL.md +375 -0
  239. package/.mimocode/skills/wire-observability/SKILL.md +97 -0
  240. package/.mimocode/skills/write-document/SKILL.md +255 -0
  241. package/.pi/package.json +1 -1
  242. package/.zcode/skills/align-grid/SKILL.md +110 -0
  243. package/.zcode/skills/assess-impact/SKILL.md +91 -0
  244. package/.zcode/skills/audit-code/SKILL.md +187 -0
  245. package/.zcode/skills/audit-plan/SKILL.md +89 -0
  246. package/.zcode/skills/build-epic/SKILL.md +105 -0
  247. package/.zcode/skills/change-request/SKILL.md +121 -0
  248. package/.zcode/skills/commit-message/SKILL.md +140 -0
  249. package/.zcode/skills/compose-workflow/SKILL.md +82 -0
  250. package/.zcode/skills/context7-mcp/SKILL.md +55 -0
  251. package/.zcode/skills/craft-skill/SKILL.md +179 -0
  252. package/.zcode/skills/deepen-architecture/SKILL.md +260 -0
  253. package/.zcode/skills/define-language/SKILL.md +80 -0
  254. package/.zcode/skills/define-success/SKILL.md +65 -0
  255. package/.zcode/skills/delegate-task/SKILL.md +91 -0
  256. package/.zcode/skills/deploy/SKILL.md +198 -0
  257. package/.zcode/skills/design-interface/SKILL.md +97 -0
  258. package/.zcode/skills/develop-tdd/SKILL.md +406 -0
  259. package/.zcode/skills/diagnose-root/SKILL.md +24 -0
  260. package/.zcode/skills/diagnose-stall/SKILL.md +54 -0
  261. package/.zcode/skills/dispatch-agents/SKILL.md +118 -0
  262. package/.zcode/skills/edit-document/SKILL.md +23 -0
  263. package/.zcode/skills/elaborate-spec/SKILL.md +101 -0
  264. package/.zcode/skills/enforce-first/SKILL.md +32 -0
  265. package/.zcode/skills/evolve-skill/SKILL.md +55 -0
  266. package/.zcode/skills/execute-plan/SKILL.md +61 -0
  267. package/.zcode/skills/extract-design/SKILL.md +132 -0
  268. package/.zcode/skills/find-way/SKILL.md +191 -0
  269. package/.zcode/skills/fix-bug/SKILL.md +67 -0
  270. package/.zcode/skills/gate-trace/SKILL.md +88 -0
  271. package/.zcode/skills/generate-allure-report/SKILL.md +285 -0
  272. package/.zcode/skills/grill-me/SKILL.md +96 -0
  273. package/.zcode/skills/grill-with-docs/SKILL.md +41 -0
  274. package/.zcode/skills/guard-git/SKILL.md +231 -0
  275. package/.zcode/skills/harden-vps/SKILL.md +288 -0
  276. package/.zcode/skills/hook-commits/SKILL.md +94 -0
  277. package/.zcode/skills/inspect-quality/SKILL.md +106 -0
  278. package/.zcode/skills/investigate-bug/SKILL.md +127 -0
  279. package/.zcode/skills/kickoff-branch/SKILL.md +143 -0
  280. package/.zcode/skills/maintain-wiki/SKILL.md +64 -0
  281. package/.zcode/skills/map-codebase/SKILL.md +71 -0
  282. package/.zcode/skills/migrate-spec/SKILL.md +862 -0
  283. package/.zcode/skills/model-domain/SKILL.md +232 -0
  284. package/.zcode/skills/orchestrate-project/SKILL.md +174 -0
  285. package/.zcode/skills/organize-workspace/SKILL.md +164 -0
  286. package/.zcode/skills/plan-refactor/SKILL.md +87 -0
  287. package/.zcode/skills/plan-release/SKILL.md +145 -0
  288. package/.zcode/skills/plan-tests/SKILL.md +75 -0
  289. package/.zcode/skills/plan-work/SKILL.md +260 -0
  290. package/.zcode/skills/publish-package/SKILL.md +328 -0
  291. package/.zcode/skills/quick-fix/SKILL.md +114 -0
  292. package/.zcode/skills/release-branch/SKILL.md +298 -0
  293. package/.zcode/skills/request-review/SKILL.md +112 -0
  294. package/.zcode/skills/research-first/SKILL.md +87 -0
  295. package/.zcode/skills/reset-baseline/SKILL.md +21 -0
  296. package/.zcode/skills/respond-review/SKILL.md +71 -0
  297. package/.zcode/skills/run-benchmark/SKILL.md +85 -0
  298. package/.zcode/skills/run-evals/SKILL.md +80 -0
  299. package/.zcode/skills/run-planning/SKILL.md +101 -0
  300. package/.zcode/skills/scope-work/SKILL.md +63 -0
  301. package/.zcode/skills/search-skills/SKILL.md +73 -0
  302. package/.zcode/skills/security-review/SKILL.md +384 -0
  303. package/.zcode/skills/seed-conventions/SKILL.md +285 -0
  304. package/.zcode/skills/session-state/SKILL.md +146 -0
  305. package/.zcode/skills/setup-environment/SKILL.md +39 -0
  306. package/.zcode/skills/simulate-agents/SKILL.md +26 -0
  307. package/.zcode/skills/slice-tasks/SKILL.md +68 -0
  308. package/.zcode/skills/smoke-test/SKILL.md +242 -0
  309. package/.zcode/skills/spike-prototype/SKILL.md +95 -0
  310. package/.zcode/skills/stocktake-skills/SKILL.md +72 -0
  311. package/.zcode/skills/survey-context/SKILL.md +135 -0
  312. package/.zcode/skills/terse-mode/SKILL.md +42 -0
  313. package/.zcode/skills/trace-requirement/SKILL.md +69 -0
  314. package/.zcode/skills/using-bigpowers/SKILL.md +111 -0
  315. package/.zcode/skills/validate-contracts/SKILL.md +309 -0
  316. package/.zcode/skills/validate-fix/SKILL.md +106 -0
  317. package/.zcode/skills/verify-work/SKILL.md +191 -0
  318. package/.zcode/skills/visual-dashboard/SKILL.md +50 -0
  319. package/.zcode/skills/wire-ci/SKILL.md +375 -0
  320. package/.zcode/skills/wire-observability/SKILL.md +97 -0
  321. package/.zcode/skills/write-document/SKILL.md +255 -0
  322. package/CHANGELOG.md +27 -0
  323. package/bin/setup.js +13 -4
  324. package/package.json +1 -1
  325. package/scripts/adapters/agy.sh +44 -1
  326. package/scripts/adapters/gemini.sh +83 -0
  327. package/scripts/adapters/hermes.sh +53 -1
  328. package/scripts/adapters/mimo.sh +41 -0
  329. package/scripts/adapters/zcode.sh +37 -0
  330. package/scripts/hooks/hermes/gateway/session-log/HOOK.yaml +5 -0
  331. package/scripts/hooks/hermes/gateway/session-log/handler.py +7 -0
  332. package/scripts/hooks/hermes/plugin/guard-git-plugin.py +14 -0
  333. package/scripts/hooks/hermes/shell/block-dangerous-terminal.sh +23 -0
  334. package/scripts/hooks/hermes/shell/hooks-config.example.yaml +7 -0
  335. package/scripts/install-cursor-skills-local.sh +8 -6
  336. package/scripts/install-cursor-skills.sh +15 -25
  337. package/scripts/install.sh +211 -13
  338. package/scripts/lib/__pycache__/link_utils.cpython-312.pyc +0 -0
  339. package/scripts/lib/golden-suite-gates.sh +2 -1
  340. package/scripts/lib/install-helpers.js +199 -4
  341. package/scripts/lib/sync-render.sh +43 -0
  342. package/scripts/lib/target-contracts.sh +22 -0
  343. package/scripts/lib/trace-matrix.py +1 -1
  344. package/scripts/lib/trace-stories.py +1 -1
  345. package/scripts/targets.yaml +31 -1
  346. package/scripts/test-agy-hub.sh +59 -0
  347. package/scripts/test-gemini-adapter.sh +70 -0
  348. package/scripts/test-gemini-hub.sh +55 -0
  349. package/scripts/test-hermes-adapter.sh +85 -0
  350. package/scripts/test-hermes-hub.sh +51 -0
  351. package/scripts/test-install-helpers.js +103 -0
  352. package/scripts/test-install-helpers.sh +7 -0
  353. package/scripts/test-mimo-hub.sh +51 -0
  354. package/scripts/test-zcode-hub.sh +51 -0
  355. package/scripts/verify-install.sh +31 -0
@@ -0,0 +1,135 @@
1
+ ---
2
+ name: survey-context
3
+ model: haiku
4
+ description: "Per-task context bootstrap — reads existing specs/ and tech-architecture docs to map the current lifecycle phase and suggest the next skill. Use at the start of any task, when returning after a break, or when unsure what to do next. For deriving a tech-stack doc from scratch, use map-codebase first."
5
+ ---
6
+
7
+ # Survey Context
8
+
9
+ Read the project's current state and give a phase map + next-skill recommendation. This is the "where am I?" skill — run it at the start of every task.
10
+
11
+ > **Use this vs map-codebase:** `survey-context` consumes existing specs and docs (fast; does not re-derive). `map-codebase` builds the tech-stack doc from scratch by scanning the codebase. Run `map-codebase` when `specs/tech-architecture/tech-stack.md` doesn't exist yet; run `survey-context` when it does.
12
+
13
+ > **HARD GATE** — Read specs/ files before suggesting next steps. If state.yaml is stale or contradicts the codebase, request clarification rather than assuming intent.
14
+
15
+ Orchestrate-project 6 phases: Phase 1 Discover - Phase 2 Elaborate - Phase 3 Plan - Phase 4 Build - Phase 5 Verify - Phase 6 Release
16
+
17
+ ## Process
18
+
19
+ > **Timing:** `bash scripts/bp-timing.sh start survey-context` at invocation; `bash scripts/bp-timing.sh end survey-context` before handoff.
20
+
21
+ ### 1. Read CONVENTIONS.md
22
+
23
+ If `CONVENTIONS.md` exists at the project root, read it first. It contains the rules all agents must follow in this project.
24
+
25
+ ### 2. Read specs/ (YAML-first)
26
+
27
+ Scan the `specs/` directory if it exists:
28
+
29
+ ```
30
+ specs/
31
+ ├── state.yaml → session: active_flow, epic, git, handoff
32
+ ├── release-plan.yaml → target version, WSJF epic index
33
+ ├── execution-status.yaml → flat story/epic status
34
+ ├── planning-status.yaml → discover-phase checklist (optional)
35
+ ├── requirements/
36
+ │ ├── VISION_LATEST.yaml
37
+ │ ├── SCOPE_LATEST.yaml
38
+ │ └── GLOSSARY_LATEST.yaml
39
+ ├── plans/ → TECH_STACK, TEST_PLAN, etc.
40
+ ├── epics/ → eNN shards (flat yaml or eNN/stories/)
41
+ └── bugs/ → BUG-*.md + registry.yaml
42
+ ```
43
+
44
+ For each YAML file found, note: exists? keys populated? `handoff.next_skill`?
45
+
46
+ Legacy markdown (`specs/archive/STATE.md`, `RELEASE-PLAN.md`) is **not** SoT if YAML exists.
47
+
48
+ → verify: `bash scripts/validate-specs-yaml.sh 2>/dev/null || echo "YAML layout incomplete"`
49
+
50
+ ### 3. Read CLAUDE.md
51
+
52
+ If `CLAUDE.md` exists at the project root, read it for project context (stack, commands, architecture, conventions).
53
+
54
+ ### 4. Check git state
55
+
56
+ ```bash
57
+ git status --short
58
+ git log --oneline -5
59
+ git branch --show-current
60
+ ```
61
+
62
+ Note: is there a feature branch active? Are there uncommitted changes? Do they match `specs/state.yaml` `git` block?
63
+
64
+ ### 5. Map the lifecycle phase
65
+
66
+ Based on what you've found, identify which PMBOK phase this project is currently in:
67
+
68
+ | Phase | Signals |
69
+ |-------|---------|
70
+ | **Discover** | No `requirements/SCOPE_LATEST.yaml` yet, or only rough notes |
71
+ | **Design** | SCOPE exists but no `release-plan.yaml` |
72
+ | **Plan** | `release-plan.yaml` exists; on `main`/`master` branch |
73
+ | **Initiate** | On a feature branch; no code changes yet |
74
+ | **Execute** | `state.yaml` `active_flow: build_epic`; epic capsule in progress |
75
+ | **Verify** | Implementation done; run `verify-work` or `run-evals` |
76
+ | **Bug** | `state.yaml` `active_flow: fix_bug` or open `specs/bugs/BUG-*.md` |
77
+ | **Review** | All code written; no PR yet |
78
+ | **Integrate** | PR open; tests passing |
79
+ | **Sustain** | Ongoing; no active task |
80
+
81
+ Prefer `specs/state.yaml` `active_flow` and `handoff.next_skill` when present.
82
+
83
+ ### 6. Suggest next skill
84
+
85
+ Based on the phase and state, recommend the most useful next step:
86
+
87
+ - **If in Plan/Bug phase and on `main`**: Suggest `kickoff-branch` next.
88
+ - **If in Initiate phase**: Suggest `develop-tdd` or `execute-plan` or `ship-epic`.
89
+ - **If in Execute phase**: Suggest `ship-epic` (resume) or `develop-tdd` for `active_story_id`.
90
+ - **If in Verify phase**: Suggest `verify-work` (UAT) or `run-evals`.
91
+
92
+ Example:
93
+ ```
94
+ Phase: Execute
95
+ Active branch: feat/e02-verify (state.yaml matches)
96
+ release-plan.yaml: v3.0.0, 10 epics
97
+ active_epic_id: e02
98
+
99
+ Suggested next: ship-epic (resume e02s01 at develop-tdd)
100
+ ```
101
+
102
+ Be specific — name the exact skill and why. If multiple options exist, list them in priority order.
103
+
104
+ ### 7. Surface blockers
105
+
106
+ If something looks wrong:
107
+ - Broken tests in the baseline
108
+ - Open `specs/bugs/BUG-*.md` with no active fix branch
109
+ - Epic shards missing `verify:` on tasks
110
+ - `validate-specs-yaml.sh` fails
111
+ - Git hash in `state.yaml` stale vs `git rev-parse`
112
+
113
+ Report blockers first, before recommendations.
114
+
115
+ ### 8. Record story start timestamp
116
+
117
+ At story start, write `metrics.story_start` with the current ISO 8601 timestamp to `specs/state.yaml` as an **informational progress marker only** — not a measurement input. Cycle-time metrics are now derived from git commit history via `scripts/record-cycle-time.sh` (see `skills/release-branch/REFERENCE.md` §Cycle-time recording).
118
+
119
+ ## Utility outputs
120
+
121
+ ### list-epics (absorbed)
122
+
123
+ Loop through all `specs/epics/*/epic.yaml` files and print a summary of story counts per epic. Useful for understanding overall project scope and epic distribution.
124
+
125
+ ### check-gates (absorbed)
126
+
127
+ Print the current `active_flow` from `specs/state.yaml`, run `bash scripts/validate-specs-yaml.sh` to verify YAML integrity, and show `git status` to report uncommitted changes and branch state. Use before handoffs or context transitions.
128
+
129
+ ## Handoff
130
+
131
+ Gate: READY -> next: plan-work
132
+ Writes: state.yaml handoff.next_skill = plan-work
133
+
134
+
135
+ <!-- story: e03s03 -->
@@ -0,0 +1,42 @@
1
+ ---
2
+ name: terse-mode
3
+ model: haiku
4
+ description: "Fallback ultra-compressed communication mode. Cuts token usage ~75% by dropping filler, articles, and pleasantries while keeping full technical accuracy. Use ONLY when context is critically long and compressing output is necessary to continue. Not a strategy — token discipline comes from code shape (small functions, unique names, headless tests), not terser prompts. Use when user says \"caveman mode\", \"terse mode\", \"less tokens\", \"be brief\", or invokes /terse-mode."
5
+ ---
6
+
7
+ Respond terse like smart caveman. All technical substance stay. Only fluff die.
8
+
9
+ ## Persistence
10
+ > **HARD GATE** — **HARD GATE** — Terse mode is for reducing token usage in long sessions. Do NOT use terse mode when clarity is critical (complex design decisions, bug investigations). Enable it only on explicit user request.
11
+
12
+
13
+ ACTIVE EVERY RESPONSE once triggered. No revert after many turns. No filler drift. Still active if unsure. Off only when user says "stop" or "normal mode".
14
+
15
+ ## Rules
16
+
17
+ Drop: articles (a/an/the), filler (just/really/basically/actually/simply), pleasantries (sure/certainly/of course/happy to), hedging. Fragments OK. Short synonyms (big not extensive, fix not "implement a solution for"). Abbreviate common terms (DB/auth/config/req/res/fn/impl). Strip conjunctions. Use arrows for causality (X -> Y). One word when one word enough.
18
+
19
+ Technical terms stay exact. Code blocks unchanged. Errors quoted exact.
20
+
21
+ Pattern: `[thing] [action] [reason]. [next step].`
22
+
23
+ Not: "Sure! I'd be happy to help you with that. The issue you're experiencing is likely caused by..."
24
+ Yes: "Bug in auth middleware. Token expiry check use `<` not `<=`. Fix:"
25
+
26
+ ## Auto-Clarity Exception
27
+
28
+ Drop terse temporarily for: security warnings, irreversible action confirmations, multi-step sequences where fragment order risks misread, user asks to clarify or repeats question. Resume after clear part done.
29
+
30
+ Example — destructive op:
31
+
32
+ > **Warning:** This will permanently delete all rows in the `users` table and cannot be undone.
33
+ >
34
+ > ```sql
35
+ > DROP TABLE users;
36
+ > ```
37
+ >
38
+ > Terse resume. Verify backup exist first.
39
+
40
+
41
+
42
+ <!-- story: e04s02 -->
@@ -0,0 +1,69 @@
1
+ ---
2
+ name: trace-requirement
3
+ model: haiku
4
+ description: "Link story IDs from specs/release-plan.yaml + epic capsule directories to the implementing code and tests. Produces specs/TRACEABILITY_LATEST.md. Use when you want to verify coverage of a release plan, audit which stories are implemented, or find \"dark\" stories with no code."
5
+ ---
6
+
7
+ # Trace Requirement
8
+
9
+ Build a traceability matrix from `specs/release-plan.yaml + epic capsule directories` to implementing code and tests. Surfaces gaps in both directions: stories with no code, and code with no story.
10
+
11
+ ## Pre-flight
12
+
13
+ > **HARD GATE** — `specs/release-plan.yaml + epic capsule directories` must exist. If it doesn't, run `plan-release` first.
14
+
15
+ → verify: `[ -f specs/release-plan.yaml + epic capsule directories ] && echo "ready" || echo "BLOCKED: run plan-release first"`
16
+
17
+ Read `specs/release-plan.yaml + epic capsule directories` fully before proceeding.
18
+
19
+ ## Process
20
+
21
+ ### 1. Extract story IDs
22
+
23
+ From release-plan.yaml, collect all story IDs (e.g. `1.1`, `1.2`, `2.1`).
24
+
25
+ → verify: `grep -o "Story [0-9]\+\.[0-9]\+" specs/release-plan.yaml + epic capsule directories | sort -u`
26
+
27
+ ### 2. Search for story tags in code
28
+
29
+ Look for `// story: X.Y` or `# story: X.Y` comments in source files and tests:
30
+
31
+ ```
32
+ grep -rn "story: " . --include="*.ts" --include="*.js" --include="*.py" --include="*.sh" | grep -v node_modules
33
+ ```
34
+
35
+ → verify: `grep -rn "story: " . --include="*.ts" --include="*.sh" | wc -l`
36
+
37
+ ### 3. Build the matrix
38
+
39
+ For each story ID:
40
+ - **Implemented**: list files that contain `// story: X.Y`
41
+ - **Tested**: list test files that contain `// story: X.Y`
42
+ - **Dark**: story has no tag in any file — flag as unimplemented
43
+
44
+ For each tagged file with no matching story ID in release-plan.yaml:
45
+ - **Orphan**: code exists but story was removed or never planned — flag for cleanup
46
+
47
+ ### 4. Write specs/TRACEABILITY_LATEST.md
48
+
49
+ ```
50
+ ## Story Coverage
51
+
52
+ | Story | Title | Files | Tests | Status |
53
+ |-------|--------------------|-------|-------|-----------|
54
+ | 1.1 | [title] | 2 | 1 | Covered |
55
+ | 1.2 | [title] | 0 | 0 | Dark |
56
+
57
+ ## Orphan Code (no story tag)
58
+ - [file]: contains untagged implementation
59
+
60
+ ## Gaps (dark stories)
61
+ - Story 1.2: no implementation found → run plan-work
62
+
63
+ ## Coverage summary
64
+ Stories: [X] covered / [Y] dark / [Z] total
65
+ ```
66
+
67
+ → verify: `grep -c "Covered\|Dark" specs/TRACEABILITY_LATEST.md`
68
+
69
+ Suggest `plan-work` for each dark story found.
@@ -0,0 +1,111 @@
1
+ ---
2
+ name: using-bigpowers
3
+ model: sonnet
4
+ description: "One-time bootstrap that introduces the bigpowers skills system, the PMBOK lifecycle arc, and tells you which skill to call first for your situation. Use when starting with bigpowers for the first time, when user asks \"where do I start?\", or when the skills system needs to be explained."
5
+ ---
6
+
7
+ # Using bigpowers
8
+ > **HARD GATE** — **HARD GATE** — This skill is the entry point. Do NOT skip it when onboarding new users or starting a new session. It establishes the bigpowers methodology, lifecycle phases, and conventions.
9
+
10
+
11
+ Welcome to **bigpowers** — a lifecycle of **70** agent skills for production-ready, TDD-driven software by solo developers.
12
+
13
+ ## Install
14
+
15
+ ```bash
16
+ npx bigpowers setup # one-shot setup
17
+ npm install -g bigpowers # global install
18
+ bigpowers setup # sync skills + link to your tools
19
+ ```
20
+
21
+ From source: `git clone` → `bash scripts/install.sh`. Package: [bigpowers on npm](https://www.npmjs.com/package/bigpowers).
22
+
23
+ **Reach tools:** **Cline** — native AGENTS.md reader (no extension). **Aider** — opt-in `.aider.conf.yml` with `read: AGENTS.md` ([Aider-AI/aider](https://github.com/Aider-AI/aider)). **Codex CLI** — optional `.codex/config.toml` via seed-conventions; global `~/.codex/AGENTS.md` from install.sh.
24
+
25
+ ## What bigpowers is
26
+
27
+ A curated set of skills organized around the PMBOK developer lifecycle. Each skill does one thing. Skills reference each other by name only — low coupling, high cohesion. All written output goes to `specs/` at your project root.
28
+
29
+ ## The lifecycle at a glance
30
+
31
+ See orchestrate-project for the canonical 6-phase lifecycle.
32
+
33
+ ```
34
+ BOOTSTRAP using-bigpowers (this skill, first time only)
35
+ ↓
36
+ DISCOVER survey-context → research-first → elaborate-spec
37
+ ↓
38
+ DESIGN model-domain / define-language / grill-me / deepen-architecture / design-interface
39
+ ↓
40
+ PLAN scope-work → slice-tasks → define-success → plan-work / plan-refactor
41
+ ↓
42
+ INITIATE kickoff-branch → guard-git / hook-commits / seed-conventions
43
+ ↓
44
+ SPIKE? spike-prototype → (feeds back to plan-work)
45
+ ↓
46
+ EXECUTE develop-tdd + enforce-first ←→ delegate-task / dispatch-agents / execute-plan
47
+ ↓
48
+ VERIFY run-evals → verify-work
49
+ ↓
50
+ HARDEN wire-observability (any phase)
51
+ ↓
52
+ BUG? investigate-bug → diagnose-root → validate-fix
53
+ ↓
54
+ REVIEW audit-code → request-review → respond-review
55
+ ↓
56
+ INTEGRATE commit-message → release-branch
57
+ ↓
58
+ SUSTAIN inspect-quality / organize-workspace (ongoing)
59
+
60
+ UTILITY terse-mode / craft-skill / edit-document (any phase)
61
+ ```
62
+
63
+ ## Where to start
64
+
65
+ | Your situation | First skill to call |
66
+ |---------------|---------------------|
67
+ | Greenfield project, nothing set up | `seed-conventions` |
68
+ | Existing project, new task | `survey-context` |
69
+ | Vague idea that needs shaping | `elaborate-spec` |
70
+ | Plan exists, ready to implement | `kickoff-branch` → `develop-tdd` |
71
+ | Bug to fix | `investigate-bug` |
72
+ | Code ready for review | `audit-code` |
73
+ | Shipping a feature | `commit-message` → `release-branch` |
74
+ | Solo dev, PRs feel heavy | Enable `profiles/solo-git.md` → `specs/WORKFLOW-solo-git.md` → land via `scripts/land-branch.sh` |
75
+
76
+ ## Solo Git profile
77
+
78
+ If you work alone and do not want PR ceremony every task:
79
+
80
+ 1. Read [profiles/solo-git.md](../../profiles/solo-git.md).
81
+ 2. Register with `compose-workflow` → `specs/WORKFLOW-solo-git.md`.
82
+ 3. Ship with `release-branch` in **solo-local** mode (`land-branch.sh`), not `gh pr create`.
83
+
84
+ You still use worktrees, protected `main`, and verification gates — only the integrate step changes.
85
+
86
+ ## YAML cockpit and dashboard
87
+
88
+ Operational source of truth:
89
+
90
+ - `specs/state.yaml` — session, active epic/story, handoff
91
+ - `specs/release-plan.yaml` — release index and epic list
92
+ - `specs/epics/eNN-*.yaml` — stories and tasks with `verify`
93
+ - `specs/execution-status.yaml` — done/pending per story
94
+
95
+ Start the HTTP dashboard with `visual-dashboard` → `GET /api/status?projectDir=<abs>` and `GET /cockpit.html` for a read-only PM view.
96
+
97
+ ## Key conventions
98
+
99
+ - **specs/ is your memory.** All domain docs, plans, and investigation outputs go in `specs/` at your project root.
100
+ - **Integrate:** team default is `gh pr` (team-pr); solo profile uses `land-branch.sh`. Never create GitHub issues from skills — use local Markdown files instead.
101
+ - **One skill, one thing.** If you're unsure which skill to call, call `survey-context` — it reads your current state and recommends the next step.
102
+ - **verify: every step.** Every epic task must have `verify: <runnable command>`. Evidence over claims.
103
+ - **The full catalog is auto-generated.** See `SKILL-INDEX.md`; find skills with `search-skills`.
104
+
105
+ ## After this
106
+
107
+ Call `survey-context` to read your project's current state and get a personalized recommendation for where to go next.
108
+
109
+
110
+
111
+ <!-- story: e03s02 -->
@@ -0,0 +1,309 @@
1
+ ---
2
+ name: validate-contracts
3
+ model: sonnet
4
+ description: "Assert data shape consistency across system boundaries — live API responses against JSON Schema, key-set comparison across layers, data shape validation for migrations and exports. Catches silent data corruption before deploy."
5
+ ---
6
+
7
+ # Validate Contracts
8
+
9
+ > **HARD GATE** — Do NOT deploy or migrate data without running `validate-contracts` first. Silent data divergence between system boundaries causes the hardest-to-debug production bugs.
10
+ >
11
+ > **HARD GATE** — Contract files MUST be version-controlled alongside code. Outdated contracts are worse than no contracts. If a contract hasn't been reviewed in 30 days, flag it as stale.
12
+
13
+ Validate that data structures stay in sync across system boundaries — front-end vs
14
+ back-end, API responses vs expected schemas, config files vs code assumptions,
15
+ migration output vs target shape.
16
+
17
+ ## Contract types
18
+
19
+ Three modes of validation:
20
+
21
+ | Mode | What it catches | When to use |
22
+ |------|----------------|-------------|
23
+ | **Schema** | API response shape mismatches (missing field, wrong type) | Before every deploy, after API changes |
24
+ | **Key-set** | Missing/unexpected keys across two data sources | Translation files, configs, enum definitions |
25
+ | **Shape** | Column type or format violations in data files | After migrations, before consuming exports |
26
+
27
+ ## Contract file convention
28
+
29
+ All contract files live in `specs/contracts/` and use YAML:
30
+
31
+ See [REFERENCE.md](REFERENCE.md) for examples.
32
+
33
+ ### 1. API Response Contracts (`--schema`)
34
+
35
+ Define expected API response shapes and validate live endpoints against them:
36
+
37
+ See [REFERENCE.md](REFERENCE.md) for examples.
38
+
39
+ Usage:
40
+
41
+ ```bash
42
+ validate-contracts --schema specs/contracts/users.schema.yaml --url https://api.example.com/users
43
+ # → PASS: /api/users matches expected schema (3/3 fields, types ok)
44
+ # → FAIL: /api/users — field 'email' has type null (expected string)
45
+ ```
46
+
47
+ ### 2. Key-Set Contracts (`--key-set`)
48
+
49
+ Assert that two data sources share a consistent set of keys:
50
+
51
+ See [REFERENCE.md](REFERENCE.md) for examples.
52
+
53
+ Usage:
54
+
55
+ See [REFERENCE.md](REFERENCE.md) for examples.
56
+
57
+ ### 3. Data Shape Contracts (`--shape`)
58
+
59
+ Validate that a data file matches expected column types and constraints:
60
+
61
+ See [REFERENCE.md](REFERENCE.md) for examples.
62
+
63
+ Usage:
64
+
65
+ See [REFERENCE.md](REFERENCE.md) for examples.
66
+
67
+ ## Process
68
+
69
+ ### 1. Define contract
70
+
71
+ Create a YAML file in `specs/contracts/` following the schema for the mode.
72
+
73
+ ### 2. Run validation
74
+
75
+ ```bash
76
+ bash scripts/validate-contracts.sh <contract-file>
77
+ ```
78
+
79
+ The runner auto-detects the contract type from the file content (presence of `schema:`,
80
+ `sources:`, or `file:` + `fields:` keys).
81
+
82
+ ### 3. Read the report
83
+
84
+ Output is JSON Lines (one event per line) plus a human-readable summary:
85
+
86
+ ```
87
+ {"event":"pass","check":"users.schema","detail":"3/3 fields match types"}
88
+ {"event":"warn","check":"users.schema","detail":"field 'avatar' has format: uri (unexpected)"}
89
+ {"event":"fail","check":"i18n-keys","detail":"missing: 2 keys in target"}
90
+ ```
91
+
92
+ Final summary:
93
+
94
+ ```
95
+ === Validate Contracts Summary ===
96
+ Schema: 3/3 pass | Key-set: 1/1 fail | Shape: 2/2 pass
97
+ FAILED: 1 contract has divergence
98
+ ```
99
+
100
+ ### 4. Fix divergence
101
+
102
+ - **Missing keys** → add to target source
103
+ - **Type mismatches** → update schema or fix producer
104
+ - **Shape violations** → fix migration or consumer
105
+
106
+ ### 5. Re-validate
107
+
108
+ ```bash
109
+ bash scripts/validate-contracts.sh <contract-file>
110
+ # → All pass → ready to deploy
111
+ ```
112
+
113
+ ---
114
+
115
+ # Validate Contracts — Reference
116
+
117
+ ## Navigation
118
+
119
+ | Lines | Section |
120
+ |-------|---------|
121
+ | 1 | Title |
122
+ | 3–14 | Navigation |
123
+ | 16–24 | Integration |
124
+ | 26–35 | Configuration |
125
+ | 37–46 | Verification |
126
+ | 48–170 | Reference blocks + Examples 1–6 |
127
+ | 172–190 | Integration (duplicate) + Configuration + Verification |
128
+
129
+ ## Integration
130
+
131
+ - **Pre-deploy gate:** The `deploy` skill runs `validate-contracts` before smoke-test.
132
+ - **CI pipeline:** JSON Lines output is CI-friendly; pipe to `jq` for assertions.
133
+ - **Pre-migration:** Run `validate-contracts --shape` before consuming migration output.
134
+
135
+
136
+ ---
137
+
138
+ ## Configuration
139
+
140
+ | Variable | Default | Description |
141
+ |----------|---------|-------------|
142
+ | `CONTRACTS_DIR` | `specs/contracts/` | Directory containing contract YAML files |
143
+ | `VALIDATE_ALL` | `false` | If true, run all contracts in the directory |
144
+ | `STRICT_MODE` | `false` | Treat warnings as failures |
145
+ | `OUTPUT_FORMAT` | `text` | `text` or `json` |
146
+
147
+
148
+ ---
149
+
150
+ ## Verification
151
+
152
+ → verify: `test -f validate-contracts/SKILL.md && grep -q 'name: validate-contracts' validate-contracts/SKILL.md && echo OK`
153
+ → verify: `grep -qi 'specs/contracts\|JSON Schema\|key.set\|data.shape' validate-contracts/SKILL.md && echo OK`
154
+ → verify: `grep -ci 'divergence\|missing key\|type mismatch\|diff\|conforms\|column' validate-contracts/SKILL.md | awk '{if($1>=3) print "OK"; else print "FAIL"}'`
155
+ → verify: `grep -ci 'JSON Lines\|machine.parse\|CI\|deploy.*gate\|pre.deploy' validate-contracts/SKILL.md | awk '{if($1>=2) print "OK"; else print "FAIL"}'`
156
+ → verify: `grep -q 'validate-contracts' SKILL-INDEX.md && echo OK`
157
+
158
+ ---
159
+
160
+ ## Reference block 1
161
+
162
+ ```yaml
163
+ # specs/contracts/users.schema.yaml
164
+ endpoint: /api/users
165
+ method: GET
166
+ schema:
167
+ type: object
168
+ required: [id, name, email]
169
+ properties:
170
+ id: { type: number }
171
+ name: { type: string }
172
+ email: { type: string, format: email }
173
+ ```
174
+
175
+ ---
176
+
177
+ ## Reference block 2
178
+
179
+ ```yaml
180
+ # specs/contracts/migration-output.yaml
181
+ file: data/users-export.json
182
+ format: json
183
+ fields:
184
+ - name: user_id
185
+ type: number
186
+ required: true
187
+ - name: full_name
188
+ type: string
189
+ required: true
190
+ - name: created_at
191
+ type: string
192
+ format: date-time
193
+ required: false
194
+ ```
195
+
196
+ ---
197
+
198
+ ## Example 1
199
+
200
+ ```
201
+ specs/contracts/
202
+ ├── users.schema.yaml # API response schema
203
+ ├── i18n-keys.yaml # Key-set comparison
204
+ ├── migration-output.yaml # Data shape contract
205
+ └── README.md # Local conventions
206
+ ```
207
+
208
+ ---
209
+
210
+ ## Example 2
211
+
212
+ ```yaml
213
+ # specs/contracts/users.schema.yaml
214
+ endpoint: /api/users
215
+ method: GET
216
+ schema:
217
+ type: object
218
+ required: [id, name, email]
219
+ properties:
220
+ id: { type: number }
221
+ name: { type: string }
222
+ email: { type: string, format: email }
223
+ ```
224
+
225
+ ---
226
+
227
+ ## Example 3
228
+
229
+ ```yaml
230
+ # specs/contracts/i18n-keys.yaml
231
+ sources:
232
+ reference: src/frontend/locales/en.json
233
+ target: src/backend/messages/en.json
234
+ mode: subset # all target keys must exist in reference
235
+ ```
236
+
237
+ ---
238
+
239
+ ## Example 4
240
+
241
+ ```bash
242
+ validate-contracts --key-set specs/contracts/i18n-keys.yaml
243
+ # → missing: 2 keys in reference not found in target: ['settings.privacy', 'help.faq']
244
+ # → added: 1 key in target not in reference: ['deprecated.field']
245
+ # → exit 1 (divergence)
246
+ ```
247
+
248
+ ---
249
+
250
+ ## Example 5
251
+
252
+ ```yaml
253
+ # specs/contracts/migration-output.yaml
254
+ file: data/users-export.json
255
+ format: json
256
+ fields:
257
+ - name: user_id
258
+ type: number
259
+ required: true
260
+ - name: full_name
261
+ type: string
262
+ required: true
263
+ - name: created_at
264
+ type: string
265
+ format: date-time
266
+ required: false
267
+ ```
268
+
269
+ ---
270
+
271
+ ## Example 6
272
+
273
+ ```bash
274
+ validate-contracts --shape specs/contracts/migration-output.yaml
275
+ # → PASS: 3/3 fields validated, 5000 rows OK
276
+ # → WARN: field 'full_name' has 12 null values (0.24%)
277
+ # → FAIL: field 'user_id' has 3 rows with type string (expected number)
278
+ ```
279
+
280
+ ---
281
+
282
+ ## Integration
283
+
284
+ - **Pre-deploy gate:** The `deploy` skill runs `validate-contracts` before smoke-test.
285
+ - **CI pipeline:** JSON Lines output is CI-friendly; pipe to `jq` for assertions.
286
+ - **Pre-migration:** Run `validate-contracts --shape` before consuming migration output.
287
+
288
+
289
+ ---
290
+
291
+ ## Configuration
292
+
293
+ | Variable | Default | Description |
294
+ |----------|---------|-------------|
295
+ | `CONTRACTS_DIR` | `specs/contracts/` | Directory containing contract YAML files |
296
+ | `VALIDATE_ALL` | `false` | If true, run all contracts in the directory |
297
+ | `STRICT_MODE` | `false` | Treat warnings as failures |
298
+ | `OUTPUT_FORMAT` | `text` | `text` or `json` |
299
+
300
+
301
+ ---
302
+
303
+ ## Verification
304
+
305
+ → verify: `test -f validate-contracts/SKILL.md && grep -q 'name: validate-contracts' validate-contracts/SKILL.md && echo OK`
306
+ → verify: `grep -qi 'specs/contracts\|JSON Schema\|key.set\|data.shape' validate-contracts/SKILL.md && echo OK`
307
+ → verify: `grep -ci 'divergence\|missing key\|type mismatch\|diff\|conforms\|column' validate-contracts/SKILL.md | awk '{if($1>=3) print "OK"; else print "FAIL"}'`
308
+ → verify: `grep -ci 'JSON Lines\|machine.parse\|CI\|deploy.*gate\|pre.deploy' validate-contracts/SKILL.md | awk '{if($1>=2) print "OK"; else print "FAIL"}'`
309
+ → verify: `grep -q 'validate-contracts' SKILL-INDEX.md && echo OK`