bigpowers 2.83.4 → 2.84.1

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 (528) hide show
  1. package/.agents/skills/audit-code/SKILL.md +4 -7
  2. package/.agents/skills/grill-me/SKILL.md +12 -0
  3. package/.agents/skills/grill-with-docs/SKILL.md +12 -0
  4. package/.agents/skills/request-review/SKILL.md +1 -0
  5. package/.agents/skills/wire-ci/SKILL.md +164 -181
  6. package/.codebuddy/skills/align-grid/SKILL.md +110 -0
  7. package/.codebuddy/skills/assess-impact/SKILL.md +91 -0
  8. package/.codebuddy/skills/audit-code/SKILL.md +184 -0
  9. package/.codebuddy/skills/audit-plan/SKILL.md +89 -0
  10. package/.codebuddy/skills/build-epic/SKILL.md +105 -0
  11. package/.codebuddy/skills/change-request/SKILL.md +121 -0
  12. package/.codebuddy/skills/commit-message/SKILL.md +140 -0
  13. package/.codebuddy/skills/compose-workflow/SKILL.md +82 -0
  14. package/.codebuddy/skills/context7-mcp/SKILL.md +55 -0
  15. package/.codebuddy/skills/craft-skill/SKILL.md +179 -0
  16. package/.codebuddy/skills/deepen-architecture/SKILL.md +260 -0
  17. package/.codebuddy/skills/define-language/SKILL.md +80 -0
  18. package/.codebuddy/skills/define-success/SKILL.md +65 -0
  19. package/.codebuddy/skills/delegate-task/SKILL.md +91 -0
  20. package/.codebuddy/skills/deploy/SKILL.md +198 -0
  21. package/.codebuddy/skills/design-interface/SKILL.md +97 -0
  22. package/.codebuddy/skills/develop-tdd/SKILL.md +406 -0
  23. package/.codebuddy/skills/diagnose-root/SKILL.md +24 -0
  24. package/.codebuddy/skills/diagnose-stall/SKILL.md +54 -0
  25. package/.codebuddy/skills/dispatch-agents/SKILL.md +118 -0
  26. package/.codebuddy/skills/edit-document/SKILL.md +23 -0
  27. package/.codebuddy/skills/elaborate-spec/SKILL.md +101 -0
  28. package/.codebuddy/skills/enforce-first/SKILL.md +32 -0
  29. package/.codebuddy/skills/evolve-skill/SKILL.md +55 -0
  30. package/.codebuddy/skills/execute-plan/SKILL.md +61 -0
  31. package/.codebuddy/skills/extract-design/SKILL.md +132 -0
  32. package/.codebuddy/skills/find-way/SKILL.md +191 -0
  33. package/.codebuddy/skills/fix-bug/SKILL.md +67 -0
  34. package/.codebuddy/skills/gate-trace/SKILL.md +88 -0
  35. package/.codebuddy/skills/generate-allure-report/SKILL.md +285 -0
  36. package/.codebuddy/skills/grill-me/SKILL.md +108 -0
  37. package/.codebuddy/skills/grill-with-docs/SKILL.md +53 -0
  38. package/.codebuddy/skills/guard-git/SKILL.md +231 -0
  39. package/.codebuddy/skills/harden-vps/SKILL.md +288 -0
  40. package/.codebuddy/skills/hook-commits/SKILL.md +94 -0
  41. package/.codebuddy/skills/inspect-quality/SKILL.md +106 -0
  42. package/.codebuddy/skills/investigate-bug/SKILL.md +127 -0
  43. package/.codebuddy/skills/kickoff-branch/SKILL.md +143 -0
  44. package/.codebuddy/skills/maintain-wiki/SKILL.md +64 -0
  45. package/.codebuddy/skills/map-codebase/SKILL.md +71 -0
  46. package/.codebuddy/skills/migrate-spec/SKILL.md +862 -0
  47. package/.codebuddy/skills/model-domain/SKILL.md +232 -0
  48. package/.codebuddy/skills/orchestrate-project/SKILL.md +174 -0
  49. package/.codebuddy/skills/organize-workspace/SKILL.md +164 -0
  50. package/.codebuddy/skills/plan-refactor/SKILL.md +87 -0
  51. package/.codebuddy/skills/plan-release/SKILL.md +145 -0
  52. package/.codebuddy/skills/plan-tests/SKILL.md +75 -0
  53. package/.codebuddy/skills/plan-work/SKILL.md +260 -0
  54. package/.codebuddy/skills/publish-package/SKILL.md +328 -0
  55. package/.codebuddy/skills/quick-fix/SKILL.md +114 -0
  56. package/.codebuddy/skills/release-branch/SKILL.md +298 -0
  57. package/.codebuddy/skills/request-review/SKILL.md +113 -0
  58. package/.codebuddy/skills/research-first/SKILL.md +87 -0
  59. package/.codebuddy/skills/reset-baseline/SKILL.md +21 -0
  60. package/.codebuddy/skills/respond-review/SKILL.md +71 -0
  61. package/.codebuddy/skills/run-benchmark/SKILL.md +85 -0
  62. package/.codebuddy/skills/run-evals/SKILL.md +80 -0
  63. package/.codebuddy/skills/run-planning/SKILL.md +101 -0
  64. package/.codebuddy/skills/scope-work/SKILL.md +63 -0
  65. package/.codebuddy/skills/search-skills/SKILL.md +73 -0
  66. package/.codebuddy/skills/security-review/SKILL.md +384 -0
  67. package/.codebuddy/skills/seed-conventions/SKILL.md +285 -0
  68. package/.codebuddy/skills/session-state/SKILL.md +146 -0
  69. package/.codebuddy/skills/setup-environment/SKILL.md +39 -0
  70. package/.codebuddy/skills/simulate-agents/SKILL.md +26 -0
  71. package/.codebuddy/skills/slice-tasks/SKILL.md +68 -0
  72. package/.codebuddy/skills/smoke-test/SKILL.md +242 -0
  73. package/.codebuddy/skills/spike-prototype/SKILL.md +95 -0
  74. package/.codebuddy/skills/stocktake-skills/SKILL.md +72 -0
  75. package/.codebuddy/skills/survey-context/SKILL.md +135 -0
  76. package/.codebuddy/skills/terse-mode/SKILL.md +42 -0
  77. package/.codebuddy/skills/trace-requirement/SKILL.md +69 -0
  78. package/.codebuddy/skills/using-bigpowers/SKILL.md +111 -0
  79. package/.codebuddy/skills/validate-contracts/SKILL.md +309 -0
  80. package/.codebuddy/skills/validate-fix/SKILL.md +106 -0
  81. package/.codebuddy/skills/verify-work/SKILL.md +191 -0
  82. package/.codebuddy/skills/visual-dashboard/SKILL.md +50 -0
  83. package/.codebuddy/skills/wire-ci/SKILL.md +358 -0
  84. package/.codebuddy/skills/wire-observability/SKILL.md +97 -0
  85. package/.codebuddy/skills/write-document/SKILL.md +255 -0
  86. package/.codex/skills/align-grid/SKILL.md +110 -0
  87. package/.codex/skills/assess-impact/SKILL.md +91 -0
  88. package/.codex/skills/audit-code/SKILL.md +184 -0
  89. package/.codex/skills/audit-plan/SKILL.md +89 -0
  90. package/.codex/skills/build-epic/SKILL.md +105 -0
  91. package/.codex/skills/change-request/SKILL.md +121 -0
  92. package/.codex/skills/commit-message/SKILL.md +140 -0
  93. package/.codex/skills/compose-workflow/SKILL.md +82 -0
  94. package/.codex/skills/context7-mcp/SKILL.md +55 -0
  95. package/.codex/skills/craft-skill/SKILL.md +179 -0
  96. package/.codex/skills/deepen-architecture/SKILL.md +260 -0
  97. package/.codex/skills/define-language/SKILL.md +80 -0
  98. package/.codex/skills/define-success/SKILL.md +65 -0
  99. package/.codex/skills/delegate-task/SKILL.md +91 -0
  100. package/.codex/skills/deploy/SKILL.md +198 -0
  101. package/.codex/skills/design-interface/SKILL.md +97 -0
  102. package/.codex/skills/develop-tdd/SKILL.md +406 -0
  103. package/.codex/skills/diagnose-root/SKILL.md +24 -0
  104. package/.codex/skills/diagnose-stall/SKILL.md +54 -0
  105. package/.codex/skills/dispatch-agents/SKILL.md +118 -0
  106. package/.codex/skills/edit-document/SKILL.md +23 -0
  107. package/.codex/skills/elaborate-spec/SKILL.md +101 -0
  108. package/.codex/skills/enforce-first/SKILL.md +32 -0
  109. package/.codex/skills/evolve-skill/SKILL.md +55 -0
  110. package/.codex/skills/execute-plan/SKILL.md +61 -0
  111. package/.codex/skills/extract-design/SKILL.md +132 -0
  112. package/.codex/skills/find-way/SKILL.md +191 -0
  113. package/.codex/skills/fix-bug/SKILL.md +67 -0
  114. package/.codex/skills/gate-trace/SKILL.md +88 -0
  115. package/.codex/skills/generate-allure-report/SKILL.md +285 -0
  116. package/.codex/skills/grill-me/SKILL.md +108 -0
  117. package/.codex/skills/grill-with-docs/SKILL.md +53 -0
  118. package/.codex/skills/guard-git/SKILL.md +231 -0
  119. package/.codex/skills/harden-vps/SKILL.md +288 -0
  120. package/.codex/skills/hook-commits/SKILL.md +94 -0
  121. package/.codex/skills/inspect-quality/SKILL.md +106 -0
  122. package/.codex/skills/investigate-bug/SKILL.md +127 -0
  123. package/.codex/skills/kickoff-branch/SKILL.md +143 -0
  124. package/.codex/skills/maintain-wiki/SKILL.md +64 -0
  125. package/.codex/skills/map-codebase/SKILL.md +71 -0
  126. package/.codex/skills/migrate-spec/SKILL.md +862 -0
  127. package/.codex/skills/model-domain/SKILL.md +232 -0
  128. package/.codex/skills/orchestrate-project/SKILL.md +174 -0
  129. package/.codex/skills/organize-workspace/SKILL.md +164 -0
  130. package/.codex/skills/plan-refactor/SKILL.md +87 -0
  131. package/.codex/skills/plan-release/SKILL.md +145 -0
  132. package/.codex/skills/plan-tests/SKILL.md +75 -0
  133. package/.codex/skills/plan-work/SKILL.md +260 -0
  134. package/.codex/skills/publish-package/SKILL.md +328 -0
  135. package/.codex/skills/quick-fix/SKILL.md +114 -0
  136. package/.codex/skills/release-branch/SKILL.md +298 -0
  137. package/.codex/skills/request-review/SKILL.md +113 -0
  138. package/.codex/skills/research-first/SKILL.md +87 -0
  139. package/.codex/skills/reset-baseline/SKILL.md +21 -0
  140. package/.codex/skills/respond-review/SKILL.md +71 -0
  141. package/.codex/skills/run-benchmark/SKILL.md +85 -0
  142. package/.codex/skills/run-evals/SKILL.md +80 -0
  143. package/.codex/skills/run-planning/SKILL.md +101 -0
  144. package/.codex/skills/scope-work/SKILL.md +63 -0
  145. package/.codex/skills/search-skills/SKILL.md +73 -0
  146. package/.codex/skills/security-review/SKILL.md +384 -0
  147. package/.codex/skills/seed-conventions/SKILL.md +285 -0
  148. package/.codex/skills/session-state/SKILL.md +146 -0
  149. package/.codex/skills/setup-environment/SKILL.md +39 -0
  150. package/.codex/skills/simulate-agents/SKILL.md +26 -0
  151. package/.codex/skills/slice-tasks/SKILL.md +68 -0
  152. package/.codex/skills/smoke-test/SKILL.md +242 -0
  153. package/.codex/skills/spike-prototype/SKILL.md +95 -0
  154. package/.codex/skills/stocktake-skills/SKILL.md +72 -0
  155. package/.codex/skills/survey-context/SKILL.md +135 -0
  156. package/.codex/skills/terse-mode/SKILL.md +42 -0
  157. package/.codex/skills/trace-requirement/SKILL.md +69 -0
  158. package/.codex/skills/using-bigpowers/SKILL.md +111 -0
  159. package/.codex/skills/validate-contracts/SKILL.md +309 -0
  160. package/.codex/skills/validate-fix/SKILL.md +106 -0
  161. package/.codex/skills/verify-work/SKILL.md +191 -0
  162. package/.codex/skills/visual-dashboard/SKILL.md +50 -0
  163. package/.codex/skills/wire-ci/SKILL.md +358 -0
  164. package/.codex/skills/wire-observability/SKILL.md +97 -0
  165. package/.codex/skills/write-document/SKILL.md +255 -0
  166. package/.hermes/skills/audit-code/SKILL.md +4 -7
  167. package/.hermes/skills/grill-me/SKILL.md +12 -0
  168. package/.hermes/skills/grill-with-docs/SKILL.md +12 -0
  169. package/.hermes/skills/request-review/SKILL.md +1 -0
  170. package/.hermes/skills/wire-ci/SKILL.md +164 -181
  171. package/.kilocode/rules/align-grid.md +110 -0
  172. package/.kilocode/rules/assess-impact.md +91 -0
  173. package/.kilocode/rules/audit-code.md +184 -0
  174. package/.kilocode/rules/audit-plan.md +89 -0
  175. package/.kilocode/rules/build-epic.md +105 -0
  176. package/.kilocode/rules/change-request.md +121 -0
  177. package/.kilocode/rules/commit-message.md +140 -0
  178. package/.kilocode/rules/compose-workflow.md +82 -0
  179. package/.kilocode/rules/context7-mcp.md +55 -0
  180. package/.kilocode/rules/craft-skill.md +179 -0
  181. package/.kilocode/rules/deepen-architecture.md +260 -0
  182. package/.kilocode/rules/define-language.md +80 -0
  183. package/.kilocode/rules/define-success.md +65 -0
  184. package/.kilocode/rules/delegate-task.md +91 -0
  185. package/.kilocode/rules/deploy.md +198 -0
  186. package/.kilocode/rules/design-interface.md +97 -0
  187. package/.kilocode/rules/develop-tdd.md +406 -0
  188. package/.kilocode/rules/diagnose-root.md +24 -0
  189. package/.kilocode/rules/diagnose-stall.md +54 -0
  190. package/.kilocode/rules/dispatch-agents.md +118 -0
  191. package/.kilocode/rules/edit-document.md +23 -0
  192. package/.kilocode/rules/elaborate-spec.md +101 -0
  193. package/.kilocode/rules/enforce-first.md +32 -0
  194. package/.kilocode/rules/evolve-skill.md +55 -0
  195. package/.kilocode/rules/execute-plan.md +61 -0
  196. package/.kilocode/rules/extract-design.md +132 -0
  197. package/.kilocode/rules/find-way.md +191 -0
  198. package/.kilocode/rules/fix-bug.md +67 -0
  199. package/.kilocode/rules/gate-trace.md +88 -0
  200. package/.kilocode/rules/generate-allure-report.md +285 -0
  201. package/.kilocode/rules/grill-me.md +108 -0
  202. package/.kilocode/rules/grill-with-docs.md +53 -0
  203. package/.kilocode/rules/guard-git.md +231 -0
  204. package/.kilocode/rules/harden-vps.md +288 -0
  205. package/.kilocode/rules/hook-commits.md +94 -0
  206. package/.kilocode/rules/inspect-quality.md +106 -0
  207. package/.kilocode/rules/investigate-bug.md +127 -0
  208. package/.kilocode/rules/kickoff-branch.md +143 -0
  209. package/.kilocode/rules/maintain-wiki.md +64 -0
  210. package/.kilocode/rules/map-codebase.md +71 -0
  211. package/.kilocode/rules/migrate-spec.md +862 -0
  212. package/.kilocode/rules/model-domain.md +232 -0
  213. package/.kilocode/rules/orchestrate-project.md +174 -0
  214. package/.kilocode/rules/organize-workspace.md +164 -0
  215. package/.kilocode/rules/plan-refactor.md +87 -0
  216. package/.kilocode/rules/plan-release.md +145 -0
  217. package/.kilocode/rules/plan-tests.md +75 -0
  218. package/.kilocode/rules/plan-work.md +260 -0
  219. package/.kilocode/rules/publish-package.md +328 -0
  220. package/.kilocode/rules/quick-fix.md +114 -0
  221. package/.kilocode/rules/release-branch.md +298 -0
  222. package/.kilocode/rules/request-review.md +113 -0
  223. package/.kilocode/rules/research-first.md +87 -0
  224. package/.kilocode/rules/reset-baseline.md +21 -0
  225. package/.kilocode/rules/respond-review.md +71 -0
  226. package/.kilocode/rules/run-benchmark.md +85 -0
  227. package/.kilocode/rules/run-evals.md +80 -0
  228. package/.kilocode/rules/run-planning.md +101 -0
  229. package/.kilocode/rules/scope-work.md +63 -0
  230. package/.kilocode/rules/search-skills.md +73 -0
  231. package/.kilocode/rules/security-review.md +384 -0
  232. package/.kilocode/rules/seed-conventions.md +285 -0
  233. package/.kilocode/rules/session-state.md +146 -0
  234. package/.kilocode/rules/setup-environment.md +39 -0
  235. package/.kilocode/rules/simulate-agents.md +26 -0
  236. package/.kilocode/rules/slice-tasks.md +68 -0
  237. package/.kilocode/rules/smoke-test.md +242 -0
  238. package/.kilocode/rules/spike-prototype.md +95 -0
  239. package/.kilocode/rules/stocktake-skills.md +72 -0
  240. package/.kilocode/rules/survey-context.md +135 -0
  241. package/.kilocode/rules/terse-mode.md +42 -0
  242. package/.kilocode/rules/trace-requirement.md +69 -0
  243. package/.kilocode/rules/using-bigpowers.md +111 -0
  244. package/.kilocode/rules/validate-contracts.md +309 -0
  245. package/.kilocode/rules/validate-fix.md +106 -0
  246. package/.kilocode/rules/verify-work.md +191 -0
  247. package/.kilocode/rules/visual-dashboard.md +50 -0
  248. package/.kilocode/rules/wire-ci.md +358 -0
  249. package/.kilocode/rules/wire-observability.md +97 -0
  250. package/.kilocode/rules/write-document.md +255 -0
  251. package/.mimocode/skills/audit-code/SKILL.md +4 -7
  252. package/.mimocode/skills/grill-me/SKILL.md +12 -0
  253. package/.mimocode/skills/grill-with-docs/SKILL.md +12 -0
  254. package/.mimocode/skills/request-review/SKILL.md +1 -0
  255. package/.mimocode/skills/wire-ci/SKILL.md +164 -181
  256. package/.pi/package.json +1 -1
  257. package/.pi/prompts/audit-code.md +4 -7
  258. package/.pi/prompts/grill-me.md +12 -0
  259. package/.pi/prompts/grill-with-docs.md +12 -0
  260. package/.pi/prompts/request-review.md +1 -0
  261. package/.pi/prompts/wire-ci.md +164 -181
  262. package/.pi/skills/audit-code/SKILL.md +4 -7
  263. package/.pi/skills/grill-me/SKILL.md +12 -0
  264. package/.pi/skills/grill-with-docs/SKILL.md +12 -0
  265. package/.pi/skills/request-review/SKILL.md +1 -0
  266. package/.pi/skills/wire-ci/SKILL.md +164 -181
  267. package/.trae/skills/align-grid/SKILL.md +110 -0
  268. package/.trae/skills/assess-impact/SKILL.md +91 -0
  269. package/.trae/skills/audit-code/SKILL.md +184 -0
  270. package/.trae/skills/audit-plan/SKILL.md +89 -0
  271. package/.trae/skills/build-epic/SKILL.md +105 -0
  272. package/.trae/skills/change-request/SKILL.md +121 -0
  273. package/.trae/skills/commit-message/SKILL.md +140 -0
  274. package/.trae/skills/compose-workflow/SKILL.md +82 -0
  275. package/.trae/skills/context7-mcp/SKILL.md +55 -0
  276. package/.trae/skills/craft-skill/SKILL.md +179 -0
  277. package/.trae/skills/deepen-architecture/SKILL.md +260 -0
  278. package/.trae/skills/define-language/SKILL.md +80 -0
  279. package/.trae/skills/define-success/SKILL.md +65 -0
  280. package/.trae/skills/delegate-task/SKILL.md +91 -0
  281. package/.trae/skills/deploy/SKILL.md +198 -0
  282. package/.trae/skills/design-interface/SKILL.md +97 -0
  283. package/.trae/skills/develop-tdd/SKILL.md +406 -0
  284. package/.trae/skills/diagnose-root/SKILL.md +24 -0
  285. package/.trae/skills/diagnose-stall/SKILL.md +54 -0
  286. package/.trae/skills/dispatch-agents/SKILL.md +118 -0
  287. package/.trae/skills/edit-document/SKILL.md +23 -0
  288. package/.trae/skills/elaborate-spec/SKILL.md +101 -0
  289. package/.trae/skills/enforce-first/SKILL.md +32 -0
  290. package/.trae/skills/evolve-skill/SKILL.md +55 -0
  291. package/.trae/skills/execute-plan/SKILL.md +61 -0
  292. package/.trae/skills/extract-design/SKILL.md +132 -0
  293. package/.trae/skills/find-way/SKILL.md +191 -0
  294. package/.trae/skills/fix-bug/SKILL.md +67 -0
  295. package/.trae/skills/gate-trace/SKILL.md +88 -0
  296. package/.trae/skills/generate-allure-report/SKILL.md +285 -0
  297. package/.trae/skills/grill-me/SKILL.md +108 -0
  298. package/.trae/skills/grill-with-docs/SKILL.md +53 -0
  299. package/.trae/skills/guard-git/SKILL.md +231 -0
  300. package/.trae/skills/harden-vps/SKILL.md +288 -0
  301. package/.trae/skills/hook-commits/SKILL.md +94 -0
  302. package/.trae/skills/inspect-quality/SKILL.md +106 -0
  303. package/.trae/skills/investigate-bug/SKILL.md +127 -0
  304. package/.trae/skills/kickoff-branch/SKILL.md +143 -0
  305. package/.trae/skills/maintain-wiki/SKILL.md +64 -0
  306. package/.trae/skills/map-codebase/SKILL.md +71 -0
  307. package/.trae/skills/migrate-spec/SKILL.md +862 -0
  308. package/.trae/skills/model-domain/SKILL.md +232 -0
  309. package/.trae/skills/orchestrate-project/SKILL.md +174 -0
  310. package/.trae/skills/organize-workspace/SKILL.md +164 -0
  311. package/.trae/skills/plan-refactor/SKILL.md +87 -0
  312. package/.trae/skills/plan-release/SKILL.md +145 -0
  313. package/.trae/skills/plan-tests/SKILL.md +75 -0
  314. package/.trae/skills/plan-work/SKILL.md +260 -0
  315. package/.trae/skills/publish-package/SKILL.md +328 -0
  316. package/.trae/skills/quick-fix/SKILL.md +114 -0
  317. package/.trae/skills/release-branch/SKILL.md +298 -0
  318. package/.trae/skills/request-review/SKILL.md +113 -0
  319. package/.trae/skills/research-first/SKILL.md +87 -0
  320. package/.trae/skills/reset-baseline/SKILL.md +21 -0
  321. package/.trae/skills/respond-review/SKILL.md +71 -0
  322. package/.trae/skills/run-benchmark/SKILL.md +85 -0
  323. package/.trae/skills/run-evals/SKILL.md +80 -0
  324. package/.trae/skills/run-planning/SKILL.md +101 -0
  325. package/.trae/skills/scope-work/SKILL.md +63 -0
  326. package/.trae/skills/search-skills/SKILL.md +73 -0
  327. package/.trae/skills/security-review/SKILL.md +384 -0
  328. package/.trae/skills/seed-conventions/SKILL.md +285 -0
  329. package/.trae/skills/session-state/SKILL.md +146 -0
  330. package/.trae/skills/setup-environment/SKILL.md +39 -0
  331. package/.trae/skills/simulate-agents/SKILL.md +26 -0
  332. package/.trae/skills/slice-tasks/SKILL.md +68 -0
  333. package/.trae/skills/smoke-test/SKILL.md +242 -0
  334. package/.trae/skills/spike-prototype/SKILL.md +95 -0
  335. package/.trae/skills/stocktake-skills/SKILL.md +72 -0
  336. package/.trae/skills/survey-context/SKILL.md +135 -0
  337. package/.trae/skills/terse-mode/SKILL.md +42 -0
  338. package/.trae/skills/trace-requirement/SKILL.md +69 -0
  339. package/.trae/skills/using-bigpowers/SKILL.md +111 -0
  340. package/.trae/skills/validate-contracts/SKILL.md +309 -0
  341. package/.trae/skills/validate-fix/SKILL.md +106 -0
  342. package/.trae/skills/verify-work/SKILL.md +191 -0
  343. package/.trae/skills/visual-dashboard/SKILL.md +50 -0
  344. package/.trae/skills/wire-ci/SKILL.md +358 -0
  345. package/.trae/skills/wire-observability/SKILL.md +97 -0
  346. package/.trae/skills/write-document/SKILL.md +255 -0
  347. package/.windsurf/rules/align-grid.md +110 -0
  348. package/.windsurf/rules/assess-impact.md +91 -0
  349. package/.windsurf/rules/audit-code.md +184 -0
  350. package/.windsurf/rules/audit-plan.md +89 -0
  351. package/.windsurf/rules/build-epic.md +105 -0
  352. package/.windsurf/rules/change-request.md +121 -0
  353. package/.windsurf/rules/commit-message.md +140 -0
  354. package/.windsurf/rules/compose-workflow.md +82 -0
  355. package/.windsurf/rules/context7-mcp.md +55 -0
  356. package/.windsurf/rules/craft-skill.md +179 -0
  357. package/.windsurf/rules/deepen-architecture.md +260 -0
  358. package/.windsurf/rules/define-language.md +80 -0
  359. package/.windsurf/rules/define-success.md +65 -0
  360. package/.windsurf/rules/delegate-task.md +91 -0
  361. package/.windsurf/rules/deploy.md +198 -0
  362. package/.windsurf/rules/design-interface.md +97 -0
  363. package/.windsurf/rules/develop-tdd.md +406 -0
  364. package/.windsurf/rules/diagnose-root.md +24 -0
  365. package/.windsurf/rules/diagnose-stall.md +54 -0
  366. package/.windsurf/rules/dispatch-agents.md +118 -0
  367. package/.windsurf/rules/edit-document.md +23 -0
  368. package/.windsurf/rules/elaborate-spec.md +101 -0
  369. package/.windsurf/rules/enforce-first.md +32 -0
  370. package/.windsurf/rules/evolve-skill.md +55 -0
  371. package/.windsurf/rules/execute-plan.md +61 -0
  372. package/.windsurf/rules/extract-design.md +132 -0
  373. package/.windsurf/rules/find-way.md +191 -0
  374. package/.windsurf/rules/fix-bug.md +67 -0
  375. package/.windsurf/rules/gate-trace.md +88 -0
  376. package/.windsurf/rules/generate-allure-report.md +285 -0
  377. package/.windsurf/rules/grill-me.md +108 -0
  378. package/.windsurf/rules/grill-with-docs.md +53 -0
  379. package/.windsurf/rules/guard-git.md +231 -0
  380. package/.windsurf/rules/harden-vps.md +288 -0
  381. package/.windsurf/rules/hook-commits.md +94 -0
  382. package/.windsurf/rules/inspect-quality.md +106 -0
  383. package/.windsurf/rules/investigate-bug.md +127 -0
  384. package/.windsurf/rules/kickoff-branch.md +143 -0
  385. package/.windsurf/rules/maintain-wiki.md +64 -0
  386. package/.windsurf/rules/map-codebase.md +71 -0
  387. package/.windsurf/rules/migrate-spec.md +862 -0
  388. package/.windsurf/rules/model-domain.md +232 -0
  389. package/.windsurf/rules/orchestrate-project.md +174 -0
  390. package/.windsurf/rules/organize-workspace.md +164 -0
  391. package/.windsurf/rules/plan-refactor.md +87 -0
  392. package/.windsurf/rules/plan-release.md +145 -0
  393. package/.windsurf/rules/plan-tests.md +75 -0
  394. package/.windsurf/rules/plan-work.md +260 -0
  395. package/.windsurf/rules/publish-package.md +328 -0
  396. package/.windsurf/rules/quick-fix.md +114 -0
  397. package/.windsurf/rules/release-branch.md +298 -0
  398. package/.windsurf/rules/request-review.md +113 -0
  399. package/.windsurf/rules/research-first.md +87 -0
  400. package/.windsurf/rules/reset-baseline.md +21 -0
  401. package/.windsurf/rules/respond-review.md +71 -0
  402. package/.windsurf/rules/run-benchmark.md +85 -0
  403. package/.windsurf/rules/run-evals.md +80 -0
  404. package/.windsurf/rules/run-planning.md +101 -0
  405. package/.windsurf/rules/scope-work.md +63 -0
  406. package/.windsurf/rules/search-skills.md +73 -0
  407. package/.windsurf/rules/security-review.md +384 -0
  408. package/.windsurf/rules/seed-conventions.md +285 -0
  409. package/.windsurf/rules/session-state.md +146 -0
  410. package/.windsurf/rules/setup-environment.md +39 -0
  411. package/.windsurf/rules/simulate-agents.md +26 -0
  412. package/.windsurf/rules/slice-tasks.md +68 -0
  413. package/.windsurf/rules/smoke-test.md +242 -0
  414. package/.windsurf/rules/spike-prototype.md +95 -0
  415. package/.windsurf/rules/stocktake-skills.md +72 -0
  416. package/.windsurf/rules/survey-context.md +135 -0
  417. package/.windsurf/rules/terse-mode.md +42 -0
  418. package/.windsurf/rules/trace-requirement.md +69 -0
  419. package/.windsurf/rules/using-bigpowers.md +111 -0
  420. package/.windsurf/rules/validate-contracts.md +309 -0
  421. package/.windsurf/rules/validate-fix.md +106 -0
  422. package/.windsurf/rules/verify-work.md +191 -0
  423. package/.windsurf/rules/visual-dashboard.md +50 -0
  424. package/.windsurf/rules/wire-ci.md +358 -0
  425. package/.windsurf/rules/wire-observability.md +97 -0
  426. package/.windsurf/rules/write-document.md +255 -0
  427. package/.zcode/skills/audit-code/SKILL.md +4 -7
  428. package/.zcode/skills/grill-me/SKILL.md +12 -0
  429. package/.zcode/skills/grill-with-docs/SKILL.md +12 -0
  430. package/.zcode/skills/request-review/SKILL.md +1 -0
  431. package/.zcode/skills/wire-ci/SKILL.md +164 -181
  432. package/CHANGELOG.md +37 -0
  433. package/CONVENTIONS.md +22 -0
  434. package/README.md +14 -1
  435. package/SKILL-INDEX.md +84 -76
  436. package/bin/setup.js +9 -1
  437. package/instructions +1 -0
  438. package/package.json +1 -1
  439. package/scripts/adapters/cline.sh +53 -3
  440. package/scripts/adapters/codebuddy.sh +58 -0
  441. package/scripts/adapters/codex.sh +58 -0
  442. package/scripts/adapters/copilot.sh +58 -0
  443. package/scripts/adapters/kilocode.sh +44 -3
  444. package/scripts/adapters/opencode.sh +58 -0
  445. package/scripts/adapters/qwen.sh +53 -1
  446. package/scripts/adapters/trae.sh +58 -0
  447. package/scripts/adapters/windsurf.sh +52 -0
  448. package/scripts/bp-yaml-set.sh +2 -0
  449. package/scripts/generate-skill-index.sh +20 -4
  450. package/scripts/generate-wave-b-hub.py +31 -0
  451. package/scripts/golden-g04-selftest.sh +19 -0
  452. package/scripts/hooks/cline/HOOKS.md +16 -0
  453. package/scripts/hooks/cline/hooks-manifest.json +12 -0
  454. package/scripts/hooks/cline/plugin/guard-git-plugin.ts +16 -0
  455. package/scripts/hooks/codebuddy/HOOKS.md +24 -0
  456. package/scripts/hooks/codebuddy/hooks-manifest.json +20 -0
  457. package/scripts/hooks/codebuddy/pre-tool-git-guard.sh +22 -0
  458. package/scripts/hooks/codebuddy/settings.example.json +16 -0
  459. package/scripts/hooks/codex/HOOKS.md +21 -0
  460. package/scripts/hooks/codex/hooks-manifest.json +17 -0
  461. package/scripts/hooks/codex/pre-tool-git-guard.sh +22 -0
  462. package/scripts/hooks/codex/settings.example.json +16 -0
  463. package/scripts/hooks/kilocode/HOOKS.md +16 -0
  464. package/scripts/hooks/kilocode/hooks-manifest.json +12 -0
  465. package/scripts/hooks/kilocode/plugin/guard-git-plugin.ts +16 -0
  466. package/scripts/hooks/qwen/HOOKS.md +27 -0
  467. package/scripts/hooks/qwen/hooks-manifest.json +23 -0
  468. package/scripts/hooks/qwen/pre-tool-git-guard.sh +22 -0
  469. package/scripts/hooks/qwen/settings.example.json +16 -0
  470. package/scripts/hooks/trae/HOOKS.md +17 -0
  471. package/scripts/hooks/trae/hooks-manifest.json +13 -0
  472. package/scripts/hooks/trae/pre-tool-git-guard.sh +22 -0
  473. package/scripts/hooks/trae/settings.example.json +16 -0
  474. package/scripts/hooks/windsurf/HOOKS.md +23 -0
  475. package/scripts/hooks/windsurf/hooks-manifest.json +19 -0
  476. package/scripts/hooks/windsurf/pre-tool-git-guard.sh +22 -0
  477. package/scripts/hooks/windsurf/settings.example.json +16 -0
  478. package/scripts/install.sh +33 -373
  479. package/scripts/lib/__pycache__/link_utils.cpython-312.pyc +0 -0
  480. package/scripts/lib/__pycache__/srp_engine_links.cpython-312.pyc +0 -0
  481. package/scripts/lib/context-wire.sh +5 -0
  482. package/scripts/lib/install-grep.sh +18 -0
  483. package/scripts/lib/install-helpers.js +139 -2
  484. package/scripts/lib/install-targets-a.sh +227 -0
  485. package/scripts/lib/install-targets-b.sh +226 -0
  486. package/scripts/lib/install-targets-c.sh +128 -0
  487. package/scripts/lib/install-targets-d.sh +179 -0
  488. package/scripts/lib/srp-engine.py +2 -70
  489. package/scripts/lib/srp_engine_links.py +59 -0
  490. package/scripts/lib/wave_b_hub_codegen_helpers.py +273 -0
  491. package/scripts/lib/wave_b_hub_codegen_install.py +134 -0
  492. package/scripts/lib/wave_b_hub_config.py +130 -0
  493. package/scripts/lib/wave_b_hub_patch.py +213 -0
  494. package/scripts/record-cycle-time.sh +3 -14
  495. package/scripts/targets.yaml +75 -2
  496. package/scripts/test-agy-hub.sh +11 -10
  497. package/scripts/test-cline-adapter.sh +55 -0
  498. package/scripts/test-cline-hub.sh +48 -0
  499. package/scripts/test-codebuddy-adapter.sh +63 -0
  500. package/scripts/test-codebuddy-hub.sh +49 -0
  501. package/scripts/test-codex-adapter.sh +63 -0
  502. package/scripts/test-codex-hub.sh +49 -0
  503. package/scripts/test-copilot-adapter.sh +47 -0
  504. package/scripts/test-copilot-hub.sh +43 -0
  505. package/scripts/test-gemini-hub.sh +10 -9
  506. package/scripts/test-hermes-hub.sh +7 -6
  507. package/scripts/test-install-helpers.js +9 -3
  508. package/scripts/test-kilocode-adapter.sh +55 -0
  509. package/scripts/test-kilocode-hub.sh +48 -0
  510. package/scripts/test-mimo-hub.sh +7 -6
  511. package/scripts/test-opencode-adapter.sh +47 -0
  512. package/scripts/test-opencode-hub.sh +43 -0
  513. package/scripts/test-qwen-adapter.sh +63 -0
  514. package/scripts/test-qwen-hub.sh +49 -0
  515. package/scripts/test-trae-adapter.sh +63 -0
  516. package/scripts/test-trae-hub.sh +49 -0
  517. package/scripts/test-windsurf-adapter.sh +63 -0
  518. package/scripts/test-windsurf-hub.sh +49 -0
  519. package/scripts/test-zcode-hub.sh +7 -6
  520. package/scripts/verify-install.sh +83 -29
  521. package/skills/audit-code/SKILL.md +4 -7
  522. package/skills/grill-me/SKILL.md +12 -0
  523. package/skills/grill-with-docs/SKILL.md +12 -0
  524. package/skills/request-review/SKILL.md +1 -0
  525. package/skills/visual-dashboard/scripts/frame-template.html +1 -39
  526. package/skills/wire-ci/REFERENCE.md +137 -152
  527. package/skills/wire-ci/SKILL.md +28 -30
  528. package/skills-lock.json +5 -5
