@codeyam/codeyam-cli 0.1.0-staging.323686 → 0.1.0-staging.4813bf3

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 (444) hide show
  1. package/analyzer-template/.build-info.json +7 -7
  2. package/analyzer-template/log.txt +3 -3
  3. package/analyzer-template/package.json +5 -5
  4. package/analyzer-template/packages/ai/index.ts +7 -1
  5. package/analyzer-template/packages/ai/package.json +2 -2
  6. package/analyzer-template/packages/ai/src/lib/analyzeScope.ts +62 -18
  7. package/analyzer-template/packages/ai/src/lib/astScopes/astScopeAnalyzer.ts +67 -9
  8. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.ts +10 -17
  9. package/analyzer-template/packages/ai/src/lib/astScopes/processExpression.ts +409 -50
  10. package/analyzer-template/packages/ai/src/lib/astScopes/sharedPatterns.ts +28 -0
  11. package/analyzer-template/packages/ai/src/lib/astScopes/types.ts +21 -6
  12. package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +992 -249
  13. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.ts +5 -1
  14. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.ts +16 -3
  15. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.ts +6 -4
  16. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.ts +31 -3
  17. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.ts +37 -15
  18. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.ts +70 -0
  19. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.ts +126 -11
  20. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.ts +179 -0
  21. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.ts +40 -30
  22. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts +367 -96
  23. package/analyzer-template/packages/ai/src/lib/dataStructureChunking.ts +33 -15
  24. package/analyzer-template/packages/ai/src/lib/generateEntityDataStructure.ts +58 -3
  25. package/analyzer-template/packages/ai/src/lib/generateEntityScenarioData.ts +315 -6
  26. package/analyzer-template/packages/ai/src/lib/generateEntityScenarios.ts +9 -5
  27. package/analyzer-template/packages/ai/src/lib/generateExecutionFlows.ts +49 -5
  28. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.ts +1 -1
  29. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionals.ts +649 -142
  30. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.ts +1 -1
  31. package/analyzer-template/packages/ai/src/lib/isolateScopes.ts +51 -3
  32. package/analyzer-template/packages/ai/src/lib/mergeJsonTypeDefinitions.ts +5 -0
  33. package/analyzer-template/packages/ai/src/lib/mergeStatements.ts +90 -96
  34. package/analyzer-template/packages/ai/src/lib/promptGenerators/collapseNullableObjects.ts +118 -0
  35. package/analyzer-template/packages/ai/src/lib/promptGenerators/gatherAttributesMap.ts +10 -7
  36. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.ts +24 -4
  37. package/analyzer-template/packages/ai/src/lib/resolvePathToControllable.ts +25 -13
  38. package/analyzer-template/packages/ai/src/lib/worker/SerializableDataStructure.ts +4 -3
  39. package/analyzer-template/packages/analyze/index.ts +2 -0
  40. package/analyzer-template/packages/analyze/src/lib/FileAnalyzer.ts +65 -59
  41. package/analyzer-template/packages/analyze/src/lib/ProjectAnalyzer.ts +113 -26
  42. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.ts +19 -0
  43. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.ts +19 -0
  44. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllExports.ts +11 -0
  45. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.ts +8 -0
  46. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.ts +49 -1
  47. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.ts +2 -1
  48. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +89 -9
  49. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +19 -4
  50. package/analyzer-template/packages/analyze/src/lib/files/analyze/gatherEntityMap.ts +4 -2
  51. package/analyzer-template/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.ts +0 -3
  52. package/analyzer-template/packages/analyze/src/lib/files/analyzeRemixRoute.ts +4 -5
  53. package/analyzer-template/packages/analyze/src/lib/files/getImportedExports.ts +14 -12
  54. package/analyzer-template/packages/analyze/src/lib/files/scenarios/TransformationTracer.ts +1315 -0
  55. package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.ts +61 -13
  56. package/analyzer-template/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.ts +37 -0
  57. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +229 -19
  58. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.ts +117 -9
  59. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +459 -39
  60. package/analyzer-template/packages/analyze/src/lib/files/scenarios/propagateArrayItemSchemas.ts +474 -0
  61. package/analyzer-template/packages/analyze/src/lib/files/setImportedExports.ts +2 -1
  62. package/analyzer-template/packages/analyze/src/lib/index.ts +1 -0
  63. package/analyzer-template/packages/analyze/src/lib/utils/getFileByPath.ts +19 -0
  64. package/analyzer-template/packages/aws/package.json +1 -1
  65. package/analyzer-template/packages/database/package.json +1 -1
  66. package/analyzer-template/packages/database/src/lib/analysisBranchToDb.ts +1 -1
  67. package/analyzer-template/packages/database/src/lib/analysisToDb.ts +1 -1
  68. package/analyzer-template/packages/database/src/lib/branchToDb.ts +1 -1
  69. package/analyzer-template/packages/database/src/lib/commitBranchToDb.ts +1 -1
  70. package/analyzer-template/packages/database/src/lib/commitToDb.ts +1 -1
  71. package/analyzer-template/packages/database/src/lib/fileToDb.ts +1 -1
  72. package/analyzer-template/packages/database/src/lib/kysely/db.ts +6 -0
  73. package/analyzer-template/packages/database/src/lib/kysely/tables/debugReportsTable.ts +1 -1
  74. package/analyzer-template/packages/database/src/lib/kysely/tables/labsRequestsTable.ts +52 -0
  75. package/analyzer-template/packages/database/src/lib/projectToDb.ts +1 -1
  76. package/analyzer-template/packages/database/src/lib/saveFiles.ts +1 -1
  77. package/analyzer-template/packages/database/src/lib/scenarioToDb.ts +1 -1
  78. package/analyzer-template/packages/database/src/lib/userScenarioToDb.ts +1 -1
  79. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js +1 -1
  80. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js.map +1 -1
  81. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js +1 -1
  82. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js.map +1 -1
  83. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js +1 -1
  84. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js.map +1 -1
  85. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js +1 -1
  86. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js.map +1 -1
  87. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js +1 -1
  88. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js.map +1 -1
  89. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js +1 -1
  90. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js.map +1 -1
  91. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts +2 -0
  92. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts.map +1 -1
  93. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js +3 -0
  94. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js.map +1 -1
  95. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts +1 -1
  96. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts +23 -0
  97. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts.map +1 -0
  98. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  99. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  100. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js +1 -1
  101. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js.map +1 -1
  102. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js +1 -1
  103. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js.map +1 -1
  104. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js +1 -1
  105. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js.map +1 -1
  106. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts +7 -0
  107. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  108. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts +5 -5
  109. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  110. package/analyzer-template/packages/github/dist/types/src/types/ScopeAnalysis.d.ts +6 -1
  111. package/analyzer-template/packages/github/dist/types/src/types/ScopeAnalysis.d.ts.map +1 -1
  112. package/analyzer-template/packages/github/package.json +1 -1
  113. package/analyzer-template/packages/types/src/types/ProjectMetadata.ts +7 -0
  114. package/analyzer-template/packages/types/src/types/ScenariosDataStructure.ts +6 -5
  115. package/analyzer-template/packages/types/src/types/ScopeAnalysis.ts +6 -1
  116. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts +7 -0
  117. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  118. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts +5 -5
  119. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  120. package/analyzer-template/packages/utils/dist/types/src/types/ScopeAnalysis.d.ts +6 -1
  121. package/analyzer-template/packages/utils/dist/types/src/types/ScopeAnalysis.d.ts.map +1 -1
  122. package/analyzer-template/project/constructMockCode.ts +90 -10
  123. package/analyzer-template/project/writeMockDataTsx.ts +181 -8
  124. package/analyzer-template/project/writeScenarioComponents.ts +60 -12
  125. package/analyzer-template/project/writeSimpleRoot.ts +21 -11
  126. package/background/src/lib/local/createLocalAnalyzer.js +1 -1
  127. package/background/src/lib/local/createLocalAnalyzer.js.map +1 -1
  128. package/background/src/lib/virtualized/project/constructMockCode.js +75 -4
  129. package/background/src/lib/virtualized/project/constructMockCode.js.map +1 -1
  130. package/background/src/lib/virtualized/project/writeMockDataTsx.js +162 -4
  131. package/background/src/lib/virtualized/project/writeMockDataTsx.js.map +1 -1
  132. package/background/src/lib/virtualized/project/writeScenarioComponents.js +60 -15
  133. package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
  134. package/background/src/lib/virtualized/project/writeSimpleRoot.js +21 -11
  135. package/background/src/lib/virtualized/project/writeSimpleRoot.js.map +1 -1
  136. package/codeyam-cli/scripts/apply-setup.js +180 -0
  137. package/codeyam-cli/scripts/apply-setup.js.map +1 -1
  138. package/codeyam-cli/src/cli.js +2 -0
  139. package/codeyam-cli/src/cli.js.map +1 -1
  140. package/codeyam-cli/src/codeyam-cli.js +18 -2
  141. package/codeyam-cli/src/codeyam-cli.js.map +1 -1
  142. package/codeyam-cli/src/commands/analyze.js +4 -2
  143. package/codeyam-cli/src/commands/analyze.js.map +1 -1
  144. package/codeyam-cli/src/commands/baseline.js +2 -0
  145. package/codeyam-cli/src/commands/baseline.js.map +1 -1
  146. package/codeyam-cli/src/commands/debug.js +9 -5
  147. package/codeyam-cli/src/commands/debug.js.map +1 -1
  148. package/codeyam-cli/src/commands/default.js +31 -20
  149. package/codeyam-cli/src/commands/default.js.map +1 -1
  150. package/codeyam-cli/src/commands/detect-universal-mocks.js +2 -0
  151. package/codeyam-cli/src/commands/detect-universal-mocks.js.map +1 -1
  152. package/codeyam-cli/src/commands/init.js +49 -257
  153. package/codeyam-cli/src/commands/init.js.map +1 -1
  154. package/codeyam-cli/src/commands/memory.js +17 -26
  155. package/codeyam-cli/src/commands/memory.js.map +1 -1
  156. package/codeyam-cli/src/commands/recapture.js +2 -0
  157. package/codeyam-cli/src/commands/recapture.js.map +1 -1
  158. package/codeyam-cli/src/commands/setup-sandbox.js +2 -0
  159. package/codeyam-cli/src/commands/setup-sandbox.js.map +1 -1
  160. package/codeyam-cli/src/commands/setup-simulations.js +284 -0
  161. package/codeyam-cli/src/commands/setup-simulations.js.map +1 -0
  162. package/codeyam-cli/src/commands/test-startup.js +2 -0
  163. package/codeyam-cli/src/commands/test-startup.js.map +1 -1
  164. package/codeyam-cli/src/commands/verify.js +14 -2
  165. package/codeyam-cli/src/commands/verify.js.map +1 -1
  166. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js +128 -86
  167. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js.map +1 -1
  168. package/codeyam-cli/src/utils/analyzer.js +7 -0
  169. package/codeyam-cli/src/utils/analyzer.js.map +1 -1
  170. package/codeyam-cli/src/utils/backgroundServer.js +5 -0
  171. package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
  172. package/codeyam-cli/src/utils/generateReport.js +2 -2
  173. package/codeyam-cli/src/utils/install-skills.js +70 -45
  174. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  175. package/codeyam-cli/src/utils/labsAutoCheck.js +19 -0
  176. package/codeyam-cli/src/utils/labsAutoCheck.js.map +1 -0
  177. package/codeyam-cli/src/utils/progress.js +7 -0
  178. package/codeyam-cli/src/utils/progress.js.map +1 -1
  179. package/codeyam-cli/src/utils/queue/job.js +4 -0
  180. package/codeyam-cli/src/utils/queue/job.js.map +1 -1
  181. package/codeyam-cli/src/utils/requireSimulations.js +10 -0
  182. package/codeyam-cli/src/utils/requireSimulations.js.map +1 -0
  183. package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js +82 -0
  184. package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js.map +1 -0
  185. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js +230 -0
  186. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js.map +1 -0
  187. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js +67 -0
  188. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js.map +1 -0
  189. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js +105 -0
  190. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js.map +1 -0
  191. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js +34 -0
  192. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js.map +1 -0
  193. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js +162 -0
  194. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js.map +1 -0
  195. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js +75 -0
  196. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js.map +1 -0
  197. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js +378 -0
  198. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js.map +1 -0
  199. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js +115 -0
  200. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js.map +1 -0
  201. package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js +127 -0
  202. package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js.map +1 -0
  203. package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js +50 -0
  204. package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js.map +1 -0
  205. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js +116 -0
  206. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js.map +1 -0
  207. package/codeyam-cli/src/utils/ruleReflection/index.js +5 -0
  208. package/codeyam-cli/src/utils/ruleReflection/index.js.map +1 -0
  209. package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js +44 -0
  210. package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js.map +1 -0
  211. package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js +85 -0
  212. package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js.map +1 -0
  213. package/codeyam-cli/src/utils/ruleReflection/types.js +5 -0
  214. package/codeyam-cli/src/utils/ruleReflection/types.js.map +1 -0
  215. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js +293 -0
  216. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js.map +1 -0
  217. package/codeyam-cli/src/utils/rules/index.js +1 -0
  218. package/codeyam-cli/src/utils/rules/index.js.map +1 -1
  219. package/codeyam-cli/src/utils/rules/parser.js +2 -25
  220. package/codeyam-cli/src/utils/rules/parser.js.map +1 -1
  221. package/codeyam-cli/src/utils/rules/ruleState.js +150 -0
  222. package/codeyam-cli/src/utils/rules/ruleState.js.map +1 -0
  223. package/codeyam-cli/src/utils/rules/staleness.js +16 -11
  224. package/codeyam-cli/src/utils/rules/staleness.js.map +1 -1
  225. package/codeyam-cli/src/utils/serverState.js +37 -10
  226. package/codeyam-cli/src/utils/serverState.js.map +1 -1
  227. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +21 -44
  228. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
  229. package/codeyam-cli/src/webserver/app/lib/database.js +15 -3
  230. package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
  231. package/codeyam-cli/src/webserver/backgroundServer.js +24 -0
  232. package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
  233. package/codeyam-cli/src/webserver/build/client/assets/CopyButton-CA3JxPb7.js +1 -0
  234. package/codeyam-cli/src/webserver/build/client/assets/{EntityItem-DsN1wKrm.js → EntityItem-B86KKU7e.js} +1 -1
  235. package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeBadge-DLqD3qNt.js → EntityTypeBadge-B5ctlSYt.js} +1 -1
  236. package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeIcon-Ba2JVPzP.js → EntityTypeIcon-BqY8gDAW.js} +1 -1
  237. package/codeyam-cli/src/webserver/build/client/assets/{InlineSpinner-C8lyxW9k.js → InlineSpinner-ClaLpuOo.js} +1 -1
  238. package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-aht4aafF.js → InteractivePreview-BDhPilK7.js} +2 -2
  239. package/codeyam-cli/src/webserver/build/client/assets/{LibraryFunctionPreview-CVtiBnY5.js → LibraryFunctionPreview-VeqEBv9v.js} +1 -1
  240. package/codeyam-cli/src/webserver/build/client/assets/{LoadingDots-B0GLXMsr.js → LoadingDots-Bs7Nn1Jr.js} +1 -1
  241. package/codeyam-cli/src/webserver/build/client/assets/{LogViewer-xgeCVgSM.js → LogViewer-Bm3PmcCz.js} +1 -1
  242. package/codeyam-cli/src/webserver/build/client/assets/{ReportIssueModal-OApQuNyq.js → ReportIssueModal-CgMEzchJ.js} +3 -8
  243. package/codeyam-cli/src/webserver/build/client/assets/{SafeScreenshot-DuDvi0jm.js → SafeScreenshot-Gq3Ocjo6.js} +1 -1
  244. package/codeyam-cli/src/webserver/build/client/assets/{ScenarioViewer-DzccYyI8.js → ScenarioViewer-CBui0id_.js} +2 -2
  245. package/codeyam-cli/src/webserver/build/client/assets/{TruncatedFilePath-DyFZkK0l.js → TruncatedFilePath-CiwXDxLh.js} +1 -1
  246. package/codeyam-cli/src/webserver/build/client/assets/{_index-BwqWJOgH.js → _index-B3TDXxnk.js} +1 -1
  247. package/codeyam-cli/src/webserver/build/client/assets/{activity.(_tab)-BwavGCpm.js → activity.(_tab)-BtBFH820.js} +6 -11
  248. package/codeyam-cli/src/webserver/build/client/assets/agent-transcripts-CN61MOMa.js +11 -0
  249. package/codeyam-cli/src/webserver/build/client/assets/api.agent-transcripts-l0sNRNKZ.js +1 -0
  250. package/codeyam-cli/src/webserver/build/client/assets/api.labs-unlock-l0sNRNKZ.js +1 -0
  251. package/codeyam-cli/src/webserver/build/client/assets/api.save-fixture-l0sNRNKZ.js +1 -0
  252. package/codeyam-cli/src/webserver/build/client/assets/book-open-PttOB2SF.js +6 -0
  253. package/codeyam-cli/src/webserver/build/client/assets/{chevron-down-Cx24_aWc.js → chevron-down-TJp6ofnp.js} +1 -1
  254. package/codeyam-cli/src/webserver/build/client/assets/{chunk-EPOLDU6W-CXRTFQ3F.js → chunk-JZWAC4HX-JE9ZIoBl.js} +12 -12
  255. package/codeyam-cli/src/webserver/build/client/assets/{circle-check-BOARzkeR.js → circle-check-CXhHQYrI.js} +1 -1
  256. package/codeyam-cli/src/webserver/build/client/assets/copy-6y9ALfGT.js +11 -0
  257. package/codeyam-cli/src/webserver/build/client/assets/{createLucideIcon-BdhJEx6B.js → createLucideIcon-Ca9fAY46.js} +1 -1
  258. package/codeyam-cli/src/webserver/build/client/assets/{dev.empty-BBnGWYga.js → dev.empty-C0epRiVn.js} +1 -1
  259. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha._-BJUiQqZF.js → entity._sha._-BVnB8a9L.js} +10 -10
  260. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha.scenarios._scenarioId.fullscreen-DavjRmOY.js → entity._sha.scenarios._scenarioId.fullscreen-CBoafmVs.js} +1 -1
  261. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.create-scenario-D1T4TGjf.js → entity._sha_.create-scenario-DGgZjdFg.js} +1 -1
  262. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.edit._scenarioId-CTBG2mmz.js → entity._sha_.edit._scenarioId-38yPijoD.js} +1 -1
  263. package/codeyam-cli/src/webserver/build/client/assets/{entry.client-CS2cb_eZ.js → entry.client-BSHEfydn.js} +1 -1
  264. package/codeyam-cli/src/webserver/build/client/assets/{fileTableUtils-DMJ7zii9.js → fileTableUtils-DCPhhSMo.js} +1 -1
  265. package/codeyam-cli/src/webserver/build/client/assets/{files-CJ6lTdTA.js → files-0N0YJQv7.js} +1 -1
  266. package/codeyam-cli/src/webserver/build/client/assets/{git-CPTZZ-JZ.js → git-DXnyr8uP.js} +1 -1
  267. package/codeyam-cli/src/webserver/build/client/assets/globals-CKT08Djd.css +1 -0
  268. package/codeyam-cli/src/webserver/build/client/assets/{index-lzqtyFU8.js → index-CcsFv748.js} +1 -1
  269. package/codeyam-cli/src/webserver/build/client/assets/{index-B1h680n5.js → index-ChN9-fAY.js} +1 -1
  270. package/codeyam-cli/src/webserver/build/client/assets/labs-BLJ7HxOC.js +1 -0
  271. package/codeyam-cli/src/webserver/build/client/assets/{loader-circle-B7B9V-bu.js → loader-circle-CTqLEAGU.js} +1 -1
  272. package/codeyam-cli/src/webserver/build/client/assets/manifest-b171b9d3.js +1 -0
  273. package/codeyam-cli/src/webserver/build/client/assets/memory-CCQd4aZA.js +78 -0
  274. package/codeyam-cli/src/webserver/build/client/assets/pause-D6vreykR.js +11 -0
  275. package/codeyam-cli/src/webserver/build/client/assets/root-CHhiHoo_.js +62 -0
  276. package/codeyam-cli/src/webserver/build/client/assets/{search-CxXUmBSd.js → search-B8VUL8nl.js} +1 -1
  277. package/codeyam-cli/src/webserver/build/client/assets/settings-BejnUJ6R.js +1 -0
  278. package/codeyam-cli/src/webserver/build/client/assets/{simulations-DwFIBT09.js → simulations-CPoAg7Zo.js} +1 -1
  279. package/codeyam-cli/src/webserver/build/client/assets/terminal-BrCP7uQo.js +11 -0
  280. package/codeyam-cli/src/webserver/build/client/assets/{triangle-alert-B6LgvRJg.js → triangle-alert-BZz2NjYa.js} +1 -1
  281. package/codeyam-cli/src/webserver/build/client/assets/{useCustomSizes-C1v1PQzo.js → useCustomSizes-DNwUduNu.js} +1 -1
  282. package/codeyam-cli/src/webserver/build/client/assets/{useLastLogLine-aSv48UbS.js → useLastLogLine-COky1GVF.js} +1 -1
  283. package/codeyam-cli/src/webserver/build/client/assets/{useReportContext-DYxHZQuP.js → useReportContext-CpZgwliL.js} +1 -1
  284. package/codeyam-cli/src/webserver/build/client/assets/{useToast-mBRpZPiu.js → useToast-Bv9JFvUO.js} +1 -1
  285. package/codeyam-cli/src/webserver/build/server/assets/{index-DVzYx8PN.js → index-8Fv-lH1-.js} +1 -1
  286. package/codeyam-cli/src/webserver/build/server/assets/server-build-Akn3iYFP.js +257 -0
  287. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  288. package/codeyam-cli/src/webserver/build-info.json +5 -5
  289. package/codeyam-cli/templates/{codeyam:debug.md → codeyam-debug.md} +1 -1
  290. package/codeyam-cli/templates/codeyam-diagnose.md +481 -0
  291. package/codeyam-cli/templates/codeyam-memory-hook.sh +19 -20
  292. package/codeyam-cli/templates/codeyam-memory.md +392 -0
  293. package/codeyam-cli/templates/codeyam-new-rule.md +13 -0
  294. package/codeyam-cli/templates/{codeyam:setup.md → codeyam-setup.md} +13 -1
  295. package/codeyam-cli/templates/{codeyam:sim.md → codeyam-sim.md} +1 -1
  296. package/codeyam-cli/templates/{codeyam:test.md → codeyam-test.md} +1 -1
  297. package/codeyam-cli/templates/{codeyam:verify.md → codeyam-verify.md} +1 -1
  298. package/codeyam-cli/templates/rule-notification-hook.py +56 -0
  299. package/codeyam-cli/templates/rule-reflection-hook.py +627 -0
  300. package/codeyam-cli/templates/rules-instructions.md +132 -0
  301. package/package.json +2 -2
  302. package/packages/ai/index.js +3 -2
  303. package/packages/ai/index.js.map +1 -1
  304. package/packages/ai/src/lib/analyzeScope.js +50 -13
  305. package/packages/ai/src/lib/analyzeScope.js.map +1 -1
  306. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js +54 -8
  307. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js.map +1 -1
  308. package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js +10 -14
  309. package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js.map +1 -1
  310. package/packages/ai/src/lib/astScopes/processExpression.js +317 -44
  311. package/packages/ai/src/lib/astScopes/processExpression.js.map +1 -1
  312. package/packages/ai/src/lib/astScopes/sharedPatterns.js +25 -0
  313. package/packages/ai/src/lib/astScopes/sharedPatterns.js.map +1 -1
  314. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +763 -171
  315. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
  316. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js +5 -1
  317. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js.map +1 -1
  318. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js +13 -3
  319. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js.map +1 -1
  320. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js +6 -4
  321. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js.map +1 -1
  322. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js +33 -3
  323. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js.map +1 -1
  324. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js +36 -11
  325. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js.map +1 -1
  326. package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js +63 -0
  327. package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js.map +1 -0
  328. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js +113 -11
  329. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js.map +1 -1
  330. package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js +173 -0
  331. package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js.map +1 -0
  332. package/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js +37 -20
  333. package/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js.map +1 -1
  334. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js +309 -84
  335. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js.map +1 -1
  336. package/packages/ai/src/lib/dataStructureChunking.js +26 -11
  337. package/packages/ai/src/lib/dataStructureChunking.js.map +1 -1
  338. package/packages/ai/src/lib/generateEntityDataStructure.js +46 -2
  339. package/packages/ai/src/lib/generateEntityDataStructure.js.map +1 -1
  340. package/packages/ai/src/lib/generateEntityScenarioData.js +227 -4
  341. package/packages/ai/src/lib/generateEntityScenarioData.js.map +1 -1
  342. package/packages/ai/src/lib/generateEntityScenarios.js +7 -1
  343. package/packages/ai/src/lib/generateEntityScenarios.js.map +1 -1
  344. package/packages/ai/src/lib/generateExecutionFlows.js +26 -4
  345. package/packages/ai/src/lib/generateExecutionFlows.js.map +1 -1
  346. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js +447 -80
  347. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js.map +1 -1
  348. package/packages/ai/src/lib/isolateScopes.js +39 -3
  349. package/packages/ai/src/lib/isolateScopes.js.map +1 -1
  350. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js +5 -0
  351. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js.map +1 -1
  352. package/packages/ai/src/lib/mergeStatements.js +70 -51
  353. package/packages/ai/src/lib/mergeStatements.js.map +1 -1
  354. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js +97 -0
  355. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js.map +1 -0
  356. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js +10 -4
  357. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js.map +1 -1
  358. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js +17 -2
  359. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js.map +1 -1
  360. package/packages/ai/src/lib/resolvePathToControllable.js +24 -14
  361. package/packages/ai/src/lib/resolvePathToControllable.js.map +1 -1
  362. package/packages/ai/src/lib/worker/SerializableDataStructure.js.map +1 -1
  363. package/packages/analyze/index.js +1 -0
  364. package/packages/analyze/index.js.map +1 -1
  365. package/packages/analyze/src/lib/FileAnalyzer.js +60 -36
  366. package/packages/analyze/src/lib/FileAnalyzer.js.map +1 -1
  367. package/packages/analyze/src/lib/ProjectAnalyzer.js +96 -26
  368. package/packages/analyze/src/lib/ProjectAnalyzer.js.map +1 -1
  369. package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js +14 -0
  370. package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js.map +1 -1
  371. package/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.js +14 -0
  372. package/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.js.map +1 -1
  373. package/packages/analyze/src/lib/asts/sourceFiles/getAllExports.js +6 -0
  374. package/packages/analyze/src/lib/asts/sourceFiles/getAllExports.js.map +1 -1
  375. package/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.js +6 -0
  376. package/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.js.map +1 -1
  377. package/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.js +39 -1
  378. package/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.js.map +1 -1
  379. package/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.js +2 -1
  380. package/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.js.map +1 -1
  381. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +65 -7
  382. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
  383. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +17 -4
  384. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
  385. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js +2 -1
  386. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js.map +1 -1
  387. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js +0 -3
  388. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js.map +1 -1
  389. package/packages/analyze/src/lib/files/analyzeRemixRoute.js +3 -2
  390. package/packages/analyze/src/lib/files/analyzeRemixRoute.js.map +1 -1
  391. package/packages/analyze/src/lib/files/getImportedExports.js +11 -7
  392. package/packages/analyze/src/lib/files/getImportedExports.js.map +1 -1
  393. package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js +880 -0
  394. package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js.map +1 -0
  395. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js +56 -10
  396. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js.map +1 -1
  397. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js +33 -8
  398. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js.map +1 -1
  399. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +150 -17
  400. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
  401. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js +56 -8
  402. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js.map +1 -1
  403. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +399 -31
  404. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
  405. package/packages/analyze/src/lib/files/setImportedExports.js +2 -1
  406. package/packages/analyze/src/lib/files/setImportedExports.js.map +1 -1
  407. package/packages/analyze/src/lib/index.js +1 -0
  408. package/packages/analyze/src/lib/index.js.map +1 -1
  409. package/packages/analyze/src/lib/utils/getFileByPath.js +12 -0
  410. package/packages/analyze/src/lib/utils/getFileByPath.js.map +1 -0
  411. package/packages/database/src/lib/analysisBranchToDb.js +1 -1
  412. package/packages/database/src/lib/analysisBranchToDb.js.map +1 -1
  413. package/packages/database/src/lib/analysisToDb.js +1 -1
  414. package/packages/database/src/lib/analysisToDb.js.map +1 -1
  415. package/packages/database/src/lib/branchToDb.js +1 -1
  416. package/packages/database/src/lib/branchToDb.js.map +1 -1
  417. package/packages/database/src/lib/commitBranchToDb.js +1 -1
  418. package/packages/database/src/lib/commitBranchToDb.js.map +1 -1
  419. package/packages/database/src/lib/commitToDb.js +1 -1
  420. package/packages/database/src/lib/commitToDb.js.map +1 -1
  421. package/packages/database/src/lib/fileToDb.js +1 -1
  422. package/packages/database/src/lib/fileToDb.js.map +1 -1
  423. package/packages/database/src/lib/kysely/db.js +3 -0
  424. package/packages/database/src/lib/kysely/db.js.map +1 -1
  425. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  426. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  427. package/packages/database/src/lib/projectToDb.js +1 -1
  428. package/packages/database/src/lib/projectToDb.js.map +1 -1
  429. package/packages/database/src/lib/saveFiles.js +1 -1
  430. package/packages/database/src/lib/saveFiles.js.map +1 -1
  431. package/packages/database/src/lib/scenarioToDb.js +1 -1
  432. package/packages/database/src/lib/scenarioToDb.js.map +1 -1
  433. package/scripts/finalize-analyzer.cjs +8 -76
  434. package/codeyam-cli/src/webserver/build/client/assets/copy-Bb-80kDT.js +0 -6
  435. package/codeyam-cli/src/webserver/build/client/assets/file-code-Dhef1kWN.js +0 -6
  436. package/codeyam-cli/src/webserver/build/client/assets/globals-D3yhhV8x.css +0 -1
  437. package/codeyam-cli/src/webserver/build/client/assets/manifest-7522edd4.js +0 -1
  438. package/codeyam-cli/src/webserver/build/client/assets/memory-yxFcrxBX.js +0 -92
  439. package/codeyam-cli/src/webserver/build/client/assets/root-eVAaavTS.js +0 -62
  440. package/codeyam-cli/src/webserver/build/client/assets/settings-CS5f3WzT.js +0 -1
  441. package/codeyam-cli/src/webserver/build/server/assets/server-build-4Cr0uToj.js +0 -257
  442. package/codeyam-cli/templates/codeyam:diagnose.md +0 -803
  443. package/codeyam-cli/templates/codeyam:memory.md +0 -462
  444. package/codeyam-cli/templates/codeyam:new-rule.md +0 -13
