@wipcomputer/wip-ai-devops-toolbox 1.9.58 → 1.9.60

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 (563) hide show
  1. package/CHANGELOG.md +52 -0
  2. package/SKILL.md +1 -1
  3. package/package.json +1 -1
  4. package/tools/deploy-public/package.json +1 -1
  5. package/tools/post-merge-rename/package.json +1 -1
  6. package/tools/wip-branch-guard/guard.mjs +57 -39
  7. package/tools/wip-branch-guard/package.json +1 -1
  8. package/tools/wip-file-guard/package.json +1 -1
  9. package/tools/wip-license-guard/package.json +1 -1
  10. package/tools/wip-license-hook/package.json +1 -1
  11. package/tools/wip-readme-format/package.json +1 -1
  12. package/tools/wip-release/package.json +1 -1
  13. package/tools/wip-repo-init/package.json +1 -1
  14. package/tools/wip-repo-permissions-hook/package.json +1 -1
  15. package/tools/wip-repos/package.json +1 -1
  16. package/tools/wip-universal-installer/package.json +1 -1
  17. package/.worktrees/toolbox--release-notes/.license-guard.json +0 -7
  18. package/.worktrees/toolbox--release-notes/.publish-skill.json +0 -4
  19. package/.worktrees/toolbox--release-notes/CHANGELOG.md +0 -1875
  20. package/.worktrees/toolbox--release-notes/CLA.md +0 -19
  21. package/.worktrees/toolbox--release-notes/DEV-GUIDE-GENERAL-PUBLIC.md +0 -949
  22. package/.worktrees/toolbox--release-notes/LICENSE +0 -52
  23. package/.worktrees/toolbox--release-notes/README.md +0 -238
  24. package/.worktrees/toolbox--release-notes/RELEASE-NOTES-v1-9-56.md +0 -42
  25. package/.worktrees/toolbox--release-notes/SKILL.md +0 -821
  26. package/.worktrees/toolbox--release-notes/TECHNICAL.md +0 -416
  27. package/.worktrees/toolbox--release-notes/UNIVERSAL-INTERFACE.md +0 -180
  28. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-8-0.md +0 -29
  29. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-8-1.md +0 -7
  30. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-8-2.md +0 -7
  31. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-0.md +0 -37
  32. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-1.md +0 -38
  33. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-10.md +0 -40
  34. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-2.md +0 -40
  35. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-31.md +0 -26
  36. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-32.md +0 -18
  37. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-41.md +0 -28
  38. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-45.md +0 -25
  39. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-46.md +0 -38
  40. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-47.md +0 -42
  41. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-48.md +0 -22
  42. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-49.md +0 -31
  43. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-50.md +0 -24
  44. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-51.md +0 -11
  45. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-52.md +0 -25
  46. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-53.md +0 -22
  47. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-54.md +0 -13
  48. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-55.md +0 -11
  49. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-6.md +0 -72
  50. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-7.md +0 -23
  51. package/.worktrees/toolbox--release-notes/_trash/RELEASE-NOTES-v1-9-9.md +0 -75
  52. package/.worktrees/toolbox--release-notes/_trash/guide 2/DEV-GUIDE.md +0 -487
  53. package/.worktrees/toolbox--release-notes/_trash/guide 2/scripts/deploy-public.sh +0 -152
  54. package/.worktrees/toolbox--release-notes/package.json +0 -27
  55. package/.worktrees/toolbox--release-notes/scripts/SKILL-deploy-public.md +0 -61
  56. package/.worktrees/toolbox--release-notes/scripts/SKILL-post-merge-rename.md +0 -47
  57. package/.worktrees/toolbox--release-notes/scripts/deploy-public.sh +0 -345
  58. package/.worktrees/toolbox--release-notes/scripts/post-merge-rename.sh +0 -210
  59. package/.worktrees/toolbox--release-notes/scripts/publish-skill.sh +0 -134
  60. package/.worktrees/toolbox--release-notes/templates/global-claude-md.md +0 -73
  61. package/.worktrees/toolbox--release-notes/templates/repo-claude-md.template +0 -24
  62. package/.worktrees/toolbox--release-notes/tools/deploy-public/LICENSE +0 -52
  63. package/.worktrees/toolbox--release-notes/tools/deploy-public/README.md +0 -31
  64. package/.worktrees/toolbox--release-notes/tools/deploy-public/SKILL.md +0 -71
  65. package/.worktrees/toolbox--release-notes/tools/deploy-public/deploy-public.sh +0 -264
  66. package/.worktrees/toolbox--release-notes/tools/deploy-public/package.json +0 -9
  67. package/.worktrees/toolbox--release-notes/tools/ldm-jobs/LICENSE +0 -52
  68. package/.worktrees/toolbox--release-notes/tools/ldm-jobs/README.md +0 -46
  69. package/.worktrees/toolbox--release-notes/tools/ldm-jobs/backup.sh +0 -16
  70. package/.worktrees/toolbox--release-notes/tools/ldm-jobs/branch-protect.sh +0 -39
  71. package/.worktrees/toolbox--release-notes/tools/ldm-jobs/crystal-capture.sh +0 -19
  72. package/.worktrees/toolbox--release-notes/tools/ldm-jobs/setup-shell.sh +0 -27
  73. package/.worktrees/toolbox--release-notes/tools/ldm-jobs/visibility-audit.sh +0 -27
  74. package/.worktrees/toolbox--release-notes/tools/post-merge-rename/LICENSE +0 -52
  75. package/.worktrees/toolbox--release-notes/tools/post-merge-rename/README.md +0 -29
  76. package/.worktrees/toolbox--release-notes/tools/post-merge-rename/SKILL.md +0 -57
  77. package/.worktrees/toolbox--release-notes/tools/post-merge-rename/package.json +0 -9
  78. package/.worktrees/toolbox--release-notes/tools/post-merge-rename/post-merge-rename.sh +0 -122
  79. package/.worktrees/toolbox--release-notes/tools/wip-branch-guard/INSTALL.md +0 -41
  80. package/.worktrees/toolbox--release-notes/tools/wip-branch-guard/guard.mjs +0 -459
  81. package/.worktrees/toolbox--release-notes/tools/wip-branch-guard/package.json +0 -18
  82. package/.worktrees/toolbox--release-notes/tools/wip-file-guard/CHANGELOG.md +0 -6
  83. package/.worktrees/toolbox--release-notes/tools/wip-file-guard/LICENSE +0 -52
  84. package/.worktrees/toolbox--release-notes/tools/wip-file-guard/README.md +0 -113
  85. package/.worktrees/toolbox--release-notes/tools/wip-file-guard/REFERENCE.md +0 -86
  86. package/.worktrees/toolbox--release-notes/tools/wip-file-guard/SKILL.md +0 -105
  87. package/.worktrees/toolbox--release-notes/tools/wip-file-guard/guard.mjs +0 -161
  88. package/.worktrees/toolbox--release-notes/tools/wip-file-guard/openclaw.plugin.json +0 -8
  89. package/.worktrees/toolbox--release-notes/tools/wip-file-guard/package.json +0 -27
  90. package/.worktrees/toolbox--release-notes/tools/wip-file-guard/test.sh +0 -119
  91. package/.worktrees/toolbox--release-notes/tools/wip-license-guard/LICENSE +0 -52
  92. package/.worktrees/toolbox--release-notes/tools/wip-license-guard/README.md +0 -69
  93. package/.worktrees/toolbox--release-notes/tools/wip-license-guard/SKILL.md +0 -65
  94. package/.worktrees/toolbox--release-notes/tools/wip-license-guard/cli.mjs +0 -472
  95. package/.worktrees/toolbox--release-notes/tools/wip-license-guard/core.mjs +0 -310
  96. package/.worktrees/toolbox--release-notes/tools/wip-license-guard/guard.mjs +0 -146
  97. package/.worktrees/toolbox--release-notes/tools/wip-license-guard/package.json +0 -22
  98. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/CHANGELOG.md +0 -17
  99. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/LICENSE +0 -52
  100. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/README.md +0 -200
  101. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/SKILL.md +0 -111
  102. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/cli/index.d.ts +0 -15
  103. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/cli/index.js +0 -170
  104. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/cli/index.js.map +0 -1
  105. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/detector.d.ts +0 -12
  106. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/detector.js +0 -104
  107. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/detector.js.map +0 -1
  108. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/index.d.ts +0 -4
  109. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/index.js +0 -5
  110. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/index.js.map +0 -1
  111. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/ledger.d.ts +0 -49
  112. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/ledger.js +0 -72
  113. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/ledger.js.map +0 -1
  114. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/reporter.d.ts +0 -14
  115. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/reporter.js +0 -227
  116. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/reporter.js.map +0 -1
  117. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/scanner.d.ts +0 -39
  118. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/scanner.js +0 -325
  119. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/dist/core/scanner.js.map +0 -1
  120. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/hooks/pre-pull.sh +0 -55
  121. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/hooks/pre-push.sh +0 -51
  122. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/mcp-server.mjs +0 -119
  123. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/package-lock.json +0 -54
  124. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/package.json +0 -43
  125. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/src/cli/index.ts +0 -189
  126. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/src/core/detector.ts +0 -130
  127. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/src/core/index.ts +0 -4
  128. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/src/core/ledger.ts +0 -116
  129. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/src/core/reporter.ts +0 -255
  130. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/src/core/scanner.ts +0 -367
  131. package/.worktrees/toolbox--release-notes/tools/wip-license-hook/tsconfig.json +0 -16
  132. package/.worktrees/toolbox--release-notes/tools/wip-readme-format/README.md +0 -49
  133. package/.worktrees/toolbox--release-notes/tools/wip-readme-format/SKILL.md +0 -84
  134. package/.worktrees/toolbox--release-notes/tools/wip-readme-format/format.mjs +0 -597
  135. package/.worktrees/toolbox--release-notes/tools/wip-readme-format/package.json +0 -15
  136. package/.worktrees/toolbox--release-notes/tools/wip-release/CHANGELOG.md +0 -42
  137. package/.worktrees/toolbox--release-notes/tools/wip-release/LICENSE +0 -52
  138. package/.worktrees/toolbox--release-notes/tools/wip-release/README.md +0 -45
  139. package/.worktrees/toolbox--release-notes/tools/wip-release/REFERENCE.md +0 -100
  140. package/.worktrees/toolbox--release-notes/tools/wip-release/SKILL.md +0 -139
  141. package/.worktrees/toolbox--release-notes/tools/wip-release/cli.js +0 -175
  142. package/.worktrees/toolbox--release-notes/tools/wip-release/core.mjs +0 -1664
  143. package/.worktrees/toolbox--release-notes/tools/wip-release/mcp-server.mjs +0 -113
  144. package/.worktrees/toolbox--release-notes/tools/wip-release/package.json +0 -36
  145. package/.worktrees/toolbox--release-notes/tools/wip-repo-init/README.md +0 -38
  146. package/.worktrees/toolbox--release-notes/tools/wip-repo-init/SKILL.md +0 -77
  147. package/.worktrees/toolbox--release-notes/tools/wip-repo-init/init.mjs +0 -148
  148. package/.worktrees/toolbox--release-notes/tools/wip-repo-init/package.json +0 -11
  149. package/.worktrees/toolbox--release-notes/tools/wip-repo-init/templates/_sort/README.md +0 -15
  150. package/.worktrees/toolbox--release-notes/tools/wip-repo-init/templates/_trash/README.md +0 -16
  151. package/.worktrees/toolbox--release-notes/tools/wip-repo-init/templates/dev-updates/README.md +0 -50
  152. package/.worktrees/toolbox--release-notes/tools/wip-repo-init/templates/product/notes/README.md +0 -26
  153. package/.worktrees/toolbox--release-notes/tools/wip-repo-init/templates/product/plans-prds/roadmap.md +0 -77
  154. package/.worktrees/toolbox--release-notes/tools/wip-repo-init/templates/product/plans-prds/todos/README.md +0 -63
  155. package/.worktrees/toolbox--release-notes/tools/wip-repo-init/templates/product/product-ideas/README.md +0 -24
  156. package/.worktrees/toolbox--release-notes/tools/wip-repo-init/templates/product/readme-first-product.md +0 -128
  157. package/.worktrees/toolbox--release-notes/tools/wip-repo-init/templates/read-me-first.md +0 -80
  158. package/.worktrees/toolbox--release-notes/tools/wip-repo-permissions-hook/LICENSE +0 -52
  159. package/.worktrees/toolbox--release-notes/tools/wip-repo-permissions-hook/README.md +0 -86
  160. package/.worktrees/toolbox--release-notes/tools/wip-repo-permissions-hook/SKILL.md +0 -73
  161. package/.worktrees/toolbox--release-notes/tools/wip-repo-permissions-hook/cli.js +0 -93
  162. package/.worktrees/toolbox--release-notes/tools/wip-repo-permissions-hook/core.mjs +0 -122
  163. package/.worktrees/toolbox--release-notes/tools/wip-repo-permissions-hook/guard.mjs +0 -64
  164. package/.worktrees/toolbox--release-notes/tools/wip-repo-permissions-hook/mcp-server.mjs +0 -92
  165. package/.worktrees/toolbox--release-notes/tools/wip-repo-permissions-hook/openclaw.plugin.json +0 -8
  166. package/.worktrees/toolbox--release-notes/tools/wip-repo-permissions-hook/package.json +0 -31
  167. package/.worktrees/toolbox--release-notes/tools/wip-repos/LICENSE +0 -52
  168. package/.worktrees/toolbox--release-notes/tools/wip-repos/README.md +0 -77
  169. package/.worktrees/toolbox--release-notes/tools/wip-repos/SKILL.md +0 -80
  170. package/.worktrees/toolbox--release-notes/tools/wip-repos/claude.mjs +0 -248
  171. package/.worktrees/toolbox--release-notes/tools/wip-repos/cli.mjs +0 -191
  172. package/.worktrees/toolbox--release-notes/tools/wip-repos/core.mjs +0 -290
  173. package/.worktrees/toolbox--release-notes/tools/wip-repos/mcp-server.mjs +0 -157
  174. package/.worktrees/toolbox--release-notes/tools/wip-repos/package.json +0 -34
  175. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/CHANGELOG.md +0 -57
  176. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/LICENSE +0 -52
  177. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/README.md +0 -81
  178. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/REFERENCE.md +0 -122
  179. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/SKILL.md +0 -87
  180. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/SPEC.md +0 -206
  181. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/detect.mjs +0 -130
  182. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/examples/minimal/README.md +0 -20
  183. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/examples/minimal/SKILL.md +0 -28
  184. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/examples/minimal/cli.mjs +0 -4
  185. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/examples/minimal/core.mjs +0 -8
  186. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/examples/minimal/mcp-server.mjs +0 -27
  187. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/examples/minimal/package.json +0 -12
  188. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/install.js +0 -930
  189. package/.worktrees/toolbox--release-notes/tools/wip-universal-installer/package.json +0 -32
  190. package/.worktrees/toolbox--save-stale/.license-guard.json +0 -7
  191. package/.worktrees/toolbox--save-stale/.publish-skill.json +0 -4
  192. package/.worktrees/toolbox--save-stale/CHANGELOG.md +0 -1875
  193. package/.worktrees/toolbox--save-stale/CLA.md +0 -19
  194. package/.worktrees/toolbox--save-stale/DEV-GUIDE-GENERAL-PUBLIC.md +0 -949
  195. package/.worktrees/toolbox--save-stale/LICENSE +0 -52
  196. package/.worktrees/toolbox--save-stale/README.md +0 -238
  197. package/.worktrees/toolbox--save-stale/SKILL.md +0 -821
  198. package/.worktrees/toolbox--save-stale/TECHNICAL.md +0 -416
  199. package/.worktrees/toolbox--save-stale/UNIVERSAL-INTERFACE.md +0 -180
  200. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-8-0.md +0 -29
  201. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-8-1.md +0 -7
  202. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-8-2.md +0 -7
  203. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-0.md +0 -37
  204. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-1.md +0 -38
  205. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-10.md +0 -40
  206. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-2.md +0 -40
  207. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-31.md +0 -26
  208. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-32.md +0 -18
  209. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-41.md +0 -28
  210. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-45.md +0 -25
  211. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-46.md +0 -38
  212. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-47.md +0 -42
  213. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-48.md +0 -22
  214. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-49.md +0 -31
  215. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-50.md +0 -24
  216. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-51.md +0 -11
  217. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-52.md +0 -25
  218. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-53.md +0 -22
  219. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-54.md +0 -13
  220. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-55.md +0 -11
  221. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-6.md +0 -72
  222. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-7.md +0 -23
  223. package/.worktrees/toolbox--save-stale/_trash/RELEASE-NOTES-v1-9-9.md +0 -75
  224. package/.worktrees/toolbox--save-stale/_trash/guide 2/DEV-GUIDE.md +0 -487
  225. package/.worktrees/toolbox--save-stale/_trash/guide 2/scripts/deploy-public.sh +0 -152
  226. package/.worktrees/toolbox--save-stale/package.json +0 -27
  227. package/.worktrees/toolbox--save-stale/scripts/SKILL-deploy-public.md +0 -61
  228. package/.worktrees/toolbox--save-stale/scripts/SKILL-post-merge-rename.md +0 -47
  229. package/.worktrees/toolbox--save-stale/scripts/deploy-public.sh +0 -345
  230. package/.worktrees/toolbox--save-stale/scripts/post-merge-rename.sh +0 -210
  231. package/.worktrees/toolbox--save-stale/scripts/publish-skill.sh +0 -134
  232. package/.worktrees/toolbox--save-stale/templates/global-claude-md.md +0 -73
  233. package/.worktrees/toolbox--save-stale/templates/repo-claude-md.template +0 -24
  234. package/.worktrees/toolbox--save-stale/tools/deploy-public/LICENSE +0 -52
  235. package/.worktrees/toolbox--save-stale/tools/deploy-public/README.md +0 -31
  236. package/.worktrees/toolbox--save-stale/tools/deploy-public/SKILL.md +0 -71
  237. package/.worktrees/toolbox--save-stale/tools/deploy-public/deploy-public.sh +0 -264
  238. package/.worktrees/toolbox--save-stale/tools/deploy-public/package.json +0 -9
  239. package/.worktrees/toolbox--save-stale/tools/ldm-jobs/LICENSE +0 -52
  240. package/.worktrees/toolbox--save-stale/tools/ldm-jobs/README.md +0 -46
  241. package/.worktrees/toolbox--save-stale/tools/ldm-jobs/backup.sh +0 -16
  242. package/.worktrees/toolbox--save-stale/tools/ldm-jobs/branch-protect.sh +0 -39
  243. package/.worktrees/toolbox--save-stale/tools/ldm-jobs/crystal-capture.sh +0 -19
  244. package/.worktrees/toolbox--save-stale/tools/ldm-jobs/setup-shell.sh +0 -27
  245. package/.worktrees/toolbox--save-stale/tools/ldm-jobs/visibility-audit.sh +0 -27
  246. package/.worktrees/toolbox--save-stale/tools/post-merge-rename/LICENSE +0 -52
  247. package/.worktrees/toolbox--save-stale/tools/post-merge-rename/README.md +0 -29
  248. package/.worktrees/toolbox--save-stale/tools/post-merge-rename/SKILL.md +0 -57
  249. package/.worktrees/toolbox--save-stale/tools/post-merge-rename/package.json +0 -9
  250. package/.worktrees/toolbox--save-stale/tools/post-merge-rename/post-merge-rename.sh +0 -122
  251. package/.worktrees/toolbox--save-stale/tools/wip-branch-guard/INSTALL.md +0 -41
  252. package/.worktrees/toolbox--save-stale/tools/wip-branch-guard/guard.mjs +0 -459
  253. package/.worktrees/toolbox--save-stale/tools/wip-branch-guard/package.json +0 -18
  254. package/.worktrees/toolbox--save-stale/tools/wip-file-guard/CHANGELOG.md +0 -6
  255. package/.worktrees/toolbox--save-stale/tools/wip-file-guard/LICENSE +0 -52
  256. package/.worktrees/toolbox--save-stale/tools/wip-file-guard/README.md +0 -113
  257. package/.worktrees/toolbox--save-stale/tools/wip-file-guard/REFERENCE.md +0 -86
  258. package/.worktrees/toolbox--save-stale/tools/wip-file-guard/SKILL.md +0 -105
  259. package/.worktrees/toolbox--save-stale/tools/wip-file-guard/guard.mjs +0 -161
  260. package/.worktrees/toolbox--save-stale/tools/wip-file-guard/openclaw.plugin.json +0 -8
  261. package/.worktrees/toolbox--save-stale/tools/wip-file-guard/package.json +0 -27
  262. package/.worktrees/toolbox--save-stale/tools/wip-file-guard/test.sh +0 -119
  263. package/.worktrees/toolbox--save-stale/tools/wip-license-guard/LICENSE +0 -52
  264. package/.worktrees/toolbox--save-stale/tools/wip-license-guard/README.md +0 -69
  265. package/.worktrees/toolbox--save-stale/tools/wip-license-guard/SKILL.md +0 -65
  266. package/.worktrees/toolbox--save-stale/tools/wip-license-guard/cli.mjs +0 -472
  267. package/.worktrees/toolbox--save-stale/tools/wip-license-guard/core.mjs +0 -310
  268. package/.worktrees/toolbox--save-stale/tools/wip-license-guard/guard.mjs +0 -146
  269. package/.worktrees/toolbox--save-stale/tools/wip-license-guard/package.json +0 -22
  270. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/CHANGELOG.md +0 -17
  271. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/LICENSE +0 -52
  272. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/README.md +0 -200
  273. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/SKILL.md +0 -111
  274. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/cli/index.d.ts +0 -15
  275. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/cli/index.js +0 -170
  276. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/cli/index.js.map +0 -1
  277. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/detector.d.ts +0 -12
  278. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/detector.js +0 -104
  279. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/detector.js.map +0 -1
  280. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/index.d.ts +0 -4
  281. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/index.js +0 -5
  282. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/index.js.map +0 -1
  283. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/ledger.d.ts +0 -49
  284. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/ledger.js +0 -72
  285. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/ledger.js.map +0 -1
  286. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/reporter.d.ts +0 -14
  287. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/reporter.js +0 -227
  288. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/reporter.js.map +0 -1
  289. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/scanner.d.ts +0 -39
  290. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/scanner.js +0 -325
  291. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/dist/core/scanner.js.map +0 -1
  292. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/hooks/pre-pull.sh +0 -55
  293. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/hooks/pre-push.sh +0 -51
  294. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/mcp-server.mjs +0 -119
  295. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/package-lock.json +0 -54
  296. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/package.json +0 -43
  297. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/src/cli/index.ts +0 -189
  298. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/src/core/detector.ts +0 -130
  299. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/src/core/index.ts +0 -4
  300. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/src/core/ledger.ts +0 -116
  301. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/src/core/reporter.ts +0 -255
  302. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/src/core/scanner.ts +0 -367
  303. package/.worktrees/toolbox--save-stale/tools/wip-license-hook/tsconfig.json +0 -16
  304. package/.worktrees/toolbox--save-stale/tools/wip-readme-format/README.md +0 -49
  305. package/.worktrees/toolbox--save-stale/tools/wip-readme-format/SKILL.md +0 -84
  306. package/.worktrees/toolbox--save-stale/tools/wip-readme-format/format.mjs +0 -597
  307. package/.worktrees/toolbox--save-stale/tools/wip-readme-format/package.json +0 -15
  308. package/.worktrees/toolbox--save-stale/tools/wip-release/CHANGELOG.md +0 -42
  309. package/.worktrees/toolbox--save-stale/tools/wip-release/LICENSE +0 -52
  310. package/.worktrees/toolbox--save-stale/tools/wip-release/README.md +0 -45
  311. package/.worktrees/toolbox--save-stale/tools/wip-release/REFERENCE.md +0 -100
  312. package/.worktrees/toolbox--save-stale/tools/wip-release/SKILL.md +0 -139
  313. package/.worktrees/toolbox--save-stale/tools/wip-release/cli.js +0 -175
  314. package/.worktrees/toolbox--save-stale/tools/wip-release/core.mjs +0 -1664
  315. package/.worktrees/toolbox--save-stale/tools/wip-release/mcp-server.mjs +0 -113
  316. package/.worktrees/toolbox--save-stale/tools/wip-release/package.json +0 -36
  317. package/.worktrees/toolbox--save-stale/tools/wip-repo-init/README.md +0 -38
  318. package/.worktrees/toolbox--save-stale/tools/wip-repo-init/SKILL.md +0 -77
  319. package/.worktrees/toolbox--save-stale/tools/wip-repo-init/init.mjs +0 -148
  320. package/.worktrees/toolbox--save-stale/tools/wip-repo-init/package.json +0 -11
  321. package/.worktrees/toolbox--save-stale/tools/wip-repo-init/templates/_sort/README.md +0 -15
  322. package/.worktrees/toolbox--save-stale/tools/wip-repo-init/templates/_trash/README.md +0 -16
  323. package/.worktrees/toolbox--save-stale/tools/wip-repo-init/templates/dev-updates/README.md +0 -50
  324. package/.worktrees/toolbox--save-stale/tools/wip-repo-init/templates/product/notes/README.md +0 -26
  325. package/.worktrees/toolbox--save-stale/tools/wip-repo-init/templates/product/plans-prds/roadmap.md +0 -77
  326. package/.worktrees/toolbox--save-stale/tools/wip-repo-init/templates/product/plans-prds/todos/README.md +0 -63
  327. package/.worktrees/toolbox--save-stale/tools/wip-repo-init/templates/product/product-ideas/README.md +0 -24
  328. package/.worktrees/toolbox--save-stale/tools/wip-repo-init/templates/product/readme-first-product.md +0 -128
  329. package/.worktrees/toolbox--save-stale/tools/wip-repo-init/templates/read-me-first.md +0 -80
  330. package/.worktrees/toolbox--save-stale/tools/wip-repo-permissions-hook/LICENSE +0 -52
  331. package/.worktrees/toolbox--save-stale/tools/wip-repo-permissions-hook/README.md +0 -86
  332. package/.worktrees/toolbox--save-stale/tools/wip-repo-permissions-hook/SKILL.md +0 -73
  333. package/.worktrees/toolbox--save-stale/tools/wip-repo-permissions-hook/cli.js +0 -93
  334. package/.worktrees/toolbox--save-stale/tools/wip-repo-permissions-hook/core.mjs +0 -122
  335. package/.worktrees/toolbox--save-stale/tools/wip-repo-permissions-hook/guard.mjs +0 -64
  336. package/.worktrees/toolbox--save-stale/tools/wip-repo-permissions-hook/mcp-server.mjs +0 -92
  337. package/.worktrees/toolbox--save-stale/tools/wip-repo-permissions-hook/openclaw.plugin.json +0 -8
  338. package/.worktrees/toolbox--save-stale/tools/wip-repo-permissions-hook/package.json +0 -31
  339. package/.worktrees/toolbox--save-stale/tools/wip-repos/LICENSE +0 -52
  340. package/.worktrees/toolbox--save-stale/tools/wip-repos/README.md +0 -77
  341. package/.worktrees/toolbox--save-stale/tools/wip-repos/SKILL.md +0 -80
  342. package/.worktrees/toolbox--save-stale/tools/wip-repos/claude.mjs +0 -248
  343. package/.worktrees/toolbox--save-stale/tools/wip-repos/cli.mjs +0 -191
  344. package/.worktrees/toolbox--save-stale/tools/wip-repos/core.mjs +0 -290
  345. package/.worktrees/toolbox--save-stale/tools/wip-repos/mcp-server.mjs +0 -157
  346. package/.worktrees/toolbox--save-stale/tools/wip-repos/package.json +0 -34
  347. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/CHANGELOG.md +0 -57
  348. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/LICENSE +0 -52
  349. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/README.md +0 -81
  350. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/REFERENCE.md +0 -122
  351. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/SKILL.md +0 -87
  352. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/SPEC.md +0 -206
  353. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/detect.mjs +0 -130
  354. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/examples/minimal/README.md +0 -20
  355. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/examples/minimal/SKILL.md +0 -28
  356. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/examples/minimal/cli.mjs +0 -4
  357. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/examples/minimal/core.mjs +0 -8
  358. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/examples/minimal/mcp-server.mjs +0 -27
  359. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/examples/minimal/package.json +0 -12
  360. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/install.js +0 -930
  361. package/.worktrees/toolbox--save-stale/tools/wip-universal-installer/package.json +0 -32
  362. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/.license-guard.json +0 -7
  363. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/.publish-skill.json +0 -4
  364. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/CHANGELOG.md +0 -1875
  365. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/CLA.md +0 -19
  366. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/DEV-GUIDE-GENERAL-PUBLIC.md +0 -949
  367. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/LICENSE +0 -52
  368. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/README.md +0 -238
  369. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/SKILL.md +0 -821
  370. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/TECHNICAL.md +0 -416
  371. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/UNIVERSAL-INTERFACE.md +0 -180
  372. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-8-0.md +0 -29
  373. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-8-1.md +0 -7
  374. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-8-2.md +0 -7
  375. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-0.md +0 -37
  376. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-1.md +0 -38
  377. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-10.md +0 -40
  378. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-2.md +0 -40
  379. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-31.md +0 -26
  380. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-32.md +0 -18
  381. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-41.md +0 -28
  382. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-45.md +0 -25
  383. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-46.md +0 -38
  384. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-47.md +0 -42
  385. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-48.md +0 -22
  386. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-49.md +0 -31
  387. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-50.md +0 -24
  388. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-51.md +0 -11
  389. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-52.md +0 -25
  390. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-53.md +0 -22
  391. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-54.md +0 -13
  392. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-55.md +0 -11
  393. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-6.md +0 -72
  394. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-7.md +0 -23
  395. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/RELEASE-NOTES-v1-9-9.md +0 -75
  396. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/guide 2/DEV-GUIDE.md +0 -487
  397. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/_trash/guide 2/scripts/deploy-public.sh +0 -152
  398. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/package.json +0 -27
  399. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/scripts/SKILL-deploy-public.md +0 -61
  400. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/scripts/SKILL-post-merge-rename.md +0 -47
  401. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/scripts/deploy-public.sh +0 -345
  402. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/scripts/post-merge-rename.sh +0 -210
  403. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/scripts/publish-skill.sh +0 -134
  404. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/templates/global-claude-md.md +0 -73
  405. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/templates/repo-claude-md.template +0 -24
  406. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/deploy-public/LICENSE +0 -52
  407. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/deploy-public/README.md +0 -31
  408. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/deploy-public/SKILL.md +0 -71
  409. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/deploy-public/deploy-public.sh +0 -264
  410. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/deploy-public/package.json +0 -9
  411. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/ldm-jobs/LICENSE +0 -52
  412. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/ldm-jobs/README.md +0 -46
  413. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/ldm-jobs/backup.sh +0 -16
  414. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/ldm-jobs/branch-protect.sh +0 -39
  415. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/ldm-jobs/crystal-capture.sh +0 -19
  416. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/ldm-jobs/setup-shell.sh +0 -27
  417. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/ldm-jobs/visibility-audit.sh +0 -27
  418. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/post-merge-rename/LICENSE +0 -52
  419. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/post-merge-rename/README.md +0 -29
  420. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/post-merge-rename/SKILL.md +0 -57
  421. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/post-merge-rename/package.json +0 -9
  422. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/post-merge-rename/post-merge-rename.sh +0 -122
  423. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-branch-guard/INSTALL.md +0 -41
  424. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-branch-guard/guard.mjs +0 -418
  425. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-branch-guard/package.json +0 -18
  426. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-file-guard/CHANGELOG.md +0 -6
  427. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-file-guard/LICENSE +0 -52
  428. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-file-guard/README.md +0 -113
  429. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-file-guard/REFERENCE.md +0 -86
  430. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-file-guard/SKILL.md +0 -105
  431. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-file-guard/guard.mjs +0 -161
  432. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-file-guard/openclaw.plugin.json +0 -8
  433. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-file-guard/package.json +0 -27
  434. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-file-guard/test.sh +0 -119
  435. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-guard/LICENSE +0 -52
  436. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-guard/README.md +0 -69
  437. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-guard/SKILL.md +0 -65
  438. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-guard/cli.mjs +0 -472
  439. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-guard/core.mjs +0 -310
  440. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-guard/guard.mjs +0 -146
  441. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-guard/package.json +0 -22
  442. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/CHANGELOG.md +0 -17
  443. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/LICENSE +0 -52
  444. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/README.md +0 -200
  445. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/SKILL.md +0 -111
  446. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/cli/index.d.ts +0 -15
  447. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/cli/index.js +0 -170
  448. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/cli/index.js.map +0 -1
  449. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/detector.d.ts +0 -12
  450. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/detector.js +0 -104
  451. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/detector.js.map +0 -1
  452. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/index.d.ts +0 -4
  453. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/index.js +0 -5
  454. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/index.js.map +0 -1
  455. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/ledger.d.ts +0 -49
  456. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/ledger.js +0 -72
  457. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/ledger.js.map +0 -1
  458. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/reporter.d.ts +0 -14
  459. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/reporter.js +0 -227
  460. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/reporter.js.map +0 -1
  461. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/scanner.d.ts +0 -39
  462. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/scanner.js +0 -325
  463. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/dist/core/scanner.js.map +0 -1
  464. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/hooks/pre-pull.sh +0 -55
  465. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/hooks/pre-push.sh +0 -51
  466. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/mcp-server.mjs +0 -119
  467. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/package-lock.json +0 -54
  468. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/package.json +0 -43
  469. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/src/cli/index.ts +0 -189
  470. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/src/core/detector.ts +0 -130
  471. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/src/core/index.ts +0 -4
  472. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/src/core/ledger.ts +0 -116
  473. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/src/core/reporter.ts +0 -255
  474. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/src/core/scanner.ts +0 -367
  475. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-license-hook/tsconfig.json +0 -16
  476. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-readme-format/README.md +0 -49
  477. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-readme-format/SKILL.md +0 -84
  478. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-readme-format/format.mjs +0 -597
  479. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-readme-format/package.json +0 -15
  480. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-release/CHANGELOG.md +0 -42
  481. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-release/LICENSE +0 -52
  482. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-release/README.md +0 -45
  483. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-release/REFERENCE.md +0 -100
  484. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-release/SKILL.md +0 -139
  485. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-release/cli.js +0 -175
  486. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-release/core.mjs +0 -1664
  487. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-release/mcp-server.mjs +0 -113
  488. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-release/package.json +0 -36
  489. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-init/README.md +0 -38
  490. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-init/SKILL.md +0 -77
  491. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-init/init.mjs +0 -148
  492. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-init/package.json +0 -11
  493. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-init/templates/_sort/README.md +0 -15
  494. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-init/templates/_trash/README.md +0 -16
  495. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-init/templates/dev-updates/README.md +0 -50
  496. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-init/templates/product/notes/README.md +0 -26
  497. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-init/templates/product/plans-prds/roadmap.md +0 -77
  498. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-init/templates/product/plans-prds/todos/README.md +0 -63
  499. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-init/templates/product/product-ideas/README.md +0 -24
  500. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-init/templates/product/readme-first-product.md +0 -128
  501. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-init/templates/read-me-first.md +0 -80
  502. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-permissions-hook/LICENSE +0 -52
  503. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-permissions-hook/README.md +0 -86
  504. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-permissions-hook/SKILL.md +0 -73
  505. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-permissions-hook/cli.js +0 -93
  506. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-permissions-hook/core.mjs +0 -122
  507. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-permissions-hook/guard.mjs +0 -64
  508. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-permissions-hook/mcp-server.mjs +0 -92
  509. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-permissions-hook/openclaw.plugin.json +0 -8
  510. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repo-permissions-hook/package.json +0 -31
  511. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repos/LICENSE +0 -52
  512. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repos/README.md +0 -77
  513. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repos/SKILL.md +0 -80
  514. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repos/claude.mjs +0 -248
  515. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repos/cli.mjs +0 -191
  516. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repos/core.mjs +0 -290
  517. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repos/mcp-server.mjs +0 -157
  518. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-repos/package.json +0 -34
  519. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/CHANGELOG.md +0 -57
  520. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/LICENSE +0 -52
  521. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/README.md +0 -81
  522. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/REFERENCE.md +0 -122
  523. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/SKILL.md +0 -87
  524. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/SPEC.md +0 -206
  525. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/detect.mjs +0 -130
  526. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/examples/minimal/README.md +0 -20
  527. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/examples/minimal/SKILL.md +0 -28
  528. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/examples/minimal/cli.mjs +0 -4
  529. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/examples/minimal/core.mjs +0 -8
  530. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/examples/minimal/mcp-server.mjs +0 -27
  531. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/examples/minimal/package.json +0 -12
  532. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/install.js +0 -930
  533. package/.worktrees/wip-ai-devops-toolbox-private--cc-mini--dot-worktrees/tools/wip-universal-installer/package.json +0 -32
  534. package/_trash/RELEASE-NOTES-v1-8-0.md +0 -29
  535. package/_trash/RELEASE-NOTES-v1-8-1.md +0 -7
  536. package/_trash/RELEASE-NOTES-v1-8-2.md +0 -7
  537. package/_trash/RELEASE-NOTES-v1-9-0.md +0 -37
  538. package/_trash/RELEASE-NOTES-v1-9-1.md +0 -38
  539. package/_trash/RELEASE-NOTES-v1-9-10.md +0 -40
  540. package/_trash/RELEASE-NOTES-v1-9-2.md +0 -40
  541. package/_trash/RELEASE-NOTES-v1-9-31.md +0 -26
  542. package/_trash/RELEASE-NOTES-v1-9-32.md +0 -18
  543. package/_trash/RELEASE-NOTES-v1-9-41.md +0 -28
  544. package/_trash/RELEASE-NOTES-v1-9-45.md +0 -25
  545. package/_trash/RELEASE-NOTES-v1-9-46.md +0 -38
  546. package/_trash/RELEASE-NOTES-v1-9-47.md +0 -42
  547. package/_trash/RELEASE-NOTES-v1-9-48.md +0 -22
  548. package/_trash/RELEASE-NOTES-v1-9-49.md +0 -31
  549. package/_trash/RELEASE-NOTES-v1-9-50.md +0 -24
  550. package/_trash/RELEASE-NOTES-v1-9-51.md +0 -11
  551. package/_trash/RELEASE-NOTES-v1-9-52.md +0 -25
  552. package/_trash/RELEASE-NOTES-v1-9-53.md +0 -22
  553. package/_trash/RELEASE-NOTES-v1-9-54.md +0 -13
  554. package/_trash/RELEASE-NOTES-v1-9-55.md +0 -11
  555. package/_trash/RELEASE-NOTES-v1-9-56.md +0 -42
  556. package/_trash/RELEASE-NOTES-v1-9-57.md +0 -18
  557. package/_trash/RELEASE-NOTES-v1-9-58.md +0 -21
  558. package/_trash/RELEASE-NOTES-v1-9-6.md +0 -72
  559. package/_trash/RELEASE-NOTES-v1-9-7.md +0 -23
  560. package/_trash/RELEASE-NOTES-v1-9-9.md +0 -75
  561. package/_trash/guide 2/DEV-GUIDE.md +0 -487
  562. package/_trash/guide 2/scripts/deploy-public.sh +0 -152
  563. package/tools/wip-repo-init/templates/_trash/README.md +0 -16
