@codyswann/lisa 1.0.0

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 (322) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +867 -0
  3. package/all/copy-overwrite/.claude/README.md +205 -0
  4. package/all/copy-overwrite/.claude/agents/agent-architect.md +311 -0
  5. package/all/copy-overwrite/.claude/agents/codebase-analyzer.md +146 -0
  6. package/all/copy-overwrite/.claude/agents/codebase-locator.md +125 -0
  7. package/all/copy-overwrite/.claude/agents/codebase-pattern-finder.md +237 -0
  8. package/all/copy-overwrite/.claude/agents/git-history-analyzer.md +183 -0
  9. package/all/copy-overwrite/.claude/agents/hooks-expert.md +74 -0
  10. package/all/copy-overwrite/.claude/agents/skill-evaluator.md +246 -0
  11. package/all/copy-overwrite/.claude/agents/slash-command-architect.md +87 -0
  12. package/all/copy-overwrite/.claude/agents/web-search-researcher.md +112 -0
  13. package/all/copy-overwrite/.claude/commands/git/commit-and-submit-pr.md +8 -0
  14. package/all/copy-overwrite/.claude/commands/git/commit.md +44 -0
  15. package/all/copy-overwrite/.claude/commands/git/prune.md +34 -0
  16. package/all/copy-overwrite/.claude/commands/git/submit-pr.md +50 -0
  17. package/all/copy-overwrite/.claude/commands/jira/create.md +50 -0
  18. package/all/copy-overwrite/.claude/commands/jira/verify.md +34 -0
  19. package/all/copy-overwrite/.claude/commands/project/archive.md +8 -0
  20. package/all/copy-overwrite/.claude/commands/project/bootstrap.md +49 -0
  21. package/all/copy-overwrite/.claude/commands/project/complete-task.md +7 -0
  22. package/all/copy-overwrite/.claude/commands/project/debrief.md +65 -0
  23. package/all/copy-overwrite/.claude/commands/project/execute.md +94 -0
  24. package/all/copy-overwrite/.claude/commands/project/implement.md +42 -0
  25. package/all/copy-overwrite/.claude/commands/project/local-code-review.md +88 -0
  26. package/all/copy-overwrite/.claude/commands/project/lower-code-complexity.md +74 -0
  27. package/all/copy-overwrite/.claude/commands/project/plan.md +314 -0
  28. package/all/copy-overwrite/.claude/commands/project/research.md +248 -0
  29. package/all/copy-overwrite/.claude/commands/project/review.md +63 -0
  30. package/all/copy-overwrite/.claude/commands/project/setup.md +19 -0
  31. package/all/copy-overwrite/.claude/commands/project/verify.md +38 -0
  32. package/all/copy-overwrite/.claude/commands/pull-request/review.md +12 -0
  33. package/all/copy-overwrite/.claude/commands/rules/format-md.md +72 -0
  34. package/all/copy-overwrite/.claude/commands/sonarqube/check.md +6 -0
  35. package/all/copy-overwrite/.claude/commands/sonarqube/fix.md +3 -0
  36. package/all/copy-overwrite/.claude/hooks/README.md +301 -0
  37. package/all/copy-overwrite/.claude/hooks/notify-ntfy.sh +181 -0
  38. package/all/copy-overwrite/.claude/settings.json +41 -0
  39. package/all/copy-overwrite/.claude/settings.local.json.example +14 -0
  40. package/all/copy-overwrite/.claude/skills/coding-philosophy/SKILL.md +405 -0
  41. package/all/copy-overwrite/.claude/skills/coding-philosophy/references/function-structure.md +416 -0
  42. package/all/copy-overwrite/.claude/skills/coding-philosophy/references/immutable-patterns.md +316 -0
  43. package/all/copy-overwrite/.claude/skills/prompt-complexity-scorer/SKILL.md +118 -0
  44. package/all/copy-overwrite/.claude/skills/skill-creator/LICENSE.txt +202 -0
  45. package/all/copy-overwrite/.claude/skills/skill-creator/SKILL.md +210 -0
  46. package/all/copy-overwrite/.claude/skills/skill-creator/scripts/__pycache__/quick_validate.cpython-312.pyc +0 -0
  47. package/all/copy-overwrite/.claude/skills/skill-creator/scripts/init_skill.py +303 -0
  48. package/all/copy-overwrite/.claude/skills/skill-creator/scripts/package_skill.py +110 -0
  49. package/all/copy-overwrite/.claude/skills/skill-creator/scripts/quick_validate.py +65 -0
  50. package/all/copy-overwrite/CLAUDE.md +77 -0
  51. package/all/copy-overwrite/HUMAN.md +17 -0
  52. package/all/copy-overwrite/specs/.keep +0 -0
  53. package/all/create-only/PROJECT_RULES.md +0 -0
  54. package/cdk/merge/package.json +20 -0
  55. package/dist/cli/index.d.ts +7 -0
  56. package/dist/cli/index.d.ts.map +1 -0
  57. package/dist/cli/index.js +107 -0
  58. package/dist/cli/index.js.map +1 -0
  59. package/dist/cli/prompts.d.ts +45 -0
  60. package/dist/cli/prompts.d.ts.map +1 -0
  61. package/dist/cli/prompts.js +58 -0
  62. package/dist/cli/prompts.js.map +1 -0
  63. package/dist/core/config.d.ts +73 -0
  64. package/dist/core/config.d.ts.map +1 -0
  65. package/dist/core/config.js +36 -0
  66. package/dist/core/config.js.map +1 -0
  67. package/dist/core/index.d.ts +4 -0
  68. package/dist/core/index.d.ts.map +1 -0
  69. package/dist/core/index.js +4 -0
  70. package/dist/core/index.js.map +1 -0
  71. package/dist/core/lisa.d.ts +81 -0
  72. package/dist/core/lisa.d.ts.map +1 -0
  73. package/dist/core/lisa.js +459 -0
  74. package/dist/core/lisa.js.map +1 -0
  75. package/dist/core/manifest.d.ts +58 -0
  76. package/dist/core/manifest.d.ts.map +1 -0
  77. package/dist/core/manifest.js +104 -0
  78. package/dist/core/manifest.js.map +1 -0
  79. package/dist/detection/detector.interface.d.ts +15 -0
  80. package/dist/detection/detector.interface.d.ts.map +1 -0
  81. package/dist/detection/detector.interface.js +2 -0
  82. package/dist/detection/detector.interface.js.map +1 -0
  83. package/dist/detection/detectors/cdk.d.ts +10 -0
  84. package/dist/detection/detectors/cdk.d.ts.map +1 -0
  85. package/dist/detection/detectors/cdk.js +34 -0
  86. package/dist/detection/detectors/cdk.js.map +1 -0
  87. package/dist/detection/detectors/expo.d.ts +10 -0
  88. package/dist/detection/detectors/expo.d.ts.map +1 -0
  89. package/dist/detection/detectors/expo.js +30 -0
  90. package/dist/detection/detectors/expo.js.map +1 -0
  91. package/dist/detection/detectors/nestjs.d.ts +10 -0
  92. package/dist/detection/detectors/nestjs.d.ts.map +1 -0
  93. package/dist/detection/detectors/nestjs.js +34 -0
  94. package/dist/detection/detectors/nestjs.js.map +1 -0
  95. package/dist/detection/detectors/npm-package.d.ts +13 -0
  96. package/dist/detection/detectors/npm-package.d.ts.map +1 -0
  97. package/dist/detection/detectors/npm-package.js +30 -0
  98. package/dist/detection/detectors/npm-package.js.map +1 -0
  99. package/dist/detection/detectors/typescript.d.ts +10 -0
  100. package/dist/detection/detectors/typescript.d.ts.map +1 -0
  101. package/dist/detection/detectors/typescript.js +25 -0
  102. package/dist/detection/detectors/typescript.js.map +1 -0
  103. package/dist/detection/index.d.ts +24 -0
  104. package/dist/detection/index.d.ts.map +1 -0
  105. package/dist/detection/index.js +57 -0
  106. package/dist/detection/index.js.map +1 -0
  107. package/dist/errors/index.d.ts +69 -0
  108. package/dist/errors/index.d.ts.map +1 -0
  109. package/dist/errors/index.js +110 -0
  110. package/dist/errors/index.js.map +1 -0
  111. package/dist/index.d.ts +3 -0
  112. package/dist/index.d.ts.map +1 -0
  113. package/dist/index.js +8 -0
  114. package/dist/index.js.map +1 -0
  115. package/dist/logging/console-logger.d.ts +12 -0
  116. package/dist/logging/console-logger.d.ts.map +1 -0
  117. package/dist/logging/console-logger.js +22 -0
  118. package/dist/logging/console-logger.js.map +1 -0
  119. package/dist/logging/index.d.ts +4 -0
  120. package/dist/logging/index.d.ts.map +1 -0
  121. package/dist/logging/index.js +3 -0
  122. package/dist/logging/index.js.map +1 -0
  123. package/dist/logging/logger.interface.d.ts +20 -0
  124. package/dist/logging/logger.interface.d.ts.map +1 -0
  125. package/dist/logging/logger.interface.js +2 -0
  126. package/dist/logging/logger.interface.js.map +1 -0
  127. package/dist/logging/silent-logger.d.ts +12 -0
  128. package/dist/logging/silent-logger.d.ts.map +1 -0
  129. package/dist/logging/silent-logger.js +21 -0
  130. package/dist/logging/silent-logger.js.map +1 -0
  131. package/dist/strategies/copy-contents.d.ts +14 -0
  132. package/dist/strategies/copy-contents.d.ts.map +1 -0
  133. package/dist/strategies/copy-contents.js +69 -0
  134. package/dist/strategies/copy-contents.js.map +1 -0
  135. package/dist/strategies/copy-overwrite.d.ts +14 -0
  136. package/dist/strategies/copy-overwrite.d.ts.map +1 -0
  137. package/dist/strategies/copy-overwrite.js +47 -0
  138. package/dist/strategies/copy-overwrite.js.map +1 -0
  139. package/dist/strategies/create-only.d.ts +13 -0
  140. package/dist/strategies/create-only.d.ts.map +1 -0
  141. package/dist/strategies/create-only.js +30 -0
  142. package/dist/strategies/create-only.js.map +1 -0
  143. package/dist/strategies/index.d.ts +31 -0
  144. package/dist/strategies/index.d.ts.map +1 -0
  145. package/dist/strategies/index.js +52 -0
  146. package/dist/strategies/index.js.map +1 -0
  147. package/dist/strategies/merge.d.ts +13 -0
  148. package/dist/strategies/merge.d.ts.map +1 -0
  149. package/dist/strategies/merge.js +60 -0
  150. package/dist/strategies/merge.js.map +1 -0
  151. package/dist/strategies/strategy.interface.d.ts +31 -0
  152. package/dist/strategies/strategy.interface.d.ts.map +1 -0
  153. package/dist/strategies/strategy.interface.js +2 -0
  154. package/dist/strategies/strategy.interface.js.map +1 -0
  155. package/dist/transaction/backup.d.ts +38 -0
  156. package/dist/transaction/backup.d.ts.map +1 -0
  157. package/dist/transaction/backup.js +97 -0
  158. package/dist/transaction/backup.js.map +1 -0
  159. package/dist/transaction/index.d.ts +4 -0
  160. package/dist/transaction/index.d.ts.map +1 -0
  161. package/dist/transaction/index.js +3 -0
  162. package/dist/transaction/index.js.map +1 -0
  163. package/dist/transaction/transaction.d.ts +34 -0
  164. package/dist/transaction/transaction.d.ts.map +1 -0
  165. package/dist/transaction/transaction.js +68 -0
  166. package/dist/transaction/transaction.js.map +1 -0
  167. package/dist/utils/file-operations.d.ts +29 -0
  168. package/dist/utils/file-operations.d.ts.map +1 -0
  169. package/dist/utils/file-operations.js +84 -0
  170. package/dist/utils/file-operations.js.map +1 -0
  171. package/dist/utils/index.d.ts +4 -0
  172. package/dist/utils/index.d.ts.map +1 -0
  173. package/dist/utils/index.js +4 -0
  174. package/dist/utils/index.js.map +1 -0
  175. package/dist/utils/json-utils.d.ts +22 -0
  176. package/dist/utils/json-utils.d.ts.map +1 -0
  177. package/dist/utils/json-utils.js +57 -0
  178. package/dist/utils/json-utils.js.map +1 -0
  179. package/dist/utils/path-utils.d.ts +21 -0
  180. package/dist/utils/path-utils.d.ts.map +1 -0
  181. package/dist/utils/path-utils.js +35 -0
  182. package/dist/utils/path-utils.js.map +1 -0
  183. package/eslint-plugin-code-organization/README.md +149 -0
  184. package/eslint-plugin-code-organization/__tests__/enforce-statement-order.test.js +468 -0
  185. package/eslint-plugin-code-organization/index.js +23 -0
  186. package/eslint-plugin-code-organization/package.json +10 -0
  187. package/eslint-plugin-code-organization/rules/enforce-statement-order.js +157 -0
  188. package/expo/copy-overwrite/.claude/skills/apollo-client/SKILL.md +238 -0
  189. package/expo/copy-overwrite/.claude/skills/apollo-client/references/mutation-patterns.md +360 -0
  190. package/expo/copy-overwrite/.claude/skills/atomic-design-gluestack/SKILL.md +360 -0
  191. package/expo/copy-overwrite/.claude/skills/atomic-design-gluestack/references/atomic-levels.md +417 -0
  192. package/expo/copy-overwrite/.claude/skills/atomic-design-gluestack/references/folder-structure.md +257 -0
  193. package/expo/copy-overwrite/.claude/skills/atomic-design-gluestack/references/gluestack-mapping.md +233 -0
  194. package/expo/copy-overwrite/.claude/skills/atomic-design-gluestack/scripts/validate_atomic_structure.py +327 -0
  195. package/expo/copy-overwrite/.claude/skills/container-view-pattern/SKILL.md +299 -0
  196. package/expo/copy-overwrite/.claude/skills/container-view-pattern/references/examples.md +749 -0
  197. package/expo/copy-overwrite/.claude/skills/container-view-pattern/references/patterns.md +318 -0
  198. package/expo/copy-overwrite/.claude/skills/container-view-pattern/scripts/create_component.py +198 -0
  199. package/expo/copy-overwrite/.claude/skills/container-view-pattern/scripts/validate_component.py +207 -0
  200. package/expo/copy-overwrite/.claude/skills/cross-platform-compatibility/SKILL.md +268 -0
  201. package/expo/copy-overwrite/.claude/skills/cross-platform-compatibility/references/common-issues.md +619 -0
  202. package/expo/copy-overwrite/.claude/skills/cross-platform-compatibility/references/file-extensions.md +340 -0
  203. package/expo/copy-overwrite/.claude/skills/cross-platform-compatibility/references/platform-api.md +276 -0
  204. package/expo/copy-overwrite/.claude/skills/cross-platform-compatibility/scripts/validate_cross_platform.py +414 -0
  205. package/expo/copy-overwrite/.claude/skills/directory-structure/SKILL.md +202 -0
  206. package/expo/copy-overwrite/.claude/skills/directory-structure/scripts/validate_structure.py +443 -0
  207. package/expo/copy-overwrite/.claude/skills/expo-env-config/SKILL.md +309 -0
  208. package/expo/copy-overwrite/.claude/skills/expo-env-config/references/validation-patterns.md +417 -0
  209. package/expo/copy-overwrite/.claude/skills/expo-router-best-practices/SKILL.md +431 -0
  210. package/expo/copy-overwrite/.claude/skills/expo-router-best-practices/references/official-docs.md +290 -0
  211. package/expo/copy-overwrite/.claude/skills/expo-router-best-practices/scripts/generate-route.py +169 -0
  212. package/expo/copy-overwrite/.claude/skills/gluestack-nativewind/SKILL.md +411 -0
  213. package/expo/copy-overwrite/.claude/skills/gluestack-nativewind/references/color-tokens.md +343 -0
  214. package/expo/copy-overwrite/.claude/skills/gluestack-nativewind/references/component-mapping.md +307 -0
  215. package/expo/copy-overwrite/.claude/skills/gluestack-nativewind/references/spacing-scale.md +300 -0
  216. package/expo/copy-overwrite/.claude/skills/gluestack-nativewind/scripts/validate_styling.py +354 -0
  217. package/expo/copy-overwrite/.claude/skills/local-state/SKILL.md +362 -0
  218. package/expo/copy-overwrite/.claude/skills/local-state/references/async-storage.md +505 -0
  219. package/expo/copy-overwrite/.claude/skills/local-state/references/persistence-patterns.md +711 -0
  220. package/expo/copy-overwrite/.claude/skills/local-state/references/reactive-variables.md +446 -0
  221. package/expo/copy-overwrite/.claude/skills/playwright-selectors/SKILL.md +223 -0
  222. package/expo/copy-overwrite/.claude/skills/testing-library/SKILL.md +319 -0
  223. package/expo/copy-overwrite/.claude/skills/testing-library/references/async-patterns.md +420 -0
  224. package/expo/copy-overwrite/.claude/skills/testing-library/references/expo-router-testing.md +556 -0
  225. package/expo/copy-overwrite/.claude/skills/testing-library/references/mocking-patterns.md +590 -0
  226. package/expo/copy-overwrite/.claude/skills/testing-library/references/query-priority.md +291 -0
  227. package/expo/copy-overwrite/.easignore.extra +2 -0
  228. package/expo/copy-overwrite/.mcp.json +33 -0
  229. package/expo/copy-overwrite/eslint-plugin-component-structure/README.md +234 -0
  230. package/expo/copy-overwrite/eslint-plugin-component-structure/__tests__/plugin-index.test.js +84 -0
  231. package/expo/copy-overwrite/eslint-plugin-component-structure/__tests__/require-memo-in-view.test.js +196 -0
  232. package/expo/copy-overwrite/eslint-plugin-component-structure/__tests__/single-component-per-file.test.js +289 -0
  233. package/expo/copy-overwrite/eslint-plugin-component-structure/index.js +32 -0
  234. package/expo/copy-overwrite/eslint-plugin-component-structure/package.json +10 -0
  235. package/expo/copy-overwrite/eslint-plugin-component-structure/rules/enforce-component-structure.js +230 -0
  236. package/expo/copy-overwrite/eslint-plugin-component-structure/rules/no-return-in-view.js +91 -0
  237. package/expo/copy-overwrite/eslint-plugin-component-structure/rules/require-memo-in-view.js +178 -0
  238. package/expo/copy-overwrite/eslint-plugin-component-structure/rules/single-component-per-file.js +238 -0
  239. package/expo/copy-overwrite/eslint-plugin-ui-standards/README.md +260 -0
  240. package/expo/copy-overwrite/eslint-plugin-ui-standards/index.js +29 -0
  241. package/expo/copy-overwrite/eslint-plugin-ui-standards/package.json +10 -0
  242. package/expo/copy-overwrite/eslint-plugin-ui-standards/rules/no-classname-outside-ui.js +51 -0
  243. package/expo/copy-overwrite/eslint-plugin-ui-standards/rules/no-direct-rn-imports.js +55 -0
  244. package/expo/copy-overwrite/eslint-plugin-ui-standards/rules/no-inline-styles.js +73 -0
  245. package/expo/copy-overwrite/eslint.config.mjs +560 -0
  246. package/expo/copy-overwrite/lighthouserc.js +194 -0
  247. package/expo/create-only/lighthouserc-config.json +28 -0
  248. package/expo/merge/package.json +132 -0
  249. package/lisa.sh +35 -0
  250. package/nestjs/copy-overwrite/.claude/skills/nestjs-graphql/SKILL.md +176 -0
  251. package/nestjs/copy-overwrite/.claude/skills/nestjs-graphql/references/advanced-features.md +527 -0
  252. package/nestjs/copy-overwrite/.claude/skills/nestjs-graphql/references/project-patterns.md +483 -0
  253. package/nestjs/copy-overwrite/.claude/skills/nestjs-graphql/references/quick-start.md +257 -0
  254. package/nestjs/copy-overwrite/.claude/skills/nestjs-graphql/references/resolvers-mutations.md +413 -0
  255. package/nestjs/copy-overwrite/.claude/skills/nestjs-graphql/references/types-scalars.md +513 -0
  256. package/nestjs/copy-overwrite/.claude/skills/nestjs-rules/SKILL.md +536 -0
  257. package/nestjs/copy-overwrite/.claude/skills/typeorm-patterns/SKILL.md +275 -0
  258. package/nestjs/copy-overwrite/.claude/skills/typeorm-patterns/references/configuration-patterns.md +487 -0
  259. package/nestjs/copy-overwrite/.claude/skills/typeorm-patterns/references/entity-patterns.md +450 -0
  260. package/nestjs/copy-overwrite/.claude/skills/typeorm-patterns/references/observability-patterns.md +536 -0
  261. package/nestjs/merge/package.json +75 -0
  262. package/package.json +124 -0
  263. package/typescript/copy-contents/.husky/commit-msg +91 -0
  264. package/typescript/copy-contents/.husky/pre-commit +96 -0
  265. package/typescript/copy-contents/.husky/pre-push +211 -0
  266. package/typescript/copy-overwrite/.claude/hooks/format-on-edit.sh +74 -0
  267. package/typescript/copy-overwrite/.claude/hooks/install_pkgs.sh +59 -0
  268. package/typescript/copy-overwrite/.claude/hooks/lint-on-edit.sh +103 -0
  269. package/typescript/copy-overwrite/.claude/skills/jsdoc-best-practices/SKILL.md +388 -0
  270. package/typescript/copy-overwrite/.github/README.md +455 -0
  271. package/typescript/copy-overwrite/.github/dependabot.yml +40 -0
  272. package/typescript/copy-overwrite/.github/k6/BROWSER_TESTING_NOTE.md +129 -0
  273. package/typescript/copy-overwrite/.github/k6/INTEGRATION_GUIDE.md +354 -0
  274. package/typescript/copy-overwrite/.github/k6/README.md +386 -0
  275. package/typescript/copy-overwrite/.github/k6/SCENARIO_SELECTION_GUIDE.md +264 -0
  276. package/typescript/copy-overwrite/.github/k6/examples/customer-deploy-integration.yml +115 -0
  277. package/typescript/copy-overwrite/.github/k6/examples/data-driven-test.js +268 -0
  278. package/typescript/copy-overwrite/.github/k6/scenarios/load.js +142 -0
  279. package/typescript/copy-overwrite/.github/k6/scenarios/load.json +27 -0
  280. package/typescript/copy-overwrite/.github/k6/scenarios/smoke.js +26 -0
  281. package/typescript/copy-overwrite/.github/k6/scenarios/smoke.json +20 -0
  282. package/typescript/copy-overwrite/.github/k6/scenarios/soak.js +244 -0
  283. package/typescript/copy-overwrite/.github/k6/scenarios/soak.json +29 -0
  284. package/typescript/copy-overwrite/.github/k6/scenarios/spike.js +180 -0
  285. package/typescript/copy-overwrite/.github/k6/scenarios/spike.json +32 -0
  286. package/typescript/copy-overwrite/.github/k6/scenarios/stress.js +206 -0
  287. package/typescript/copy-overwrite/.github/k6/scenarios/stress.json +38 -0
  288. package/typescript/copy-overwrite/.github/k6/scripts/api-test.js +452 -0
  289. package/typescript/copy-overwrite/.github/k6/scripts/default-test.js +185 -0
  290. package/typescript/copy-overwrite/.github/k6/thresholds/normal.json +30 -0
  291. package/typescript/copy-overwrite/.github/k6/thresholds/relaxed.json +21 -0
  292. package/typescript/copy-overwrite/.github/k6/thresholds/strict.json +29 -0
  293. package/typescript/copy-overwrite/.github/workflows/build.yml +72 -0
  294. package/typescript/copy-overwrite/.github/workflows/ci.yml +49 -0
  295. package/typescript/copy-overwrite/.github/workflows/claude.yml +51 -0
  296. package/typescript/copy-overwrite/.github/workflows/create-github-issue-on-failure.yml +113 -0
  297. package/typescript/copy-overwrite/.github/workflows/create-jira-issue-on-failure.yml +195 -0
  298. package/typescript/copy-overwrite/.github/workflows/create-sentry-issue-on-failure.yml +267 -0
  299. package/typescript/copy-overwrite/.github/workflows/deploy.yml +228 -0
  300. package/typescript/copy-overwrite/.github/workflows/k6-load-test-README.md +230 -0
  301. package/typescript/copy-overwrite/.github/workflows/lighthouse.yml +68 -0
  302. package/typescript/copy-overwrite/.github/workflows/load-test.yml +282 -0
  303. package/typescript/copy-overwrite/.github/workflows/quality.yml +1737 -0
  304. package/typescript/copy-overwrite/.github/workflows/release.yml +1599 -0
  305. package/typescript/copy-overwrite/.gitleaksignore +28 -0
  306. package/typescript/copy-overwrite/.nvmrc +1 -0
  307. package/typescript/copy-overwrite/.prettierignore +23 -0
  308. package/typescript/copy-overwrite/.prettierrc.json +22 -0
  309. package/typescript/copy-overwrite/.versionrc +42 -0
  310. package/typescript/copy-overwrite/.yamllint +20 -0
  311. package/typescript/copy-overwrite/commitlint.config.js +11 -0
  312. package/typescript/copy-overwrite/eslint-plugin-code-organization/README.md +149 -0
  313. package/typescript/copy-overwrite/eslint-plugin-code-organization/__tests__/enforce-statement-order.test.js +468 -0
  314. package/typescript/copy-overwrite/eslint-plugin-code-organization/index.js +23 -0
  315. package/typescript/copy-overwrite/eslint-plugin-code-organization/package.json +10 -0
  316. package/typescript/copy-overwrite/eslint-plugin-code-organization/rules/enforce-statement-order.js +157 -0
  317. package/typescript/copy-overwrite/eslint.config.mjs +390 -0
  318. package/typescript/copy-overwrite/eslint.ignore.config.json +57 -0
  319. package/typescript/copy-overwrite/eslint.thresholds.config.json +5 -0
  320. package/typescript/github-rulesets/base.json +106 -0
  321. package/typescript/merge/.claude/settings.json +28 -0
  322. package/typescript/merge/package.json +71 -0