@@ -0,0 +1,358 @@
1
+ ---
2
+ name: wire-ci
3
+ model: sonnet
4
+ description: "CI pipeline setup with pre-built templates and local validation. Generates GitHub Actions workflows, validates YAML syntax and permissions, supports dry-run via act/gh. The CI equivalent of wire-observability."
5
+ ---
6
+
7
+ # Wire CI
8
+
9
+ > **HARD GATE** — Do not ship a project without CI. Run this skill before first merge to main or when adding CI to an existing project.
10
+ >
11
+ > **HARD GATE** — CI that is untestable locally will break every cycle. Always run `--validate` after generating workflows and `--dry-run` before pushing.
12
+
13
+ Generate, validate, and test CI workflows. Detects your project type, copies org templates from `danielvm-git/.github/workflow-templates/`, and provides local verification to catch auth, permissions, and syntax issues before they reach CI.
14
+
15
+ ## What this sets up
16
+
17
+ 1. **Test Build Release workflow** — `.github/workflows/test-build-release.yml` with lint → test → build → release (single pipeline, `needs:` chain)
18
+ 2. **Deploy workflow** — `.github/workflows/deploy.yml` triggered via `workflow_run` (BigBase/Pages stacks only; CLI/library repos omit this)
19
+ 3. **`--validate` mode** — checks YAML syntax, workflow permissions, required secrets, and common pitfalls
20
+ 4. **`--dry-run` mode** — runs workflows locally via `act` or `gh workflow run` to prove correctness before push
21
+ 5. **Failure pattern documentation** — common CI failure categories and their fixes
22
+
23
+ ## Process
24
+
25
+ ### 1. Detect project type
26
+
27
+ Read the project root for manifest files to determine which template pair to copy:
28
+
29
+ | Manifest | Type | Template pair (from `.github` repo) |
30
+ |----------|------|-------------------------------------|
31
+ | `Cargo.toml` | Rust | `test-build-release-monorepo.yml` + `deploy-monorepo.yml` (or monorepo subset) |
32
+ | `package.json` | Node | `test-build-release-node.yml` + `deploy-node.yml` |
33
+ | `setup.py` / `pyproject.toml` | Python | `test-build-release-python.yml` + `deploy-python.yml` |
34
+ | `go.mod` | Go | `test-build-release-go.yml` + `deploy-go.yml` |
35
+ | Static site (no server) | Static | `test-build-release-static.yml` + `deploy-static.yml` |
36
+ | `Package.swift` | Swift | `test-build-release-swift.yml` only (no deploy yet) |
37
+ | Multiple detected | Polyglot | `test-build-release-monorepo.yml` + `deploy-monorepo.yml` |
38
+
39
+ **CLI/library repos** (no hosted target): copy only `test-build-release-<stack>.yml` → `test-build-release.yml`. The `release` job is terminal; skip `deploy.yml`. See `docs/how-to/migrate-ci-cd/migration-plan.md` § CLI and library repos.
40
+
41
+ If no manifest is found, prompt the user to specify the type or pass `--type <rust|node|python|go|static|swift>`.
42
+
43
+ ### 2. Copy test-build-release template
44
+
45
+ Copy the matching template from `~/Developer/.github/workflow-templates/` to `.github/workflows/test-build-release.yml`. **Do not rename the workflow `name:` field** — deploy listens for `"Test Build Release"`.
46
+
47
+ Edit placeholders: `APP_TYPE`, `SITE_URL`, language versions.
48
+
49
+ See [REFERENCE.md](REFERENCE.md) for stack-specific job shapes.
50
+
51
+ ### 3. Copy deploy template (hosted stacks only)
52
+
53
+ If the project deploys to BigBase or GitHub Pages:
54
+
55
+ ```bash
56
+ cp ~/Developer/.github/workflow-templates/deploy-${STACK}.yml .github/workflows/deploy.yml
57
+ ```
58
+
59
+ Configure `BIGBASE_SITE_ID`, `BIGBASE_DEPLOY_TOKEN`, and matching `SITE_URL`. Deploy runs via `workflow_run` after TBR succeeds on `main` with `cancel-in-progress: false`.
60
+
61
+ Skip this step for CLI/library repos.
62
+
63
+ ### 4. Validate workflows (`--validate`)
64
+
65
+ Run `wire-ci --validate` to check all generated workflow files:
66
+
67
+ See [REFERENCE.md](REFERENCE.md)
68
+
69
+ **Exit codes:**
70
+ - `0` — all checks pass (no errors)
71
+ - `1` — YAML syntax errors found
72
+ - `2` — validation warnings only (missing permissions, secrets, etc.)
73
+
74
+ ### 5. Dry-run workflows (`--dry-run`)
75
+
76
+ Attempt to run the generated workflows locally to catch errors before push:
77
+
78
+ See [REFERENCE.md](REFERENCE.md)
79
+
80
+ > **act** runs workflows in a local Docker environment — the most accurate pre-push validation.
81
+ > **gh workflow run** sends the workflow to GitHub but doesn't execute locally — useful for checking YAML parsing but not for testing the actual steps.
82
+
83
+ ### 6. Document common CI failure patterns
84
+
85
+ Add the following to the project's documentation or CLAUDE.md after setup:
86
+
87
+ | Failure | Cause | Fix |
88
+ |---------|-------|-----|
89
+ | `npm publish` fails | `NPM_TOKEN` not set as repo secret | Add `NPM_TOKEN` to GitHub repo secrets |
90
+ | `semantic-release` fails on push | Missing `permissions: contents: write` | Add `permissions: contents: write` to release job |
91
+ | `cargo publish` auth fail | `CARGO_REGISTRY_TOKEN` not set | Add token to `~/.cargo/config.toml` or env |
92
+ | `go vet` fails | Go version mismatch | Match `go.mod` `go` directive with setup-go version |
93
+ | `cargo clippy` errors | New lints in Rust nightly | `cargo clippy --fix` or allow specific lints |
94
+ | `act` not found | Docker not running or act not installed | `brew install act` / `docker ps` to verify Docker |
95
+ | Hardcoded Node version stale | `.nvmrc` exists but workflow uses hardcoded version | Use `node-version-file: .nvmrc` instead |
96
+ | Deploy never runs | TBR workflow renamed | Keep `name: Test Build Release` in test-build-release.yml |
97
+ | Release rebuilds binary | Artifact not downloaded | `release` job must `download-artifact` from `build` |
98
+
99
+ ## Verify
100
+
101
+ → verify: `grep -ci "template\|workflow\|validate\|dry.run" skills/wire-ci/SKILL.md | awk '{if($1>=3) print "OK: semantics"; else print "FAIL: missing"}'`
102
+ → verify: `grep -q "wire-ci" SKILL-INDEX.md && echo "OK: in SKILL-INDEX" || echo "FAIL: not indexed"`
103
+
104
+ ---
105
+
106
+ # Wire Ci — Reference
107
+
108
+ ## Navigation
109
+
110
+ | Lines | Section |
111
+ |-------|---------|
112
+ | 1 | Title |
113
+ | 3–14 | Navigation |
114
+ | 16–38 | Examples |
115
+ | 40–52 | Options |
116
+ | 54–62 | Integration with build-epic |
117
+ | 64–270 | Reference blocks 1–8 |
118
+
119
+ ## Examples
120
+
121
+ ### Create CI for a Go project (TBR + optional deploy)
122
+
123
+ ```bash
124
+ # Copy org templates
125
+ cp ~/Developer/.github/workflow-templates/test-build-release-go.yml .github/workflows/test-build-release.yml
126
+ cp ~/Developer/.github/workflow-templates/deploy-go.yml .github/workflows/deploy.yml
127
+
128
+ wire-ci --validate
129
+ wire-ci --dry-run
130
+ ```
131
+
132
+ ### Create CI for a CLI tool (TBR only, no deploy)
133
+
134
+ ```bash
135
+ cp ~/Developer/.github/workflow-templates/test-build-release-go.yml .github/workflows/test-build-release.yml
136
+ # Edit release job to download build artifact — see big-release dogfood
137
+
138
+ wire-ci --validate
139
+ ```
140
+
141
+ ### Validate existing workflows (no generation)
142
+
143
+ ```bash
144
+ wire-ci --validate --check-only
145
+ ```
146
+
147
+ ---
148
+
149
+ ## Options
150
+
151
+ | Flag | Description |
152
+ |------|-------------|
153
+ | `--validate` | Check YAML syntax, permissions, secrets, common pitfalls |
154
+ | `--dry-run` | Run workflows locally via `act` or dispatch via `gh` |
155
+ | `--check-only` | Only validate, do not generate new files |
156
+ | `--type <type>` | Force project type (skip auto-detection) |
157
+ | `--force` | Overwrite existing workflow files |
158
+ | `--no-deploy` | Skip deploy.yml even for hosted stacks |
159
+
160
+ ---
161
+
162
+ ## Integration with build-epic
163
+
164
+ When `wire-ci` is used as part of `build-epic`:
165
+
166
+ 1. **During develop-tdd**: If the task modifies `.github/workflows/`, run `wire-ci --validate` as a CI dry-run sub-step
167
+ 2. **During release-branch**: After push, run `gh run list --limit 1 --branch main --json status,conclusion` to verify CI passes
168
+
169
+ ---
170
+
171
+ ## Reference block 1 — test-build-release.yml (Go, excerpt)
172
+
173
+ ```yaml
174
+ name: Test Build Release
175
+ on:
176
+ push:
177
+ branches: [main]
178
+ pull_request:
179
+ branches: [main]
180
+
181
+ permissions:
182
+ contents: read
183
+
184
+ concurrency:
185
+ group: pipeline-${{ github.workflow }}-${{ github.ref }}
186
+ cancel-in-progress: true
187
+
188
+ jobs:
189
+ lint:
190
+ runs-on: ubuntu-22.04
191
+ timeout-minutes: 10
192
+ steps:
193
+ - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
194
+ - uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6.5.0
195
+ with:
196
+ go-version: '1.22'
197
+ cache: true
198
+ - uses: golangci/golangci-lint-action@55c2c1448f86e01eaae002a5a3a9624417608d84 # v6.5.2
199
+ with:
200
+ version: v1.64.8
201
+
202
+ test:
203
+ needs: [lint]
204
+ runs-on: ubuntu-22.04
205
+ steps:
206
+ - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
207
+ - uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6.5.0
208
+ with:
209
+ go-version: '1.22'
210
+ cache: true
211
+ - run: go vet ./...
212
+ - run: go test ./... -count=1
213
+
214
+ build:
215
+ needs: [test]
216
+ runs-on: ubuntu-22.04
217
+ steps:
218
+ - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
219
+ - uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6.5.0
220
+ with:
221
+ go-version: '1.22'
222
+ cache: true
223
+ - run: go build ./...
224
+ - run: jq -n --arg sha "${{ github.sha }}" '{sha: $sha}' > deploy-meta.json
225
+ - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
226
+ with:
227
+ name: deploy-meta
228
+ path: deploy-meta.json
229
+
230
+ release:
231
+ if: github.ref == 'refs/heads/main' && github.event_name == 'push'
232
+ needs: [build]
233
+ permissions:
234
+ contents: write
235
+ steps:
236
+ - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
237
+ with:
238
+ fetch-depth: 0
239
+ - run: npx semantic-release
240
+ env:
241
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
242
+ ```
243
+
244
+ ---
245
+
246
+ ## Reference block 2 — deploy.yml (BigBase, excerpt)
247
+
248
+ ```yaml
249
+ name: Deploy
250
+ on:
251
+ workflow_run:
252
+ workflows: ["Test Build Release"]
253
+ types: [completed]
254
+
255
+ permissions:
256
+ contents: read
257
+ actions: read
258
+
259
+ concurrency:
260
+ group: deploy-production
261
+ cancel-in-progress: false
262
+
263
+ env:
264
+ SITE_URL: "https://CHANGE-ME.bigbase.click"
265
+
266
+ jobs:
267
+ deploy:
268
+ if: >
269
+ github.event.workflow_run.conclusion == 'success' &&
270
+ github.event.workflow_run.head_branch == 'main'
271
+ runs-on: ubuntu-22.04
272
+ environment: production
273
+ steps:
274
+ - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
275
+ with:
276
+ name: deploy-meta
277
+ github-token: ${{ secrets.GITHUB_TOKEN }}
278
+ run-id: ${{ github.event.workflow_run.id }}
279
+ path: deploy-meta
280
+ - uses: danielvm-git/.github/actions/bigbase-deploy@9c56ac10c629f3baa110ddb19136579e3c90d690 # v1
281
+ with:
282
+ site_id: ${{ secrets.BIGBASE_SITE_ID }}
283
+ app_type: go
284
+ site_url: ${{ env.SITE_URL }}
285
+ deploy_token: ${{ secrets.BIGBASE_DEPLOY_TOKEN }}
286
+ ref: ${{ steps.meta.outputs.ref }}
287
+ skip_health_check: true
288
+ - name: Health check
289
+ run: |
290
+ curl -sf "${{ env.SITE_URL }}" || exit 1
291
+ ```
292
+
293
+ ---
294
+
295
+ ## Reference block 3 — CLI dogfood (big-release pattern)
296
+
297
+ ```yaml
298
+ build:
299
+ needs: [test]
300
+ steps:
301
+ - run: make build
302
+ - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
303
+ with:
304
+ name: big-release-${{ github.sha }}
305
+ path: bin/big-release
306
+
307
+ release:
308
+ needs: [build]
309
+ if: github.ref == 'refs/heads/main' && github.event_name == 'push'
310
+ steps:
311
+ - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
312
+ with:
313
+ name: big-release-${{ github.sha }}
314
+ path: bin
315
+ - run: make release # cross-compile assets only; host binary from artifact
316
+ - run: big-release release --verbose
317
+ ```
318
+
319
+ No `deploy.yml` — CLI publishes via the release job.
320
+
321
+ ---
322
+
323
+ ## Reference block 4 — validate script
324
+
325
+ ```bash
326
+ for f in .github/workflows/*.yml .github/workflows/*.yaml; do
327
+ [ -f "$f" ] || continue
328
+ python3 -c "import yaml; yaml.safe_load(open('$f'))" || echo "FAIL: $f has YAML syntax errors"
329
+ done
330
+
331
+ for f in .github/workflows/test-build-release.yml; do
332
+ if grep -q "permissions:" "$f"; then
333
+ echo "OK: $f has permissions block"
334
+ else
335
+ echo "WARNING: $f missing permissions block"
336
+ fi
337
+ done
338
+
339
+ if grep -q 'workflows: \["Test Build Release"\]' .github/workflows/deploy.yml 2>/dev/null; then
340
+ if ! grep -q 'name: Test Build Release' .github/workflows/test-build-release.yml; then
341
+ echo "WARNING: deploy.yml listens for Test Build Release but TBR name may differ"
342
+ fi
343
+ fi
344
+ ```
345
+
346
+ ---
347
+
348
+ ## Reference block 5 — dry-run
349
+
350
+ ```bash
351
+ if command -v act &>/dev/null; then
352
+ act push --dry-run -W .github/workflows/test-build-release.yml
353
+ elif command -v gh &>/dev/null; then
354
+ gh workflow run test-build-release.yml --ref "$(git branch --show-current)"
355
+ else
356
+ echo "Install act or gh for dry-run"
357
+ fi
358
+ ```
@@ -0,0 +1,97 @@
1
+ ---
2
+ name: wire-observability
3
+ model: sonnet
4
+ description: "Add structured JSON logging, observability commands, and idempotent setup scripts to a project. Use when a project needs production-readiness instrumentation, when user wants structured logging, or as a production-readiness gate at any phase of development."
5
+ ---
6
+
7
+ # Wire Observability
8
+ > **HARD GATE** — **HARD GATE** — Observability is not optional. Before shipping, verify: structured logging is in place, key metrics are instrumented, error cases emit signals. 'We'll add metrics later' becomes 'never.'
9
+
10
+
11
+ Add structured logging, observability commands, and idempotent setup scripts. Can be invoked at any phase — recommended at the end of the first working slice, before the first deploy.
12
+
13
+ ## What this sets up
14
+
15
+ 1. **Structured JSON logging** — machine-readable logs for debugging and observability
16
+ 2. **Observability commands** — how to check the system's health documented in CLAUDE.md
17
+ 3. **Idempotent setup scripts** — scripts that can be run repeatedly without side effects
18
+
19
+ ## Process
20
+
21
+ ### 1. Assess current state
22
+
23
+ Check what's already in place:
24
+ - Is there a logging library? (pino, winston, structlog, zap, slog, etc.)
25
+ - Is logging JSON or plain text?
26
+ - Is there a health check endpoint or command?
27
+ - Are there setup scripts? Are they idempotent?
28
+
29
+ ### 2. Add structured JSON logging
30
+
31
+ **For user-facing CLI output:** plain text is fine.
32
+ **For everything else:** structured JSON.
33
+
34
+ Structured log entry format:
35
+ ```json
36
+ {
37
+ "level": "info",
38
+ "timestamp": "2025-01-15T10:23:45.123Z",
39
+ "message": "User created",
40
+ "userId": "usr_abc123",
41
+ "requestId": "req_xyz789"
42
+ }
43
+ ```
44
+
45
+ Guidelines:
46
+ - Include `level`, `timestamp`, `message` in every entry
47
+ - Add context fields relevant to the operation (userId, requestId, traceId)
48
+ - Log at boundaries: HTTP requests in/out, DB queries, external API calls, background job start/end
49
+ - Log errors with stack traces: `logger.error({ err, context }, "Operation failed")`
50
+ - **Never log secrets, passwords, tokens, or PII**
51
+
52
+ ### 3. Document observability commands in CLAUDE.md
53
+
54
+ Add an "Observability" section to the project's CLAUDE.md:
55
+
56
+ ```markdown
57
+ ## Observability
58
+
59
+ | What | Command |
60
+ |------|---------|
61
+ | View logs | `<log tail command>` |
62
+ | Health check | `<health check command>` |
63
+ | Check DB connection | `<db ping command>` |
64
+ | View metrics | `<metrics command>` |
65
+ ```
66
+
67
+ ### 4. Write idempotent setup scripts
68
+
69
+ An idempotent script can be run multiple times and always produces the same result (no errors on re-run).
70
+
71
+ Pattern: check if the thing already exists before creating it.
72
+
73
+ ```bash
74
+ #!/usr/bin/env bash
75
+ set -euo pipefail
76
+
77
+ # Idempotent: only create if not exists
78
+ if ! psql -c "SELECT 1 FROM pg_database WHERE datname = 'myapp'" | grep -q 1; then
79
+ createdb myapp
80
+ echo "Database created"
81
+ else
82
+ echo "Database already exists, skipping"
83
+ fi
84
+ ```
85
+
86
+ Place setup scripts in `scripts/setup.sh` (or language-appropriate equivalent). Document the command in CLAUDE.md under Commands.
87
+
88
+ ### 5. Verify
89
+
90
+ - [ ] Run the app and confirm JSON logs appear in the correct format
91
+ - [ ] Run `scripts/setup.sh` twice — second run should produce no errors
92
+ - [ ] Health check command returns success
93
+ - [ ] No sensitive data in log output
94
+
95
+ ## BCP Plus Integration
96
+
97
+ This skill maps to **BCP Plus dimension 11 (Quality Attributes)** — specifically performance, reliability, and availability instrumentation. Structured logging, health checks, and idempotent setup scripts are observable manifestations of quality-attribute requirements. The NFR Gate rule applies: standard-expectation items (e.g., "the app should log errors") score 0 with a one-line rationale; only above-standard quality requirements (e.g., p99 latency tracking, SLO-based alerting) contribute to the dimension 11 count. See `docs/references/bcp-plus.md` for the full 13-dimension framework and NFR Gate pattern.