bigpowers 2.87.4 → 2.87.5

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 (258) hide show
  1. package/.cursor/rules/align-grid.mdc +109 -0
  2. package/.cursor/rules/assess-impact.mdc +90 -0
  3. package/.cursor/rules/audit-code.mdc +183 -0
  4. package/.cursor/rules/audit-plan.mdc +88 -0
  5. package/.cursor/rules/build-epic.mdc +104 -0
  6. package/.cursor/rules/change-request.mdc +120 -0
  7. package/.cursor/rules/commit-message.mdc +139 -0
  8. package/.cursor/rules/compose-workflow.mdc +81 -0
  9. package/.cursor/rules/context7-mcp.mdc +54 -0
  10. package/.cursor/rules/craft-skill.mdc +195 -0
  11. package/.cursor/rules/deepen-architecture.mdc +259 -0
  12. package/.cursor/rules/define-language.mdc +79 -0
  13. package/.cursor/rules/define-success.mdc +11 -0
  14. package/.cursor/rules/delegate-task.mdc +90 -0
  15. package/.cursor/rules/deploy.mdc +197 -0
  16. package/.cursor/rules/design-interface.mdc +96 -0
  17. package/.cursor/rules/develop-tdd.mdc +415 -0
  18. package/.cursor/rules/diagnose-root.mdc +23 -0
  19. package/.cursor/rules/diagnose-stall.mdc +53 -0
  20. package/.cursor/rules/dispatch-agents.mdc +117 -0
  21. package/.cursor/rules/edit-document.mdc +22 -0
  22. package/.cursor/rules/elaborate-spec.mdc +100 -0
  23. package/.cursor/rules/enforce-first.mdc +44 -0
  24. package/.cursor/rules/evolve-skill.mdc +54 -0
  25. package/.cursor/rules/execute-plan.mdc +60 -0
  26. package/.cursor/rules/extract-design.mdc +131 -0
  27. package/.cursor/rules/find-way.mdc +190 -0
  28. package/.cursor/rules/fix-bug.mdc +66 -0
  29. package/.cursor/rules/gate-trace.mdc +91 -0
  30. package/.cursor/rules/generate-allure-report.mdc +284 -0
  31. package/.cursor/rules/grill-me.mdc +107 -0
  32. package/.cursor/rules/grill-with-docs.mdc +52 -0
  33. package/.cursor/rules/guard-git.mdc +230 -0
  34. package/.cursor/rules/harden-vps.mdc +290 -0
  35. package/.cursor/rules/hook-commits.mdc +93 -0
  36. package/.cursor/rules/inspect-quality.mdc +105 -0
  37. package/.cursor/rules/investigate-bug.mdc +126 -0
  38. package/.cursor/rules/kickoff-branch.mdc +142 -0
  39. package/.cursor/rules/maintain-wiki.mdc +63 -0
  40. package/.cursor/rules/map-codebase.mdc +70 -0
  41. package/.cursor/rules/migrate-spec.mdc +907 -0
  42. package/.cursor/rules/model-domain.mdc +231 -0
  43. package/.cursor/rules/orchestrate-project.mdc +173 -0
  44. package/.cursor/rules/organize-workspace.mdc +163 -0
  45. package/.cursor/rules/plan-refactor.mdc +86 -0
  46. package/.cursor/rules/plan-release.mdc +144 -0
  47. package/.cursor/rules/plan-tests.mdc +74 -0
  48. package/.cursor/rules/plan-work.mdc +271 -0
  49. package/.cursor/rules/publish-package.mdc +337 -0
  50. package/.cursor/rules/quick-fix.mdc +113 -0
  51. package/.cursor/rules/release-branch.mdc +301 -0
  52. package/.cursor/rules/request-review.mdc +112 -0
  53. package/.cursor/rules/research-first.mdc +86 -0
  54. package/.cursor/rules/reset-baseline.mdc +20 -0
  55. package/.cursor/rules/respond-review.mdc +70 -0
  56. package/.cursor/rules/run-benchmark.mdc +84 -0
  57. package/.cursor/rules/run-evals.mdc +79 -0
  58. package/.cursor/rules/run-planning.mdc +100 -0
  59. package/.cursor/rules/scope-work.mdc +62 -0
  60. package/.cursor/rules/search-skills.mdc +72 -0
  61. package/.cursor/rules/security-review.mdc +383 -0
  62. package/.cursor/rules/seed-conventions.mdc +311 -0
  63. package/.cursor/rules/session-state.mdc +145 -0
  64. package/.cursor/rules/setup-environment.mdc +38 -0
  65. package/.cursor/rules/simple-english.mdc +345 -0
  66. package/.cursor/rules/simulate-agents.mdc +25 -0
  67. package/.cursor/rules/slice-tasks.mdc +67 -0
  68. package/.cursor/rules/smoke-test.mdc +260 -0
  69. package/.cursor/rules/spike-prototype.mdc +94 -0
  70. package/.cursor/rules/stocktake-skills.mdc +73 -0
  71. package/.cursor/rules/survey-context.mdc +134 -0
  72. package/.cursor/rules/terse-mode.mdc +41 -0
  73. package/.cursor/rules/trace-requirement.mdc +68 -0
  74. package/.cursor/rules/using-bigpowers.mdc +110 -0
  75. package/.cursor/rules/validate-contracts.mdc +285 -0
  76. package/.cursor/rules/validate-fix.mdc +146 -0
  77. package/.cursor/rules/verify-work.mdc +190 -0
  78. package/.cursor/rules/visual-dashboard.mdc +49 -0
  79. package/.cursor/rules/wire-ci.mdc +380 -0
  80. package/.cursor/rules/wire-observability.mdc +96 -0
  81. package/.cursor/rules/write-document.mdc +280 -0
  82. package/.gemini/extensions/bigpowers/commands/prompts/align-grid.md +109 -0
  83. package/.gemini/extensions/bigpowers/commands/prompts/assess-impact.md +90 -0
  84. package/.gemini/extensions/bigpowers/commands/prompts/audit-code.md +183 -0
  85. package/.gemini/extensions/bigpowers/commands/prompts/audit-plan.md +88 -0
  86. package/.gemini/extensions/bigpowers/commands/prompts/build-epic.md +104 -0
  87. package/.gemini/extensions/bigpowers/commands/prompts/change-request.md +120 -0
  88. package/.gemini/extensions/bigpowers/commands/prompts/commit-message.md +139 -0
  89. package/.gemini/extensions/bigpowers/commands/prompts/compose-workflow.md +81 -0
  90. package/.gemini/extensions/bigpowers/commands/prompts/context7-mcp.md +54 -0
  91. package/.gemini/extensions/bigpowers/commands/prompts/craft-skill.md +195 -0
  92. package/.gemini/extensions/bigpowers/commands/prompts/deepen-architecture.md +259 -0
  93. package/.gemini/extensions/bigpowers/commands/prompts/define-language.md +79 -0
  94. package/.gemini/extensions/bigpowers/commands/prompts/define-success.md +11 -0
  95. package/.gemini/extensions/bigpowers/commands/prompts/delegate-task.md +90 -0
  96. package/.gemini/extensions/bigpowers/commands/prompts/deploy.md +197 -0
  97. package/.gemini/extensions/bigpowers/commands/prompts/design-interface.md +96 -0
  98. package/.gemini/extensions/bigpowers/commands/prompts/develop-tdd.md +415 -0
  99. package/.gemini/extensions/bigpowers/commands/prompts/diagnose-root.md +23 -0
  100. package/.gemini/extensions/bigpowers/commands/prompts/diagnose-stall.md +53 -0
  101. package/.gemini/extensions/bigpowers/commands/prompts/dispatch-agents.md +117 -0
  102. package/.gemini/extensions/bigpowers/commands/prompts/edit-document.md +22 -0
  103. package/.gemini/extensions/bigpowers/commands/prompts/elaborate-spec.md +100 -0
  104. package/.gemini/extensions/bigpowers/commands/prompts/enforce-first.md +44 -0
  105. package/.gemini/extensions/bigpowers/commands/prompts/evolve-skill.md +54 -0
  106. package/.gemini/extensions/bigpowers/commands/prompts/execute-plan.md +60 -0
  107. package/.gemini/extensions/bigpowers/commands/prompts/extract-design.md +131 -0
  108. package/.gemini/extensions/bigpowers/commands/prompts/find-way.md +190 -0
  109. package/.gemini/extensions/bigpowers/commands/prompts/fix-bug.md +66 -0
  110. package/.gemini/extensions/bigpowers/commands/prompts/gate-trace.md +91 -0
  111. package/.gemini/extensions/bigpowers/commands/prompts/generate-allure-report.md +284 -0
  112. package/.gemini/extensions/bigpowers/commands/prompts/grill-me.md +107 -0
  113. package/.gemini/extensions/bigpowers/commands/prompts/grill-with-docs.md +52 -0
  114. package/.gemini/extensions/bigpowers/commands/prompts/guard-git.md +230 -0
  115. package/.gemini/extensions/bigpowers/commands/prompts/harden-vps.md +290 -0
  116. package/.gemini/extensions/bigpowers/commands/prompts/hook-commits.md +93 -0
  117. package/.gemini/extensions/bigpowers/commands/prompts/inspect-quality.md +105 -0
  118. package/.gemini/extensions/bigpowers/commands/prompts/investigate-bug.md +126 -0
  119. package/.gemini/extensions/bigpowers/commands/prompts/kickoff-branch.md +142 -0
  120. package/.gemini/extensions/bigpowers/commands/prompts/maintain-wiki.md +63 -0
  121. package/.gemini/extensions/bigpowers/commands/prompts/map-codebase.md +70 -0
  122. package/.gemini/extensions/bigpowers/commands/prompts/migrate-spec.md +907 -0
  123. package/.gemini/extensions/bigpowers/commands/prompts/model-domain.md +231 -0
  124. package/.gemini/extensions/bigpowers/commands/prompts/orchestrate-project.md +173 -0
  125. package/.gemini/extensions/bigpowers/commands/prompts/organize-workspace.md +163 -0
  126. package/.gemini/extensions/bigpowers/commands/prompts/plan-refactor.md +86 -0
  127. package/.gemini/extensions/bigpowers/commands/prompts/plan-release.md +144 -0
  128. package/.gemini/extensions/bigpowers/commands/prompts/plan-tests.md +74 -0
  129. package/.gemini/extensions/bigpowers/commands/prompts/plan-work.md +271 -0
  130. package/.gemini/extensions/bigpowers/commands/prompts/publish-package.md +337 -0
  131. package/.gemini/extensions/bigpowers/commands/prompts/quick-fix.md +113 -0
  132. package/.gemini/extensions/bigpowers/commands/prompts/release-branch.md +301 -0
  133. package/.gemini/extensions/bigpowers/commands/prompts/request-review.md +112 -0
  134. package/.gemini/extensions/bigpowers/commands/prompts/research-first.md +86 -0
  135. package/.gemini/extensions/bigpowers/commands/prompts/reset-baseline.md +20 -0
  136. package/.gemini/extensions/bigpowers/commands/prompts/respond-review.md +70 -0
  137. package/.gemini/extensions/bigpowers/commands/prompts/run-benchmark.md +84 -0
  138. package/.gemini/extensions/bigpowers/commands/prompts/run-evals.md +79 -0
  139. package/.gemini/extensions/bigpowers/commands/prompts/run-planning.md +100 -0
  140. package/.gemini/extensions/bigpowers/commands/prompts/scope-work.md +62 -0
  141. package/.gemini/extensions/bigpowers/commands/prompts/search-skills.md +72 -0
  142. package/.gemini/extensions/bigpowers/commands/prompts/security-review.md +383 -0
  143. package/.gemini/extensions/bigpowers/commands/prompts/seed-conventions.md +311 -0
  144. package/.gemini/extensions/bigpowers/commands/prompts/session-state.md +145 -0
  145. package/.gemini/extensions/bigpowers/commands/prompts/setup-environment.md +38 -0
  146. package/.gemini/extensions/bigpowers/commands/prompts/simple-english.md +345 -0
  147. package/.gemini/extensions/bigpowers/commands/prompts/simulate-agents.md +25 -0
  148. package/.gemini/extensions/bigpowers/commands/prompts/slice-tasks.md +67 -0
  149. package/.gemini/extensions/bigpowers/commands/prompts/smoke-test.md +260 -0
  150. package/.gemini/extensions/bigpowers/commands/prompts/spike-prototype.md +94 -0
  151. package/.gemini/extensions/bigpowers/commands/prompts/stocktake-skills.md +73 -0
  152. package/.gemini/extensions/bigpowers/commands/prompts/survey-context.md +134 -0
  153. package/.gemini/extensions/bigpowers/commands/prompts/terse-mode.md +41 -0
  154. package/.gemini/extensions/bigpowers/commands/prompts/trace-requirement.md +68 -0
  155. package/.gemini/extensions/bigpowers/commands/prompts/using-bigpowers.md +110 -0
  156. package/.gemini/extensions/bigpowers/commands/prompts/validate-contracts.md +285 -0
  157. package/.gemini/extensions/bigpowers/commands/prompts/validate-fix.md +146 -0
  158. package/.gemini/extensions/bigpowers/commands/prompts/verify-work.md +190 -0
  159. package/.gemini/extensions/bigpowers/commands/prompts/visual-dashboard.md +49 -0
  160. package/.gemini/extensions/bigpowers/commands/prompts/wire-ci.md +380 -0
  161. package/.gemini/extensions/bigpowers/commands/prompts/wire-observability.md +96 -0
  162. package/.gemini/extensions/bigpowers/commands/prompts/write-document.md +280 -0
  163. package/.gemini/extensions/bigpowers/gemini-extension.json +16 -0
  164. package/.gemini/extensions/bigpowers/hooks/HOOKS.md +43 -0
  165. package/.gemini/extensions/bigpowers/hooks/before-tool-git-guard.sh +26 -0
  166. package/.gemini/extensions/bigpowers/hooks/before-tool-rtk.sh +14 -0
  167. package/.gemini/extensions/bigpowers/hooks/before-tool-token-mgmt.sh +19 -0
  168. package/.gemini/extensions/bigpowers/hooks/hooks-manifest.json +36 -0
  169. package/.gemini/extensions/bigpowers/hooks/run-hook.cmd +29 -0
  170. package/.gemini/extensions/bigpowers/hooks/session-start +48 -0
  171. package/.gemini/extensions/bigpowers/hooks/settings.json.example +41 -0
  172. package/.gemini/extensions/bigpowers/skills/align-grid/SKILL.md +111 -0
  173. package/.gemini/extensions/bigpowers/skills/assess-impact/SKILL.md +92 -0
  174. package/.gemini/extensions/bigpowers/skills/audit-code/SKILL.md +185 -0
  175. package/.gemini/extensions/bigpowers/skills/audit-plan/SKILL.md +90 -0
  176. package/.gemini/extensions/bigpowers/skills/build-epic/SKILL.md +106 -0
  177. package/.gemini/extensions/bigpowers/skills/change-request/SKILL.md +122 -0
  178. package/.gemini/extensions/bigpowers/skills/commit-message/SKILL.md +141 -0
  179. package/.gemini/extensions/bigpowers/skills/compose-workflow/SKILL.md +83 -0
  180. package/.gemini/extensions/bigpowers/skills/context7-mcp/SKILL.md +56 -0
  181. package/.gemini/extensions/bigpowers/skills/craft-skill/SKILL.md +197 -0
  182. package/.gemini/extensions/bigpowers/skills/deepen-architecture/SKILL.md +261 -0
  183. package/.gemini/extensions/bigpowers/skills/define-language/SKILL.md +81 -0
  184. package/.gemini/extensions/bigpowers/skills/define-success/SKILL.md +13 -0
  185. package/.gemini/extensions/bigpowers/skills/delegate-task/SKILL.md +92 -0
  186. package/.gemini/extensions/bigpowers/skills/deploy/SKILL.md +199 -0
  187. package/.gemini/extensions/bigpowers/skills/design-interface/SKILL.md +98 -0
  188. package/.gemini/extensions/bigpowers/skills/develop-tdd/SKILL.md +417 -0
  189. package/.gemini/extensions/bigpowers/skills/diagnose-root/SKILL.md +25 -0
  190. package/.gemini/extensions/bigpowers/skills/diagnose-stall/SKILL.md +55 -0
  191. package/.gemini/extensions/bigpowers/skills/dispatch-agents/SKILL.md +119 -0
  192. package/.gemini/extensions/bigpowers/skills/edit-document/SKILL.md +24 -0
  193. package/.gemini/extensions/bigpowers/skills/elaborate-spec/SKILL.md +102 -0
  194. package/.gemini/extensions/bigpowers/skills/enforce-first/SKILL.md +46 -0
  195. package/.gemini/extensions/bigpowers/skills/evolve-skill/SKILL.md +56 -0
  196. package/.gemini/extensions/bigpowers/skills/execute-plan/SKILL.md +62 -0
  197. package/.gemini/extensions/bigpowers/skills/extract-design/SKILL.md +133 -0
  198. package/.gemini/extensions/bigpowers/skills/find-way/SKILL.md +192 -0
  199. package/.gemini/extensions/bigpowers/skills/fix-bug/SKILL.md +68 -0
  200. package/.gemini/extensions/bigpowers/skills/gate-trace/SKILL.md +93 -0
  201. package/.gemini/extensions/bigpowers/skills/generate-allure-report/SKILL.md +286 -0
  202. package/.gemini/extensions/bigpowers/skills/grill-me/SKILL.md +109 -0
  203. package/.gemini/extensions/bigpowers/skills/grill-with-docs/SKILL.md +54 -0
  204. package/.gemini/extensions/bigpowers/skills/guard-git/SKILL.md +232 -0
  205. package/.gemini/extensions/bigpowers/skills/harden-vps/SKILL.md +292 -0
  206. package/.gemini/extensions/bigpowers/skills/hook-commits/SKILL.md +95 -0
  207. package/.gemini/extensions/bigpowers/skills/inspect-quality/SKILL.md +107 -0
  208. package/.gemini/extensions/bigpowers/skills/investigate-bug/SKILL.md +128 -0
  209. package/.gemini/extensions/bigpowers/skills/kickoff-branch/SKILL.md +144 -0
  210. package/.gemini/extensions/bigpowers/skills/maintain-wiki/SKILL.md +65 -0
  211. package/.gemini/extensions/bigpowers/skills/map-codebase/SKILL.md +72 -0
  212. package/.gemini/extensions/bigpowers/skills/migrate-spec/SKILL.md +909 -0
  213. package/.gemini/extensions/bigpowers/skills/model-domain/SKILL.md +233 -0
  214. package/.gemini/extensions/bigpowers/skills/orchestrate-project/SKILL.md +175 -0
  215. package/.gemini/extensions/bigpowers/skills/organize-workspace/SKILL.md +165 -0
  216. package/.gemini/extensions/bigpowers/skills/plan-refactor/SKILL.md +88 -0
  217. package/.gemini/extensions/bigpowers/skills/plan-release/SKILL.md +146 -0
  218. package/.gemini/extensions/bigpowers/skills/plan-tests/SKILL.md +76 -0
  219. package/.gemini/extensions/bigpowers/skills/plan-work/SKILL.md +273 -0
  220. package/.gemini/extensions/bigpowers/skills/publish-package/SKILL.md +339 -0
  221. package/.gemini/extensions/bigpowers/skills/quick-fix/SKILL.md +115 -0
  222. package/.gemini/extensions/bigpowers/skills/release-branch/SKILL.md +303 -0
  223. package/.gemini/extensions/bigpowers/skills/request-review/SKILL.md +114 -0
  224. package/.gemini/extensions/bigpowers/skills/research-first/SKILL.md +88 -0
  225. package/.gemini/extensions/bigpowers/skills/reset-baseline/SKILL.md +22 -0
  226. package/.gemini/extensions/bigpowers/skills/respond-review/SKILL.md +72 -0
  227. package/.gemini/extensions/bigpowers/skills/run-benchmark/SKILL.md +86 -0
  228. package/.gemini/extensions/bigpowers/skills/run-evals/SKILL.md +81 -0
  229. package/.gemini/extensions/bigpowers/skills/run-planning/SKILL.md +102 -0
  230. package/.gemini/extensions/bigpowers/skills/scope-work/SKILL.md +64 -0
  231. package/.gemini/extensions/bigpowers/skills/search-skills/SKILL.md +74 -0
  232. package/.gemini/extensions/bigpowers/skills/security-review/SKILL.md +385 -0
  233. package/.gemini/extensions/bigpowers/skills/seed-conventions/SKILL.md +313 -0
  234. package/.gemini/extensions/bigpowers/skills/session-state/SKILL.md +147 -0
  235. package/.gemini/extensions/bigpowers/skills/setup-environment/SKILL.md +40 -0
  236. package/.gemini/extensions/bigpowers/skills/simple-english/SKILL.md +347 -0
  237. package/.gemini/extensions/bigpowers/skills/simulate-agents/SKILL.md +27 -0
  238. package/.gemini/extensions/bigpowers/skills/slice-tasks/SKILL.md +69 -0
  239. package/.gemini/extensions/bigpowers/skills/smoke-test/SKILL.md +262 -0
  240. package/.gemini/extensions/bigpowers/skills/spike-prototype/SKILL.md +96 -0
  241. package/.gemini/extensions/bigpowers/skills/stocktake-skills/SKILL.md +75 -0
  242. package/.gemini/extensions/bigpowers/skills/survey-context/SKILL.md +136 -0
  243. package/.gemini/extensions/bigpowers/skills/terse-mode/SKILL.md +43 -0
  244. package/.gemini/extensions/bigpowers/skills/trace-requirement/SKILL.md +70 -0
  245. package/.gemini/extensions/bigpowers/skills/using-bigpowers/SKILL.md +112 -0
  246. package/.gemini/extensions/bigpowers/skills/validate-contracts/SKILL.md +287 -0
  247. package/.gemini/extensions/bigpowers/skills/validate-fix/SKILL.md +148 -0
  248. package/.gemini/extensions/bigpowers/skills/verify-work/SKILL.md +192 -0
  249. package/.gemini/extensions/bigpowers/skills/visual-dashboard/SKILL.md +51 -0
  250. package/.gemini/extensions/bigpowers/skills/wire-ci/SKILL.md +382 -0
  251. package/.gemini/extensions/bigpowers/skills/wire-observability/SKILL.md +98 -0
  252. package/.gemini/extensions/bigpowers/skills/write-document/SKILL.md +282 -0
  253. package/.pi/package.json +1 -1
  254. package/CHANGELOG.md +7 -0
  255. package/package.json +1 -1
  256. package/scripts/lib/__pycache__/link_utils.cpython-312.pyc +0 -0
  257. package/scripts/lib/__pycache__/srp_engine_links.cpython-312.pyc +0 -0
  258. package/scripts/test-install-helpers.js +31 -0
