@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,314 @@
1
+ ---
2
+ description: Uses the research.md and brief.md file in the specified directory to create a detailed list of tasks to implement the project
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 files
10
+ - Step 2: Validate research
11
+ - Step 3: Discover skills
12
+ - Step 4: Create task list
13
+ - Step 5: Create task files
14
+ - Step 6: Commit plan
15
+
16
+ ⚠️ **CRITICAL**: DO NOT STOP until all 6 todos are marked completed.
17
+
18
+ ## Step 1: Read Project Files
19
+ Mark "Step 1: Read project files" as in_progress.
20
+
21
+ 1. Read the `brief.md` file inside $ARGUMENTS FULLY (no limit/offset)
22
+ 2. Read the `research.md` file inside $ARGUMENTS FULLY (no limit/offset)
23
+
24
+ Mark "Step 1: Read project files" as completed. Proceed to Step 2.
25
+
26
+ ## Step 2: Validate Research
27
+ Mark "Step 2: Validate research" as in_progress.
28
+
29
+ **VALIDATE RESEARCH COMPLETENESS**:
30
+ - Locate the "## Open Questions" section in the research.md file you just read
31
+ - Examine the content under this section carefully
32
+
33
+ **VALID STATES** (proceed to Step 3):
34
+ ✅ Section contains "None", "[None identified]", "N/A", or is empty
35
+ ✅ Section doesn't exist at all
36
+ ✅ Section contains questions BUT all `**Answer**:` fields are filled (not empty, not placeholder text like "_[Human fills this in]_")
37
+
38
+ **INVALID STATE** (stop immediately):
39
+ ❌ Section contains questions with unfilled `**Answer**:` fields (empty or placeholder text)
40
+ ❌ Section contains unstructured questions without Answer fields
41
+ - If INVALID state is detected, **STOP IMMEDIATELY** and report:
42
+
43
+ ```
44
+ ❌ CANNOT PROCEED WITH PLANNING
45
+
46
+ The research.md file has unanswered open questions that must be addressed before planning can begin.
47
+
48
+ Unanswered Questions Found:
49
+ [List each question title and its Question field]
50
+
51
+ Action Required:
52
+ 1. Review $ARGUMENTS/research.md "## Open Questions" section
53
+ 2. Fill in the **Answer**: field for each question
54
+ 3. Re-run /project:plan
55
+
56
+ Planning has been aborted.
57
+ ```
58
+
59
+ **IMPORTANT**: NEVER modify, delete, or replace any existing sections in research.md during validation.
60
+ Only READ and VALIDATE. The research.md file is a historical record and must be preserved as-is.
61
+
62
+ Mark "Step 2: Validate research" as completed. Proceed to Step 3.
63
+
64
+ ## Step 3: Discover Skills
65
+ Mark "Step 3: Discover skills" as in_progress.
66
+
67
+ **DISCOVER APPLICABLE SKILLS**:
68
+ - Read all skill descriptions by examining `.claude/skills/*/SKILL.md` files (read only the frontmatter description, first 10 lines of each)
69
+ - For each skill, determine if it applies to ANY task in this project based on brief.md requirements
70
+ - Create a mental map of: skill name → when it applies (e.g., "container-view-pattern → when creating React components")
71
+ - You will use this mapping in Step 5 to annotate each task with its applicable skills
72
+
73
+ Mark "Step 3: Discover skills" as completed. Proceed to Step 4.
74
+
75
+ ## Step 4: Create Task List
76
+ Mark "Step 4: Create task list" as in_progress.
77
+
78
+ 1. Determine a list of tasks required to complete the project
79
+ 2. **CRITICAL: Each task must be small enough to have a single, specific verification**
80
+ - If a task would require multiple verifications, split it into smaller tasks
81
+ - Ask: "Can I prove this task is done with ONE command or check?"
82
+ - **Exception for multi-platform UI recordings**: Tasks with `ui-recording` verification may have one proof command per platform (web/iOS/Android) since the same UI feature must be verified on each target platform
83
+ - Examples of properly-sized tasks:
84
+ - ✅ "Add logout button to header" → single Playwright test verifies button exists and works
85
+ - ✅ "Add unit tests for UserService" → single coverage command shows UserService coverage
86
+ - ✅ "Create API endpoint for user profile" → single curl command returns expected response
87
+ - ❌ "Build authentication system" → too large, needs multiple verifications (split into login, logout, session, etc.)
88
+ - ❌ "Add user management feature" → too large (split into list users, create user, edit user, etc.)
89
+ 3. Write that list of tasks to `progress.md` inside $ARGUMENTS
90
+
91
+ Mark "Step 4: Create task list" as completed. Proceed to Step 5.
92
+
93
+ ## Step 5: Create Task Files
94
+ Mark "Step 5: Create task files" as in_progress.
95
+
96
+ For each task in `progress.md`, create a new file called `tasks/000<step-number>-<task-name>.md`
97
+
98
+ **For each task, create a file using this template:**
99
+
100
+ ```markdown
101
+ # Task: [Task Name]
102
+
103
+ **Type:** Bug | Task | Epic | Story
104
+ **Parent:** [Parent Task Name, or "None"]
105
+
106
+ ## Description
107
+
108
+ [Write a clear description based on task type:
109
+ - **Bug**: Describe the bug, symptoms, and root cause analysis approach
110
+ - **Story**: Use Gherkin BDD format (Given/When/Then)
111
+ - **Task**: Straightforward description with clear goal
112
+ - **Epic**: Goal overview with list of sub-tasks]
113
+
114
+ ## Acceptance Criteria
115
+
116
+ [Specific, testable criteria that define "done" for this task]
117
+
118
+ - [ ] Criterion 1
119
+ - [ ] Criterion 2
120
+ - [ ] Criterion 3
121
+
122
+ ## Relevant Research
123
+
124
+ [Extract and summarize relevant sections from research.md, including:
125
+ - Code references (file:line) that will be modified or referenced
126
+ - Patterns to follow from the codebase
127
+ - Architecture constraints that apply
128
+ - Any resolved questions that affect this task]
129
+
130
+ ## Applicable Skills
131
+
132
+ Invoke these skills before writing implementation code:
133
+
134
+ - `/coding-philosophy` - Always required for all code
135
+ - [Add other skills from Step 3 that apply to THIS SPECIFIC task]
136
+
137
+ ## Implementation Details
138
+
139
+ [Specific implementation guidance:
140
+ - Files to create or modify
141
+ - Functions/classes to implement
142
+ - Integration points with existing code
143
+ - Edge cases to handle]
144
+
145
+ ## Testing Requirements
146
+
147
+ ### Unit Tests
148
+ [List specific unit tests required. Reference patterns from research.md]
149
+
150
+ - [ ] `describe('X')/it('should Y')`: Test description
151
+ - [ ] `describe('X')/it('should Y')`: Test description
152
+
153
+ ### Integration Tests
154
+ [List integration tests required, or "N/A - no integration points"]
155
+
156
+ - [ ] Test description
157
+
158
+ ### E2E Tests
159
+ [List e2e tests required, or "N/A - no user-facing changes"]
160
+
161
+ - [ ] Test scenario description
162
+
163
+ ## Documentation Requirements
164
+
165
+ ### Code Documentation (JSDoc)
166
+ [List functions/types needing JSDoc, or "N/A"]
167
+
168
+ - [ ] `functionName` - @param, @returns, @throws
169
+ - [ ] `TypeName` - @description
170
+
171
+ ### Database Comments
172
+ [List tables/columns needing comments, or "N/A - no database changes"]
173
+
174
+ - [ ] `table.column` - purpose description
175
+
176
+ ### GraphQL Descriptions
177
+ [List types/fields needing descriptions, or "N/A - no GraphQL changes"]
178
+
179
+ - [ ] `Type.field` - purpose description
180
+
181
+ ## Verification
182
+
183
+ ### Type
184
+ [One of: `ui-recording` | `test-coverage` | `api-test` | `manual-check` | `documentation`]
185
+
186
+ ### Proof Command
187
+ ```bash
188
+ [Single command to verify task completion - must be specific to THIS task]
189
+ ```
190
+
191
+ <!-- For ui-recording on multi-platform apps, provide one command per platform:
192
+ #### Web
193
+ ```bash
194
+ bun run playwright:test e2e/feature.spec.ts --grep "specific test" --trace on
195
+ ```
196
+
197
+ #### iOS
198
+ ```bash
199
+ maestro test .maestro/flows/feature-test.yaml --platform ios
200
+ ```
201
+
202
+ #### Android
203
+ ```bash
204
+ maestro test .maestro/flows/feature-test.yaml --platform android
205
+ ```
206
+ -->
207
+
208
+ <!-- For api-test, create a documented bash script at scripts/verify/<task-name>.sh:
209
+ - Script must support -h and --help flags with usage documentation
210
+ - Script must handle authentication if required
211
+ - Script must return exit code 0 on success, non-zero on failure
212
+ - Script must output clear success/failure message
213
+
214
+ Example:
215
+ ```bash
216
+ ./scripts/verify/user-profile-api.sh --help
217
+ ./scripts/verify/user-profile-api.sh
218
+ ```
219
+ -->
220
+
221
+ ### Expected Output
222
+ [What the proof command output should show to confirm success]
223
+
224
+ ## Implementation Steps
225
+
226
+ ### Step 0: Setup Tracking
227
+ Use TodoWrite to create task tracking todos:
228
+ - Invoke skills
229
+ - Write failing tests
230
+ - Write implementation
231
+ - Verify implementation
232
+ - Update documentation
233
+ - Commit changes
234
+
235
+ ⚠️ **CRITICAL**: DO NOT STOP until all todos are marked completed.
236
+
237
+ ### Step 1: Invoke Skills
238
+ Mark "Invoke skills" as in_progress.
239
+
240
+ 1. Mark this task as "in progress" in `progress.md`
241
+ 2. Invoke each skill listed in "Applicable Skills" using the Skill tool
242
+
243
+ Mark "Invoke skills" as completed.
244
+
245
+ ### Step 2: Write Failing Tests
246
+ Mark "Write failing tests" as in_progress.
247
+
248
+ 1. Write unit tests based on Testing Requirements
249
+ 2. Write integration tests based on Testing Requirements
250
+ 3. Run tests to confirm they fail (TDD)
251
+
252
+ Mark "Write failing tests" as completed.
253
+
254
+ ### Step 3: Write Implementation
255
+ Mark "Write implementation" as in_progress.
256
+
257
+ Implement code following Implementation Details until tests pass.
258
+
259
+ Mark "Write implementation" as completed.
260
+
261
+ ### Step 4: Verify Implementation
262
+ Mark "Verify implementation" as in_progress.
263
+
264
+ 1. Run the Proof Command from Verification section
265
+ 2. Confirm output matches Expected Output
266
+ 3. If verification fails, fix and re-verify
267
+
268
+ Mark "Verify implementation" as completed.
269
+
270
+ ### Step 5: Update Documentation
271
+ Mark "Update documentation" as in_progress.
272
+
273
+ Complete all items in Documentation Requirements section.
274
+
275
+ Mark "Update documentation" as completed.
276
+
277
+ ### Step 6: Commit Changes
278
+ Mark "Commit changes" as in_progress.
279
+
280
+ 1. Run `/git:commit`
281
+ 2. Mark this task as "completed" in `progress.md`
282
+ 3. Record any learnings in `findings.md`
283
+
284
+ Mark "Commit changes" as completed.
285
+ ```
286
+
287
+ ---
288
+
289
+ **Verification Type Reference:**
290
+
291
+ | Type | When to Use | Example Command |
292
+ |------|-------------|-----------------|
293
+ | `ui-recording` | UI/UX changes visible to users | Web: `bun run playwright:test ...`, iOS/Android: `maestro test ...` |
294
+ | `test-coverage` | New code with tests | `bun run test:cov -- --collectCoverageFrom='src/path/to/file.ts'` |
295
+ | `api-test` | New API endpoints | `./scripts/verify/<task-name>.sh` (documented script with -h/--help) |
296
+ | `documentation` | Docs, README updates | `cat path/to/doc.md` |
297
+ | `manual-check` | Config, setup, infrastructure | Command showing the config/state exists |
298
+
299
+ Mark "Step 5: Create task files" as completed. Proceed to Step 6.
300
+
301
+ ## Step 6: Commit Plan
302
+ Mark "Step 6: Commit plan" as in_progress.
303
+
304
+ Run /git:commit
305
+
306
+ Mark "Step 6: Commit plan" as completed.
307
+
308
+ Report: "📋 Planning complete - X tasks created"
309
+
310
+ ---
311
+
312
+ IMPORTANT: Each task should contain all the necessary information from `brief.md` and `research.md` and any other support files necessary to complete the task in isolation. Tasks should be completely independent of one another and be as small in scope as possible.
313
+
314
+ IMPORTANT: If, at the end of a task, the pre-commit blocks you because it is dependent on another task, complete the other task first and then commit.
@@ -0,0 +1,248 @@
1
+ ---
2
+ description: Conducts research of your code base and the web relevant to your project and compiles it for the planning phase
3
+ argument-hint: <project-directory>
4
+ ---
5
+
6
+ # Research Codebase
7
+
8
+ You are tasked with conducting comprehensive research across the codebase and web that will help create an implementation plan for the brief in $ARGUMENTS
9
+
10
+ Goals:
11
+
12
+ 1. Determine what existing documentation in the codebase will be needed to fulfill the spec
13
+ 2. Determine any gaps in the spec that would prevent a developer from fulfilling the acceptance criteria
14
+ 3. Determine any potential pitfalls that should be considered such as performance or security concerns
15
+ 4. Determine what code, functions, and modules currently exist within the codebase that could be reused during implementation
16
+ 5. Determine testing patterns and locations in the codebase (frameworks, conventions, examples to follow)
17
+ 6. Determine documentation patterns in the codebase (JSDoc conventions, DB comment conventions, GraphQL description conventions)
18
+
19
+ Note: Task-specific concerns (acceptance criteria, specific tests to write, specific documentation to create) are determined during the Planning phase on a per-task basis.
20
+
21
+ ## Step 0: MANDATORY SETUP
22
+
23
+ Create workflow tracking todos:
24
+ - Step 1: Read mentioned files
25
+ - Step 2: Analyze and decompose
26
+ - Step 3: Spawn research agents
27
+ - Step 4: Wait and synthesize
28
+ - Step 5: Generate document
29
+ - Step 6: Commit
30
+
31
+ ⚠️ **CRITICAL**: DO NOT STOP until all 6 todos are marked completed.
32
+
33
+ ## CRITICAL: YOUR ONLY JOB IS TO DOCUMENT AND EXPLAIN THE CODEBASE AS IT EXISTS TODAY
34
+
35
+ - DO NOT suggest improvements or changes unless the user explicitly asks for them
36
+ - DO NOT perform root cause analysis unless the user explicitly asks for them
37
+ - DO NOT propose future enhancements unless the user explicitly asks for them
38
+ - DO NOT critique the implementation or identify problems
39
+ - DO NOT recommend refactoring, optimization, or architectural changes
40
+ - ONLY describe what exists, where it exists, how it works, and how components interact
41
+ - You are creating a technical map/documentation of the existing system
42
+
43
+ ## Step 1: Read Mentioned Files
44
+ Mark "Step 1: Read mentioned files" as in_progress.
45
+
46
+ **Read any directly mentioned files first:**
47
+ - If the user mentions specific files (tickets, docs, JSON), read them FULLY first
48
+ - **IMPORTANT**: Use the Read tool WITHOUT limit/offset parameters to read entire files
49
+ - **CRITICAL**: Read these files yourself in the main context before spawning any sub-tasks
50
+ - This ensures you have full context before decomposing the research
51
+
52
+ Mark "Step 1: Read mentioned files" as completed. Proceed to Step 2.
53
+
54
+ ## Step 2: Analyze and Decompose
55
+ Mark "Step 2: Analyze and decompose" as in_progress.
56
+
57
+ **Analyze and decompose the research question:**
58
+ - Break down the brief into composable research areas
59
+ - Take time to ultrathink about the underlying patterns, connections, and architectural implications
60
+ - Identify specific components, patterns, or concepts to investigate
61
+ - Create a research plan using TodoWrite to track all subtasks
62
+ - Consider which directories, files, or architectural patterns are relevant
63
+
64
+ Mark "Step 2: Analyze and decompose" as completed. Proceed to Step 3.
65
+
66
+ ## Step 3: Spawn Research Agents
67
+ Mark "Step 3: Spawn research agents" as in_progress.
68
+
69
+ **Spawn parallel sub-agent tasks for comprehensive research:**
70
+ - Create multiple Task agents to research different aspects concurrently
71
+ - We now have specialized agents that know how to do specific research tasks:
72
+
73
+ **For codebase research:**
74
+ - Use the **codebase-locator** agent to find WHERE files and components live
75
+ - Use the **codebase-analyzer** agent to understand HOW specific code works (without critiquing it)
76
+ - Use the **codebase-pattern-finder** agent to find examples of existing patterns (without evaluating them)
77
+ - Use the **git-history-analyzer** agent to understand what changes the file has undergone that may affect the implementation plan
78
+
79
+ **For e2e test research:**
80
+ - Use the **codebase-locator** agent to find existing e2e tests in `e2e/` or `tests/` directories that relate to the feature being modified
81
+ - Use the **codebase-analyzer** agent to document what scenarios each relevant test covers
82
+ - Identify tests that will need modification due to UI/flow changes
83
+ - Identify tests that may need to be removed if features are deprecated
84
+ - Identify gaps where new tests will be needed for new functionality
85
+ - Document the test file paths and what each test validates
86
+
87
+ **IMPORTANT**: All agents are documentarians, not critics. They will describe what exists without suggesting improvements or identifying issues.
88
+
89
+ **For web research:**
90
+ - Use the **web-search-researcher** agent for external documentation and resources
91
+ - IF you use web-research agents, instruct them to return LINKS with their findings, and please INCLUDE those links in your final report
92
+
93
+ The key is to use these agents intelligently:
94
+ - Start with locator agents to find what exists
95
+ - Then use analyzer agents on the most promising findings to document how they work
96
+ - Run multiple agents in parallel when they're searching for different things
97
+ - Each agent knows its job - just tell it what you're looking for
98
+ - Don't write detailed prompts about HOW to search - the agents already know
99
+ - Remind agents they are documenting, not evaluating or improving
100
+
101
+ Mark "Step 3: Spawn research agents" as completed. Proceed to Step 4.
102
+
103
+ ## Step 4: Wait and Synthesize
104
+ Mark "Step 4: Wait and synthesize" as in_progress.
105
+
106
+ **Wait for all sub-agents to complete and synthesize findings:**
107
+ - ⚠️ **CRITICAL**: Wait for ALL sub-agent tasks to complete before proceeding
108
+ - DO NOT proceed to Step 5 until every spawned Task has returned
109
+ - Compile all sub-agent results (both codebase and thoughts findings)
110
+ - Prioritize live codebase findings as primary source of truth
111
+ - Connect findings across different components
112
+ - Include specific file paths and line numbers for reference
113
+ - Highlight patterns, connections, and architectural decisions
114
+ - Include any frameworks used such as Ruby on Rails, NestJs, Expo, React, React Native, Vue, etc
115
+ - If a framework is used, identify what portions of the framework are relevant to the given project (i.e. ActiveRecord, NestJs Service's, dependency injection, etc)
116
+
117
+ Mark "Step 4: Wait and synthesize" as completed. Proceed to Step 5.
118
+
119
+ ## Step 5: Generate Document
120
+ Mark "Step 5: Generate document" as in_progress.
121
+
122
+ **Generate research document:**
123
+ - Structure the document with YAML frontmatter followed by content:
124
+
125
+ ```markdown
126
+ ---
127
+ date: [Current date and time with timezone in ISO format]
128
+ status: complete
129
+ last_updated: [Current date in YYYY-MM-DD format]
130
+ ---
131
+
132
+ # Research
133
+
134
+ ## Summary
135
+
136
+ [High-level documentation of what was found]
137
+
138
+ ## Detailed Findings
139
+
140
+ ### [Component/Area 1]
141
+
142
+ - Description of what exists ([file.ext:line](link))
143
+ - How it connects to other components
144
+ - Current implementation details (without evaluation)
145
+
146
+ ### [Component/Area 2]
147
+
148
+ ...
149
+
150
+ ## Code References
151
+
152
+ - `path/to/file.py:123` - Description of what's there
153
+ - `another/file.ts:45-67` - Description of the code block
154
+
155
+ ## Architecture Documentation
156
+
157
+ [Current patterns, conventions, and design implementations found in the codebase]
158
+
159
+ ## Testing Patterns
160
+
161
+ ### Unit Test Patterns
162
+ - **Location**: `src/**/__tests__/*.test.ts` (or actual pattern found)
163
+ - **Framework**: Jest/Vitest/etc.
164
+ - **Example to follow**: `path/to/example.test.ts:line-range`
165
+ - **Conventions**: [Describe naming, structure, mock patterns]
166
+
167
+ ### Integration Test Patterns
168
+ - **Location**: `src/**/*.integration.test.ts` (or actual pattern found)
169
+ - **Example to follow**: `path/to/example.integration.test.ts`
170
+ - **Conventions**: [Describe setup, teardown, database handling]
171
+
172
+ ### E2E Test Patterns
173
+ - **Location**: `e2e/*.spec.ts` (or actual pattern found)
174
+ - **Framework**: Playwright/Cypress/Maestro/etc.
175
+ - **Example to follow**: `path/to/example.spec.ts`
176
+ - **Conventions**: [Describe page objects, fixtures, assertions]
177
+
178
+ ## Documentation Patterns
179
+
180
+ ### JSDoc Conventions
181
+ - **Style**: [Describe the JSDoc style used in this codebase]
182
+ - **Example**: `path/to/well-documented-file.ts:line-range`
183
+ - **Required tags**: [@param, @returns, @throws, etc.]
184
+
185
+ ### Database Comments (Backend Only)
186
+ - **Convention**: [How tables/columns are documented]
187
+ - **Example**: `path/to/entity.ts` or migration file
188
+ - **Required for**: [New tables, new columns, complex relationships]
189
+
190
+ ### GraphQL Descriptions (Backend Only)
191
+ - **Convention**: [How types/fields are documented]
192
+ - **Example**: `path/to/resolver.ts` or schema file
193
+ - **Required for**: [Public API fields, complex types]
194
+
195
+ ## Open Questions
196
+
197
+ <!--
198
+ Structure each question with context and impact.
199
+ The Answer field must be filled by a human before planning can proceed.
200
+ -->
201
+
202
+ ### Q1: [Short Question Title]
203
+ **Question**: [Full question]
204
+ **Context**: [Why this question arose, what in the brief is unclear]
205
+ **Impact**: [What parts of implementation this affects]
206
+ **Answer**: _[Human fills this in before running /project:plan]_
207
+
208
+ <!-- Add more questions as needed using the same format -->
209
+ <!-- If no questions, replace this section with: [None identified] -->
210
+ ```
211
+
212
+ - Save the research document as `research.md` in the $ARGUMENTS directory
213
+
214
+ Mark "Step 5: Generate document" as completed. Proceed to Step 6.
215
+
216
+ ## Step 6: Commit
217
+ Mark "Step 6: Commit" as in_progress.
218
+
219
+ Run /git:commit
220
+
221
+ Mark "Step 6: Commit" as completed.
222
+
223
+ ## Important notes:
224
+
225
+ - Always use parallel Task agents to maximize efficiency and minimize context usage
226
+ - Always run fresh codebase research - never rely solely on existing research documents
227
+ - Focus on finding concrete file paths and line numbers for developer reference
228
+ - Research documents should be self-contained with all necessary context
229
+ - Each sub-agent prompt should be specific and focused on read-only documentation operations
230
+ - Document cross-component connections and how systems interact
231
+ - Include temporal context (when the research was conducted)
232
+ - Keep the main agent focused on synthesis, not deep file reading
233
+ - Have sub-agents document examples and usage patterns as they exist
234
+ - **CRITICAL**: You and all sub-agents are documentarians, not evaluators
235
+ - **REMEMBER**: Document what IS, not what SHOULD BE
236
+ - **NO RECOMMENDATIONS**: Only describe the current state of the codebase
237
+ - **File reading**: Always read mentioned files FULLY (no limit/offset) before spawning sub-tasks
238
+ - **Critical ordering**: Follow the numbered steps exactly
239
+ - ALWAYS read mentioned files first before spawning sub-tasks (step 1)
240
+ - ALWAYS wait for all sub-agents to complete before synthesizing (step 4)
241
+ - ALWAYS gather metadata before writing the document (step 5 before step 6)
242
+ - NEVER write the research document with placeholder values
243
+ - **Frontmatter consistency**:
244
+ - Always include frontmatter at the beginning of research documents
245
+ - Keep frontmatter fields consistent across all research documents
246
+ - Update frontmatter when adding follow-up research
247
+ - Use snake_case for multi-word field names (e.g., `last_updated`)
248
+ - Tags should be relevant to the research topic and components studied
@@ -0,0 +1,63 @@
1
+ ---
2
+ description: Performs extensive code review and optimization on the current project
3
+ argument-hint: <project-directory>
4
+ ---
5
+
6
+ The current branch is a feature branch that contains full implementation of the project described in $ARGUMENTS
7
+
8
+ IMPORTANT: Perform each step and then move to the next one without stopping
9
+
10
+ ## Step 0: MANDATORY SETUP
11
+
12
+ Use TodoWrite to create workflow tracking todos:
13
+ - Step 1: Perform Claude Review
14
+ - Step 2: Implement Claude Review Fixes
15
+ - Step 3: Perform CodeRabbit Review
16
+ - Step 4: Implement CodeRabbit Review Fixes
17
+ - Step 5: Perform Claude Optimizations
18
+
19
+ ## Step 1: Perform Claude Review
20
+
21
+ Mark "Step 1: Perform Claude Review" as in_progress.
22
+
23
+ If $ARGUMENTS/claude-review.md already exists, Mark "Step 1: Perform Claude Review" as completed. Proceed to Step 2
24
+
25
+ Otherwise, run /local-code-review $ARGUMENTS
26
+
27
+ Mark "Step 1: Perform Claude Review" as completed. Proceed to Step 2
28
+
29
+ ## Step 2: Implement Claude Review Fixes
30
+
31
+ Mark "Step 2: Implement Claude Review Fixes" as in_progress.
32
+
33
+ 1. Read $ARGUMENTS/claude-review.md
34
+ 2. Fix any suggestions that score above 45 in $ARGUMENTS/claude-review.md
35
+
36
+ Mark "Step 2: Implement Claude Review Fixes" as completed. Proceed to Step 3
37
+
38
+ ## Step 3: Perform CodeRabbit Review
39
+
40
+ Mark "Step 3: Perform CodeRabbit Review" as in_progress.
41
+
42
+ If $ARGUMENTS/coderabbit-review.md already exists, Mark "Step 3: Perform CodeRabbit Review" as completed. Proceed to Step 4
43
+
44
+ Otherwise, use Task tool with prompt: "Run !`coderabbit review --plain || true` to get comprehensive code analysis and improvement suggestions and write the results to $ARGUMENTS/coderabbit-review.md"
45
+
46
+ Mark "Step 3: Perform CodeRabbit Review" as completed. Proceed to Step 4
47
+
48
+ ## Step 4: Implement CodeRabbit Review Fixes
49
+
50
+ Mark "Step 4: Implement CodeRabbit Review Fixes" as in_progress.
51
+
52
+ Evaluate the suggestions in $ARGUMENTS/coderabbit-review.md and implement fixes/changes for any valid findings
53
+
54
+ Mark "Step 4: Implement CodeRabbit Review Fixes" as completed. Proceed to Step 5
55
+
56
+ ## Step 5: Perform Claude Optimizations
57
+
58
+ Mark "Step 5: Perform Claude Optimizations" as in_progress.
59
+
60
+ Use the code simplifier agent to clean up the code that was added to the current branch.
61
+
62
+ Mark "Step 5: Perform Claude Optimizations" as completed.
63
+
@@ -0,0 +1,19 @@
1
+ ---
2
+ description: Initialize a comprehensive NestJS backend project with full requirements analysis, planning, and structure setup
3
+ argument-hint: <project-brief-file-or-jira-issue-number>
4
+ allowed-tools: Read, Write, Bash(git*), Glob, Grep, Task, TodoWrite
5
+ ---
6
+
7
+ 1. Decide if $ARGUMENTS is a Jira issue number or a path to a file
8
+ 2. If $ARGUMENTS is a Jira issue number
9
+ 1. Use the atlassian MCP server to Read the issue FULLY. If the MCP server is not working, STOP WORKING AND LET THE HUMAN KNOW
10
+ 2. Otherwise: $ARGUMENTS is a brief for a project. Read it FULLY (no limit/offset)
11
+ 3. Create a project directory in projects/ that is appropriately named for the project and prefixed with today's date like `YYYY-MM-DD-<project-name>`
12
+ 4. If $ARGUMENTS is a Jira issue number
13
+ 1. Create a file called `brief.md` in the newly created project directory and populate it with the jira issue number, title and description
14
+ 2. Otherwise: Move $ARGUMENTS into the newly created project directory and rename it `brief.md`
15
+ 5. Create an empty file in the new project directory called `findings.md`
16
+ 6. If $ARGUMENTS is a Jira issue number
17
+ 1. run /git:commit and add the jira issue number to the newly created branch (e.g. feature/SE-111-<branch-name>)
18
+ 2. OTHERWISE: run /git:commit
19
+ 7. If $ARGUMENTS is a Jira issue number Use the atlassian MCP server to update the issue with status "In Progress"
@@ -0,0 +1,38 @@
1
+ ---
2
+ description: Comprehensive verification that a feature branch fully implements all project requirements with proper code quality, tests, and documentation
3
+ argument-hint: <project-directory>
4
+ ---
5
+
6
+ The current branch is a feature branch that contains full implementation of the project described in $ARGUMENTS
7
+
8
+ ## Step 0: MANDATORY SETUP
9
+
10
+ Use TodoWrite to create workflow tracking todos:
11
+ - Step 1: Review Requirements for $ARGUMENTS
12
+ - Step 2: Verify Implementation
13
+ - Step 3: Document Drift
14
+
15
+ ## Step 1: Review Requirements
16
+
17
+ Mark "Step 1: Review Requirements" as in_progress.
18
+
19
+ Read all the requirements for $ARGUMENTS
20
+
21
+ Mark "Step 1: Review Requirements" as completed. Proceed to Step 2
22
+
23
+ ## Step 2: Verify Implementation
24
+
25
+ Mark "Step 2: Verify Implementation" as in_progress.
26
+
27
+ Verify that the implementation completely and fully satisfies all the requirements from Step 1
28
+
29
+ Mark "Step 2: Verify Implementation" as completed. Proceed to Step 3
30
+
31
+
32
+ ## Step 3: Document Drift
33
+
34
+ Mark "Step 3: Document Drift" as in_progress.
35
+
36
+ IF there is any divergence from the requirements, document what this drift is to $ARGUMENTS/drift.md
37
+
38
+ Mark "Step 3: Document Drift" as completed.