@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
package/CHANGELOG.md CHANGED
@@ -31,6 +31,58 @@
31
31
 
32
32
 
33
33
 
34
+
35
+ ## 1.9.60 (2026-03-29)
36
+
37
+ # Release Notes: wip-ai-devops-toolbox v1.9.60
38
+
39
+ **Fix npm package bloat: exclude worktrees and _trash from published tarball.**
40
+
41
+ ## The story
42
+
43
+ v1.9.59 published 869 files (3.9 MB) to npm because leftover worktree directories and _trash/ were included in the tarball. The .npmignore only excluded ai/ and .DS_Store. Added _trash/, .worktrees/, _worktrees/, .claude/, .wrangler/ to .npmignore. Also cleaned up 10 stale worktrees from previous sessions.
44
+
45
+ ## Issues closed
46
+
47
+ - #232 (continued cleanup)
48
+
49
+ ## How to verify
50
+
51
+ ```bash
52
+ npm pack --dry-run 2>&1 | tail -5
53
+ # Should show ~200 files, not 869
54
+ ```
55
+
56
+ ## 1.9.59 (2026-03-29)
57
+
58
+ # Release Notes: wip-ai-devops-toolbox v1.9.59
59
+
60
+ **Fix three bugs in branch guard destructive command handling.**
61
+
62
+ ## The story
63
+
64
+ v1.9.56 added destructive command blocking but introduced three bugs because the new code was written differently from the existing guard pattern. The existing guard checks allowed patterns before blocked patterns and works per-command. The new code skipped the allowed check and matched against the entire raw command string, causing false positives on quoted text (blocking `gh issue create` when the body mentioned git commands) and false negatives on compound commands (allowing `rm -f file ; echo done` because `echo` is in the allowed list).
65
+
66
+ Fix: two helper functions that strip quoted content before matching and check each command segment independently. Same pattern as the existing guard code. Also adds `~/.claude/plans/` to the shared state allowlist so plan files are editable.
67
+
68
+ ## Issues closed
69
+
70
+ - #232 (branch guard three bugs in v1.9.56)
71
+
72
+ ## How to verify
73
+
74
+ ```bash
75
+ # These should now be ALLOWED (were false-positive blocked):
76
+ # gh issue create --body "use git checkout -- to fix"
77
+ # echo "don't run git commit on main"
78
+
79
+ # These should now be DENIED (were false-negative allowed):
80
+ # rm -f file ; echo done (on main)
81
+
82
+ # These should still be DENIED:
83
+ # git checkout -- file.txt
84
+ # python3 -c "open('f').write('x')"
85
+ ```
34
86
 
35
87
  ## 1.9.58 (2026-03-29)
36
88
 
package/SKILL.md CHANGED
@@ -5,7 +5,7 @@ license: MIT
5
5
  interface: [cli, module, mcp, skill, hook, plugin]
6
6
  metadata:
7
7
  display-name: "WIP AI DevOps Toolbox"
8
- version: "1.9.58"
8
+ version: "1.9.60"
9
9
  homepage: "https://github.com/wipcomputer/wip-ai-devops-toolbox"
10
10
  author: "Parker Todd Brooks"
11
11
  category: dev-tools
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-ai-devops-toolbox",
3
- "version": "1.9.58",
3
+ "version": "1.9.60",
4
4
  "type": "module",
5
5
  "description": "The complete AI DevOps toolkit for AI-assisted development teams.",
6
6
  "license": "MIT",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/deploy-public",
3
- "version": "1.9.58",
3
+ "version": "1.9.60",
4
4
  "description": "Private-to-public repo sync. Excludes ai/ folder, creates PR, merges, cleans up branches.",