@@ -0,0 +1,339 @@
1
+ ---
2
+ name: publish-package
3
+ model: sonnet
4
+ description: "Package registry publishing for npm, crates.io, PyPI, and Homebrew. Verifies prerequisites, runs the publish command, confirms success, and surfaces actionable error hints on failure."
5
+ disable-model-invocation: true
6
+ ---
7
+
8
+ # Publish Package
9
+
10
+ > **HARD GATE** — Do not attempt to publish without verifying prerequisites. Missing auth tokens, stale builds, or duplicate versions cause CI failures that are hard to debug post-push.
11
+ >
12
+ > **HARD GATE** — Always run `--dry-run` first. Package registries are append-only — a bad publish cannot be fully undone on most registries.
13
+
14
+ Publish packages to language-specific registries. Detects package type from manifest files, verifies publish prerequisites, runs the registry-specific publish command, and confirms the version appears on the registry.
15
+
16
+ ## Process
17
+
18
+ ### 1. Detect package type
19
+
20
+ Read the project root for manifest files to determine the package type:
21
+
22
+ | Manifest | Registry | Publish command |
23
+ |----------|----------|----------------|
24
+ | `package.json` | npm | `npm publish --access public` |
25
+ | `Cargo.toml` | crates.io | `cargo publish` |
26
+ | `setup.py` / `pyproject.toml` | PyPI | `twine upload dist/*` or `flit publish` |
27
+ | `Formula/<name>.rb` | Homebrew | `brew bump-formula-pr` |
28
+ | Multiple detected | Polyglot | Error: specify registry with `--registry <npm|crates.io|pypi|brew>` |
29
+
30
+ If no manifest is found, prompt the user to specify the type or pass `--type <npm|crates.io|pypi|brew>`.
31
+
32
+ ### 2. Verify prerequisites
33
+
34
+ Before attempting any publish, run all applicable checks:
35
+
36
+ **npm (`package.json`):**
37
+ See [REFERENCE.md](REFERENCE.md)
38
+
39
+ **crates.io (`Cargo.toml`):**
40
+ See [REFERENCE.md](REFERENCE.md)
41
+
42
+ **PyPI (`setup.py` / `pyproject.toml`):**
43
+ See [REFERENCE.md](REFERENCE.md)
44
+
45
+ ### 3. Run publish
46
+
47
+ After all prerequisite checks pass, run the registry-specific command:
48
+
49
+ See [REFERENCE.md](REFERENCE.md)
50
+
51
+ ### 4. Verify publish success
52
+
53
+ After publish, confirm the version appears on the registry:
54
+
55
+ See [REFERENCE.md](REFERENCE.md)
56
+
57
+ ### 5. Error handling
58
+
59
+ On failure, surface actionable hints:
60
+
61
+ See [REFERENCE.md](REFERENCE.md)
62
+
63
+ ### 6. Dry-run mode (`--dry-run`)
64
+
65
+ Run `--dry-run` to verify all prerequisites without actually publishing:
66
+
67
+ See [REFERENCE.md](REFERENCE.md)
68
+
69
+ ### 7. Dry-run mode per registry
70
+
71
+ See [REFERENCE.md](REFERENCE.md)
72
+
73
+ ## Verify
74
+
75
+ → verify: `test -f skills/publish-package/SKILL.md && test -f package.json`
76
+ → verify: `grep -q publish-package SKILL-INDEX.md`
77
+
78
+ ---
79
+
80
+ # Publish Package — Reference
81
+
82
+ ## Navigation
83
+
84
+ | Lines | Section |
85
+ |-------|---------|
86
+ | 1 | Title |
87
+ | 3–23 | Navigation |
88
+ | 24–35 | Options |
89
+ | 36–37 | Examples |
90
+ | 38–51 | Publish an npm package |
91
+ | 52–59 | Publish a Rust crate |
92
+ | 60–69 | Missing token scenario |
93
+ | 70–80 | Integration with release-branch |
94
+ | 81–121 | Reference block 1 |
95
+ | 122–143 | Reference block 2 |
96
+ | 144–162 | Reference block 3 |
97
+ | 163–180 | Reference block 4 |
98
+ | 181–195 | Reference block 5 |
99
+ | 196–230 | Reference block 6 |
100
+ | 231–248 | Reference block 7 |
101
+ | 249–260 | Reference block 8 |
102
+
103
+ ## Options
104
+
105
+ | Flag | Description |
106
+ |------|-------------|
107
+ | `--dry-run` | Verify prerequisites and show publish command without executing |
108
+ | `--registry <type>` | Force registry type (skip auto-detection) |
109
+ | `--otp <code>` | One-time password for npm 2FA |
110
+ | `--no-verify` | Skip prerequisite checks (use with caution) |
111
+
112
+
113
+ ---
114
+
115
+ ## Examples
116
+
117
+ ### Publish an npm package
118
+
119
+ ```bash
120
+ # Verify first
121
+ publish-package --dry-run
122
+
123
+ # Publish
124
+ publish-package
125
+
126
+ # Output:
127
+ # [npm] Publishing my-package v0.4.0...
128
+ # OK: npm publish confirmed (my-package@0.4.0 on registry)
129
+ ```
130
+
131
+ ### Publish a Rust crate
132
+
133
+ ```bash
134
+ export CARGO_REGISTRY_TOKEN=<token>
135
+ publish-package --dry-run
136
+ publish-package
137
+ ```
138
+
139
+ ### Missing token scenario
140
+
141
+ ```bash
142
+ $ publish-package
143
+ FAIL: NPM_TOKEN not set. Set via: export NPM_TOKEN=<token> or add to .npmrc
144
+ ```
145
+
146
+
147
+ ---
148
+
149
+ ## Integration with release-branch
150
+
151
+ When wired into `release-branch`, add a step after git push:
152
+
153
+ ```
154
+ 6a. Run publish-package to publish to package registries
155
+ → verify: publish-package --dry-run && publish-package
156
+ ```
157
+
158
+ ---
159
+
160
+ ## Reference block 1
161
+
162
+ ```bash
163
+ # Check auth token exists
164
+ if [ -z "${NPM_TOKEN:-}" ]; then
165
+ if [ ! -f ~/.npmrc ] || ! grep -q "_authToken" ~/.npmrc; then
166
+ echo "FAIL: NPM_TOKEN not set. Set via: export NPM_TOKEN=<token> or add //registry.npmjs.org/:_authToken=<token> to .npmrc"
167
+ exit 1
168
+ fi
169
+ fi
170
+
171
+ # Check version not already published
172
+ PACKAGE_NAME=$(node -p "require('./package.json').name")
173
+ CURRENT_VER=$(node -p "require('./package.json').version")
174
+ if npm view "$PACKAGE_NAME@$CURRENT_VER" version 2>/dev/null; then
175
+ echo "FAIL: Version $CURRENT_VER already published for $PACKAGE_NAME. Bump version first."
176
+ exit 1
177
+ fi
178
+
179
+ # Check build artifacts are fresh
180
+ if [ -d dist ] || [ -d lib ]; then
181
+ LATEST_BUILD=$(find dist lib 2>/dev/null -name "*.js" -o -name "*.cjs" -o -name "*.mjs" | xargs ls -t 2>/dev/null | head -1)
182
+ PACKAGE_MODIFIED=$(stat -f %m package.json 2>/dev/null || stat -c %Y package.json 2>/dev/null)
183
+ if [ -n "$LATEST_BUILD" ] && [ -n "$PACKAGE_MODIFIED" ]; then
184
+ BUILD_TIME=$(stat -f %m "$LATEST_BUILD" 2>/dev/null || stat -c %Y "$LATEST_BUILD" 2>/dev/null)
185
+ if [ "$BUILD_TIME" -lt "$PACKAGE_MODIFIED" ]; then
186
+ echo "WARNING: Build artifacts may be stale (package.json modified after last build). Run npm run build first."
187
+ fi
188
+ fi
189
+ fi
190
+
191
+ # Check CHANGELOG is updated
192
+ if [ -f CHANGELOG.md ]; then
193
+ if ! grep -q "$CURRENT_VER" CHANGELOG.md 2>/dev/null; then
194
+ echo "WARNING: Version $CURRENT_VER not found in CHANGELOG.md. Update changelog before publish."
195
+ fi
196
+ fi
197
+ ```
198
+
199
+ ---
200
+
201
+ ## Reference block 2
202
+
203
+ ```bash
204
+ # Check auth token exists
205
+ if [ -z "${CARGO_REGISTRY_TOKEN:-}" ]; then
206
+ if [ ! -f ~/.cargo/config.toml ] || ! grep -q "token" ~/.cargo/config.toml; then
207
+ echo "FAIL: CARGO_REGISTRY_TOKEN not set. Set via: export CARGO_REGISTRY_TOKEN=<token> or add to ~/.cargo/config.toml"
208
+ exit 1
209
+ fi
210
+ fi
211
+
212
+ # Check version not already published
213
+ CRATE_NAME=$(grep '^name' Cargo.toml | head -1 | sed 's/.*"\(.*\)"/\1/')
214
+ CURRENT_VER=$(grep '^version' Cargo.toml | head -1 | sed 's/.*"\(.*\)"/\1/')
215
+ if cargo search "$CRATE_NAME" 2>/dev/null | grep -q "^${CRATE_NAME}.*\"$CURRENT_VER\""; then
216
+ echo "FAIL: Version $CURRENT_VER already published for $CRATE_NAME. Bump version in Cargo.toml first."
217
+ exit 1
218
+ fi
219
+ ```
220
+
221
+ ---
222
+
223
+ ## Reference block 3
224
+
225
+ ```bash
226
+ # Check auth token exists
227
+ if [ -z "${TWINE_PASSWORD:-}" ] && [ -z "${POETRY_PYPI_TOKEN_PYPI:-}" ]; then
228
+ if [ ! -f ~/.pypirc ]; then
229
+ echo "FAIL: PyPI token not configured. Set TWINE_PASSWORD or create ~/.pypirc"
230
+ exit 1
231
+ fi
232
+ fi
233
+
234
+ # Check for build artifacts
235
+ if [ ! -d dist ] || [ -z "$(ls dist/*.whl 2>/dev/null)" ]; then
236
+ echo "WARNING: No .whl files found in dist/. Run: python -m build"
237
+ fi
238
+ ```
239
+
240
+ ---
241
+
242
+ ## Reference block 4
243
+
244
+ ```bash
245
+ # npm
246
+ npm publish --access public
247
+
248
+ # crates.io
249
+ cargo publish
250
+
251
+ # PyPI
252
+ python -m twine upload dist/* # or: poetry publish
253
+
254
+ # Homebrew (opens PR, does not publish directly)
255
+ brew bump-formula-pr --url=<tarball-url> <formula-name>
256
+ ```
257
+
258
+ ---
259
+
260
+ ## Reference block 5
261
+
262
+ ```bash
263
+ # npm
264
+ npm view "$PACKAGE_NAME" versions --json 2>/dev/null | grep -q "\"$CURRENT_VER\"" && echo "OK: npm publish confirmed"
265
+
266
+ # crates.io
267
+ cargo search "$CRATE_NAME" 2>/dev/null | grep -q "^${CRATE_NAME}.*\"$CURRENT_VER\"" && echo "OK: crates.io publish confirmed"
268
+
269
+ # PyPI
270
+ pip index versions "$PACKAGE_NAME" 2>/dev/null | grep -q "$CURRENT_VER" && echo "OK: PyPI publish confirmed"
271
+ ```
272
+
273
+ ---
274
+
275
+ ## Reference block 6
276
+
277
+ ```bash
278
+ # Generic failure handler
279
+ if [ $? -ne 0 ]; then
280
+ case "$REGISTRY" in
281
+ npm)
282
+ echo "FAIL: npm publish failed."
283
+ echo " Common causes:"
284
+ echo " - NPM_TOKEN not set in secrets: add to GitHub repo secrets"
285
+ echo " - Version already published: bump version in package.json"
286
+ echo " - Two-factor auth required: use --otp=<code> flag"
287
+ echo " - Package scoped but not public: add --access public"
288
+ ;;
289
+ crates.io)
290
+ echo "FAIL: cargo publish failed."
291
+ echo " Common causes:"
292
+ echo " - CARGO_REGISTRY_TOKEN not configured: see ~/.cargo/config.toml"
293
+ echo " - Version already published: bump version in Cargo.toml"
294
+ echo " - Local changes not committed: cargo publish requires clean working tree"
295
+ ;;
296
+ pypi)
297
+ echo "FAIL: PyPI publish failed."
298
+ echo " Common causes:"
299
+ echo " - TWINE_PASSWORD not configured: set env var or ~/.pypirc"
300
+ echo " - Build artifacts missing: run python -m build first"
301
+ echo " - Version conflict: version already exists on PyPI"
302
+ ;;
303
+ esac
304
+ exit 1
305
+ fi
306
+ ```
307
+
308
+ ---
309
+
310
+ ## Reference block 7
311
+
312
+ ```bash
313
+ # Example output
314
+ $ publish-package --dry-run
315
+
316
+ [DRY-RUN] Detected package type: npm
317
+ [DRY-RUN] Package: my-package v0.4.0
318
+ [DRY-RUN] Checking NPM_TOKEN... OK
319
+ [DRY-RUN] Checking version 0.4.0 not already published... OK
320
+ [DRY-RUN] Checking build artifacts... WARNING: package.json modified after build
321
+ [DRY-RUN] Checking CHANGELOG... OK
322
+ [DRY-RUN] Would run: npm publish --access public
323
+ [DRY-RUN] Exiting without publishing.
324
+ ```
325
+
326
+ ---
327
+
328
+ ## Reference block 8
329
+
330
+ ```bash
331
+ # npm dry-run
332
+ npm publish --access public --dry-run
333
+
334
+ # crates.io dry-run (cargo does not have a publish dry-run; use --dry-run flag for validation only)
335
+ cargo package --list 2>/dev/null
336
+
337
+ # PyPI dry-run
338
+ python -m twine upload --repository testpypi dist/* # test.pypi.org
339
+ ```
@@ -0,0 +1,115 @@
1
+ ---
2
+ name: quick-fix
3
+ model: sonnet
4
+ description: "Streamlined fast-path for trivial data-only fixes — no TDD, no branching ceremony. Collapses 6 skills into 2 for changes that are purely data with no logic risk. Aborts with fallback to investigate-bug if guardrails trigger."
5
+ disable-model-invocation: true
6
+ ---
7
+
8
+ # Quick Fix
9
+
10
+ > **HARD GATE** — ALL entry criteria must pass before invoking quick-fix. If any guardrail triggers during execution, abort immediately and fall back to `investigate-bug`. Do NOT use quick-fix for logic changes, multi-file edits, or diffs > 5 lines.
11
+
12
+ Fast-track for trivial data-only fixes that do not require the full bug-fix chain.
13
+
14
+ When a bug fix is purely data — an add-missing-key, a typo correction, a config value update — the standard 6-skill chain (investigate-bug → diagnose-root → develop-tdd → kickoff-branch → verify-work → release-branch) is wasteful overhead. Quick-fix collapses it to 2 skills: **quick-fix** then **release-branch**.
15
+
16
+ ## Discovered gate failures (e51s04)
17
+
18
+ A **Preflight**, **golden suite**, or **baseline red** failure discovered during unrelated work is valid quick-fix entry when the root cause is a data-only gap (missing key, typo, stale config) — **no user-reported bug required**. If guardrails abort (logic change, >1 file, >5 lines), fall back to `fix-bug` instead of narrating and continuing.
19
+
20
+ ## Entry Criteria (ALL must be true)
21
+
22
+ Before invoking quick-fix, evaluate every item in this checklist:
23
+
24
+ 1. **Purely data change** — adding a missing key, fixing a typo, updating a config value, correcting a constant
25
+ 2. **No logic change** — no function signature, condition, loop, or control flow is modified
26
+ 3. **No refactor risk** — the change does not reorganize or rename existing structures
27
+ 4. **No API surface change** — no exported symbol, interface, or contract changes
28
+ 5. **Verifiable with a single assertion** — one test, one curl, one grep can prove it works
29
+ 6. **Affects ≤ 1 file**
30
+ 7. **Affects ≤ 5 lines changed**
31
+
32
+ ## Guardrails (HARD ABORT — all must pass)
33
+
34
+ If ANY guardrail triggers, **abort immediately** and suggest `investigate-bug` instead:
35
+
36
+ | Guardrail | Check |
37
+ |-----------|-------|
38
+ | **>1 file** | The fix touches more than one file |
39
+ | **>5 lines** | The diff exceeds 5 lines |
40
+ | **Logic change** | Any function signature, condition, or loop is modified |
41
+ | **Complex verify** | The verify command is more than one pipeline |
42
+ | **Test breakage** | Running `npm test` or equivalent breaks any existing test |
43
+
44
+ > **Fallback:** If any guardrail triggers, tell the user: *"This fix exceeds quick-fix guardrails. Use `investigate-bug` for the full TDD bug-fix chain instead."*
45
+
46
+ ## Fast-Path Workflow
47
+
48
+ Only 2 skills needed for eligible fixes:
49
+
50
+ ```
51
+ quick-fix → apply change, run one-line verify, commit with fix:
52
+ release-branch → merge and ship (existing skill)
53
+ ```
54
+
55
+ **Skipped skills (with justification):**
56
+
57
+ | Skipped skill | Why skipped |
58
+ |---------------|-------------|
59
+ | `investigate-bug` | Root cause is obvious (data gap, not logic error) |
60
+ | `diagnose-root` | No isolation needed — the data point is the root cause |
61
+ | `develop-tdd` | No logic to test — single assertion proves correctness |
62
+ | `kickoff-branch` | Change is so small it does not warrant a separate worktree |
63
+
64
+ > Justification is included in the `fix:` commit body so the audit trail is preserved.
65
+
66
+ ## Process
67
+
68
+ ### 1. Evaluate entry criteria
69
+
70
+ Run the entry criteria checklist above. If any criterion fails → abort, suggest `investigate-bug`.
71
+
72
+ ### 2. Apply the fix
73
+
74
+ Make the data change — add the missing key, fix the typo, update the value. Keep it to ≤5 lines in 1 file.
75
+
76
+ ### 3. Verify
77
+
78
+ Run the single-assertion verify command. Example:
79
+
80
+ ```bash
81
+ grep -q "Bosnia" src/flags.js && echo "FIX VERIFIED" || echo "FIX FAILED"
82
+ ```
83
+
84
+ ### 4. Commit
85
+
86
+ ```bash
87
+ git add <file>
88
+ git commit -m "fix(<scope>): <description>"
89
+ git commit --amend -m "fix(<scope>): <description>
90
+
91
+ Skipped skills (justified for data-only change):
92
+ - investigate-bug: root cause is a data gap, not a logic error
93
+ - diagnose-root: the missing data point is the root cause
94
+ - develop-tdd: single assertion proves correctness
95
+ - kickoff-branch: change is too small for a separate worktree"
96
+ ```
97
+
98
+ ### 5. Release
99
+
100
+ Invoke `release-branch` to merge and ship.
101
+
102
+
103
+ ## Example
104
+
105
+ ### Bosnia flag missing from FLAGS dictionary
106
+
107
+ ```gherkin
108
+ Given a bug where FLAGS dictionary is missing entry "Bosnia"
109
+ And no logic depends on the missing entry (purely a data gap)
110
+ When the agent invokes quick-fix
111
+ Then the missing entry is added to the dictionary
112
+ And a one-line verify confirms the key exists: grep -q "Bosnia" src/flags.js
113
+ And a fix: commit is created with the skipped-skills rationale in the body
114
+ And the change is ready for release-branch
115
+ ```