@@ -6,6 +6,28 @@ jest.mock('fs');
6
6
  jest.mock('path');
7
7
  const mockFs = fs;
8
8
  const mockPath = path;
9
+ // Shared permission lists for assertions
10
+ const memoryPermissions = [
11
+ 'Skill(codeyam-memory)',
12
+ 'Skill(codeyam-new-rule)',
13
+ 'Bash(codeyam)',
14
+ 'Bash(codeyam:*)',
15
+ 'Read(.codeyam/**)',
16
+ 'Edit(.codeyam/**)',
17
+ 'Write(.codeyam/**)',
18
+ 'Glob(.codeyam/**)',
19
+ ];
20
+ const simulationPermissions = [
21
+ 'Skill(codeyam-setup)',
22
+ 'Skill(codeyam-sim)',
23
+ 'Skill(codeyam-debug)',
24
+ 'Skill(codeyam-test)',
25
+ 'Skill(codeyam-verify)',
26
+ 'Read(/tmp/codeyam/**)',
27
+ 'Edit(/tmp/codeyam/**)',
28
+ 'Write(/tmp/codeyam/**)',
29
+ 'Glob(/tmp/codeyam/**)',
30
+ ];
9
31
  describe('setupClaudeCodeSettings', () => {
10
32
  const projectRoot = '/Users/testuser/myproject';
11
33
  const claudeDir = '/Users/testuser/myproject/.claude';
@@ -23,10 +45,8 @@ describe('setupClaudeCodeSettings', () => {
23
45
  describe('directory and file creation', () => {
24
46
  test('creates .claude directory if it does not exist', () => {
25
47
  mockFs.existsSync.mockImplementation((p) => {
26
- // .claude directory doesn't exist
27
48
  if (p === claudeDir)
28
49
  return false;
29
- // settings.local.json doesn't exist either
30
50
  if (p === settingsPath)
31
51
  return false;
32
52
  return false;
@@ -39,12 +59,10 @@ describe('setupClaudeCodeSettings', () => {
39
59
  });
40
60
  expect(result).toBe(true);
41
61
  });
42
- test('creates new settings file with all CodeYam permissions', () => {
62
+ test('creates new settings file with only memory permissions by default', () => {
43
63
  mockFs.existsSync.mockImplementation((p) => {
44
- // .claude directory exists
45
64
  if (p === claudeDir)
46
65
  return true;
47
- // settings.local.json doesn't exist yet
48
66
  if (p === settingsPath)
49
67
  return false;
50
68
  return false;
@@ -52,92 +70,73 @@ describe('setupClaudeCodeSettings', () => {
52
70
  mockFs.writeFileSync.mockImplementation(() => undefined);
53
71
  const result = setupClaudeCodeSettings(projectRoot);
54
72
  expect(mockFs.writeFileSync).toHaveBeenCalledWith(settingsPath, expect.any(String), 'utf8');
55
- // Parse the written content to verify structure
56
73
  const writtenContent = mockFs.writeFileSync.mock
57
74
  .calls[0][1];
58
75
  const settings = JSON.parse(writtenContent);
59
- expect(settings.permissions.allow).toContain('Skill(codeyam:setup)');
60
- expect(settings.permissions.allow).toContain('Bash(codeyam)');
61
- expect(settings.permissions.allow).toContain('Read(.codeyam/**)');
76
+ // Should include memory permissions
77
+ for (const perm of memoryPermissions) {
78
+ expect(settings.permissions.allow).toContain(perm);
79
+ }
80
+ // Should NOT include simulation permissions
81
+ for (const perm of simulationPermissions) {
82
+ expect(settings.permissions.allow).not.toContain(perm);
83
+ }
62
84
  expect(result).toBe(true);
63
85
  });
64
86
  });
65
- describe('adding permissions to existing settings', () => {
66
- test('adds CodeYam permissions to existing settings without allow list', () => {
87
+ describe('memory mode (default)', () => {
88
+ test('adds only memory permissions when mode is memory', () => {
67
89
  mockFs.existsSync.mockReturnValue(true);
68
90
  mockFs.readFileSync.mockReturnValue(JSON.stringify({ otherSetting: 'value' }));
69
91
  let writtenSettings;
70
92
  mockFs.writeFileSync.mockImplementation((_path, content) => {
71
93
  writtenSettings = JSON.parse(content);
72
94
  });
73
- const result = setupClaudeCodeSettings(projectRoot);
74
- expect(writtenSettings.permissions.allow).toContain('Skill(codeyam:setup)');
75
- expect(writtenSettings.permissions.allow).toContain('Skill(codeyam:sim)');
76
- expect(writtenSettings.permissions.allow).toContain('Skill(codeyam:debug)');
77
- expect(writtenSettings.permissions.allow).toContain('Skill(codeyam:test)');
78
- expect(writtenSettings.permissions.allow).toContain('Skill(codeyam:verify)');
79
- expect(writtenSettings.permissions.allow).toContain('Bash(codeyam:*)');
95
+ const result = setupClaudeCodeSettings(projectRoot, { mode: 'memory' });
96
+ for (const perm of memoryPermissions) {
97
+ expect(writtenSettings.permissions.allow).toContain(perm);
98
+ }
99
+ for (const perm of simulationPermissions) {
100
+ expect(writtenSettings.permissions.allow).not.toContain(perm);
101
+ }
80
102
  expect(writtenSettings.otherSetting).toBe('value');
81
103
  expect(result).toBe(true);
82
104
  });
83
- test('adds CodeYam permissions to existing allow list', () => {
105
+ test('default mode (no options) behaves as memory mode', () => {
84
106
  mockFs.existsSync.mockReturnValue(true);
85
- mockFs.readFileSync.mockReturnValue(JSON.stringify({
86
- permissions: {
87
- allow: ['some-other-tool'],
88
- },
89
- }));
107
+ mockFs.readFileSync.mockReturnValue(JSON.stringify({}));
90
108
  let writtenSettings;
91
109
  mockFs.writeFileSync.mockImplementation((_path, content) => {
92
110
  writtenSettings = JSON.parse(content);
93
111
  });
94
- const result = setupClaudeCodeSettings(projectRoot);
95
- expect(writtenSettings.permissions.allow).toContain('some-other-tool');
96
- expect(writtenSettings.permissions.allow).toContain('Skill(codeyam:setup)');
97
- expect(writtenSettings.permissions.allow).toContain('Skill(codeyam:sim)');
98
- expect(writtenSettings.permissions.allow).toContain('Write(.codeyam/**)');
99
- expect(result).toBe(true);
112
+ setupClaudeCodeSettings(projectRoot);
113
+ for (const perm of memoryPermissions) {
114
+ expect(writtenSettings.permissions.allow).toContain(perm);
115
+ }
116
+ for (const perm of simulationPermissions) {
117
+ expect(writtenSettings.permissions.allow).not.toContain(perm);
118
+ }
100
119
  });
101
- test('does not duplicate CodeYam permissions if already present', () => {
120
+ test('does not duplicate memory permissions if already present', () => {
102
121
  mockFs.existsSync.mockReturnValue(true);
103
122
  mockFs.readFileSync.mockReturnValue(JSON.stringify({
104
123
  permissions: {
105
- allow: [
106
- 'Skill(codeyam:setup)',
107
- 'Skill(codeyam:sim)',
108
- 'Skill(codeyam:debug)',
109
- 'Skill(codeyam:test)',
110
- 'Skill(codeyam:verify)',
111
- 'Skill(codeyam:memory)',
112
- 'Skill(codeyam:new-rule)',
113
- 'Bash(codeyam)',
114
- 'Bash(codeyam:*)',
115
- 'Read(.codeyam/**)',
116
- 'Edit(.codeyam/**)',
117
- 'Write(.codeyam/**)',
118
- 'Glob(.codeyam/**)',
119
- 'Read(/tmp/codeyam/**)',
120
- 'Edit(/tmp/codeyam/**)',
121
- 'Write(/tmp/codeyam/**)',
122
- 'Glob(/tmp/codeyam/**)',
123
- 'other-tool',
124
- ],
124
+ allow: [...memoryPermissions, 'other-tool'],
125
125
  },
126
126
  }));
127
127
  const result = setupClaudeCodeSettings(projectRoot);
128
- // Should not write if all permissions are already present
128
+ // Should not write if all memory permissions are already present
129
129
  expect(mockFs.writeFileSync).not.toHaveBeenCalled();
130
130
  expect(result).toBe(true);
131
131
  });
132
- test('adds only missing CodeYam permissions', () => {
132
+ test('adds only missing memory permissions', () => {
133
133
  mockFs.existsSync.mockReturnValue(true);
134
134
  mockFs.readFileSync.mockReturnValue(JSON.stringify({
135
135
  permissions: {
136
136
  allow: [
137
- 'Skill(codeyam:setup)',
138
- 'Skill(codeyam:sim)',
137
+ 'Skill(codeyam-memory)',
139
138
  'other-tool',
140
- // Missing: Skill(codeyam:debug), Skill(codeyam:test), Skill(codeyam:verify), all Bash and file ops
139
+ // Missing: Skill(codeyam-new-rule), Bash, file ops
141
140
  ],
142
141
  },
143
142
  }));
@@ -146,20 +145,71 @@ describe('setupClaudeCodeSettings', () => {
146
145
  writtenSettings = JSON.parse(content);
147
146
  });
148
147
  const result = setupClaudeCodeSettings(projectRoot);
149
- expect(writtenSettings.permissions.allow).toContain('Skill(codeyam:setup)');
150
- expect(writtenSettings.permissions.allow).toContain('Skill(codeyam:sim)');
151
- expect(writtenSettings.permissions.allow).toContain('Skill(codeyam:debug)');
152
- expect(writtenSettings.permissions.allow).toContain('Skill(codeyam:test)');
153
- expect(writtenSettings.permissions.allow).toContain('Skill(codeyam:verify)');
154
- expect(writtenSettings.permissions.allow).toContain('Bash(codeyam)');
148
+ for (const perm of memoryPermissions) {
149
+ expect(writtenSettings.permissions.allow).toContain(perm);
150
+ }
155
151
  expect(writtenSettings.permissions.allow).toContain('other-tool');
156
152
  // Should not duplicate existing ones
157
- const setupCount = writtenSettings.permissions.allow.filter((p) => p === 'Skill(codeyam:setup)').length;
158
- expect(setupCount).toBe(1);
153
+ const memoryCount = writtenSettings.permissions.allow.filter((p) => p === 'Skill(codeyam-memory)').length;
154
+ expect(memoryCount).toBe(1);
155
+ expect(result).toBe(true);
156
+ });
157
+ });
158
+ describe('full mode', () => {
159
+ test('adds all permissions (memory + simulation) in full mode', () => {
160
+ mockFs.existsSync.mockReturnValue(true);
161
+ mockFs.readFileSync.mockReturnValue(JSON.stringify({ otherSetting: 'value' }));
162
+ let writtenSettings;
163
+ mockFs.writeFileSync.mockImplementation((_path, content) => {
164
+ writtenSettings = JSON.parse(content);
165
+ });
166
+ const result = setupClaudeCodeSettings(projectRoot, { mode: 'full' });
167
+ for (const perm of memoryPermissions) {
168
+ expect(writtenSettings.permissions.allow).toContain(perm);
169
+ }
170
+ for (const perm of simulationPermissions) {
171
+ expect(writtenSettings.permissions.allow).toContain(perm);
172
+ }
173
+ expect(writtenSettings.otherSetting).toBe('value');
174
+ expect(result).toBe(true);
175
+ });
176
+ test('does not duplicate full permissions if already present', () => {
177
+ const allPermissions = [...memoryPermissions, ...simulationPermissions];
178
+ mockFs.existsSync.mockReturnValue(true);
179
+ mockFs.readFileSync.mockReturnValue(JSON.stringify({
180
+ permissions: {
181
+ allow: [...allPermissions, 'other-tool'],
182
+ },
183
+ }));
184
+ const result = setupClaudeCodeSettings(projectRoot, { mode: 'full' });
185
+ expect(mockFs.writeFileSync).not.toHaveBeenCalled();
186
+ expect(result).toBe(true);
187
+ });
188
+ test('adds simulation permissions to existing memory-only settings', () => {
189
+ mockFs.existsSync.mockReturnValue(true);
190
+ mockFs.readFileSync.mockReturnValue(JSON.stringify({
191
+ permissions: {
192
+ allow: [...memoryPermissions, 'other-tool'],
193
+ },
194
+ }));
195
+ let writtenSettings;
196
+ mockFs.writeFileSync.mockImplementation((_path, content) => {
197
+ writtenSettings = JSON.parse(content);
198
+ });
199
+ const result = setupClaudeCodeSettings(projectRoot, { mode: 'full' });
200
+ for (const perm of memoryPermissions) {
201
+ expect(writtenSettings.permissions.allow).toContain(perm);
202
+ }
203
+ for (const perm of simulationPermissions) {
204
+ expect(writtenSettings.permissions.allow).toContain(perm);
205
+ }
206
+ expect(writtenSettings.permissions.allow).toContain('other-tool');
207
+ // No duplicates
208
+ const memoryCount = writtenSettings.permissions.allow.filter((p) => p === 'Skill(codeyam-memory)').length;
209
+ expect(memoryCount).toBe(1);
159
210
  expect(result).toBe(true);
160
211
  });
161
212
  });
162
- // Note: Stop hook configuration tests removed - hook functionality is currently disabled
163
213
  describe('error handling', () => {
164
214
  test('handles malformed JSON gracefully and creates new settings', () => {
165
215
  mockFs.existsSync.mockReturnValue(true);
@@ -192,33 +242,25 @@ describe('setupClaudeCodeSettings', () => {
192
242
  });
193
243
  });
194
244
  describe('idempotency', () => {
195
- test('returns true when settings are already fully configured', () => {
245
+ test('returns true without writing when memory settings are fully configured', () => {
196
246
  mockFs.existsSync.mockReturnValue(true);
197
247
  mockFs.readFileSync.mockReturnValue(JSON.stringify({
198
248
  permissions: {
199
- allow: [
200
- 'Skill(codeyam:setup)',
201
- 'Skill(codeyam:sim)',
202
- 'Skill(codeyam:debug)',
203
- 'Skill(codeyam:test)',
204
- 'Skill(codeyam:verify)',
205
- 'Skill(codeyam:memory)',
206
- 'Skill(codeyam:new-rule)',
207
- 'Bash(codeyam)',
208
- 'Bash(codeyam:*)',
209
- 'Read(.codeyam/**)',
210
- 'Edit(.codeyam/**)',
211
- 'Write(.codeyam/**)',
212
- 'Glob(.codeyam/**)',
213
- 'Read(/tmp/codeyam/**)',
214
- 'Edit(/tmp/codeyam/**)',
215
- 'Write(/tmp/codeyam/**)',
216
- 'Glob(/tmp/codeyam/**)',
217
- ],
249
+ allow: [...memoryPermissions],
218
250
  },
219
251
  }));
220
252
  const result = setupClaudeCodeSettings(projectRoot);
221
- // Should not write if already configured
253
+ expect(mockFs.writeFileSync).not.toHaveBeenCalled();
254
+ expect(result).toBe(true);
255
+ });
256
+ test('returns true without writing when full settings are fully configured', () => {
257
+ mockFs.existsSync.mockReturnValue(true);
258
+ mockFs.readFileSync.mockReturnValue(JSON.stringify({
259
+ permissions: {
260
+ allow: [...memoryPermissions, ...simulationPermissions],
261
+ },
262
+ }));
263
+ const result = setupClaudeCodeSettings(projectRoot, { mode: 'full' });
222
264
  expect(mockFs.writeFileSync).not.toHaveBeenCalled();
223
265
  expect(result).toBe(true);
224
266
  });
@@ -1 +1 @@
1
- {"version":3,"file":"setupClaudeCodeSettings.test.js","sourceRoot":"","sources":["../../../../../src/utils/__tests__/setupClaudeCodeSettings.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setupClaudeCodeSettings.test.js","sourceRoot":"","sources":["../../../../../src/utils/__tests__/setupClaudeCodeSettings.test.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,13 @@ export function getAnalyzerPath(projectSlug) {
54
54
  export function getProjectPath(projectSlug) {
55
55
  return getSandboxProjectPath(projectSlug);
56
56
  }
57
+ /**
58
+ * Check if the analyzer template has been finalized (npm install + playwright + build)
59
+ */
60
+ export function isAnalyzerFinalized() {
61
+ const templatePath = getAnalyzerTemplatePath();
62
+ return fsSync.existsSync(path.join(templatePath, '.finalized'));
63
+ }
57
64
  /**
58
65
  * Check if analyzer exists for a project
59
66
  */
@@ -1 +1 @@
1
- {"version":3,"file":"analyzer.js","sourceRoot":"","sources":["../../../../src/utils/analyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analyzer.js","sourceRoot":"","sources":["../../../../src/utils/analyzer.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,7 @@ export async function startBackgroundServer(options) {
33
33
  const errLog = fs.openSync(path.join(logDir, 'background-server-error.log'), 'a');
34
34
  const child = spawn('node', [serverScriptPath], {
35
35
  detached: true,
36
+ windowsHide: true,
36
37
  stdio: ['ignore', outLog, errLog],
37
38
  env: {
38
39
  ...process.env,
@@ -41,6 +42,10 @@ export async function startBackgroundServer(options) {
41
42
  CODEYAM_PROJECT: project ? JSON.stringify(project) : '',
42
43
  CODEYAM_BRANCH: branch ? JSON.stringify(branch) : '',
43
44
  CODEYAM_PROCESS_NAME: `codeyam-${processName}`,
45
+ // Explicitly pass through tracing env var for debugging
46
+ ...(process.env.CODEYAM_TRACE_TRANSFORMS
47
+ ? { CODEYAM_TRACE_TRANSFORMS: process.env.CODEYAM_TRACE_TRANSFORMS }
48
+ : {}),
44
49
  },
45
50
  });
46
51
  // Detach the child process so it can run independently
@@ -1 +1 @@
1
- {"version":3,"file":"backgroundServer.js","sourceRoot":"","sources":["../../../../src/utils/backgroundServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backgroundServer.js","sourceRoot":"","sources":["../../../../src/utils/backgroundServer.ts"],"names":[],"mappings":"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"}
@@ -159,7 +159,7 @@ function generateDelta(options) {
159
159
  else {
160
160
  fs.writeFileSync(path.join(deltaDir, 'codeyam-log.txt'), '# Log file not found\n');
161
161
  }
162
- // 6. Add debug report if exists (from /codeyam:diagnose workflow)
162
+ // 6. Add debug report if exists (from /codeyam-diagnose workflow)
163
163
  const debugReportPath = path.join(projectRoot, '.codeyam', 'debug-report.md');
164
164
  if (fs.existsSync(debugReportPath)) {
165
165
  fs.copyFileSync(debugReportPath, path.join(deltaDir, 'debug-report.md'));
@@ -214,7 +214,7 @@ export async function generateBundleArchive(options) {
214
214
  ...(feedback || { issueType: 'other', source: 'cli' }),
215
215
  debugReport,
216
216
  };
217
- log('Found debug report from /codeyam:diagnose workflow');
217
+ log('Found debug report from /codeyam-diagnose workflow');
218
218
  }
219
219
  const metadata = {
220
220
  timestamp: new Date().toISOString(),
@@ -3,63 +3,88 @@ import * as path from 'path';
3
3
  import { fileURLToPath } from 'url';
4
4
  const __filename = fileURLToPath(import.meta.url);
5
5
  const __dirname = path.dirname(__filename);
6
- export async function installClaudeCodeSkills(projectRoot) {
6
+ export async function installClaudeCodeSkills(projectRoot, options) {
7
+ const mode = options?.mode ?? 'memory';
7
8
  try {
8
- // Create .claude/skills directories in project root
9
9
  const skillsDir = path.join(projectRoot, '.claude', 'skills');
10
- const setupSkillDir = path.join(skillsDir, 'codeyam:setup');
11
- const simSkillDir = path.join(skillsDir, 'codeyam:sim');
12
- const testSkillDir = path.join(skillsDir, 'codeyam:test');
13
- const verifySkillDir = path.join(skillsDir, 'codeyam:verify');
14
- const memorySkillDir = path.join(skillsDir, 'codeyam:memory');
15
- const newRuleSkillDir = path.join(skillsDir, 'codeyam:new-rule');
16
- await fs.mkdir(setupSkillDir, { recursive: true });
17
- await fs.mkdir(simSkillDir, { recursive: true });
18
- await fs.mkdir(testSkillDir, { recursive: true });
19
- await fs.mkdir(verifySkillDir, { recursive: true });
10
+ const templatesDir = path.join(__dirname, '../../templates');
11
+ // Memory + setup skills — always installed
12
+ const memorySkillDir = path.join(skillsDir, 'codeyam-memory');
13
+ const newRuleSkillDir = path.join(skillsDir, 'codeyam-new-rule');
14
+ const setupSkillDir = path.join(skillsDir, 'codeyam-setup');
20
15
  await fs.mkdir(memorySkillDir, { recursive: true });
21
16
  await fs.mkdir(newRuleSkillDir, { recursive: true });
22
- // Create .claude/commands directory for slash commands
23
- const commandsDir = path.join(projectRoot, '.claude', 'commands');
24
- await fs.mkdir(commandsDir, { recursive: true });
25
- // Create .codeyam/bin directory for helper scripts
17
+ await fs.mkdir(setupSkillDir, { recursive: true });
18
+ await fs.copyFile(path.join(templatesDir, 'codeyam-memory.md'), path.join(memorySkillDir, 'SKILL.md'));
19
+ await fs.copyFile(path.join(templatesDir, 'codeyam-new-rule.md'), path.join(newRuleSkillDir, 'SKILL.md'));
20
+ await fs.copyFile(path.join(templatesDir, 'codeyam-setup.md'), path.join(setupSkillDir, 'SKILL.md'));
21
+ // Simulation skills — only in full mode
22
+ if (mode === 'full') {
23
+ const simSkillDir = path.join(skillsDir, 'codeyam-sim');
24
+ const testSkillDir = path.join(skillsDir, 'codeyam-test');
25
+ const verifySkillDir = path.join(skillsDir, 'codeyam-verify');
26
+ await fs.mkdir(simSkillDir, { recursive: true });
27
+ await fs.mkdir(testSkillDir, { recursive: true });
28
+ await fs.mkdir(verifySkillDir, { recursive: true });
29
+ await fs.copyFile(path.join(templatesDir, 'codeyam-sim.md'), path.join(simSkillDir, 'SKILL.md'));
30
+ await fs.copyFile(path.join(templatesDir, 'codeyam-test.md'), path.join(testSkillDir, 'SKILL.md'));
31
+ await fs.copyFile(path.join(templatesDir, 'codeyam-verify.md'), path.join(verifySkillDir, 'SKILL.md'));
32
+ // Diagnose command — only in full mode
33
+ const commandsDir = path.join(projectRoot, '.claude', 'commands');
34
+ await fs.mkdir(commandsDir, { recursive: true });
35
+ await fs.copyFile(path.join(templatesDir, 'codeyam-diagnose.md'), path.join(commandsDir, 'codeyam-diagnose.md'));
36
+ }
37
+ // Helper scripts and hooks — always installed
26
38
  const binDir = path.join(projectRoot, '.codeyam', 'bin');
27
39
  await fs.mkdir(binDir, { recursive: true });
28
- // Find templates directory (go up from dist if built)
29
- const templatesDir = path.join(__dirname, '../../templates');
30
- // Copy skill files to proper SKILL.md locations
31
- const setupSkillSrc = path.join(templatesDir, 'codeyam:setup.md');
32
- const simSkillSrc = path.join(templatesDir, 'codeyam:sim.md');
33
- const testSkillSrc = path.join(templatesDir, 'codeyam:test.md');
34
- const verifySkillSrc = path.join(templatesDir, 'codeyam:verify.md');
35
- const memorySkillSrc = path.join(templatesDir, 'codeyam:memory.md');
36
- const newRuleSkillSrc = path.join(templatesDir, 'codeyam:new-rule.md');
37
- const setupSkillDest = path.join(setupSkillDir, 'SKILL.md');
38
- const simSkillDest = path.join(simSkillDir, 'SKILL.md');
39
- const testSkillDest = path.join(testSkillDir, 'SKILL.md');
40
- const verifySkillDest = path.join(verifySkillDir, 'SKILL.md');
41
- const memorySkillDest = path.join(memorySkillDir, 'SKILL.md');
42
- const newRuleSkillDest = path.join(newRuleSkillDir, 'SKILL.md');
43
- await fs.copyFile(setupSkillSrc, setupSkillDest);
44
- await fs.copyFile(simSkillSrc, simSkillDest);
45
- await fs.copyFile(testSkillSrc, testSkillDest);
46
- await fs.copyFile(verifySkillSrc, verifySkillDest);
47
- await fs.copyFile(memorySkillSrc, memorySkillDest);
48
- await fs.copyFile(newRuleSkillSrc, newRuleSkillDest);
49
- // Copy command files to .claude/commands/
50
- const diagnoseCommandSrc = path.join(templatesDir, 'codeyam:diagnose.md');
51
- const diagnoseCommandDest = path.join(commandsDir, 'codeyam:diagnose.md');
52
- await fs.copyFile(diagnoseCommandSrc, diagnoseCommandDest);
53
- // Copy memory pre-commit hook script to .codeyam/bin/
54
- const memoryHookSrc = path.join(templatesDir, 'codeyam-memory-hook.sh');
55
- const memoryHookDest = path.join(binDir, 'memory-hook.sh');
40
+ const rulesDir = path.join(projectRoot, '.codeyam', 'rules');
41
+ await fs.mkdir(rulesDir, { recursive: true });
42
+ // Memory pre-commit hook
56
43
  try {
57
- await fs.copyFile(memoryHookSrc, memoryHookDest);
44
+ const memoryHookDest = path.join(binDir, 'memory-hook.sh');
45
+ await fs.copyFile(path.join(templatesDir, 'codeyam-memory-hook.sh'), memoryHookDest);
58
46
  await fs.chmod(memoryHookDest, 0o755);
59
47
  }
60
48
  catch {
61
49
  // Hook script is optional - skill will create it if missing
62
50
  }
51
+ // Rule reflection hook
52
+ try {
53
+ const ruleReflectionHookDest = path.join(binDir, 'rule-reflection-hook.py');
54
+ await fs.copyFile(path.join(templatesDir, 'rule-reflection-hook.py'), ruleReflectionHookDest);
55
+ await fs.chmod(ruleReflectionHookDest, 0o755);
56
+ }
57
+ catch {
58
+ // Hook script is optional
59
+ }
60
+ // Rule notification hook
61
+ try {
62
+ const ruleNotificationHookDest = path.join(binDir, 'rule-notification-hook.py');
63
+ await fs.copyFile(path.join(templatesDir, 'rule-notification-hook.py'), ruleNotificationHookDest);
64
+ await fs.chmod(ruleNotificationHookDest, 0o755);
65
+ }
66
+ catch {
67
+ // Hook script is optional
68
+ }
69
+ // Prompt templates
70
+ try {
71
+ const promptsDestDir = path.join(binDir, 'prompts');
72
+ await fs.mkdir(promptsDestDir, { recursive: true });
73
+ const promptFiles = await fs.readdir(path.join(templatesDir, 'prompts'));
74
+ for (const file of promptFiles) {
75
+ await fs.copyFile(path.join(templatesDir, 'prompts', file), path.join(promptsDestDir, file));
76
+ }
77
+ }
78
+ catch {
79
+ // Prompt templates are optional
80
+ }
81
+ // Rules instructions
82
+ try {
83
+ await fs.copyFile(path.join(templatesDir, 'rules-instructions.md'), path.join(rulesDir, 'instructions.md'));
84
+ }
85
+ catch {
86
+ // Instructions file is optional - skill will guide if missing
87
+ }
63
88
  return {
64
89
  success: true,
65
90
  skillsPath: path.relative(projectRoot, skillsDir),
@@ -1 +1 @@
1
- {"version":3,"file":"install-skills.js","sourceRoot":"","sources":["../../../../src/utils/install-skills.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install-skills.js","sourceRoot":"","sources":["../../../../src/utils/install-skills.ts"],"names":[],"mappings":"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"}