5
5
  "bin": {
6
6
  "deploy-public": "./deploy-public.sh"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/post-merge-rename",
3
- "version": "1.9.58",
3
+ "version": "1.9.60",
4
4
  "description": "Post-merge branch renaming. Appends --merged-YYYY-MM-DD to preserve history.",
5
5
  "bin": {
6
6
  "post-merge-rename": "./post-merge-rename.sh"
@@ -32,20 +32,49 @@ const BLOCKED_GIT_PATTERNS = [
32
32
  /\bgit\s+restore\b/,
33
33
  ];
34
34
 
35
- // Destructive commands blocked on ANY branch, not just main.
35
+ // Destructive git commands blocked on ANY branch, not just main.
36
36
  // These destroy work that may belong to other agents or the user.
37
+ // Checked against STRIPPED command (quoted content removed) to avoid false positives (#232).
37
38
  const DESTRUCTIVE_PATTERNS = [
38
39
  /\bgit\s+clean\s+-[a-zA-Z]*f/, // git clean -f, -fd, -fdx (deletes untracked files)
39
40
  /\bgit\s+checkout\s+--\s/, // git checkout -- <path> (reverts files)
40
41
  /\bgit\s+checkout\s+\.\s*$/, // git checkout . (reverts everything)
41
42
  /\bgit\s+stash\s+drop\b/, // git stash drop (permanently deletes stashed work)
42
43
  /\bgit\s+stash\s+pop\b/, // git stash pop (overwrites working tree, drops on success)
44
+ /\bgit\s+stash\s+clear\b/, // git stash clear (drops all stashes)
43
45
  /\bgit\s+reset\s+--hard\b/, // git reset --hard (nukes all uncommitted changes)
44
46
  /\bgit\s+restore\s+(?!--staged)/, // git restore <path> (reverts files, but --staged is safe)
47
+ ];
48
+
49
+ // Code execution bypass patterns. Checked against ORIGINAL command because
50
+ // the attack IS inside quotes (e.g. python -c "open('f').write('x')").
51
+ const DESTRUCTIVE_CODE_PATTERNS = [
45
52
  /\bpython3?\s+-c\s+.*\bopen\s*\(/, // python -c "open().write()" bypass (#241)
46
53
  /\bnode\s+-e\s+.*\bfs\.\w*[Ww]rite/, // node -e "fs.writeFile()" bypass
47
54
  ];
48
55
 
56
+ // Strip quoted string contents to prevent regex matching inside data.
57
+ // "gh issue create --body 'use git checkout -- to fix'" becomes
58
+ // "gh issue create --body ''" so git checkout -- doesn't false-positive.
59
+ function stripQuotedContent(cmd) {
60
+ return cmd.replace(/"(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*'/g, '""');
61
+ }
62
+
63
+ // Check each segment of a compound command independently.
64
+ // "rm -f file ; echo done" splits into ["rm -f file", "echo done"].
65
+ // Each segment checked against blocked, then allowed. An allowed match
66
+ // on one segment can't excuse a blocked match on a different segment (#232).
67
+ function isBlockedCompoundCommand(cmd, blockedPatterns, allowedPatterns) {
68
+ const stripped = stripQuotedContent(cmd);
69
+ const segments = stripped.split(/\s*(?:&&|\|\||[;|])\s*/).filter(Boolean);
70
+ for (const segment of segments) {
71
+ if (blockedPatterns.some(p => p.test(segment))) {
72
+ if (!allowedPatterns.some(p => p.test(segment))) return true;
73
+ }
74
+ }
75
+ return false;
76
+ }
77
+
49
78
  // Git commands that are ALLOWED on main (read-only or safe operations)
50
79
  const ALLOWED_GIT_PATTERNS = [
51
80
  /\bgit\s+merge\b/,
@@ -239,11 +268,13 @@ async function main() {
239
268
 
240
269
  // Block destructive commands on ANY branch.
241
270
  // These destroy work that may belong to other agents or the user.
242
- // The agent should NEVER reach for these. If something is stuck, tell the user.
243
271
  if (toolName === BASH_TOOL) {
244
272
  const cmd = (toolInput.command || '');
273
+ const strippedCmd = stripQuotedContent(cmd);
274
+
275
+ // Git destructive patterns: check against stripped command (no quoted content)
245
276
  for (const pattern of DESTRUCTIVE_PATTERNS) {
246
- if (pattern.test(cmd)) {
277
+ if (pattern.test(strippedCmd)) {
247
278
  deny(`BLOCKED: Destructive command detected.
248
279
 
249
280
  "${cmd.substring(0, 80)}" can permanently destroy uncommitted work (yours, the user's, or another agent's).
@@ -260,6 +291,17 @@ These commands have destroyed work belonging to the user and other agents multip
260
291
  process.exit(0);
261
292
  }
262
293
  }
294
+ // Code execution bypasses: check against original command (the attack IS inside quotes)
295
+ for (const pattern of DESTRUCTIVE_CODE_PATTERNS) {
296
+ if (pattern.test(cmd)) {
297
+ deny(`BLOCKED: Code execution bypass detected.
298
+
299
+ "${cmd.substring(0, 80)}" writes files through a scripting language, bypassing git protections.
300
+
301
+ Use the proper workflow: edit files in a worktree, commit, push, PR.`);
302
+ process.exit(0);
303
+ }
304
+ }
263
305
  }
264
306
 
265
307
  // Block dangerous flags on ANY branch (these bypass safety checks)
@@ -375,8 +417,7 @@ This is a warning, not a block. If you need to create it here, retry.`);
375
417
  // On a branch but NOT in a worktree. Block writes.
376
418
  const isWriteOp = WRITE_TOOLS.has(toolName) ||
377
419
  (toolName === BASH_TOOL && command &&
378
- BLOCKED_BASH_PATTERNS.some(p => p.test(command)) &&
379
- !ALLOWED_BASH_PATTERNS.some(p => p.test(command)));
420
+ isBlockedCompoundCommand(command, BLOCKED_BASH_PATTERNS, ALLOWED_BASH_PATTERNS));
380
421
  if (isWriteOp) {
381
422
  deny(`BLOCKED: On branch "${branch}" but not in a worktree.\n\n${WORKFLOW_NOT_WORKTREE}`);
382
423
  process.exit(0);
@@ -400,6 +441,7 @@ This is a warning, not a block. If you need to create it here, retry.`);
400
441
  /\.ldm\/memory\/shared-log\.jsonl$/,
401
442
  /\.ldm\/memory\/daily\/.*\.md$/,
402
443
  /\.ldm\/logs\//,
444
+ /\.claude\/plans\//, // Claude Code plan files (plan mode)
403
445
  ];
404
446
 
405
447
  if (filePath && SHARED_STATE_PATTERNS.some(p => p.test(filePath))) {
@@ -412,43 +454,19 @@ This is a warning, not a block. If you need to create it here, retry.`);
412
454
  process.exit(0);
413
455
  }
414
456
 
415
- // For Bash, check the command
457
+ // For Bash, check each command segment independently (#232).
458
+ // No fast-path: an allowed pattern on one segment can't excuse a blocked pattern on another.
416
459
  if (toolName === BASH_TOOL && command) {
417
- // First check if it's explicitly allowed (read-only)
418
- for (const pattern of ALLOWED_BASH_PATTERNS) {
419
- if (pattern.test(command)) {
420
- process.exit(0);
421
- }
422
- }
423
-
424
- // Check for blocked git commands
425
- for (const pattern of BLOCKED_GIT_PATTERNS) {
426
- if (pattern.test(command)) {
427
- // Make sure it's not an allowed git operation
428
- let isAllowed = false;
429
- for (const ap of ALLOWED_GIT_PATTERNS) {
430
- if (ap.test(command)) { isAllowed = true; break; }
431
- }
432
- if (!isAllowed) {
433
- deny(`BLOCKED: Cannot run "${command.substring(0, 60)}..." on main branch.\n\n${WORKFLOW_ON_MAIN}`);
434
- process.exit(0);
435
- }
436
- }
460
+ // Check for blocked git commands (per-segment, quote-stripped)
461
+ if (isBlockedCompoundCommand(command, BLOCKED_GIT_PATTERNS, ALLOWED_GIT_PATTERNS)) {
462
+ deny(`BLOCKED: Cannot run "${command.substring(0, 60)}..." on main branch.\n\n${WORKFLOW_ON_MAIN}`);
463
+ process.exit(0);
437
464
  }
438
465
 
439
- // Check for file-writing bash commands
440
- for (const pattern of BLOCKED_BASH_PATTERNS) {
441
- if (pattern.test(command)) {
442
- // Check it's not a read-only context
443
- let isAllowed = false;
444
- for (const ap of ALLOWED_BASH_PATTERNS) {
445
- if (ap.test(command)) { isAllowed = true; break; }
446
- }
447
- if (!isAllowed) {
448
- deny(`BLOCKED: Cannot run file-modifying command on main branch.\n\n${WORKFLOW_ON_MAIN}`);
449
- process.exit(0);
450
- }
451
- }
466
+ // Check for file-writing bash commands (per-segment, quote-stripped)
467
+ if (isBlockedCompoundCommand(command, BLOCKED_BASH_PATTERNS, ALLOWED_BASH_PATTERNS)) {
468
+ deny(`BLOCKED: Cannot run file-modifying command on main branch.\n\n${WORKFLOW_ON_MAIN}`);
469
+ process.exit(0);
452
470
  }
453
471
  }
454
472
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-branch-guard",
3
- "version": "1.9.58",
3
+ "version": "1.9.60",
4
4
  "description": "PreToolUse hook that blocks all writes on main branch. Forces agents to work on branches or worktrees.",
5
5
  "type": "module",
6
6
  "main": "guard.mjs",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-file-guard",
3
- "version": "1.9.58",
3
+ "version": "1.9.60",
4
4
  "type": "module",
5
5
  "description": "Hook that blocks destructive edits to protected identity files. For Claude Code CLI and OpenClaw.",
6
6
  "main": "guard.mjs",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-license-guard",
3
- "version": "1.9.58",
3
+ "version": "1.9.60",
4
4
  "description": "License compliance for your own repos. Ensures correct copyright, dual-license blocks, and LICENSE files.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-license-hook",
3
- "version": "1.9.58",
3
+ "version": "1.9.60",
4
4
  "description": "License rug-pull detection and dependency license compliance for open source projects",
5
5
  "type": "module",
6
6
  "main": "dist/cli/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-readme-format",
3
- "version": "1.9.58",
3
+ "version": "1.9.60",
4
4
  "description": "Reformat any repo's README to follow the WIP Computer standard. Agent-first, human-readable.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-release",
3
- "version": "1.9.58",
3
+ "version": "1.9.60",
4
4
  "type": "module",
5
5
  "description": "One-command release pipeline. Bumps version, updates changelog + SKILL.md, publishes to npm + GitHub.",
6
6
  "main": "core.mjs",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-repo-init",
3
- "version": "1.9.58",
3
+ "version": "1.9.60",
4
4
  "description": "Scaffold the standard ai/ directory structure in any repo",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-repo-permissions-hook",
3
- "version": "1.9.58",
3
+ "version": "1.9.60",
4
4
  "type": "module",
5
5
  "description": "Repo visibility guard. Blocks repos from going public without a -private counterpart.",
6
6
  "main": "core.mjs",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-repos",
3
- "version": "1.9.58",
3
+ "version": "1.9.60",
4
4
  "type": "module",
5
5
  "description": "Repo manifest reconciler. Single source of truth for repo organization. Like prettier for folder structure.",
6
6
  "main": "core.mjs",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/universal-installer",
3
- "version": "1.9.58",
3
+ "version": "1.9.60",
4
4
  "type": "module",
5
5
  "description": "The Universal Interface specification for agent-native software. Teaches your AI how to build repos with every interface: CLI, Module, MCP Server, OpenClaw Plugin, Skill, Claude Code Hook.",
6
6
  "main": "detect.mjs",
@@ -1,7 +0,0 @@
1
- {
2
- "copyright": "WIP Computer, Inc.",
3
- "license": "MIT+AGPL",
4
- "year": "2026",
5
- "attribution": "Built by Parker Todd Brooks, Lēsa (OpenClaw, Claude Opus 4.6), Claude Code (Claude Opus 4.6).",
6
- "created": "2026-03-10T00:00:00.000Z"
7
- }
@@ -1,4 +0,0 @@
1
- {
2
- "name": "wip-ai-devops-toolbox",
3
- "websiteRepo": "/Users/lesa/wipcomputerinc/repos/wip-web/wip-websites-private"
4
- }