bigpowers 2.86.5 → 2.86.6

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 (406) hide show
  1. package/.agents/skills/commit-message/SKILL.md +1 -1
  2. package/.agents/skills/evolve-skill/SKILL.md +1 -1
  3. package/.agents/skills/write-document/SKILL.md +1 -1
  4. package/.cline/skills/align-grid/SKILL.md +110 -0
  5. package/.cline/skills/assess-impact/SKILL.md +91 -0
  6. package/.cline/skills/audit-code/SKILL.md +184 -0
  7. package/.cline/skills/audit-plan/SKILL.md +89 -0
  8. package/.cline/skills/build-epic/SKILL.md +105 -0
  9. package/.cline/skills/change-request/SKILL.md +121 -0
  10. package/.cline/skills/commit-message/SKILL.md +140 -0
  11. package/.cline/skills/compose-workflow/SKILL.md +82 -0
  12. package/.cline/skills/context7-mcp/SKILL.md +55 -0
  13. package/.cline/skills/craft-skill/SKILL.md +196 -0
  14. package/.cline/skills/deepen-architecture/SKILL.md +260 -0
  15. package/.cline/skills/define-language/SKILL.md +80 -0
  16. package/.cline/skills/define-success/SKILL.md +12 -0
  17. package/.cline/skills/delegate-task/SKILL.md +91 -0
  18. package/.cline/skills/deploy/SKILL.md +198 -0
  19. package/.cline/skills/design-interface/SKILL.md +97 -0
  20. package/.cline/skills/develop-tdd/SKILL.md +416 -0
  21. package/.cline/skills/diagnose-root/SKILL.md +24 -0
  22. package/.cline/skills/diagnose-stall/SKILL.md +54 -0
  23. package/.cline/skills/dispatch-agents/SKILL.md +118 -0
  24. package/.cline/skills/edit-document/SKILL.md +23 -0
  25. package/.cline/skills/elaborate-spec/SKILL.md +101 -0
  26. package/.cline/skills/enforce-first/SKILL.md +45 -0
  27. package/.cline/skills/evolve-skill/SKILL.md +55 -0
  28. package/.cline/skills/execute-plan/SKILL.md +61 -0
  29. package/.cline/skills/extract-design/SKILL.md +132 -0
  30. package/.cline/skills/find-way/SKILL.md +191 -0
  31. package/.cline/skills/fix-bug/SKILL.md +67 -0
  32. package/.cline/skills/gate-trace/SKILL.md +92 -0
  33. package/.cline/skills/generate-allure-report/SKILL.md +285 -0
  34. package/.cline/skills/grill-me/SKILL.md +108 -0
  35. package/.cline/skills/grill-with-docs/SKILL.md +53 -0
  36. package/.cline/skills/guard-git/SKILL.md +231 -0
  37. package/.cline/skills/harden-vps/SKILL.md +291 -0
  38. package/.cline/skills/hook-commits/SKILL.md +94 -0
  39. package/.cline/skills/inspect-quality/SKILL.md +106 -0
  40. package/.cline/skills/investigate-bug/SKILL.md +127 -0
  41. package/.cline/skills/kickoff-branch/SKILL.md +143 -0
  42. package/.cline/skills/maintain-wiki/SKILL.md +64 -0
  43. package/.cline/skills/map-codebase/SKILL.md +71 -0
  44. package/.cline/skills/migrate-spec/SKILL.md +862 -0
  45. package/.cline/skills/model-domain/SKILL.md +232 -0
  46. package/.cline/skills/orchestrate-project/SKILL.md +174 -0
  47. package/.cline/skills/organize-workspace/SKILL.md +164 -0
  48. package/.cline/skills/plan-refactor/SKILL.md +87 -0
  49. package/.cline/skills/plan-release/SKILL.md +145 -0
  50. package/.cline/skills/plan-tests/SKILL.md +75 -0
  51. package/.cline/skills/plan-work/SKILL.md +260 -0
  52. package/.cline/skills/publish-package/SKILL.md +328 -0
  53. package/.cline/skills/quick-fix/SKILL.md +114 -0
  54. package/.cline/skills/release-branch/SKILL.md +298 -0
  55. package/.cline/skills/request-review/SKILL.md +113 -0
  56. package/.cline/skills/research-first/SKILL.md +87 -0
  57. package/.cline/skills/reset-baseline/SKILL.md +21 -0
  58. package/.cline/skills/respond-review/SKILL.md +71 -0
  59. package/.cline/skills/run-benchmark/SKILL.md +85 -0
  60. package/.cline/skills/run-evals/SKILL.md +80 -0
  61. package/.cline/skills/run-planning/SKILL.md +101 -0
  62. package/.cline/skills/scope-work/SKILL.md +63 -0
  63. package/.cline/skills/search-skills/SKILL.md +73 -0
  64. package/.cline/skills/security-review/SKILL.md +384 -0
  65. package/.cline/skills/seed-conventions/SKILL.md +302 -0
  66. package/.cline/skills/session-state/SKILL.md +146 -0
  67. package/.cline/skills/setup-environment/SKILL.md +39 -0
  68. package/.cline/skills/simulate-agents/SKILL.md +26 -0
  69. package/.cline/skills/slice-tasks/SKILL.md +68 -0
  70. package/.cline/skills/smoke-test/SKILL.md +257 -0
  71. package/.cline/skills/spike-prototype/SKILL.md +95 -0
  72. package/.cline/skills/stocktake-skills/SKILL.md +74 -0
  73. package/.cline/skills/survey-context/SKILL.md +135 -0
  74. package/.cline/skills/terse-mode/SKILL.md +42 -0
  75. package/.cline/skills/trace-requirement/SKILL.md +69 -0
  76. package/.cline/skills/using-bigpowers/SKILL.md +111 -0
  77. package/.cline/skills/validate-contracts/SKILL.md +277 -0
  78. package/.cline/skills/validate-fix/SKILL.md +147 -0
  79. package/.cline/skills/verify-work/SKILL.md +191 -0
  80. package/.cline/skills/visual-dashboard/SKILL.md +50 -0
  81. package/.cline/skills/wire-ci/SKILL.md +374 -0
  82. package/.cline/skills/wire-observability/SKILL.md +97 -0
  83. package/.cline/skills/write-document/SKILL.md +255 -0
  84. package/.codebuddy/skills/commit-message/SKILL.md +1 -1
  85. package/.codebuddy/skills/evolve-skill/SKILL.md +1 -1
  86. package/.codebuddy/skills/write-document/SKILL.md +1 -1
  87. package/.codex/skills/commit-message/SKILL.md +1 -1
  88. package/.codex/skills/evolve-skill/SKILL.md +1 -1
  89. package/.codex/skills/write-document/SKILL.md +1 -1
  90. package/.copilot/skills/align-grid/SKILL.md +110 -0
  91. package/.copilot/skills/assess-impact/SKILL.md +91 -0
  92. package/.copilot/skills/audit-code/SKILL.md +184 -0
  93. package/.copilot/skills/audit-plan/SKILL.md +89 -0
  94. package/.copilot/skills/build-epic/SKILL.md +105 -0
  95. package/.copilot/skills/change-request/SKILL.md +121 -0
  96. package/.copilot/skills/commit-message/SKILL.md +140 -0
  97. package/.copilot/skills/compose-workflow/SKILL.md +82 -0
  98. package/.copilot/skills/context7-mcp/SKILL.md +55 -0
  99. package/.copilot/skills/craft-skill/SKILL.md +196 -0
  100. package/.copilot/skills/deepen-architecture/SKILL.md +260 -0
  101. package/.copilot/skills/define-language/SKILL.md +80 -0
  102. package/.copilot/skills/define-success/SKILL.md +12 -0
  103. package/.copilot/skills/delegate-task/SKILL.md +91 -0
  104. package/.copilot/skills/deploy/SKILL.md +198 -0
  105. package/.copilot/skills/design-interface/SKILL.md +97 -0
  106. package/.copilot/skills/develop-tdd/SKILL.md +416 -0
  107. package/.copilot/skills/diagnose-root/SKILL.md +24 -0
  108. package/.copilot/skills/diagnose-stall/SKILL.md +54 -0
  109. package/.copilot/skills/dispatch-agents/SKILL.md +118 -0
  110. package/.copilot/skills/edit-document/SKILL.md +23 -0
  111. package/.copilot/skills/elaborate-spec/SKILL.md +101 -0
  112. package/.copilot/skills/enforce-first/SKILL.md +45 -0
  113. package/.copilot/skills/evolve-skill/SKILL.md +55 -0
  114. package/.copilot/skills/execute-plan/SKILL.md +61 -0
  115. package/.copilot/skills/extract-design/SKILL.md +132 -0
  116. package/.copilot/skills/find-way/SKILL.md +191 -0
  117. package/.copilot/skills/fix-bug/SKILL.md +67 -0
  118. package/.copilot/skills/gate-trace/SKILL.md +92 -0
  119. package/.copilot/skills/generate-allure-report/SKILL.md +285 -0
  120. package/.copilot/skills/grill-me/SKILL.md +108 -0
  121. package/.copilot/skills/grill-with-docs/SKILL.md +53 -0
  122. package/.copilot/skills/guard-git/SKILL.md +231 -0
  123. package/.copilot/skills/harden-vps/SKILL.md +291 -0
  124. package/.copilot/skills/hook-commits/SKILL.md +94 -0
  125. package/.copilot/skills/inspect-quality/SKILL.md +106 -0
  126. package/.copilot/skills/investigate-bug/SKILL.md +127 -0
  127. package/.copilot/skills/kickoff-branch/SKILL.md +143 -0
  128. package/.copilot/skills/maintain-wiki/SKILL.md +64 -0
  129. package/.copilot/skills/map-codebase/SKILL.md +71 -0
  130. package/.copilot/skills/migrate-spec/SKILL.md +862 -0
  131. package/.copilot/skills/model-domain/SKILL.md +232 -0
  132. package/.copilot/skills/orchestrate-project/SKILL.md +174 -0
  133. package/.copilot/skills/organize-workspace/SKILL.md +164 -0
  134. package/.copilot/skills/plan-refactor/SKILL.md +87 -0
  135. package/.copilot/skills/plan-release/SKILL.md +145 -0
  136. package/.copilot/skills/plan-tests/SKILL.md +75 -0
  137. package/.copilot/skills/plan-work/SKILL.md +260 -0
  138. package/.copilot/skills/publish-package/SKILL.md +328 -0
  139. package/.copilot/skills/quick-fix/SKILL.md +114 -0
  140. package/.copilot/skills/release-branch/SKILL.md +298 -0
  141. package/.copilot/skills/request-review/SKILL.md +113 -0
  142. package/.copilot/skills/research-first/SKILL.md +87 -0
  143. package/.copilot/skills/reset-baseline/SKILL.md +21 -0
  144. package/.copilot/skills/respond-review/SKILL.md +71 -0
  145. package/.copilot/skills/run-benchmark/SKILL.md +85 -0
  146. package/.copilot/skills/run-evals/SKILL.md +80 -0
  147. package/.copilot/skills/run-planning/SKILL.md +101 -0
  148. package/.copilot/skills/scope-work/SKILL.md +63 -0
  149. package/.copilot/skills/search-skills/SKILL.md +73 -0
  150. package/.copilot/skills/security-review/SKILL.md +384 -0
  151. package/.copilot/skills/seed-conventions/SKILL.md +302 -0
  152. package/.copilot/skills/session-state/SKILL.md +146 -0
  153. package/.copilot/skills/setup-environment/SKILL.md +39 -0
  154. package/.copilot/skills/simulate-agents/SKILL.md +26 -0
  155. package/.copilot/skills/slice-tasks/SKILL.md +68 -0
  156. package/.copilot/skills/smoke-test/SKILL.md +257 -0
  157. package/.copilot/skills/spike-prototype/SKILL.md +95 -0
  158. package/.copilot/skills/stocktake-skills/SKILL.md +74 -0
  159. package/.copilot/skills/survey-context/SKILL.md +135 -0
  160. package/.copilot/skills/terse-mode/SKILL.md +42 -0
  161. package/.copilot/skills/trace-requirement/SKILL.md +69 -0
  162. package/.copilot/skills/using-bigpowers/SKILL.md +111 -0
  163. package/.copilot/skills/validate-contracts/SKILL.md +277 -0
  164. package/.copilot/skills/validate-fix/SKILL.md +147 -0
  165. package/.copilot/skills/verify-work/SKILL.md +191 -0
  166. package/.copilot/skills/visual-dashboard/SKILL.md +50 -0
  167. package/.copilot/skills/wire-ci/SKILL.md +374 -0
  168. package/.copilot/skills/wire-observability/SKILL.md +97 -0
  169. package/.copilot/skills/write-document/SKILL.md +255 -0
  170. package/.hermes/skills/commit-message/SKILL.md +1 -1
  171. package/.hermes/skills/evolve-skill/SKILL.md +1 -1
  172. package/.hermes/skills/write-document/SKILL.md +1 -1
  173. package/.kilocode/rules/commit-message.md +1 -1
  174. package/.kilocode/rules/evolve-skill.md +1 -1
  175. package/.kilocode/rules/write-document.md +1 -1
  176. package/.mimocode/skills/commit-message/SKILL.md +1 -1
  177. package/.mimocode/skills/evolve-skill/SKILL.md +1 -1
  178. package/.mimocode/skills/write-document/SKILL.md +1 -1
  179. package/.opencode/skills/align-grid/SKILL.md +110 -0
  180. package/.opencode/skills/assess-impact/SKILL.md +91 -0
  181. package/.opencode/skills/audit-code/SKILL.md +184 -0
  182. package/.opencode/skills/audit-plan/SKILL.md +89 -0
  183. package/.opencode/skills/build-epic/SKILL.md +105 -0
  184. package/.opencode/skills/change-request/SKILL.md +121 -0
  185. package/.opencode/skills/commit-message/SKILL.md +140 -0
  186. package/.opencode/skills/compose-workflow/SKILL.md +82 -0
  187. package/.opencode/skills/context7-mcp/SKILL.md +55 -0
  188. package/.opencode/skills/craft-skill/SKILL.md +196 -0
  189. package/.opencode/skills/deepen-architecture/SKILL.md +260 -0
  190. package/.opencode/skills/define-language/SKILL.md +80 -0
  191. package/.opencode/skills/define-success/SKILL.md +12 -0
  192. package/.opencode/skills/delegate-task/SKILL.md +91 -0
  193. package/.opencode/skills/deploy/SKILL.md +198 -0
  194. package/.opencode/skills/design-interface/SKILL.md +97 -0
  195. package/.opencode/skills/develop-tdd/SKILL.md +416 -0
  196. package/.opencode/skills/diagnose-root/SKILL.md +24 -0
  197. package/.opencode/skills/diagnose-stall/SKILL.md +54 -0
  198. package/.opencode/skills/dispatch-agents/SKILL.md +118 -0
  199. package/.opencode/skills/edit-document/SKILL.md +23 -0
  200. package/.opencode/skills/elaborate-spec/SKILL.md +101 -0
  201. package/.opencode/skills/enforce-first/SKILL.md +45 -0
  202. package/.opencode/skills/evolve-skill/SKILL.md +55 -0
  203. package/.opencode/skills/execute-plan/SKILL.md +61 -0
  204. package/.opencode/skills/extract-design/SKILL.md +132 -0
  205. package/.opencode/skills/find-way/SKILL.md +191 -0
  206. package/.opencode/skills/fix-bug/SKILL.md +67 -0
  207. package/.opencode/skills/gate-trace/SKILL.md +92 -0
  208. package/.opencode/skills/generate-allure-report/SKILL.md +285 -0
  209. package/.opencode/skills/grill-me/SKILL.md +108 -0
  210. package/.opencode/skills/grill-with-docs/SKILL.md +53 -0
  211. package/.opencode/skills/guard-git/SKILL.md +231 -0
  212. package/.opencode/skills/harden-vps/SKILL.md +291 -0
  213. package/.opencode/skills/hook-commits/SKILL.md +94 -0
  214. package/.opencode/skills/inspect-quality/SKILL.md +106 -0
  215. package/.opencode/skills/investigate-bug/SKILL.md +127 -0
  216. package/.opencode/skills/kickoff-branch/SKILL.md +143 -0
  217. package/.opencode/skills/maintain-wiki/SKILL.md +64 -0
  218. package/.opencode/skills/map-codebase/SKILL.md +71 -0
  219. package/.opencode/skills/migrate-spec/SKILL.md +862 -0
  220. package/.opencode/skills/model-domain/SKILL.md +232 -0
  221. package/.opencode/skills/orchestrate-project/SKILL.md +174 -0
  222. package/.opencode/skills/organize-workspace/SKILL.md +164 -0
  223. package/.opencode/skills/plan-refactor/SKILL.md +87 -0
  224. package/.opencode/skills/plan-release/SKILL.md +145 -0
  225. package/.opencode/skills/plan-tests/SKILL.md +75 -0
  226. package/.opencode/skills/plan-work/SKILL.md +260 -0
  227. package/.opencode/skills/publish-package/SKILL.md +328 -0
  228. package/.opencode/skills/quick-fix/SKILL.md +114 -0
  229. package/.opencode/skills/release-branch/SKILL.md +298 -0
  230. package/.opencode/skills/request-review/SKILL.md +113 -0
  231. package/.opencode/skills/research-first/SKILL.md +87 -0
  232. package/.opencode/skills/reset-baseline/SKILL.md +21 -0
  233. package/.opencode/skills/respond-review/SKILL.md +71 -0
  234. package/.opencode/skills/run-benchmark/SKILL.md +85 -0
  235. package/.opencode/skills/run-evals/SKILL.md +80 -0
  236. package/.opencode/skills/run-planning/SKILL.md +101 -0
  237. package/.opencode/skills/scope-work/SKILL.md +63 -0
  238. package/.opencode/skills/search-skills/SKILL.md +73 -0
  239. package/.opencode/skills/security-review/SKILL.md +384 -0
  240. package/.opencode/skills/seed-conventions/SKILL.md +302 -0
  241. package/.opencode/skills/session-state/SKILL.md +146 -0
  242. package/.opencode/skills/setup-environment/SKILL.md +39 -0
  243. package/.opencode/skills/simulate-agents/SKILL.md +26 -0
  244. package/.opencode/skills/slice-tasks/SKILL.md +68 -0
  245. package/.opencode/skills/smoke-test/SKILL.md +257 -0
  246. package/.opencode/skills/spike-prototype/SKILL.md +95 -0
  247. package/.opencode/skills/stocktake-skills/SKILL.md +74 -0
  248. package/.opencode/skills/survey-context/SKILL.md +135 -0
  249. package/.opencode/skills/terse-mode/SKILL.md +42 -0
  250. package/.opencode/skills/trace-requirement/SKILL.md +69 -0
  251. package/.opencode/skills/using-bigpowers/SKILL.md +111 -0
  252. package/.opencode/skills/validate-contracts/SKILL.md +277 -0
  253. package/.opencode/skills/validate-fix/SKILL.md +147 -0
  254. package/.opencode/skills/verify-work/SKILL.md +191 -0
  255. package/.opencode/skills/visual-dashboard/SKILL.md +50 -0
  256. package/.opencode/skills/wire-ci/SKILL.md +374 -0
  257. package/.opencode/skills/wire-observability/SKILL.md +97 -0
  258. package/.opencode/skills/write-document/SKILL.md +255 -0
  259. package/.pi/package.json +1 -1
  260. package/.pi/prompts/commit-message.md +1 -1
  261. package/.pi/prompts/evolve-skill.md +1 -1
  262. package/.pi/prompts/write-document.md +1 -1
  263. package/.pi/skills/commit-message/SKILL.md +1 -1
  264. package/.pi/skills/evolve-skill/SKILL.md +1 -1
  265. package/.pi/skills/write-document/SKILL.md +1 -1
  266. package/.qwen/skills/align-grid/SKILL.md +110 -0
  267. package/.qwen/skills/assess-impact/SKILL.md +91 -0
  268. package/.qwen/skills/audit-code/SKILL.md +184 -0
  269. package/.qwen/skills/audit-plan/SKILL.md +89 -0
  270. package/.qwen/skills/build-epic/SKILL.md +105 -0
  271. package/.qwen/skills/change-request/SKILL.md +121 -0
  272. package/.qwen/skills/commit-message/SKILL.md +140 -0
  273. package/.qwen/skills/compose-workflow/SKILL.md +82 -0
  274. package/.qwen/skills/context7-mcp/SKILL.md +55 -0
  275. package/.qwen/skills/craft-skill/SKILL.md +196 -0
  276. package/.qwen/skills/deepen-architecture/SKILL.md +260 -0
  277. package/.qwen/skills/define-language/SKILL.md +80 -0
  278. package/.qwen/skills/define-success/SKILL.md +12 -0
  279. package/.qwen/skills/delegate-task/SKILL.md +91 -0
  280. package/.qwen/skills/deploy/SKILL.md +198 -0
  281. package/.qwen/skills/design-interface/SKILL.md +97 -0
  282. package/.qwen/skills/develop-tdd/SKILL.md +416 -0
  283. package/.qwen/skills/diagnose-root/SKILL.md +24 -0
  284. package/.qwen/skills/diagnose-stall/SKILL.md +54 -0
  285. package/.qwen/skills/dispatch-agents/SKILL.md +118 -0
  286. package/.qwen/skills/edit-document/SKILL.md +23 -0
  287. package/.qwen/skills/elaborate-spec/SKILL.md +101 -0
  288. package/.qwen/skills/enforce-first/SKILL.md +45 -0
  289. package/.qwen/skills/evolve-skill/SKILL.md +55 -0
  290. package/.qwen/skills/execute-plan/SKILL.md +61 -0
  291. package/.qwen/skills/extract-design/SKILL.md +132 -0
  292. package/.qwen/skills/find-way/SKILL.md +191 -0
  293. package/.qwen/skills/fix-bug/SKILL.md +67 -0
  294. package/.qwen/skills/gate-trace/SKILL.md +92 -0
  295. package/.qwen/skills/generate-allure-report/SKILL.md +285 -0
  296. package/.qwen/skills/grill-me/SKILL.md +108 -0
  297. package/.qwen/skills/grill-with-docs/SKILL.md +53 -0
  298. package/.qwen/skills/guard-git/SKILL.md +231 -0
  299. package/.qwen/skills/harden-vps/SKILL.md +291 -0
  300. package/.qwen/skills/hook-commits/SKILL.md +94 -0
  301. package/.qwen/skills/inspect-quality/SKILL.md +106 -0
  302. package/.qwen/skills/investigate-bug/SKILL.md +127 -0
  303. package/.qwen/skills/kickoff-branch/SKILL.md +143 -0
  304. package/.qwen/skills/maintain-wiki/SKILL.md +64 -0
  305. package/.qwen/skills/map-codebase/SKILL.md +71 -0
  306. package/.qwen/skills/migrate-spec/SKILL.md +862 -0
  307. package/.qwen/skills/model-domain/SKILL.md +232 -0
  308. package/.qwen/skills/orchestrate-project/SKILL.md +174 -0
  309. package/.qwen/skills/organize-workspace/SKILL.md +164 -0
  310. package/.qwen/skills/plan-refactor/SKILL.md +87 -0
  311. package/.qwen/skills/plan-release/SKILL.md +145 -0
  312. package/.qwen/skills/plan-tests/SKILL.md +75 -0
  313. package/.qwen/skills/plan-work/SKILL.md +260 -0
  314. package/.qwen/skills/publish-package/SKILL.md +328 -0
  315. package/.qwen/skills/quick-fix/SKILL.md +114 -0
  316. package/.qwen/skills/release-branch/SKILL.md +298 -0
  317. package/.qwen/skills/request-review/SKILL.md +113 -0
  318. package/.qwen/skills/research-first/SKILL.md +87 -0
  319. package/.qwen/skills/reset-baseline/SKILL.md +21 -0
  320. package/.qwen/skills/respond-review/SKILL.md +71 -0
  321. package/.qwen/skills/run-benchmark/SKILL.md +85 -0
  322. package/.qwen/skills/run-evals/SKILL.md +80 -0
  323. package/.qwen/skills/run-planning/SKILL.md +101 -0
  324. package/.qwen/skills/scope-work/SKILL.md +63 -0
  325. package/.qwen/skills/search-skills/SKILL.md +73 -0
  326. package/.qwen/skills/security-review/SKILL.md +384 -0
  327. package/.qwen/skills/seed-conventions/SKILL.md +302 -0
  328. package/.qwen/skills/session-state/SKILL.md +146 -0
  329. package/.qwen/skills/setup-environment/SKILL.md +39 -0
  330. package/.qwen/skills/simulate-agents/SKILL.md +26 -0
  331. package/.qwen/skills/slice-tasks/SKILL.md +68 -0
  332. package/.qwen/skills/smoke-test/SKILL.md +257 -0
  333. package/.qwen/skills/spike-prototype/SKILL.md +95 -0
  334. package/.qwen/skills/stocktake-skills/SKILL.md +74 -0
  335. package/.qwen/skills/survey-context/SKILL.md +135 -0
  336. package/.qwen/skills/terse-mode/SKILL.md +42 -0
  337. package/.qwen/skills/trace-requirement/SKILL.md +69 -0
  338. package/.qwen/skills/using-bigpowers/SKILL.md +111 -0
  339. package/.qwen/skills/validate-contracts/SKILL.md +277 -0
  340. package/.qwen/skills/validate-fix/SKILL.md +147 -0
  341. package/.qwen/skills/verify-work/SKILL.md +191 -0
  342. package/.qwen/skills/visual-dashboard/SKILL.md +50 -0
  343. package/.qwen/skills/wire-ci/SKILL.md +374 -0
  344. package/.qwen/skills/wire-observability/SKILL.md +97 -0
  345. package/.qwen/skills/write-document/SKILL.md +255 -0
  346. package/.trae/skills/commit-message/SKILL.md +1 -1
  347. package/.trae/skills/evolve-skill/SKILL.md +1 -1
  348. package/.trae/skills/write-document/SKILL.md +1 -1
  349. package/.windsurf/rules/commit-message.md +1 -1
  350. package/.windsurf/rules/evolve-skill.md +1 -1
  351. package/.windsurf/rules/write-document.md +1 -1
  352. package/.zcode/skills/commit-message/SKILL.md +1 -1
  353. package/.zcode/skills/evolve-skill/SKILL.md +1 -1
  354. package/.zcode/skills/write-document/SKILL.md +1 -1
  355. package/CHANGELOG.md +7 -0
  356. package/package.json +1 -1
  357. package/scripts/adapters/agy.sh +3 -0
  358. package/scripts/adapters/continue.sh +3 -0
  359. package/scripts/adapters/cursor.sh +3 -0
  360. package/scripts/adapters/gemini.sh +5 -24
  361. package/scripts/adapters/mimo.sh +3 -0
  362. package/scripts/adapters/omp.sh +3 -0
  363. package/scripts/adapters/pi.sh +6 -3
  364. package/scripts/adapters/zcode.sh +3 -0
  365. package/scripts/adapters/zed.sh +3 -0
  366. package/scripts/generate-workflow-diagrams.sh +102 -0
  367. package/scripts/golden-g13-test-orphans.sh +70 -0
  368. package/scripts/golden-g14-adapter-dispatch.sh +113 -0
  369. package/scripts/lib/__pycache__/link_utils.cpython-312.pyc +0 -0
  370. package/scripts/lib/__pycache__/srp_engine_links.cpython-312.pyc +0 -0
  371. package/scripts/lib/adapter-guard.sh +30 -0
  372. package/scripts/lib/golden-suite-gates.sh +24 -0
  373. package/scripts/lib/install-targets-b.sh +0 -8
  374. package/scripts/lib/sync-render.sh +0 -43
  375. package/scripts/targets.yaml +35 -13
  376. package/scripts/test-adapter-render.sh +116 -0
  377. package/scripts/test-adapters.sh +10 -3
  378. package/scripts/test-install-hub.sh +139 -0
  379. package/skills/commit-message/REFERENCE.md +1 -1
  380. package/skills/evolve-skill/REFERENCE.md +1 -1
  381. package/skills/write-document/REFERENCE.md +1 -1
  382. package/scripts/test-agy-hub.sh +0 -60
  383. package/scripts/test-cline-adapter.sh +0 -55
  384. package/scripts/test-cline-hub.sh +0 -48
  385. package/scripts/test-codebuddy-adapter.sh +0 -63
  386. package/scripts/test-codebuddy-hub.sh +0 -49
  387. package/scripts/test-codex-adapter.sh +0 -63
  388. package/scripts/test-codex-hub.sh +0 -49
  389. package/scripts/test-copilot-adapter.sh +0 -47
  390. package/scripts/test-copilot-hub.sh +0 -43
  391. package/scripts/test-gemini-adapter.sh +0 -70
  392. package/scripts/test-gemini-hub.sh +0 -56
  393. package/scripts/test-hermes-adapter.sh +0 -85
  394. package/scripts/test-hermes-hub.sh +0 -52
  395. package/scripts/test-kilocode-adapter.sh +0 -55
  396. package/scripts/test-kilocode-hub.sh +0 -48
  397. package/scripts/test-mimo-hub.sh +0 -52
  398. package/scripts/test-opencode-adapter.sh +0 -47
  399. package/scripts/test-opencode-hub.sh +0 -43
  400. package/scripts/test-qwen-adapter.sh +0 -63
  401. package/scripts/test-qwen-hub.sh +0 -49
  402. package/scripts/test-trae-adapter.sh +0 -63
  403. package/scripts/test-trae-hub.sh +0 -49
  404. package/scripts/test-windsurf-adapter.sh +0 -63
  405. package/scripts/test-windsurf-hub.sh +0 -49
  406. package/scripts/test-zcode-hub.sh +0 -52