@@ -0,0 +1,49 @@
1
+ ---
2
+ description: Automated project setup and research with gap detection
3
+ argument-hint: <project-brief-file-or-jira-issue-number>
4
+ ---
5
+
6
+ Complete all of the following steps for $ARGUMENTS:
7
+
8
+ ## Step 0: MANDATORY SETUP
9
+
10
+ Create workflow tracking todos:
11
+ - Step 1: Setup
12
+ - Step 2: Research
13
+ - Step 3: Gap Detection
14
+
15
+ ⚠️ **CRITICAL**: DO NOT STOP until all 3 todos are marked completed.
16
+
17
+ ## Step 1: Setup
18
+ Mark "Step 1: Setup" as in_progress.
19
+
20
+ Use Task tool with prompt: "run /project:setup $ARGUMENTS"
21
+ - Creates project directory, brief.md, findings.md, git branch
22
+
23
+ Mark "Step 1: Setup" as completed. Proceed to Step 2.
24
+
25
+ ## Step 2: Research
26
+ Mark "Step 2: Research" as in_progress.
27
+
28
+ Use Task tool with prompt: "run /project:research [project-dir]" where [project-dir] is the directory created in Step 1
29
+ - Generates research.md with findings
30
+
31
+ Mark "Step 2: Research" as completed. Proceed to Step 3.
32
+
33
+ ## Step 3: Gap Detection
34
+ Mark "Step 3: Gap Detection" as in_progress.
35
+
36
+ Read the generated research.md file:
37
+ - Locate "## Open Questions" section
38
+ - Check if it contains actual unresolved questions (not just template/empty)
39
+ - If gaps exist:
40
+ ❌ STOP and report: "Research complete but has open questions. Review $PROJECT/research.md and resolve questions before running /project:execute"
41
+ - If no gaps:
42
+ ✅ Report: "Bootstrap complete. Research has no gaps. Ready to run /project:execute @projects/$PROJECT"
43
+
44
+ Mark "Step 3: Gap Detection" as completed.
45
+
46
+ ## Output to Human
47
+
48
+ - "✅ Bootstrap complete with no gaps - ready for execution" OR
49
+ - "⚠️ Bootstrap complete but needs human review - see Open Questions in research.md"
@@ -0,0 +1,7 @@
1
+ ---
2
+ description: Complete a single task within a project using a subagent with fresh context
3
+ argument-hint: <task-file>
4
+ ---
5
+
6
+ 1. Read $ARGUMENTS without offset or limit
7
+ 2. Follow the instructions literally and specifically
@@ -0,0 +1,65 @@
1
+ ---
2
+ description: Evaluates findings.md and uses skill-evaluator to decide where each learning belongs (new skill, PROJECT_RULES.md, or omit)
3
+ argument-hint: <project-directory>
4
+ ---
5
+
6
+ ## Step 0: MANDATORY SETUP
7
+
8
+ Use TodoWrite to create workflow tracking todos:
9
+ - Step 1: Read project findings
10
+ - Step 2: Evaluate each finding
11
+ - Step 3: Apply decisions
12
+
13
+ ⚠️ **CRITICAL**: DO NOT STOP until all 3 todos are marked completed.
14
+
15
+ ## Step 1: Read Project Findings
16
+ Mark "Step 1: Read project findings" as in_progress.
17
+
18
+ Read the `findings.md` file inside $ARGUMENTS FULLY (no limit/offset).
19
+
20
+ Extract each distinct finding/learning as a separate item.
21
+
22
+ Mark "Step 1: Read project findings" as completed. Proceed to Step 2.
23
+
24
+ ## Step 2: Evaluate Each Finding
25
+ Mark "Step 2: Evaluate each finding" as in_progress.
26
+
27
+ For each finding extracted from findings.md:
28
+
29
+ Use the Task tool with `subagent_type: "skill-evaluator"` to evaluate where (and if) the finding should be recorded:
30
+
31
+ ```
32
+ Evaluate this finding from a project debrief:
33
+
34
+ "[FINDING TEXT]"
35
+
36
+ Determine if this should be:
37
+ 1. CREATE SKILL - if it's a complex, reusable pattern
38
+ 2. ADD TO RULES - if it's a simple never/always rule for PROJECT_RULES.md
39
+ 3. OMIT ENTIRELY - if it's already covered or too project-specific
40
+ ```
41
+
42
+ Collect all decisions from the skill-evaluator.
43
+
44
+ Mark "Step 2: Evaluate each finding" as completed. Proceed to Step 3.
45
+
46
+ ## Step 3: Apply Decisions
47
+ Mark "Step 3: Apply decisions" as in_progress.
48
+
49
+ For each finding based on skill-evaluator's decision:
50
+
51
+ | Decision | Action |
52
+ |----------|--------|
53
+ | CREATE SKILL | Use Task tool: "run /skill-creator with [finding details]" |
54
+ | ADD TO RULES | Add the rule succinctly to @PROJECT_RULES.md |
55
+ | OMIT ENTIRELY | No action needed |
56
+
57
+ Mark "Step 3: Apply decisions" as completed.
58
+
59
+ Report summary:
60
+ ```
61
+ 📝 Debrief complete:
62
+ - Skills created: [X]
63
+ - Rules added: [Y]
64
+ - Omitted (redundant/narrow): [Z]
65
+ ```
@@ -0,0 +1,94 @@
1
+ ---
2
+ description: Automated project execution from planning through debrief (requires gap-free research)
3
+ argument-hint: <project-directory>
4
+ ---
5
+
6
+ Execute complete implementation workflow for $ARGUMENTS:
7
+
8
+ ## Step 0: MANDATORY SETUP
9
+
10
+ ### Gap Check
11
+ Read $ARGUMENTS/research.md and locate "## Open Questions" section.
12
+ - If gaps exist: ❌ STOP immediately with "Cannot proceed - research.md has unresolved open questions."
13
+ - If no gaps: ✅ Proceed with setup
14
+
15
+ ### Planning Already Complete Check
16
+ Check if planning has already been done:
17
+ 1. Check if `$ARGUMENTS/progress.md` exists
18
+ 2. Check if `$ARGUMENTS/tasks/` directory exists with task files (task-*.md)
19
+
20
+ - If BOTH exist: ✅ Planning already complete - skip to "Create Workflow Tracking (Resume Mode)"
21
+ - If either is missing: ✅ Proceed with full workflow
22
+
23
+ ### Create Workflow Tracking (Full Mode)
24
+ Use TodoWrite to create these workflow todos:
25
+ - Step 1: Planning
26
+ - Step 2: Implementation
27
+ - Step 3: Verification
28
+ - Step 4: Debrief
29
+ - Step 5: Archive
30
+
31
+ ⚠️ **CRITICAL**: DO NOT STOP until all 5 todos are marked completed.
32
+
33
+ Proceed to Step 1.
34
+
35
+ ### Create Workflow Tracking (Resume Mode)
36
+ Use TodoWrite to create these workflow todos (marking Step 1 as already completed):
37
+ - Step 1: Planning ✓ (mark as completed immediately)
38
+ - Step 2: Implementation
39
+ - Step 3: Review
40
+ - Step 4: Verification
41
+ - Step 5: Debrief
42
+ - Step 6: Archive
43
+
44
+ Report: "📋 Resuming execution - planning already complete with existing progress.md and tasks/"
45
+
46
+ ⚠️ **CRITICAL**: DO NOT STOP until all 5 todos are marked completed.
47
+
48
+ Skip directly to Step 2.
49
+
50
+ ## Step 1: Planning
51
+ ⚠️ **CRITICAL**: DO NOT STOP use the Plan tool to do this. Use Task tool with prompt: "run /project:plan $ARGUMENTS" as directed below
52
+
53
+ Mark "Step 1: Planning" as in_progress.
54
+
55
+ Use Task tool with prompt: "run /project:plan $ARGUMENTS"
56
+
57
+ Mark "Step 1: Planning" as completed. Proceed to Step 2.
58
+
59
+ ## Step 2: Implementation Loop
60
+ Mark "Step 2: Implementation" as in_progress.
61
+
62
+ Use Task tool with prompt: "run /project:implement $ARGUMENTS"
63
+
64
+ Mark "Step 2: Implementation" as completed. Proceed to Step 3.
65
+
66
+ ## Step 3: Review
67
+ Mark "Step 3: Review" as in_progress.
68
+
69
+ run /project:review $ARGUMENTS
70
+
71
+ Mark "Step 3: Review" as completed. Proceed to Step 4.
72
+
73
+ ## Step 4: Verification
74
+ Mark "Step 4: Verification" as in_progress.
75
+
76
+ Use Task tool with prompt: "run /project:verify $ARGUMENTS"
77
+
78
+ Mark "Step 4: Verification" as completed. Proceed to Step 5.
79
+
80
+ ## Step 5: Debrief
81
+ Mark "Step 5: Debrief" as in_progress.
82
+
83
+ Use Task tool with prompt: "run /project:debrief $ARGUMENTS"
84
+
85
+ Mark "Step 5: Debrief" as completed. Proceed to Step 6.
86
+
87
+ ## Step 6: Archive
88
+ Mark "Step 6: Archive" as in_progress.
89
+
90
+ Use Task tool with prompt: "run /project:archive $ARGUMENTS"
91
+
92
+ Mark "Step 6: Archive" as completed.
93
+
94
+ Report: "🎉 Project complete and archived"
@@ -0,0 +1,42 @@
1
+ ---
2
+ description: Systematically implements all tasks in a specified project
3
+ argument-hint: <project-directory>
4
+ ---
5
+
6
+ ### Get Task State
7
+
8
+ Read $ARGUMENTS/progress.md
9
+
10
+ If the file does not exist or is empty, report an error: "Error: $ARGUMENTS/progress.md not found or empty. Run /project:plan first to create the task list."
11
+
12
+ If the file contains no task items (checkbox items), report an error: "Error: No tasks found in $ARGUMENTS/progress.md. The file should contain markdown checklist items."
13
+
14
+ Count tasks: total=X, completed=Y, remaining=X-Y
15
+
16
+ ### Create Workflow Tracking for all tasks
17
+ Use TodoWrite to create workflow todos for each task using the following format:
18
+ - Step <task-number>: <task-name>
19
+
20
+ ### Sync with progress file
21
+
22
+ If any of the tasks are marked as completed in $ARGUMENTS/progress.md, mark them as completed in the Workflow Tracking
23
+
24
+ If any of the tasks are marked as in_progress in $ARGUMENTS/progress.md, mark them as in_progress in the Workflow Tracking
25
+
26
+ ### Complete the outstanding Workflow items
27
+
28
+ Work on the non-completed tasks in sequence
29
+
30
+ ⚠️ **CRITICAL**: DO NOT STOP until all todos are marked completed.
31
+
32
+ For each non-completed task:
33
+
34
+ 1. mark the task as in_progress in $ARGUMENTS/progress.md
35
+ 2. mark the task as in_progress in Workflow Tracking
36
+ 3. Use Task tool with subagent_type "general-purpose" and prompt: "run /project:complete-task <task-markdown-file>"
37
+ 4. Wait for the subagent to finish the task
38
+ 5. After subagent finishes with the task, mark the task as completed in $ARGUMENTS/progress.md
39
+ 6. After subagent finishes with the task, mark the task as completed in Workflow Tracking
40
+ 7. CRITICAL. DO NOT STOP. Move on to the next non-completed task
41
+
42
+ Repeat until all tasks are marked completed
@@ -0,0 +1,88 @@
1
+ ---
2
+ description: Code review local changes on the current branch
3
+ disable-model-invocation: false
4
+ argument-hint: <project-directory>
5
+ ---
6
+
7
+ Provide a code review for the local changes on the current branch compared to the main branch.
8
+
9
+ To do this, follow these steps precisely:
10
+
11
+ 1. Use a Haiku agent to check the current git state:
12
+ - Run `git branch --show-current` to get the current branch name
13
+ - Run `git log main..HEAD --oneline` to see commits on this branch
14
+ - Run `git diff main...HEAD --stat` to see changed files
15
+ - If the current branch IS main, or there are no commits/changes compared to main, do not proceed.
16
+ 2. Use another Haiku agent to give you a list of file paths to (but not the contents of) any relevant CLAUDE.md files from the codebase: the root CLAUDE.md file (if one exists), as well as any CLAUDE.md files in the directories whose files were modified on this branch
17
+ 3. Use a Haiku agent to analyze the branch changes:
18
+ - Run `git log main..HEAD --format="%s%n%b"` to get commit messages
19
+ - Run `git diff main...HEAD` to get the full diff
20
+ - Return a summary of the changes
21
+ 4. Then, launch 5 parallel Sonnet agents to independently code review the change. The agents should do the following, then return a list of issues and the reason each issue was flagged (eg. CLAUDE.md adherence, bug, historical git context, etc.):
22
+ a. Agent #1: Audit the changes to make sure they comply with the CLAUDE.md. Note that CLAUDE.md is guidance for Claude as it writes code, so not all instructions will be applicable during code review.
23
+ b. Agent #2: Read the file changes (via `git diff main...HEAD`), then do a shallow scan for obvious bugs. Avoid reading extra context beyond the changes, focusing just on the changes themselves. Focus on large bugs, and avoid small issues and nitpicks. Ignore likely false positives.
24
+ c. Agent #3: Read the git blame and history of the code modified, to identify any bugs in light of that historical context
25
+ d. Agent #4: Read previous pull requests that touched these files, and check for any comments on those pull requests that may also apply to the current changes.
26
+ e. Agent #5: Read code comments in the modified files, and make sure the changes comply with any guidance in the comments.
27
+ 5. For each issue found in #4, launch a parallel Haiku agent that takes the diff, issue description, and list of CLAUDE.md files (from step 2), and returns a score to indicate the agent's level of confidence for whether the issue is real or false positive. To do that, the agent should score each issue on a scale from 0-100, indicating its level of confidence. For issues that were flagged due to CLAUDE.md instructions, the agent should double check that the CLAUDE.md actually calls out that issue specifically. The scale is (give this rubric to the agent verbatim):
28
+ a. 0: Not confident at all. This is a false positive that doesn't stand up to light scrutiny, or is a pre-existing issue.
29
+ b. 25: Somewhat confident. This might be a real issue, but may also be a false positive. The agent wasn't able to verify that it's a real issue. If the issue is stylistic, it is one that was not explicitly called out in the relevant CLAUDE.md.
30
+ c. 50: Moderately confident. The agent was able to verify this is a real issue, but it might be a nitpick or not happen very often in practice. Relative to the rest of the changes, it's not very important.
31
+ d. 75: Highly confident. The agent double checked the issue, and verified that it is very likely it is a real issue that will be hit in practice. The existing approach is insufficient. The issue is very important and will directly impact the code's functionality, or it is an issue that is directly mentioned in the relevant CLAUDE.md.
32
+ e. 100: Absolutely certain. The agent double checked the issue, and confirmed that it is definitely a real issue, that will happen frequently in practice. The evidence directly confirms this.
33
+ 6. Filter out any issues with a score less than 80.
34
+ 7. Write the review to $ARGUMENTS/claude-review.md. When writing your review, keep in mind to:
35
+ a. Keep your output brief
36
+ b. Avoid emojis
37
+ c. Reference relevant files and line numbers
38
+ 8. Briefly summarize $ARGUMENTS/claude-review.md as direct output to the user
39
+
40
+ Examples of false positives, for steps 4 and 5:
41
+
42
+ - Pre-existing issues
43
+ - Something that looks like a bug but is not actually a bug
44
+ - Pedantic nitpicks that a senior engineer wouldn't call out
45
+ - Issues that a linter, typechecker, or compiler would catch (eg. missing or incorrect imports, type errors, broken tests, formatting issues, pedantic style issues like newlines). No need to run these build steps yourself -- it is safe to assume that they will be run separately as part of CI.
46
+ - General code quality issues (eg. lack of test coverage, general security issues, poor documentation), unless explicitly required in CLAUDE.md
47
+ - Issues that are called out in CLAUDE.md, but explicitly silenced in the code (eg. due to a lint ignore comment)
48
+ - Changes in functionality that are likely intentional or are directly related to the broader change
49
+ - Real issues, but on lines that were not modified in the current branch
50
+
51
+ Notes:
52
+
53
+ - Do not check build signal or attempt to build or typecheck the app. These will run separately, and are not relevant to your code review.
54
+ - Use git commands to analyze local changes (not `gh` commands for remote PRs)
55
+ - Make a todo list first
56
+ - You must cite each bug with file path and line number (eg. if referring to a CLAUDE.md, you must reference it)
57
+ - For your final output, follow the following format precisely (assuming for this example that you found 3 issues):
58
+
59
+ ---
60
+
61
+ ### Code review for branch `<branch-name>`
62
+
63
+ Reviewed X commits with changes to Y files.
64
+
65
+ Found 3 issues:
66
+
67
+ 1. **<brief description of bug>** (CLAUDE.md says "<...>")
68
+ - File: `path/to/file.ts:L10-L15`
69
+
70
+ 2. **<brief description of bug>** (some/other/CLAUDE.md says "<...>")
71
+ - File: `path/to/other-file.ts:L25-L30`
72
+
73
+ 3. **<brief description of bug>** (bug due to <reasoning>)
74
+ - File: `path/to/another-file.ts:L5-L8`
75
+
76
+ ---
77
+
78
+ - Or, if you found no issues:
79
+
80
+ ---
81
+
82
+ ### Code review for branch `<branch-name>`
83
+
84
+ Reviewed X commits with changes to Y files.
85
+
86
+ No issues found. Checked for bugs and CLAUDE.md compliance.
87
+
88
+ ---
@@ -0,0 +1,74 @@
1
+ ---
2
+ description: Reduces the code complexity of the codebase by 2 on each run
3
+ allowed-tools: Read, Write, Bash(git*), Glob, Grep, Task, TodoWrite
4
+ ---
5
+
6
+ ## Step 0: MANDATORY SETUP
7
+
8
+ Create workflow tracking todos:
9
+ - Step 1: Lower complexity threshold
10
+ - Step 2: Run lint
11
+ - Step 3: Save spec file
12
+ - Step 4: Bootstrap project
13
+ - Step 5: Resolve questions
14
+ - Step 6: Execute project
15
+
16
+ ⚠️ **CRITICAL**: DO NOT STOP until all 7 todos are marked completed.
17
+
18
+ ## Step 1: Lower Complexity Threshold
19
+ Mark "Step 1: Lower complexity threshold" as in_progress.
20
+
21
+ In @eslint.config.mjs, lower the active cognitive complexity rule by two.
22
+ Save the file.
23
+
24
+ Mark "Step 1: Lower complexity threshold" as completed. Proceed to Step 2.
25
+
26
+ ## Step 2: Run Lint
27
+ Mark "Step 2: Run lint" as in_progress.
28
+
29
+ Run the lint command from @package.json.
30
+
31
+ Mark "Step 2: Run lint" as completed. Proceed to Step 3.
32
+
33
+ ## Step 3: Save Spec File
34
+ Mark "Step 3: Save spec file" as in_progress.
35
+
36
+ Save the output of the lint command to `specs/reduce-cognitive-complexity.md` along with the following instructions:
37
+
38
+ ```text
39
+
40
+ Refactor the <files> to adhere to the cognitive complexity rule.
41
+
42
+ Common Solutions
43
+
44
+ 1. Extract functions: Break complex logic into smaller, named functions
45
+ 2. Early returns: Reduce nesting with guard clauses
46
+ 3. Extract conditions: Move complex boolean logic into named variables
47
+ 4. Use lookup tables: Replace complex switch/if-else chains
48
+ 5. Break larger components into smaller components with their own View/Container pattern
49
+ ```
50
+
51
+ Mark "Step 3: Save spec file" as completed. Proceed to Step 4.
52
+
53
+ ## Step 4: Bootstrap Project
54
+ Mark "Step 4: Bootstrap project" as in_progress.
55
+
56
+ Run /project:bootstrap @specs/reduce-cognitive-complexity.md
57
+
58
+ Mark "Step 4: Bootstrap project" as completed. Proceed to Step 5.
59
+
60
+ ## Step 5: Resolve Questions
61
+ Mark "Step 5: Resolve questions" as in_progress.
62
+
63
+ Answer any unresolved questions in the new project's `research.md` file.
64
+
65
+ Mark "Step 5: Resolve questions" as completed. Proceed to Step 6.
66
+
67
+ ## Step 6: Execute Project
68
+ Mark "Step 6: Execute project" as in_progress.
69
+
70
+ Run /project:execute [project-dir] where [project-dir] is the directory created from Step 4.
71
+
72
+ Mark "Step 6: Execute project" as completed.
73
+
74
+ Report: "🎉 Code complexity reduction complete"