@@ -1,152 +0,0 @@
1
- #!/usr/bin/env bash
2
- #
3
- # deploy-public.sh ... sync a private repo to its public counterpart
4
- #
5
- # Usage:
6
- # bash deploy-public.sh <private-repo-path> <public-github-repo>
7
- #
8
- # Example:
9
- # bash deploy-public.sh /path/to/memory-crystal wipcomputer/memory-crystal
10
- #
11
- # Convention:
12
- # - Private repo: {name}-private (where all work happens)
13
- # - Public repo: {name} (deployment target, never work here directly)
14
- # - ai/ folder is excluded from public deploys
15
- # - Old ai/ in public git history is fine, just not going forward
16
- #
17
- # Location: wip-dev-guide-private/scripts/deploy-public.sh (one script for all repos)
18
-
19
- set -euo pipefail
20
-
21
- PRIVATE_REPO="$1"
22
- PUBLIC_REPO="$2"
23
-
24
- if [[ -z "$PRIVATE_REPO" || -z "$PUBLIC_REPO" ]]; then
25
- echo "Usage: bash deploy-public.sh <private-repo-path> <public-github-repo>"
26
- echo "Example: bash deploy-public.sh /path/to/memory-crystal wipcomputer/memory-crystal"
27
- exit 1
28
- fi
29
-
30
- if [[ ! -d "$PRIVATE_REPO/.git" ]]; then
31
- echo "Error: $PRIVATE_REPO is not a git repository"
32
- exit 1
33
- fi
34
-
35
- # Get the latest commit message from private repo
36
- COMMIT_MSG=$(cd "$PRIVATE_REPO" && git log -1 --pretty=format:"%s")
37
- COMMIT_HASH=$(cd "$PRIVATE_REPO" && git log -1 --pretty=format:"%h")
38
-
39
- TMPDIR=$(mktemp -d)
40
- trap 'rm -rf "$TMPDIR"' EXIT
41
-
42
- echo "Cloning public repo $PUBLIC_REPO..."
43
- gh repo clone "$PUBLIC_REPO" "$TMPDIR/public" -- --depth 1 2>/dev/null || {
44
- echo "Public repo is empty or doesn't exist. Initializing..."
45
- mkdir -p "$TMPDIR/public"
46
- cd "$TMPDIR/public"
47
- git init
48
- git remote add origin "git@github.com:${PUBLIC_REPO}.git"
49
- cd - > /dev/null
50
- }
51
-
52
- echo "Syncing files from private repo (excluding ai/, .git/)..."
53
-
54
- # Remove all tracked files in public (except .git) so deleted files get removed
55
- find "$TMPDIR/public" -mindepth 1 -maxdepth 1 ! -name .git -exec rm -rf {} +
56
-
57
- # rsync from private, excluding ai/ and .git/
58
- rsync -a \
59
- --exclude='ai/' \
60
- --exclude='.git/' \
61
- --exclude='.DS_Store' \
62
- --exclude='.wrangler/' \
63
- --exclude='.claude/' \
64
- --exclude='CLAUDE.md' \
65
- "$PRIVATE_REPO/" "$TMPDIR/public/"
66
-
67
- cd "$TMPDIR/public"
68
-
69
- # Check if there are changes
70
- if git diff --quiet HEAD -- 2>/dev/null && git diff --cached --quiet HEAD -- 2>/dev/null && [[ -z "$(git ls-files --others --exclude-standard)" ]]; then
71
- echo "No changes to deploy."
72
- exit 0
73
- fi
74
-
75
- # Harness ID for branch prefix. Set HARNESS_ID env var, or auto-detect from private repo path.
76
- if [[ -z "${HARNESS_ID:-}" ]]; then
77
- case "$PRIVATE_REPO" in
78
- *"Claude Code - Mini"*) HARNESS_ID="cc-mini" ;;
79
- *"Claude Code - MBA"*) HARNESS_ID="cc-air" ;;
80
- *"Lēsa"*) HARNESS_ID="oc-lesa-mini" ;;
81
- *) HARNESS_ID="deploy" ;;
82
- esac
83
- fi
84
- BRANCH="$HARNESS_ID/deploy-$(date +%Y%m%d-%H%M%S)"
85
-
86
- git checkout -b "$BRANCH"
87
- git add -A
88
- git commit -m "$COMMIT_MSG (from $COMMIT_HASH)"
89
-
90
- echo "Pushing branch $BRANCH to $PUBLIC_REPO..."
91
- git push -u origin "$BRANCH"
92
-
93
- echo "Creating PR..."
94
- PR_URL=$(gh pr create -R "$PUBLIC_REPO" \
95
- --head "$BRANCH" \
96
- --title "$COMMIT_MSG" \
97
- --body "Synced from private repo (commit $COMMIT_HASH).")
98
-
99
- echo "Merging PR..."
100
- PR_NUMBER=$(echo "$PR_URL" | grep -o '[0-9]*$')
101
- gh pr merge "$PR_NUMBER" -R "$PUBLIC_REPO" --merge --delete-branch
102
-
103
- echo "Code synced via PR: $PR_URL"
104
-
105
- # ── Sync release to public repo ──
106
- # If the private repo has a version tag, create a matching release on the public repo.
107
- # Pulls full release notes from the private repo and rewrites any private repo references.
108
-
109
- # Try package.json first, fall back to latest git tag
110
- VERSION=$(cd "$PRIVATE_REPO" && node -p "require('./package.json').version" 2>/dev/null || echo "")
111
- if [[ -z "$VERSION" ]]; then
112
- # No package.json. Use the latest version tag (v*) in the repo
113
- TAG=$(cd "$PRIVATE_REPO" && git tag -l 'v*' --sort=-version:refname 2>/dev/null | head -1 || echo "")
114
- if [[ -n "$TAG" ]]; then
115
- VERSION="${TAG#v}"
116
- fi
117
- fi
118
- if [[ -n "$VERSION" ]]; then
119
- TAG="v$VERSION"
120
- EXISTING=$(gh release view "$TAG" -R "$PUBLIC_REPO" --json tagName 2>/dev/null || echo "")
121
- if [[ -z "$EXISTING" ]]; then
122
- # Get the private repo's GitHub path (e.g., wipcomputer/memory-crystal-private)
123
- PRIVATE_GH=$(cd "$PRIVATE_REPO" && git remote get-url origin | sed 's/.*github.com[:/]\(.*\)\.git/\1/')
124
-
125
- # Pull full release notes from private repo
126
- NOTES=$(gh release view "$TAG" -R "$PRIVATE_GH" --json body -q '.body' 2>/dev/null || echo "")
127
-
128
- if [[ -z "$NOTES" || "$NOTES" == "null" ]]; then
129
- NOTES="Release $TAG"
130
- else
131
- # Rewrite private repo references to public repo
132
- NOTES=$(echo "$NOTES" | sed "s|$PRIVATE_GH|$PUBLIC_REPO|g")
133
- fi
134
-
135
- echo "Creating release $TAG on $PUBLIC_REPO..."
136
- gh release create "$TAG" -R "$PUBLIC_REPO" --title "$TAG" --notes "$NOTES" 2>/dev/null && echo " ✓ Release $TAG created on $PUBLIC_REPO" || echo " ✗ Release creation failed (non-fatal)"
137
- else
138
- # Update existing release notes (in case they were incomplete)
139
- PRIVATE_GH=$(cd "$PRIVATE_REPO" && git remote get-url origin | sed 's/.*github.com[:/]\(.*\)\.git/\1/')
140
- NOTES=$(gh release view "$TAG" -R "$PRIVATE_GH" --json body -q '.body' 2>/dev/null || echo "")
141
- if [[ -n "$NOTES" && "$NOTES" != "null" ]]; then
142
- NOTES=$(echo "$NOTES" | sed "s|$PRIVATE_GH|$PUBLIC_REPO|g")
143
- gh release edit "$TAG" -R "$PUBLIC_REPO" --notes "$NOTES" 2>/dev/null && echo " ✓ Release $TAG notes updated on $PUBLIC_REPO" || true
144
- fi
145
- echo " Release $TAG exists on $PUBLIC_REPO (notes synced)"
146
- fi
147
- fi
148
-
149
- echo "Done. Public repo updated."
150
- echo " PR: $PR_URL"
151
- echo " Commit: $COMMIT_MSG (from $COMMIT_HASH)"
152
- [[ -n "${VERSION:-}" ]] && echo " Release: v$VERSION"
@@ -1,27 +0,0 @@
1
- {
2
- "name": "@wipcomputer/wip-ai-devops-toolbox",
3
- "version": "1.9.55",
4
- "type": "module",
5
- "description": "The complete AI DevOps toolkit for AI-assisted development teams.",
6
- "license": "MIT",
7
- "author": "Parker Todd Brooks",
8
- "bin": {
9
- "wip-release": "tools/wip-release/cli.js",
10
- "wip-repos": "tools/wip-repos/cli.mjs",
11
- "wip-install": "tools/wip-universal-installer/install.js",
12
- "wip-file-guard": "tools/wip-file-guard/guard.mjs",
13
- "wip-license-guard": "tools/wip-license-guard/cli.mjs",
14
- "wip-license-hook": "tools/wip-license-hook/dist/cli/index.js",
15
- "wip-repo-permissions": "tools/wip-repo-permissions-hook/cli.js",
16
- "wip-repo-init": "tools/wip-repo-init/init.mjs",
17
- "wip-readme-format": "tools/wip-readme-format/format.mjs",
18
- "wip-branch-guard": "tools/wip-branch-guard/guard.mjs",
19
- "deploy-public": "tools/deploy-public/deploy-public.sh",
20
- "post-merge-rename": "tools/post-merge-rename/post-merge-rename.sh"
21
- },
22
- "repository": {
23
- "type": "git",
24
- "url": "git+https://github.com/wipcomputer/wip-ai-devops-toolbox.git"
25
- },
26
- "homepage": "https://github.com/wipcomputer/wip-ai-devops-toolbox"
27
- }
@@ -1,61 +0,0 @@
1
- ---
2
- name: deploy-public
3
- version: 1.3.0
4
- description: Private-to-public repo sync. Copies everything except ai/ to the public mirror. Creates PR, merges, syncs releases.
5
- author: Parker Todd Brooks
6
- interface: [cli]
7
- metadata:
8
- category: dev-tools
9
- capabilities:
10
- - repo-sync
11
- - release-sync
12
- ---
13
-
14
- # deploy-public
15
-
16
- Private-to-public repo sync. One script for all repos. Copies code, creates a PR on the public repo, merges it, and syncs GitHub releases.
17
-
18
- ## When to Use This Skill
19
-
20
- **Use deploy-public for:**
21
- - Publishing a private repo's code to its public counterpart
22
- - After running `wip-release` on the private repo (release must exist first)
23
- - Syncing release notes from private to public
24
-
25
- **CRITICAL: Release order matters.**
26
- 1. Merge PR to private repo's main
27
- 2. Run `wip-release` (creates GitHub release with notes on private repo)
28
- 3. THEN run `deploy-public.sh` (pulls notes from private release)
29
-
30
- If you skip step 2, the public release gets empty notes.
31
-
32
- ### Do NOT Use For
33
-
34
- - Repos without a `-private` counterpart
35
- - First-time repo setup (create the public repo on GitHub first)
36
-
37
- ## API Reference
38
-
39
- ### CLI
40
-
41
- ```bash
42
- bash scripts/deploy-public.sh /path/to/private-repo org/public-repo
43
- ```
44
-
45
- ### Examples
46
-
47
- ```bash
48
- # Deploy memory-crystal
49
- bash scripts/deploy-public.sh /path/to/memory-crystal-private wipcomputer/memory-crystal
50
-
51
- # Deploy wip-dev-tools
52
- bash scripts/deploy-public.sh /path/to/wip-ai-devops-toolbox-private wipcomputer/wip-ai-devops-toolbox
53
- ```
54
-
55
- ## What It Does
56
-
57
- 1. Clones the public repo to a temp directory
58
- 2. Copies all files from private repo (excluding `ai/`, `.git/`)
59
- 3. Creates a branch, commits, pushes, creates PR
60
- 4. Merges the PR (regular merge, never squash)
61
- 5. Syncs GitHub releases (pulls notes from private repo's releases)
@@ -1,47 +0,0 @@
1
- ---
2
- name: post-merge-rename
3
- version: 1.3.0
4
- description: Post-merge branch renaming. Appends --merged-YYYY-MM-DD to preserve history.
5
- author: Parker Todd Brooks
6
- interface: [cli]
7
- metadata:
8
- category: dev-tools
9
- capabilities:
10
- - branch-rename
11
- - history-preservation
12
- ---
13
-
14
- # post-merge-rename
15
-
16
- Scans for merged branches that haven't been renamed and appends `--merged-YYYY-MM-DD` to preserve history. We never delete branches. We rename them.
17
-
18
- ## When to Use This Skill
19
-
20
- **Use post-merge-rename for:**
21
- - After merging PRs, to rename the source branch
22
- - Cleaning up branches that were merged but not renamed
23
- - Runs automatically as step 10 of `wip-release`
24
-
25
- ### Do NOT Use For
26
-
27
- - Unmerged branches
28
- - Branches you're currently working on
29
-
30
- ## API Reference
31
-
32
- ### CLI
33
-
34
- ```bash
35
- bash scripts/post-merge-rename.sh # scan + rename all merged branches
36
- bash scripts/post-merge-rename.sh --dry-run # preview only
37
- bash scripts/post-merge-rename.sh <branch> # rename specific branch
38
- ```
39
-
40
- ## What It Does
41
-
42
- 1. Lists all local branches merged into main
43
- 2. Skips branches already renamed (containing `--merged-`)
44
- 3. Finds the merge date from git history
45
- 4. Renames: `feature-branch` -> `feature-branch--merged-2026-03-09`
46
- 5. Pushes the renamed branch to origin
47
- 6. Deletes the old branch name from origin
@@ -1,345 +0,0 @@
1
- #!/usr/bin/env bash
2
- #
3
- # deploy-public.sh ... sync a private repo to its public counterpart
4
- #
5
- # Usage:
6
- # bash deploy-public.sh <private-repo-path> <public-github-repo>
7
- #
8
- # Example:
9
- # bash deploy-public.sh /path/to/memory-crystal wipcomputer/memory-crystal
10
- #
11
- # Convention:
12
- # - Private repo: {name}-private (where all work happens)
13
- # - Public repo: {name} (deployment target, never work here directly)
14
- # - ai/ folder is excluded from public deploys
15
- # - Old ai/ in public git history is fine, just not going forward
16
- #
17
- # Location: wip-dev-guide-private/scripts/deploy-public.sh (one script for all repos)
18
-
19
- set -euo pipefail
20
-
21
- PRIVATE_REPO="${1:-}"
22
- PUBLIC_REPO="${2:-}"
23
- DRY_RUN=false
24
-
25
- # Parse flags
26
- for arg in "$@"; do
27
- case "$arg" in
28
- --dry-run) DRY_RUN=true ;;
29
- esac
30
- done
31
-
32
- # Strip flags from positional args
33
- ARGS=()
34
- for arg in "$@"; do
35
- [[ "$arg" == --* ]] || ARGS+=("$arg")
36
- done
37
- PRIVATE_REPO="${ARGS[0]:-}"
38
- PUBLIC_REPO="${ARGS[1]:-}"
39
-
40
- if [[ -z "$PRIVATE_REPO" || -z "$PUBLIC_REPO" ]]; then
41
- echo "Usage: bash deploy-public.sh <private-repo-path> <public-github-repo> [--dry-run]"
42
- echo "Example: bash deploy-public.sh /path/to/memory-crystal wipcomputer/memory-crystal"
43
- echo " bash deploy-public.sh /path/to/memory-crystal wipcomputer/memory-crystal --dry-run"
44
- exit 1
45
- fi
46
-
47
- if [[ ! -d "$PRIVATE_REPO/.git" ]]; then
48
- echo "Error: $PRIVATE_REPO is not a git repository"
49
- exit 1
50
- fi
51
-
52
- # ── Safety: never deploy back to the source repo ──
53
- # Extract the private repo's GitHub org/name from its remote URL
54
- PRIVATE_REMOTE=$(cd "$PRIVATE_REPO" && git remote get-url origin 2>/dev/null | sed 's/.*github.com[:/]\(.*\)\.git/\1/' || echo "")
55
-
56
- if [[ -n "$PRIVATE_REMOTE" && "$PRIVATE_REMOTE" == "$PUBLIC_REPO" ]]; then
57
- echo "ERROR: PUBLIC_REPO ($PUBLIC_REPO) is the same as the private repo's origin ($PRIVATE_REMOTE)."
58
- echo "This would deploy sanitized code (no ai/) back to the source repo and destroy files."
59
- echo "Did you mean to target the public counterpart instead?"
60
- exit 1
61
- fi
62
-
63
- if [[ "$PUBLIC_REPO" == *"-private"* ]]; then
64
- echo "ERROR: PUBLIC_REPO ($PUBLIC_REPO) contains '-private'."
65
- echo "deploy-public.sh should only target public repos. Private repos have ai/ folders that would be destroyed."
66
- exit 1
67
- fi
68
-
69
- # Get the latest commit message from private repo
70
- COMMIT_MSG=$(cd "$PRIVATE_REPO" && git log -1 --pretty=format:"%s")
71
- COMMIT_HASH=$(cd "$PRIVATE_REPO" && git log -1 --pretty=format:"%h")
72
-
73
- TMPDIR=$(mktemp -d)
74
- trap 'rm -rf "$TMPDIR"' EXIT
75
-
76
- # ── Auto-create public repo if it doesn't exist ──
77
- REPO_EXISTS=$(gh repo view "$PUBLIC_REPO" --json name -q '.name' 2>/dev/null || echo "")
78
- if [[ -z "$REPO_EXISTS" ]]; then
79
- echo "Public repo $PUBLIC_REPO does not exist. Creating..."
80
- DESCRIPTION=$(cd "$PRIVATE_REPO" && node -p "require('./package.json').description" 2>/dev/null || echo "")
81
- gh repo create "$PUBLIC_REPO" --public --description "${DESCRIPTION:-Synced from private repo}" 2>/dev/null
82
- echo " + Created $PUBLIC_REPO"
83
- EMPTY_REPO=true
84
- else
85
- EMPTY_REPO=false
86
- # Verify the resolved repo is actually the one we asked for (catch GitHub redirects)
87
- RESOLVED_NAME=$(gh repo view "$PUBLIC_REPO" --json nameWithOwner -q '.nameWithOwner' 2>/dev/null || echo "")
88
- if [[ -n "$RESOLVED_NAME" && "$RESOLVED_NAME" != "$PUBLIC_REPO" ]]; then
89
- echo "ERROR: GitHub redirected $PUBLIC_REPO to $RESOLVED_NAME."
90
- echo "The public repo doesn't actually exist. A repo with a similar name is redirecting."
91
- echo "Create the public repo first: gh repo create $PUBLIC_REPO --public"
92
- exit 1
93
- fi
94
- fi
95
-
96
- echo "Cloning public repo $PUBLIC_REPO..."
97
- gh repo clone "$PUBLIC_REPO" "$TMPDIR/public" -- --depth 1 2>/dev/null || {
98
- echo "Public repo is empty. Initializing..."
99
- mkdir -p "$TMPDIR/public"
100
- cd "$TMPDIR/public"
101
- git init
102
- git remote add origin "git@github.com:${PUBLIC_REPO}.git"
103
- cd - > /dev/null
104
- EMPTY_REPO=true
105
- }
106
-
107
- echo "Syncing files from private repo (excluding ai/, .git/)..."
108
-
109
- # Remove all tracked files in public (except .git) so deleted files get removed
110
- find "$TMPDIR/public" -mindepth 1 -maxdepth 1 ! -name .git -exec rm -rf {} +
111
-
112
- # rsync from private, excluding ai/ and .git/
113
- rsync -a \
114
- --exclude='ai/' \
115
- --exclude='_trash/' \
116
- --exclude='.git/' \
117
- --exclude='.DS_Store' \
118
- --exclude='.wrangler/' \
119
- --exclude='.claude/' \
120
- --exclude='CLAUDE.md' \
121
- "$PRIVATE_REPO/" "$TMPDIR/public/"
122
-
123
- cd "$TMPDIR/public"
124
-
125
- # Rewrite package.json repository URL from private to public repo
126
- # GitHub Packages links packages to the repo in repository.url
127
- if [[ -f package.json ]] && grep -q "\-private" package.json 2>/dev/null; then
128
- sed -i '' 's|-private\.git|.git|g; s|-private"|"|g' package.json
129
- fi
130
-
131
- # Check if there are changes
132
- if git diff --quiet HEAD -- 2>/dev/null && git diff --cached --quiet HEAD -- 2>/dev/null && [[ -z "$(git ls-files --others --exclude-standard)" ]]; then
133
- echo "No changes to deploy."
134
- exit 0
135
- fi
136
-
137
- # Harness ID for branch prefix. Set HARNESS_ID env var, or auto-detect from private repo path.
138
- if [[ -z "${HARNESS_ID:-}" ]]; then
139
- case "$PRIVATE_REPO" in
140
- *"Claude Code - Mini"*) HARNESS_ID="cc-mini" ;;
141
- *"Claude Code - MBA"*) HARNESS_ID="cc-air" ;;
142
- *"Lēsa"*) HARNESS_ID="oc-lesa-mini" ;;
143
- *) HARNESS_ID="deploy" ;;
144
- esac
145
- fi
146
- BRANCH="$HARNESS_ID/deploy-$(date +%Y%m%d-%H%M%S)"
147
-
148
- git add -A
149
-
150
- # Dry-run: show what would be deployed, then stop
151
- if $DRY_RUN; then
152
- echo ""
153
- echo " Dry run: deploy-public.sh"
154
- echo " ────────────────────────────────────"
155
- echo " Source: $PRIVATE_REPO"
156
- echo " Target: $PUBLIC_REPO"
157
- echo " Commit: $COMMIT_MSG ($COMMIT_HASH)"
158
- echo ""
159
- echo " Files that would change:"
160
- git diff --cached --stat 2>/dev/null || git diff --stat HEAD 2>/dev/null || echo " (new files)"
161
- git ls-files --others --exclude-standard | head -20 | while read f; do echo " + $f"; done
162
- echo ""
163
- echo " Dry run complete. No changes pushed."
164
- exit 0
165
- fi
166
-
167
- git commit -m "$(cat <<COMMITEOF
168
- $COMMIT_MSG (from $COMMIT_HASH)
169
-
170
- Co-Authored-By: Parker Todd Brooks <parkertoddbrooks@users.noreply.github.com>
171
- Co-Authored-By: Lēsa <lesaai@icloud.com>
172
- Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
173
- COMMITEOF
174
- )"
175
-
176
- if [[ "$EMPTY_REPO" == "true" ]]; then
177
- # Empty repo: push directly to main (no base branch to PR against)
178
- echo "Pushing initial commit to main on $PUBLIC_REPO..."
179
- git branch -M main
180
- git push -u origin main
181
- gh repo edit "$PUBLIC_REPO" --default-branch main 2>/dev/null || true
182
- PR_URL="(initial push, no PR)"
183
- echo " + Initial commit pushed to main"
184
- else
185
- git checkout -b "$BRANCH"
186
-
187
- echo "Pushing branch $BRANCH to $PUBLIC_REPO..."
188
- git push -u origin "$BRANCH"
189
-
190
- echo "Creating PR..."
191
- PR_URL=$(gh pr create -R "$PUBLIC_REPO" \
192
- --head "$BRANCH" \
193
- --title "$COMMIT_MSG" \
194
- --body "Synced from private repo (commit $COMMIT_HASH).")
195
-
196
- echo "Merging PR..."
197
- PR_NUMBER=$(echo "$PR_URL" | grep -o '[0-9]*$')
198
- gh pr merge "$PR_NUMBER" -R "$PUBLIC_REPO" --merge --delete-branch
199
-
200
- # Clean up any other non-main branches on public repo
201
- echo "Checking for stale branches on public repo..."
202
- STALE_BRANCHES=$(gh api "repos/$PUBLIC_REPO/branches" --paginate --jq '.[].name' 2>/dev/null | grep -v '^main$' || true)
203
- if [[ -n "$STALE_BRANCHES" ]]; then
204
- STALE_COUNT=$(echo "$STALE_BRANCHES" | wc -l | tr -d ' ')
205
- echo " Found $STALE_COUNT stale branch(es). Deleting..."
206
- echo "$STALE_BRANCHES" | while read -r stale; do
207
- gh api -X DELETE "repos/$PUBLIC_REPO/git/refs/heads/$stale" 2>/dev/null && echo " ✓ Deleted $stale" || echo " ! Could not delete $stale"
208
- done
209
- else
210
- echo " ✓ No stale branches"
211
- fi
212
-
213
- echo "Code synced via PR: $PR_URL"
214
- fi
215
-
216
- # ── Sync release to public repo ──
217
- # If the private repo has a version tag, create a matching release on the public repo.
218
- # Pulls full release notes from the private repo and rewrites any private repo references.
219
-
220
- # Try package.json first, fall back to latest git tag
221
- VERSION=$(cd "$PRIVATE_REPO" && node -p "require('./package.json').version" 2>/dev/null || echo "")
222
- if [[ -z "$VERSION" ]]; then
223
- # No package.json. Use the latest version tag (v*) in the repo
224
- TAG=$(cd "$PRIVATE_REPO" && git tag -l 'v*' --sort=-version:refname 2>/dev/null | head -1 || echo "")
225
- if [[ -n "$TAG" ]]; then
226
- VERSION="${TAG#v}"
227
- fi
228
- fi
229
- if [[ -n "$VERSION" ]]; then
230
- TAG="v$VERSION"
231
- EXISTING=$(gh release view "$TAG" -R "$PUBLIC_REPO" --json tagName 2>/dev/null || echo "")
232
- if [[ -z "$EXISTING" ]]; then
233
- # Get the private repo's GitHub path (e.g., wipcomputer/memory-crystal-private)
234
- PRIVATE_GH=$(cd "$PRIVATE_REPO" && git remote get-url origin | sed 's/.*github.com[:/]\(.*\)\.git/\1/')
235
-
236
- # Pull full release notes from private repo
237
- NOTES=$(gh release view "$TAG" -R "$PRIVATE_GH" --json body -q '.body' 2>/dev/null || echo "")
238
-
239
- if [[ -z "$NOTES" || "$NOTES" == "null" ]]; then
240
- NOTES="Release $TAG"
241
- else
242
- # Rewrite private repo references to public repo
243
- NOTES=$(echo "$NOTES" | sed "s|$PRIVATE_GH|$PUBLIC_REPO|g")
244
- fi
245
-
246
- echo "Creating release $TAG on $PUBLIC_REPO..."
247
- gh release create "$TAG" -R "$PUBLIC_REPO" --title "$TAG" --notes "$NOTES" 2>/dev/null && echo " ✓ Release $TAG created on $PUBLIC_REPO" || echo " ✗ Release creation failed (non-fatal)"
248
- else
249
- # Update existing release notes (in case they were incomplete)
250
- PRIVATE_GH=$(cd "$PRIVATE_REPO" && git remote get-url origin | sed 's/.*github.com[:/]\(.*\)\.git/\1/')
251
- NOTES=$(gh release view "$TAG" -R "$PRIVATE_GH" --json body -q '.body' 2>/dev/null || echo "")
252
- if [[ -n "$NOTES" && "$NOTES" != "null" ]]; then
253
- NOTES=$(echo "$NOTES" | sed "s|$PRIVATE_GH|$PUBLIC_REPO|g")
254
- gh release edit "$TAG" -R "$PUBLIC_REPO" --notes "$NOTES" 2>/dev/null && echo " ✓ Release $TAG notes updated on $PUBLIC_REPO" || true
255
- fi
256
- echo " Release $TAG exists on $PUBLIC_REPO (notes synced)"
257
- fi
258
- fi
259
-
260
- # ── npm publish from public repo (#100) ──
261
- # After syncing code and release, publish to npm from the public clone.
262
- # Only if package.json exists and private !== true.
263
-
264
- if [[ -n "${VERSION:-}" ]]; then
265
- # Re-clone public for npm publish (the previous tmpdir might be gone)
266
- NPM_TMPDIR=$(mktemp -d)
267
- gh repo clone "$PUBLIC_REPO" "$NPM_TMPDIR/public" -- --depth 1 2>/dev/null
268
-
269
- if [[ -f "$NPM_TMPDIR/public/package.json" ]]; then
270
- IS_PRIVATE=$(cd "$NPM_TMPDIR/public" && node -p "require('./package.json').private || false" 2>/dev/null)
271
- echo "Publishing to npm from public repo..."
272
- NPM_TOKEN=$(OP_SERVICE_ACCOUNT_TOKEN=$(cat ~/.openclaw/secrets/op-sa-token) \
273
- op item get "npm Token" --vault "Agent Secrets" --fields label=password --reveal 2>/dev/null || echo "")
274
- if [[ -n "$NPM_TOKEN" ]]; then
275
- cd "$NPM_TMPDIR/public"
276
-
277
- # Publish root package (if not private)
278
- if [[ "$IS_PRIVATE" != "true" ]]; then
279
- echo "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" > .npmrc
280
- npm publish --access public 2>/dev/null && echo " ✓ Published root package to npm" || echo " ✗ Root npm publish failed (non-fatal)"
281
- rm -f .npmrc
282
- else
283
- echo " - Root package is private. Skipping root npm publish."
284
- fi
285
-
286
- # For toolbox repos: publish each sub-tool regardless of root private status
287
- if [[ -d "tools" ]]; then
288
- for TOOL_DIR in tools/*/; do
289
- if [[ -f "${TOOL_DIR}package.json" ]]; then
290
- TOOL_PRIVATE=$(node -p "require('./${TOOL_DIR}package.json').private || false" 2>/dev/null)
291
- if [[ "$TOOL_PRIVATE" != "true" ]]; then
292
- TOOL_NAME=$(node -p "require('./${TOOL_DIR}package.json').name" 2>/dev/null)
293
- echo "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" > "${TOOL_DIR}.npmrc"
294
- (cd "$TOOL_DIR" && npm publish --access public 2>/dev/null) && echo " ✓ Published $TOOL_NAME to npm" || echo " ✗ npm publish failed for $TOOL_NAME (non-fatal)"
295
- rm -f "${TOOL_DIR}.npmrc"
296
- fi
297
- fi
298
- done
299
- fi
300
-
301
- # Publish to GitHub Packages from public repo (#193)
302
- echo "Publishing to GitHub Packages from public repo..."
303
- GH_TOKEN=$(gh auth token 2>/dev/null || echo "")
304
- if [[ -n "$GH_TOKEN" ]]; then
305
- cd "$NPM_TMPDIR/public"
306
-
307
- # Root package
308
- if [[ "$IS_PRIVATE" != "true" ]]; then
309
- echo "//npm.pkg.github.com/:_authToken=${GH_TOKEN}" > .npmrc
310
- npm publish --registry https://npm.pkg.github.com/ --access public 2>/dev/null && echo " ✓ Published root to GitHub Packages" || echo " ✗ Root GitHub Packages publish failed (non-fatal)"
311
- rm -f .npmrc
312
- fi
313
-
314
- # Sub-tools
315
- if [[ -d "tools" ]]; then
316
- for TOOL_DIR in tools/*/; do
317
- if [[ -f "${TOOL_DIR}package.json" ]]; then
318
- TOOL_PRIVATE=$(node -p "require('./${TOOL_DIR}package.json').private || false" 2>/dev/null)
319
- if [[ "$TOOL_PRIVATE" != "true" ]]; then
320
- TOOL_NAME=$(node -p "require('./${TOOL_DIR}package.json').name" 2>/dev/null)
321
- echo "//npm.pkg.github.com/:_authToken=${GH_TOKEN}" > "${TOOL_DIR}.npmrc"
322
- (cd "$TOOL_DIR" && npm publish --registry https://npm.pkg.github.com/ --access public 2>/dev/null) && echo " ✓ Published $TOOL_NAME to GitHub Packages" || echo " ✗ GitHub Packages failed for $TOOL_NAME (non-fatal)"
323
- rm -f "${TOOL_DIR}.npmrc"
324
- fi
325
- fi
326
- done
327
- fi
328
-
329
- cd - > /dev/null
330
- else
331
- echo " ! gh auth token not found. Skipping GitHub Packages publish."
332
- fi
333
-
334
- cd - > /dev/null 2>/dev/null || true
335
- else
336
- echo " ! npm Token not found in 1Password. Skipping npm publish."
337
- fi
338
- fi
339
- rm -rf "$NPM_TMPDIR"
340
- fi
341
-
342
- echo "Done. Public repo updated."
343
- echo " PR: $PR_URL"
344
- echo " Commit: $COMMIT_MSG (from $COMMIT_HASH)"
345
- [[ -n "${VERSION:-}" ]] && echo " Release: v$VERSION"