@@ -1,43 +0,0 @@
1
- #!/usr/bin/env bash
2
- # story: e71s02
3
- # Regression tests for Copilot CLI install hub wiring (Wave B).
4
- set -euo pipefail
5
-
6
- REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
7
- PASS=0
8
- FAIL=0
9
-
10
- pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
11
- fail() { echo "FAIL: $1" >&2; FAIL=$((FAIL + 1)); }
12
-
13
- echo "=== test-copilot-hub.sh ==="
14
-
15
- INSTALL_SH="$REPO_ROOT/scripts/install.sh"
16
- source "$REPO_ROOT/scripts/lib/install-grep.sh"
17
- HELPERS_JS="$REPO_ROOT/scripts/lib/install-helpers.js"
18
- SETUP_JS="$REPO_ROOT/bin/setup.js"
19
- TARGETS_YAML="$REPO_ROOT/scripts/targets.yaml"
20
-
21
- install_grep -q 'install_copilot()' && pass 'install.sh: install_copilot()' || fail 'install.sh: missing install_copilot()'
22
- install_grep -q 'uninstall_copilot()' && pass 'install.sh: uninstall_copilot()' || fail 'install.sh: missing uninstall_copilot()'
23
- install_grep -q 'COPILOT_SKILLS_DIR=' && pass 'install.sh: skills dir var' || fail 'install.sh: missing skills dir var'
24
- install_grep -q 'install_copilot' && install_grep -q 'uninstall_copilot' && pass 'install.sh: dispatch wired' || fail 'install.sh: dispatch missing copilot'
25
-
26
- DRY_OUT="$(bash "$INSTALL_SH" --dry-run 2>&1)"
27
- grep -q 'Copilot CLI →' <<< "$DRY_OUT" && pass 'dry-run: Copilot CLI section' || fail 'dry-run: missing Copilot CLI section'
28
- DRY_UNINSTALL="$(bash "$INSTALL_SH" --dry-run --uninstall 2>&1)"
29
- grep -q 'Copilot CLI →' <<< "$DRY_UNINSTALL" && pass 'dry-run uninstall: Copilot CLI section' || fail 'dry-run uninstall: missing Copilot CLI section'
30
-
31
- grep -q "case 'copilot'" "$HELPERS_JS" && pass 'install-helpers: copilot case' || fail 'install-helpers: missing copilot case'
32
-
33
- SETUP_SRC="$(cat "$SETUP_JS")"
34
- echo "$SETUP_SRC" | grep -q "SUPPORTED_IDS = new Set" && pass 'setup.js: SUPPORTED_IDS set' || fail 'setup.js: missing SUPPORTED_IDS'
35
- grep -q "'copilot'" <<< "$(sed -n "/SUPPORTED_IDS = new Set/,/);/p" "$SETUP_JS")" && pass 'setup.js: copilot in SUPPORTED_IDS' || fail 'setup.js: copilot not in SUPPORTED_IDS'
36
-
37
-
38
- bash -n "$INSTALL_SH" && pass 'bash -n install.sh' || fail 'bash -n install.sh'
39
- node --check "$HELPERS_JS" && pass 'node --check install-helpers.js' || fail 'node --check install-helpers.js'
40
- node --check "$SETUP_JS" && pass 'node --check setup.js' || fail 'node --check setup.js'
41
-
42
- echo "test-copilot-hub: $PASS passed, $FAIL failed"
43
- [[ "$FAIL" -eq 0 ]] || exit 1
@@ -1,70 +0,0 @@
1
- #!/usr/bin/env bash
2
- # story: e64s01
3
- # Validates Gemini adapter hook templates and stdin render path.
4
- set -euo pipefail
5
-
6
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
7
- REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
8
- GEMINI_EXT="$REPO_ROOT/.gemini/extensions/bigpowers"
9
-
10
- echo "=== test-gemini-adapter.sh ==="
11
-
12
- # Test 1: validate hook templates via adapter CLI
13
- echo "Test 1: validate_hook_templates"
14
- GEMINI_EXT_DIR="$GEMINI_EXT" GEMINI_HOOKS_DIR="$GEMINI_EXT/hooks" \
15
- bash "$REPO_ROOT/scripts/adapters/gemini.sh" --validate-hooks
16
-
17
- # Test 2: event count
18
- echo "Test 2: hook event count"
19
- COUNT="$(GEMINI_EXT_DIR="$GEMINI_EXT" bash "$REPO_ROOT/scripts/adapters/gemini.sh" --list-hook-events | wc -l | tr -d ' ')"
20
- if [[ "$COUNT" != "11" ]]; then
21
- echo "FAIL: expected 11 events, got $COUNT"
22
- exit 1
23
- fi
24
-
25
- # Test 3: HOOKS.md documents all events
26
- echo "Test 3: HOOKS.md coverage"
27
- for ev in BeforeTool AfterTool BeforeAgent AfterAgent BeforeModel BeforeToolSelection AfterModel SessionStart SessionEnd Notification PreCompress; do
28
- grep -q "$ev" "$GEMINI_EXT/hooks/HOOKS.md" || { echo "FAIL: HOOKS.md missing $ev"; exit 1; }
29
- done
30
-
31
- # Test 4: stdin render smoke (fallback path without sync-render sourced)
32
- echo "Test 4: stdin render smoke"
33
- TMP_SKILL="$GEMINI_EXT/skills/_test-gemini-adapter"
34
- TMP_CMD="$GEMINI_EXT/commands/prompts/_test-gemini-adapter.md"
35
- rm -rf "$TMP_SKILL" "$TMP_CMD"
36
- echo '{"name":"_test-gemini-adapter","model":"","description":"adapter test","body":"test body"}' | \
37
- GEMINI_SKILLS="$GEMINI_EXT/skills" GEMINI_COMMANDS="$GEMINI_EXT/commands" \
38
- bash "$REPO_ROOT/scripts/adapters/gemini.sh"
39
- if [[ ! -f "$TMP_SKILL/SKILL.md" ]] || [[ ! -f "$TMP_CMD" ]]; then
40
- echo "FAIL: gemini adapter did not render test skill"
41
- exit 1
42
- fi
43
- rm -rf "$TMP_SKILL" "$TMP_CMD"
44
-
45
- # Test 5: render_hooks_manifest delegates to render_gemini_hooks_manifest override
46
- # (subshell invocation — adapters are subprocess-invoked, not sourced, per Tests 1-4 above)
47
- echo "Test 5: render_hooks_manifest"
48
- GEMINI_EXT_DIR="$GEMINI_EXT" bash -c "
49
- source '$REPO_ROOT/scripts/lib/skill-common.sh' 2>/dev/null || true
50
- source '$REPO_ROOT/scripts/lib/sync-render.sh'
51
- source '$REPO_ROOT/scripts/adapters/gemini.sh'
52
- render_hooks_manifest
53
- "
54
- grep -q '"events_total": 11' "$GEMINI_EXT/hooks/hooks-manifest.json" || {
55
- echo "FAIL: hooks-manifest.json invalid after render"
56
- exit 1
57
- }
58
-
59
- # Test 6: before-tool-git-guard gemini JSON shape
60
- echo "Test 6: before-tool-git-guard gemini mode"
61
- OUT="$(echo '{"tool_input":{"command":"git reset --hard"}}' | \
62
- bash "$GEMINI_EXT/hooks/before-tool-git-guard.sh")"
63
- echo "$OUT" | jq -e '.decision == "deny"' >/dev/null || {
64
- echo "FAIL: git guard did not deny dangerous reset --hard"
65
- echo "$OUT"
66
- exit 1
67
- }
68
-
69
- echo "PASS: test-gemini-adapter.sh"
70
- exit 0
@@ -1,56 +0,0 @@
1
- #!/usr/bin/env bash
2
- # story: e64s02
3
- # Regression tests for Gemini install hub wiring (Wave B).
4
- set -euo pipefail
5
-
6
- REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
7
- PASS=0
8
- FAIL=0
9
-
10
- pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
11
- fail() { echo "FAIL: $1" >&2; FAIL=$((FAIL + 1)); }
12
-
13
- echo "=== test-gemini-hub.sh ==="
14
-
15
- INSTALL_SH="$REPO_ROOT/scripts/install.sh"
16
- source "$REPO_ROOT/scripts/lib/install-grep.sh"
17
- HELPERS_JS="$REPO_ROOT/scripts/lib/install-helpers.js"
18
- SETUP_JS="$REPO_ROOT/bin/setup.js"
19
- TARGETS_YAML="$REPO_ROOT/scripts/targets.yaml"
20
-
21
- install_grep -q 'install_gemini()' && pass 'install.sh: install_gemini()' || fail 'install.sh: missing install_gemini()'
22
- install_grep -q 'uninstall_gemini()' && pass 'install.sh: uninstall_gemini()' || fail 'install.sh: missing uninstall_gemini()'
23
- install_grep -q 'GEMINI_HOOKS_SRC=' && pass 'install.sh: GEMINI_HOOKS_SRC' || fail 'install.sh: missing GEMINI_HOOKS_SRC'
24
- install_grep -q 'before-tool-git-guard.sh' && pass 'install.sh: Wave A git-guard hook' || fail 'install.sh: missing before-tool-git-guard.sh'
25
- install_grep -q 'before-tool-rtk.sh' && pass 'install.sh: Wave A rtk hook' || fail 'install.sh: missing before-tool-rtk.sh'
26
- install_grep -q 'install_gemini' && install_grep -q 'uninstall_gemini' && pass 'install.sh: dispatch wired' || fail 'install.sh: dispatch missing gemini'
27
-
28
- DRY_OUT="$(bash "$INSTALL_SH" --dry-run 2>&1)"
29
- grep -q 'Gemini CLI →' <<< "$DRY_OUT" && pass 'dry-run: Gemini CLI section' || fail 'dry-run: missing Gemini CLI section'
30
- grep -q 'before-tool-git-guard.sh' <<< "$DRY_OUT" && pass 'dry-run: git-guard hook symlink' || fail 'dry-run: missing git-guard hook'
31
- DRY_UNINSTALL="$(bash "$INSTALL_SH" --dry-run --uninstall 2>&1)"
32
- grep -q 'Gemini CLI →' <<< "$DRY_UNINSTALL" && pass 'dry-run uninstall: Gemini CLI section' || fail 'dry-run uninstall: missing Gemini CLI section'
33
-
34
- grep -q "case 'gemini'" "$HELPERS_JS" && pass 'install-helpers: gemini global case' || fail 'install-helpers: missing gemini global case'
35
- grep -q 'before-tool-git-guard.sh' "$HELPERS_JS" && pass 'install-helpers: gemini hook wiring' || fail 'install-helpers: missing gemini hook wiring'
36
-
37
- SETUP_SRC="$(cat "$SETUP_JS")"
38
- echo "$SETUP_SRC" | grep -q "SUPPORTED_IDS = new Set" && pass 'setup.js: SUPPORTED_IDS set' || fail 'setup.js: missing SUPPORTED_IDS'
39
- echo "$SETUP_SRC" | grep -q "'gemini'" "$SETUP_JS" && pass 'setup.js: gemini in TOOLS' || fail 'setup.js: gemini missing from TOOLS'
40
- echo "$SETUP_SRC" | grep -q "'gemini'" && echo "$SETUP_SRC" | grep -q "SUPPORTED_IDS" \
41
- && grep -q "'gemini'" <<< "$(sed -n "/SUPPORTED_IDS = new Set/,/);/p" "$SETUP_JS")" \
42
- && pass 'setup.js: gemini in SUPPORTED_IDS' || fail 'setup.js: gemini not in SUPPORTED_IDS'
43
-
44
- grep -q 'id: gemini' "$TARGETS_YAML" && pass 'targets.yaml: gemini row' || fail 'targets.yaml: missing gemini row'
45
- grep -q 'adapter: gemini' "$TARGETS_YAML" && pass 'targets.yaml: gemini adapter' || fail 'targets.yaml: missing gemini adapter'
46
- grep -q 'gemini_hooks_manifest' "$TARGETS_YAML" && pass 'targets.yaml: gemini_hooks_manifest contract' || fail 'targets.yaml: missing gemini_hooks_manifest'
47
-
48
- grep -q 'install_gemini()' "$REPO_ROOT/scripts/verify-install.sh" && pass 'verify-install: install_gemini assertion' || fail 'verify-install: missing install_gemini assertion'
49
- grep -q 'gemini_hooks_manifest' "$REPO_ROOT/scripts/verify-install.sh" && pass 'verify-install: gemini hook contract' || fail 'verify-install: missing gemini hook contract'
50
-
51
- bash -n "$INSTALL_SH" && pass 'bash -n install.sh' || fail 'bash -n install.sh'
52
- node --check "$HELPERS_JS" && pass 'node --check install-helpers.js' || fail 'node --check install-helpers.js'
53
- node --check "$SETUP_JS" && pass 'node --check setup.js' || fail 'node --check setup.js'
54
-
55
- echo "test-gemini-hub: $PASS passed, $FAIL failed"
56
- [[ "$FAIL" -eq 0 ]] || exit 1
@@ -1,85 +0,0 @@
1
- #!/usr/bin/env bash
2
- # story: e61s01
3
- # Regression tests for Hermes adapter render + hook templates.
4
- set -euo pipefail
5
-
6
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
7
- REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
8
-
9
- PASS=0
10
- FAIL=0
11
-
12
- pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
13
- fail() { echo "FAIL: $1"; FAIL=$((FAIL + 1)); }
14
-
15
- echo "=== test-hermes-adapter.sh ==="
16
-
17
- TMP=$(mktemp -d)
18
- trap 'rm -rf "$TMP"' EXIT
19
-
20
- # Task 1+2: stdin SkillIR render
21
- if echo '{"name":"test-skill","description":"test desc","body":"test body"}' \
22
- | HERMES_SKILLS="$TMP/skills" bash "$REPO_ROOT/scripts/adapters/hermes.sh" \
23
- && [[ -f "$TMP/skills/test-skill/SKILL.md" ]] \
24
- && grep -q 'name: test-skill' "$TMP/skills/test-skill/SKILL.md" \
25
- && grep -q 'test body' "$TMP/skills/test-skill/SKILL.md"; then
26
- pass "render_skill emits SKILL.md from stdin SkillIR"
27
- else
28
- fail "render_skill emits SKILL.md from stdin SkillIR"
29
- fi
30
-
31
- # IR_NAME sanitization rejects path traversal
32
- if ! echo '{"name":"../escape","description":"d","body":"b"}' \
33
- | HERMES_SKILLS="$TMP/bad" bash "$REPO_ROOT/scripts/adapters/hermes.sh" 2>/dev/null; then
34
- pass "rejects path traversal in skill name"
35
- else
36
- fail "rejects path traversal in skill name"
37
- fi
38
-
39
- # Gateway template
40
- if [[ -f "$REPO_ROOT/scripts/hooks/hermes/gateway/session-log/HOOK.yaml" ]] \
41
- && [[ -f "$REPO_ROOT/scripts/hooks/hermes/gateway/session-log/handler.py" ]] \
42
- && grep -q 'agent:start' "$REPO_ROOT/scripts/hooks/hermes/gateway/session-log/HOOK.yaml" \
43
- && grep -q 'async def handle' "$REPO_ROOT/scripts/hooks/hermes/gateway/session-log/handler.py"; then
44
- pass "gateway hook template present"
45
- else
46
- fail "gateway hook template present"
47
- fi
48
-
49
- # Shell template
50
- if [[ -f "$REPO_ROOT/scripts/hooks/hermes/shell/block-dangerous-terminal.sh" ]] \
51
- && [[ -f "$REPO_ROOT/scripts/hooks/hermes/shell/hooks-config.example.yaml" ]] \
52
- && grep -q 'pre_tool_call' "$REPO_ROOT/scripts/hooks/hermes/shell/hooks-config.example.yaml"; then
53
- pass "shell hook template present"
54
- else
55
- fail "shell hook template present"
56
- fi
57
-
58
- # Plugin template
59
- if [[ -f "$REPO_ROOT/scripts/hooks/hermes/plugin/guard-git-plugin.py" ]] \
60
- && grep -q 'register_hook' "$REPO_ROOT/scripts/hooks/hermes/plugin/guard-git-plugin.py"; then
61
- pass "plugin hook template present"
62
- else
63
- fail "plugin hook template present"
64
- fi
65
-
66
- # Shell hook block decision shape
67
- BLOCK_OUT=$(echo '{"tool_name":"terminal","tool_input":{"command":"git push --force origin main"}}' \
68
- | bash "$REPO_ROOT/scripts/hooks/hermes/shell/block-dangerous-terminal.sh")
69
- if echo "$BLOCK_OUT" | grep -q 'block'; then
70
- pass "shell hook blocks dangerous terminal command"
71
- else
72
- fail "shell hook blocks dangerous terminal command"
73
- fi
74
-
75
- # test-adapters smoke (exit code may be 1 due to ta_cleanup trap when TA_TMPDIR unset — pre-existing e37)
76
- ADAPTER_OUT=$(bash "$REPO_ROOT/scripts/test-adapters.sh" hermes 2>&1 || true)
77
- if echo "$ADAPTER_OUT" | grep -q '0 failed' && echo "$ADAPTER_OUT" | grep -q 'PASS hermes: idempotent wire_context'; then
78
- pass "test-adapters.sh hermes"
79
- else
80
- fail "test-adapters.sh hermes"
81
- echo "$ADAPTER_OUT"
82
- fi
83
-
84
- echo "test-hermes-adapter: $PASS passed, $FAIL failed"
85
- [[ "$FAIL" -eq 0 ]] || exit 1
@@ -1,52 +0,0 @@
1
- #!/usr/bin/env bash
2
- # story: e61s02
3
- # Regression tests for Hermes install hub wiring (Wave B).
4
- set -euo pipefail
5
-
6
- REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
7
- PASS=0
8
- FAIL=0
9
-
10
- pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
11
- fail() { echo "FAIL: $1" >&2; FAIL=$((FAIL + 1)); }
12
-
13
- echo "=== test-hermes-hub.sh ==="
14
-
15
- INSTALL_SH="$REPO_ROOT/scripts/install.sh"
16
- source "$REPO_ROOT/scripts/lib/install-grep.sh"
17
- HELPERS_JS="$REPO_ROOT/scripts/lib/install-helpers.js"
18
- SETUP_JS="$REPO_ROOT/bin/setup.js"
19
- TARGETS_YAML="$REPO_ROOT/scripts/targets.yaml"
20
-
21
- install_grep -q 'install_hermes()' && pass 'install.sh: install_hermes()' || fail 'install.sh: missing install_hermes()'
22
- install_grep -q 'uninstall_hermes()' && pass 'install.sh: uninstall_hermes()' || fail 'install.sh: missing uninstall_hermes()'
23
- install_grep -q 'HERMES_SKILLS_DIR=' && pass 'install.sh: HERMES_SKILLS_DIR' || fail 'install.sh: missing HERMES_SKILLS_DIR'
24
- install_grep -q 'install_hermes' && install_grep -q 'uninstall_hermes' && pass 'install.sh: dispatch wired' || fail 'install.sh: dispatch missing hermes'
25
-
26
- DRY_OUT="$(bash "$INSTALL_SH" --dry-run 2>&1)"
27
- grep -q 'Hermes Agent →' <<< "$DRY_OUT" && pass 'dry-run: Hermes Agent section' || fail 'dry-run: missing Hermes Agent section'
28
- DRY_UNINSTALL="$(bash "$INSTALL_SH" --dry-run --uninstall 2>&1)"
29
- grep -q 'Hermes Agent →' <<< "$DRY_UNINSTALL" && pass 'dry-run uninstall: Hermes Agent section' || fail 'dry-run uninstall: missing Hermes Agent section'
30
-
31
- grep -q "case 'hermes'" "$HELPERS_JS" && pass 'install-helpers: hermes global case' || fail 'install-helpers: missing hermes global case'
32
- grep -q "case 'hermes'" "$HELPERS_JS" && pass 'install-helpers: hermes cases present' || fail 'install-helpers: missing hermes cases'
33
-
34
- SETUP_SRC="$(cat "$SETUP_JS")"
35
- echo "$SETUP_SRC" | grep -q "SUPPORTED_IDS = new Set" && pass 'setup.js: SUPPORTED_IDS set' || fail 'setup.js: missing SUPPORTED_IDS'
36
- echo "$SETUP_SRC" | grep -q "'hermes'" "$SETUP_JS" && pass 'setup.js: hermes in TOOLS' || fail 'setup.js: hermes missing from TOOLS'
37
- echo "$SETUP_SRC" | grep -q "'hermes'" && echo "$SETUP_SRC" | grep -q "SUPPORTED_IDS" \
38
- && grep -q "'hermes'" <<< "$(sed -n "/SUPPORTED_IDS = new Set/,/);/p" "$SETUP_JS")" \
39
- && pass 'setup.js: hermes in SUPPORTED_IDS' || fail 'setup.js: hermes not in SUPPORTED_IDS'
40
-
41
- grep -q 'id: hermes' "$TARGETS_YAML" && pass 'targets.yaml: hermes row' || fail 'targets.yaml: missing hermes row'
42
- grep -q 'adapter: hermes' "$TARGETS_YAML" && pass 'targets.yaml: hermes adapter' || fail 'targets.yaml: missing hermes adapter'
43
- grep -q 'bridge_key: instructions' "$TARGETS_YAML" && pass 'targets.yaml: instructions bridge_key' || fail 'targets.yaml: missing bridge_key'
44
-
45
- grep -q 'install_hermes()' "$REPO_ROOT/scripts/verify-install.sh" && pass 'verify-install: install_hermes assertion' || fail 'verify-install: missing install_hermes assertion'
46
-
47
- bash -n "$INSTALL_SH" && pass 'bash -n install.sh' || fail 'bash -n install.sh'
48
- node --check "$HELPERS_JS" && pass 'node --check install-helpers.js' || fail 'node --check install-helpers.js'
49
- node --check "$SETUP_JS" && pass 'node --check setup.js' || fail 'node --check setup.js'
50
-
51
- echo "test-hermes-hub: $PASS passed, $FAIL failed"
52
- [[ "$FAIL" -eq 0 ]] || exit 1
@@ -1,55 +0,0 @@
1
- #!/usr/bin/env bash
2
- # story: e67s01
3
- # scenario: SC-e67s01-P1-02
4
- # Regression tests for Kilo adapter render + hook templates.
5
- set -euo pipefail
6
-
7
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
8
- REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
9
-
10
- PASS=0
11
- FAIL=0
12
-
13
- pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
14
- fail() { echo "FAIL: $1"; FAIL=$((FAIL + 1)); }
15
-
16
- echo "=== test-kilocode-adapter.sh ==="
17
-
18
- TMP=$(mktemp -d)
19
- trap 'rm -rf "$TMP"' EXIT
20
-
21
- if echo '{"name":"test-skill","description":"test desc","body":"test body"}' \
22
- | KILOCODE_RULES="$TMP" bash "$REPO_ROOT/scripts/adapters/kilocode.sh" \
23
- && [[ -f $TMP/test-skill.md ]] \
24
- && grep -q 'name: test-skill' $TMP/test-skill.md \
25
- && grep -q 'test body' $TMP/test-skill.md; then
26
- pass "render_skill emits artifact from stdin SkillIR"
27
- else
28
- fail "render_skill emits artifact from stdin SkillIR"
29
- fi
30
-
31
- if ! echo '{"name":"../escape","description":"d","body":"b"}' \
32
- | KILOCODE_RULES="$TMP/bad" bash "$REPO_ROOT/scripts/adapters/kilocode.sh" 2>/dev/null; then
33
- pass "rejects path traversal in skill name"
34
- else
35
- fail "rejects path traversal in skill name"
36
- fi
37
-
38
- if [[ -f "$REPO_ROOT/scripts/hooks/kilocode/plugin/guard-git-plugin.ts" ]] \
39
- && [[ -f "$REPO_ROOT/scripts/hooks/kilocode/hooks-manifest.json" ]] \
40
- && grep -q 'registerHook' "$REPO_ROOT/scripts/hooks/kilocode/plugin/guard-git-plugin.ts"; then
41
- pass "plugin hook template present"
42
- else
43
- fail "plugin hook template present"
44
- fi
45
-
46
- ADAPTER_OUT=$(bash "$REPO_ROOT/scripts/test-adapters.sh" kilocode 2>&1 || true)
47
- if echo "$ADAPTER_OUT" | grep -q '0 failed'; then
48
- pass "test-adapters.sh kilocode"
49
- else
50
- fail "test-adapters.sh kilocode"
51
- echo "$ADAPTER_OUT"
52
- fi
53
-
54
- echo "test-kilocode-adapter: $PASS passed, $FAIL failed"
55
- [[ "$FAIL" -eq 0 ]] || exit 1
@@ -1,48 +0,0 @@
1
- #!/usr/bin/env bash
2
- # story: e67s02
3
- # Regression tests for Kilo install hub wiring (Wave B).
4
- set -euo pipefail
5
-
6
- REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
7
- PASS=0
8
- FAIL=0
9
-
10
- pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
11
- fail() { echo "FAIL: $1" >&2; FAIL=$((FAIL + 1)); }
12
-
13
- echo "=== test-kilocode-hub.sh ==="
14
-
15
- INSTALL_SH="$REPO_ROOT/scripts/install.sh"
16
- source "$REPO_ROOT/scripts/lib/install-grep.sh"
17
- HELPERS_JS="$REPO_ROOT/scripts/lib/install-helpers.js"
18
- SETUP_JS="$REPO_ROOT/bin/setup.js"
19
- TARGETS_YAML="$REPO_ROOT/scripts/targets.yaml"
20
-
21
- install_grep -q 'install_kilocode()' && pass 'install.sh: install_kilocode()' || fail 'install.sh: missing install_kilocode()'
22
- install_grep -q 'uninstall_kilocode()' && pass 'install.sh: uninstall_kilocode()' || fail 'install.sh: missing uninstall_kilocode()'
23
- install_grep -q 'KILOCODE_SKILLS_DIR=' && pass 'install.sh: skills dir var' || fail 'install.sh: missing skills dir var'
24
- install_grep -q 'install_kilocode' && install_grep -q 'uninstall_kilocode' && pass 'install.sh: dispatch wired' || fail 'install.sh: dispatch missing kilocode'
25
-
26
- DRY_OUT="$(bash "$INSTALL_SH" --dry-run 2>&1)"
27
- grep -q 'Kilo →' <<< "$DRY_OUT" && pass 'dry-run: Kilo section' || fail 'dry-run: missing Kilo section'
28
- DRY_UNINSTALL="$(bash "$INSTALL_SH" --dry-run --uninstall 2>&1)"
29
- grep -q 'Kilo →' <<< "$DRY_UNINSTALL" && pass 'dry-run uninstall: Kilo section' || fail 'dry-run uninstall: missing Kilo section'
30
-
31
- grep -q "case 'kilo'" "$HELPERS_JS" && pass 'install-helpers: kilo case' || fail 'install-helpers: missing kilo case'
32
- install_grep -q 'scripts/hooks/kilocode/plugin' && pass 'install.sh: plugin hook template' || fail 'install.sh: missing plugin template'
33
-
34
- SETUP_SRC="$(cat "$SETUP_JS")"
35
- echo "$SETUP_SRC" | grep -q "SUPPORTED_IDS = new Set" && pass 'setup.js: SUPPORTED_IDS set' || fail 'setup.js: missing SUPPORTED_IDS'
36
- grep -q "'kilo'" <<< "$(sed -n "/SUPPORTED_IDS = new Set/,/);/p" "$SETUP_JS")" && pass 'setup.js: kilo in SUPPORTED_IDS' || fail 'setup.js: kilo not in SUPPORTED_IDS'
37
-
38
- grep -q 'id: kilocode' "$TARGETS_YAML" && pass 'targets.yaml: kilocode row' || fail 'targets.yaml: missing kilocode row'
39
- grep -q 'adapter: kilocode' "$TARGETS_YAML" && pass 'targets.yaml: kilocode adapter' || fail 'targets.yaml: missing kilocode adapter'
40
- grep -q 'kilocode_hooks_manifest' "$TARGETS_YAML" && pass 'targets.yaml: kilocode_hooks_manifest' || fail 'targets.yaml: missing kilocode_hooks_manifest'
41
- grep -q 'install_kilocode()' "$REPO_ROOT/scripts/verify-install.sh" && pass 'verify-install: install_kilocode assertion' || fail 'verify-install: missing install_kilocode assertion'
42
-
43
- bash -n "$INSTALL_SH" && pass 'bash -n install.sh' || fail 'bash -n install.sh'
44
- node --check "$HELPERS_JS" && pass 'node --check install-helpers.js' || fail 'node --check install-helpers.js'
45
- node --check "$SETUP_JS" && pass 'node --check setup.js' || fail 'node --check setup.js'
46
-
47
- echo "test-kilocode-hub: $PASS passed, $FAIL failed"
48
- [[ "$FAIL" -eq 0 ]] || exit 1
@@ -1,52 +0,0 @@
1
- #!/usr/bin/env bash
2
- # story: e69s02
3
- # Regression tests for MiMo Code install hub wiring (Wave B).
4
- set -euo pipefail
5
-
6
- REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
7
- PASS=0
8
- FAIL=0
9
-
10
- pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
11
- fail() { echo "FAIL: $1" >&2; FAIL=$((FAIL + 1)); }
12
-
13
- echo "=== test-mimo-hub.sh ==="
14
-
15
- INSTALL_SH="$REPO_ROOT/scripts/install.sh"
16
- source "$REPO_ROOT/scripts/lib/install-grep.sh"
17
- HELPERS_JS="$REPO_ROOT/scripts/lib/install-helpers.js"
18
- SETUP_JS="$REPO_ROOT/bin/setup.js"
19
- TARGETS_YAML="$REPO_ROOT/scripts/targets.yaml"
20
-
21
- install_grep -q 'install_mimo()' && pass 'install.sh: install_mimo()' || fail 'install.sh: missing install_mimo()'
22
- install_grep -q 'uninstall_mimo()' && pass 'install.sh: uninstall_mimo()' || fail 'install.sh: missing uninstall_mimo()'
23
- install_grep -q 'MIMO_SKILLS_DIR=' && pass 'install.sh: MIMO_SKILLS_DIR' || fail 'install.sh: missing MIMO_SKILLS_DIR'
24
- install_grep -q 'install_mimo' && install_grep -q 'uninstall_mimo' && pass 'install.sh: dispatch wired' || fail 'install.sh: dispatch missing mimo'
25
-
26
- DRY_OUT="$(bash "$INSTALL_SH" --dry-run 2>&1)"
27
- grep -q 'MiMo Code →' <<< "$DRY_OUT" && pass 'dry-run: MiMo Code section' || fail 'dry-run: missing MiMo Code section'
28
- DRY_UNINSTALL="$(bash "$INSTALL_SH" --dry-run --uninstall 2>&1)"
29
- grep -q 'MiMo Code →' <<< "$DRY_UNINSTALL" && pass 'dry-run uninstall: MiMo Code section' || fail 'dry-run uninstall: missing MiMo Code section'
30
-
31
- grep -q "case 'mimo'" "$HELPERS_JS" && pass 'install-helpers: mimo global case' || fail 'install-helpers: missing mimo global case'
32
- grep -q "case 'mimo'" "$HELPERS_JS" && pass 'install-helpers: mimo cases present' || fail 'install-helpers: missing mimo cases'
33
-
34
- SETUP_SRC="$(cat "$SETUP_JS")"
35
- echo "$SETUP_SRC" | grep -q "SUPPORTED_IDS = new Set" && pass 'setup.js: SUPPORTED_IDS set' || fail 'setup.js: missing SUPPORTED_IDS'
36
- echo "$SETUP_SRC" | grep -q "'mimo'" "$SETUP_JS" && pass 'setup.js: mimo in TOOLS' || fail 'setup.js: mimo missing from TOOLS'
37
- echo "$SETUP_SRC" | grep -q "'mimo'" && echo "$SETUP_SRC" | grep -q "SUPPORTED_IDS" \
38
- && grep -q "'mimo'" <<< "$(sed -n "/SUPPORTED_IDS = new Set/,/);/p" "$SETUP_JS")" \
39
- && pass 'setup.js: mimo in SUPPORTED_IDS' || fail 'setup.js: mimo not in SUPPORTED_IDS'
40
-
41
- grep -q 'id: mimo' "$TARGETS_YAML" && pass 'targets.yaml: mimo row' || fail 'targets.yaml: missing mimo row'
42
- grep -q 'adapter: mimo' "$TARGETS_YAML" && pass 'targets.yaml: mimo adapter' || fail 'targets.yaml: missing mimo adapter'
43
- grep -q 'output: .mimocode/skills' "$TARGETS_YAML" && pass 'targets.yaml: mimo output path' || fail 'targets.yaml: missing mimo output'
44
-
45
- grep -q 'install_mimo()' "$REPO_ROOT/scripts/verify-install.sh" && pass 'verify-install: install_mimo assertion' || fail 'verify-install: missing install_mimo assertion'
46
-
47
- bash -n "$INSTALL_SH" && pass 'bash -n install.sh' || fail 'bash -n install.sh'
48
- node --check "$HELPERS_JS" && pass 'node --check install-helpers.js' || fail 'node --check install-helpers.js'
49
- node --check "$SETUP_JS" && pass 'node --check setup.js' || fail 'node --check setup.js'
50
-
51
- echo "test-mimo-hub: $PASS passed, $FAIL failed"
52
- [[ "$FAIL" -eq 0 ]] || exit 1
@@ -1,47 +0,0 @@
1
- #!/usr/bin/env bash
2
- # story: e62s01
3
- # scenario: SC-e62s01-P1-02
4
- # Regression tests for OpenCode adapter render + hook templates.
5
- set -euo pipefail
6
-
7
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
8
- REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
9
-
10
- PASS=0
11
- FAIL=0
12
-
13
- pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
14
- fail() { echo "FAIL: $1"; FAIL=$((FAIL + 1)); }
15
-
16
- echo "=== test-opencode-adapter.sh ==="
17
-
18
- TMP=$(mktemp -d)
19
- trap 'rm -rf "$TMP"' EXIT
20
-
21
- if echo '{"name":"test-skill","description":"test desc","body":"test body"}' \
22
- | OPENCODE_SKILLS="$TMP" bash "$REPO_ROOT/scripts/adapters/opencode.sh" \
23
- && [[ -f $TMP/test-skill/SKILL.md ]] \
24
- && grep -q 'name: test-skill' $TMP/test-skill/SKILL.md \
25
- && grep -q 'test body' $TMP/test-skill/SKILL.md; then
26
- pass "render_skill emits artifact from stdin SkillIR"
27
- else
28
- fail "render_skill emits artifact from stdin SkillIR"
29
- fi
30
-
31
- if ! echo '{"name":"../escape","description":"d","body":"b"}' \
32
- | OPENCODE_SKILLS="$TMP/bad" bash "$REPO_ROOT/scripts/adapters/opencode.sh" 2>/dev/null; then
33
- pass "rejects path traversal in skill name"
34
- else
35
- fail "rejects path traversal in skill name"
36
- fi
37
-
38
- ADAPTER_OUT=$(bash "$REPO_ROOT/scripts/test-adapters.sh" opencode 2>&1 || true)
39
- if echo "$ADAPTER_OUT" | grep -q '0 failed'; then
40
- pass "test-adapters.sh opencode"
41
- else
42
- fail "test-adapters.sh opencode"
43
- echo "$ADAPTER_OUT"
44
- fi
45
-
46
- echo "test-opencode-adapter: $PASS passed, $FAIL failed"
47
- [[ "$FAIL" -eq 0 ]] || exit 1
@@ -1,43 +0,0 @@
1
- #!/usr/bin/env bash
2
- # story: e62s02
3
- # Regression tests for OpenCode install hub wiring (Wave B).
4
- set -euo pipefail
5
-
6
- REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
7
- PASS=0
8
- FAIL=0
9
-
10
- pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
11
- fail() { echo "FAIL: $1" >&2; FAIL=$((FAIL + 1)); }
12
-
13
- echo "=== test-opencode-hub.sh ==="
14
-
15
- INSTALL_SH="$REPO_ROOT/scripts/install.sh"
16
- source "$REPO_ROOT/scripts/lib/install-grep.sh"
17
- HELPERS_JS="$REPO_ROOT/scripts/lib/install-helpers.js"
18
- SETUP_JS="$REPO_ROOT/bin/setup.js"
19
- TARGETS_YAML="$REPO_ROOT/scripts/targets.yaml"
20
-
21
- install_grep -q 'install_opencode()' && pass 'install.sh: install_opencode()' || fail 'install.sh: missing install_opencode()'
22
- install_grep -q 'uninstall_opencode()' && pass 'install.sh: uninstall_opencode()' || fail 'install.sh: missing uninstall_opencode()'
23
- install_grep -q 'OPENCODE_SKILLS_DIR=' && pass 'install.sh: skills dir var' || fail 'install.sh: missing skills dir var'
24
- install_grep -q 'install_opencode' && install_grep -q 'uninstall_opencode' && pass 'install.sh: dispatch wired' || fail 'install.sh: dispatch missing opencode'
25
-
26
- DRY_OUT="$(bash "$INSTALL_SH" --dry-run 2>&1)"
27
- grep -q 'OpenCode →' <<< "$DRY_OUT" && pass 'dry-run: OpenCode section' || fail 'dry-run: missing OpenCode section'
28
- DRY_UNINSTALL="$(bash "$INSTALL_SH" --dry-run --uninstall 2>&1)"
29
- grep -q 'OpenCode →' <<< "$DRY_UNINSTALL" && pass 'dry-run uninstall: OpenCode section' || fail 'dry-run uninstall: missing OpenCode section'
30
-
31
- grep -q "case 'opencode'" "$HELPERS_JS" && pass 'install-helpers: opencode case' || fail 'install-helpers: missing opencode case'
32
-
33
- SETUP_SRC="$(cat "$SETUP_JS")"
34
- echo "$SETUP_SRC" | grep -q "SUPPORTED_IDS = new Set" && pass 'setup.js: SUPPORTED_IDS set' || fail 'setup.js: missing SUPPORTED_IDS'
35
- grep -q "'opencode'" <<< "$(sed -n "/SUPPORTED_IDS = new Set/,/);/p" "$SETUP_JS")" && pass 'setup.js: opencode in SUPPORTED_IDS' || fail 'setup.js: opencode not in SUPPORTED_IDS'
36
-
37
-
38
- bash -n "$INSTALL_SH" && pass 'bash -n install.sh' || fail 'bash -n install.sh'
39
- node --check "$HELPERS_JS" && pass 'node --check install-helpers.js' || fail 'node --check install-helpers.js'
40
- node --check "$SETUP_JS" && pass 'node --check setup.js' || fail 'node --check setup.js'
41
-
42
- echo "test-opencode-hub: $PASS passed, $FAIL failed"
43
- [[ "$FAIL" -eq 0 ]] || exit 1
@@ -1,63 +0,0 @@
1
- #!/usr/bin/env bash
2
- # story: e68s01
3
- # scenario: SC-e68s01-P1-02
4
- # Regression tests for Qwen Code adapter render + hook templates.
5
- set -euo pipefail
6
-
7
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
8
- REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
9
-
10
- PASS=0
11
- FAIL=0
12
-
13
- pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
14
- fail() { echo "FAIL: $1"; FAIL=$((FAIL + 1)); }
15
-
16
- echo "=== test-qwen-adapter.sh ==="
17
-
18
- TMP=$(mktemp -d)
19
- trap 'rm -rf "$TMP"' EXIT
20
-
21
- if echo '{"name":"test-skill","description":"test desc","body":"test body"}' \
22
- | QWEN_SKILLS="$TMP" bash "$REPO_ROOT/scripts/adapters/qwen.sh" \
23
- && [[ -f $TMP/test-skill/SKILL.md ]] \
24
- && grep -q 'name: test-skill' $TMP/test-skill/SKILL.md \
25
- && grep -q 'test body' $TMP/test-skill/SKILL.md; then
26
- pass "render_skill emits artifact from stdin SkillIR"
27
- else
28
- fail "render_skill emits artifact from stdin SkillIR"
29
- fi
30
-
31
- if ! echo '{"name":"../escape","description":"d","body":"b"}' \
32
- | QWEN_SKILLS="$TMP/bad" bash "$REPO_ROOT/scripts/adapters/qwen.sh" 2>/dev/null; then
33
- pass "rejects path traversal in skill name"
34
- else
35
- fail "rejects path traversal in skill name"
36
- fi
37
-
38
- if [[ -f "$REPO_ROOT/scripts/hooks/qwen/pre-tool-git-guard.sh" ]] \
39
- && [[ -f "$REPO_ROOT/scripts/hooks/qwen/hooks-manifest.json" ]] \
40
- && [[ -f "$REPO_ROOT/scripts/hooks/qwen/settings.example.json" ]]; then
41
- pass "hook template bundle present"
42
- else
43
- fail "hook template bundle present"
44
- fi
45
-
46
- BLOCK_OUT=$(echo '{"tool_input":{"command":"git push --force origin main"}}' \
47
- | bash "$REPO_ROOT/scripts/hooks/qwen/pre-tool-git-guard.sh")
48
- if echo "$BLOCK_OUT" | grep -q 'block'; then
49
- pass "pre-tool guard blocks dangerous command"
50
- else
51
- fail "pre-tool guard blocks dangerous command"
52
- fi
53
-
54
- ADAPTER_OUT=$(bash "$REPO_ROOT/scripts/test-adapters.sh" qwen 2>&1 || true)
55
- if echo "$ADAPTER_OUT" | grep -q '0 failed'; then
56
- pass "test-adapters.sh qwen"
57
- else
58
- fail "test-adapters.sh qwen"
59
- echo "$ADAPTER_OUT"
60
- fi
61
-
62
- echo "test-qwen-adapter: $PASS passed, $FAIL failed"
63
- [[ "$FAIL" -eq 0 ]] || exit 1