@ai-coders/context 0.4.0 → 0.5.1

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 (435) hide show
  1. package/README.md +117 -146
  2. package/dist/fragments/compose.d.ts +30 -0
  3. package/dist/fragments/compose.d.ts.map +1 -0
  4. package/dist/fragments/compose.js +274 -0
  5. package/dist/fragments/compose.js.map +1 -0
  6. package/dist/fragments/extractors/index.d.ts +26 -0
  7. package/dist/fragments/extractors/index.d.ts.map +1 -0
  8. package/dist/fragments/extractors/index.js +58 -0
  9. package/dist/fragments/extractors/index.js.map +1 -0
  10. package/dist/fragments/extractors/module.d.ts +12 -0
  11. package/dist/fragments/extractors/module.d.ts.map +1 -0
  12. package/dist/fragments/extractors/module.js +302 -0
  13. package/dist/fragments/extractors/module.js.map +1 -0
  14. package/dist/fragments/extractors/project.d.ts +12 -0
  15. package/dist/fragments/extractors/project.d.ts.map +1 -0
  16. package/dist/fragments/extractors/project.js +274 -0
  17. package/dist/fragments/extractors/project.js.map +1 -0
  18. package/dist/fragments/extractors/semantic.d.ts +12 -0
  19. package/dist/fragments/extractors/semantic.d.ts.map +1 -0
  20. package/dist/fragments/extractors/semantic.js +329 -0
  21. package/dist/fragments/extractors/semantic.js.map +1 -0
  22. package/dist/fragments/index.d.ts +47 -0
  23. package/dist/fragments/index.d.ts.map +1 -0
  24. package/dist/fragments/index.js +75 -0
  25. package/dist/fragments/index.js.map +1 -0
  26. package/dist/fragments/query.d.ts +101 -0
  27. package/dist/fragments/query.d.ts.map +1 -0
  28. package/dist/fragments/query.js +200 -0
  29. package/dist/fragments/query.js.map +1 -0
  30. package/dist/fragments/render/compact.d.ts +15 -0
  31. package/dist/fragments/render/compact.d.ts.map +1 -0
  32. package/dist/fragments/render/compact.js +209 -0
  33. package/dist/fragments/render/compact.js.map +1 -0
  34. package/dist/fragments/render/index.d.ts +17 -0
  35. package/dist/fragments/render/index.d.ts.map +1 -0
  36. package/dist/fragments/render/index.js +40 -0
  37. package/dist/fragments/render/index.js.map +1 -0
  38. package/dist/fragments/render/json.d.ts +9 -0
  39. package/dist/fragments/render/json.d.ts.map +1 -0
  40. package/dist/fragments/render/json.js +44 -0
  41. package/dist/fragments/render/json.js.map +1 -0
  42. package/dist/fragments/render/markdown.d.ts +9 -0
  43. package/dist/fragments/render/markdown.d.ts.map +1 -0
  44. package/dist/fragments/render/markdown.js +291 -0
  45. package/dist/fragments/render/markdown.js.map +1 -0
  46. package/dist/fragments/store.d.ts +49 -0
  47. package/dist/fragments/store.d.ts.map +1 -0
  48. package/dist/fragments/store.js +161 -0
  49. package/dist/fragments/store.js.map +1 -0
  50. package/dist/fragments/types.d.ts +241 -0
  51. package/dist/fragments/types.d.ts.map +1 -0
  52. package/dist/fragments/types.js +8 -0
  53. package/dist/fragments/types.js.map +1 -0
  54. package/dist/generators/agents/agentGenerator.d.ts +8 -1
  55. package/dist/generators/agents/agentGenerator.d.ts.map +1 -1
  56. package/dist/generators/agents/agentGenerator.js +108 -10
  57. package/dist/generators/agents/agentGenerator.js.map +1 -1
  58. package/dist/generators/agents/templates/playbookTemplate.d.ts +3 -2
  59. package/dist/generators/agents/templates/playbookTemplate.d.ts.map +1 -1
  60. package/dist/generators/agents/templates/playbookTemplate.js +147 -45
  61. package/dist/generators/agents/templates/playbookTemplate.js.map +1 -1
  62. package/dist/generators/agents/templates/types.d.ts +9 -1
  63. package/dist/generators/agents/templates/types.d.ts.map +1 -1
  64. package/dist/generators/documentation/documentationGenerator.d.ts +2 -0
  65. package/dist/generators/documentation/documentationGenerator.d.ts.map +1 -1
  66. package/dist/generators/documentation/documentationGenerator.js +18 -3
  67. package/dist/generators/documentation/documentationGenerator.js.map +1 -1
  68. package/dist/generators/documentation/guideRegistry.d.ts.map +1 -1
  69. package/dist/generators/documentation/guideRegistry.js +0 -8
  70. package/dist/generators/documentation/guideRegistry.js.map +1 -1
  71. package/dist/generators/documentation/templates/apiReferenceTemplate.d.ts.map +1 -1
  72. package/dist/generators/documentation/templates/apiReferenceTemplate.js +3 -22
  73. package/dist/generators/documentation/templates/apiReferenceTemplate.js.map +1 -1
  74. package/dist/generators/documentation/templates/architectureTemplate.d.ts.map +1 -1
  75. package/dist/generators/documentation/templates/architectureTemplate.js +174 -36
  76. package/dist/generators/documentation/templates/architectureTemplate.js.map +1 -1
  77. package/dist/generators/documentation/templates/common.d.ts +33 -1
  78. package/dist/generators/documentation/templates/common.d.ts.map +1 -1
  79. package/dist/generators/documentation/templates/common.js +144 -10
  80. package/dist/generators/documentation/templates/common.js.map +1 -1
  81. package/dist/generators/documentation/templates/dataFlowTemplate.d.ts.map +1 -1
  82. package/dist/generators/documentation/templates/dataFlowTemplate.js +106 -22
  83. package/dist/generators/documentation/templates/dataFlowTemplate.js.map +1 -1
  84. package/dist/generators/documentation/templates/developmentWorkflowTemplate.d.ts.map +1 -1
  85. package/dist/generators/documentation/templates/developmentWorkflowTemplate.js +4 -19
  86. package/dist/generators/documentation/templates/developmentWorkflowTemplate.js.map +1 -1
  87. package/dist/generators/documentation/templates/glossaryTemplate.d.ts +1 -1
  88. package/dist/generators/documentation/templates/glossaryTemplate.d.ts.map +1 -1
  89. package/dist/generators/documentation/templates/glossaryTemplate.js +57 -25
  90. package/dist/generators/documentation/templates/glossaryTemplate.js.map +1 -1
  91. package/dist/generators/documentation/templates/indexTemplate.d.ts.map +1 -1
  92. package/dist/generators/documentation/templates/indexTemplate.js +1 -18
  93. package/dist/generators/documentation/templates/indexTemplate.js.map +1 -1
  94. package/dist/generators/documentation/templates/migrationTemplate.d.ts.map +1 -1
  95. package/dist/generators/documentation/templates/migrationTemplate.js +3 -23
  96. package/dist/generators/documentation/templates/migrationTemplate.js.map +1 -1
  97. package/dist/generators/documentation/templates/onboardingTemplate.d.ts.map +1 -1
  98. package/dist/generators/documentation/templates/onboardingTemplate.js +3 -23
  99. package/dist/generators/documentation/templates/onboardingTemplate.js.map +1 -1
  100. package/dist/generators/documentation/templates/projectOverviewTemplate.d.ts.map +1 -1
  101. package/dist/generators/documentation/templates/projectOverviewTemplate.js +94 -28
  102. package/dist/generators/documentation/templates/projectOverviewTemplate.js.map +1 -1
  103. package/dist/generators/documentation/templates/securityTemplate.d.ts.map +1 -1
  104. package/dist/generators/documentation/templates/securityTemplate.js +11 -22
  105. package/dist/generators/documentation/templates/securityTemplate.js.map +1 -1
  106. package/dist/generators/documentation/templates/testingTemplate.d.ts.map +1 -1
  107. package/dist/generators/documentation/templates/testingTemplate.js +4 -19
  108. package/dist/generators/documentation/templates/testingTemplate.js.map +1 -1
  109. package/dist/generators/documentation/templates/toolingTemplate.d.ts.map +1 -1
  110. package/dist/generators/documentation/templates/toolingTemplate.js +11 -25
  111. package/dist/generators/documentation/templates/toolingTemplate.js.map +1 -1
  112. package/dist/generators/documentation/templates/troubleshootingTemplate.d.ts.map +1 -1
  113. package/dist/generators/documentation/templates/troubleshootingTemplate.js +3 -23
  114. package/dist/generators/documentation/templates/troubleshootingTemplate.js.map +1 -1
  115. package/dist/generators/documentation/templates/types.d.ts +2 -1
  116. package/dist/generators/documentation/templates/types.d.ts.map +1 -1
  117. package/dist/generators/plans/planGenerator.d.ts +4 -0
  118. package/dist/generators/plans/planGenerator.d.ts.map +1 -1
  119. package/dist/generators/plans/planGenerator.js +30 -2
  120. package/dist/generators/plans/planGenerator.js.map +1 -1
  121. package/dist/generators/plans/templates/indexTemplate.d.ts.map +1 -1
  122. package/dist/generators/plans/templates/indexTemplate.js +3 -12
  123. package/dist/generators/plans/templates/indexTemplate.js.map +1 -1
  124. package/dist/generators/plans/templates/planTemplate.d.ts.map +1 -1
  125. package/dist/generators/plans/templates/planTemplate.js +57 -33
  126. package/dist/generators/plans/templates/planTemplate.js.map +1 -1
  127. package/dist/generators/plans/templates/types.d.ts +10 -0
  128. package/dist/generators/plans/templates/types.d.ts.map +1 -1
  129. package/dist/generators/shared/generatorUtils.d.ts.map +1 -1
  130. package/dist/generators/shared/generatorUtils.js +6 -9
  131. package/dist/generators/shared/generatorUtils.js.map +1 -1
  132. package/dist/index.d.ts.map +1 -1
  133. package/dist/index.js +646 -114
  134. package/dist/index.js.map +1 -1
  135. package/dist/prompts/defaults.d.ts +2 -2
  136. package/dist/prompts/defaults.d.ts.map +1 -1
  137. package/dist/prompts/defaults.js +26 -56
  138. package/dist/prompts/defaults.js.map +1 -1
  139. package/dist/services/ai/agentEvents.d.ts +45 -0
  140. package/dist/services/ai/agentEvents.d.ts.map +1 -0
  141. package/dist/services/ai/agentEvents.js +61 -0
  142. package/dist/services/ai/agentEvents.js.map +1 -0
  143. package/dist/services/ai/agents/documentationAgent.d.ts +53 -0
  144. package/dist/services/ai/agents/documentationAgent.d.ts.map +1 -0
  145. package/dist/services/ai/agents/documentationAgent.js +217 -0
  146. package/dist/services/ai/agents/documentationAgent.js.map +1 -0
  147. package/dist/services/ai/agents/index.d.ts +7 -0
  148. package/dist/services/ai/agents/index.d.ts.map +1 -0
  149. package/dist/services/ai/agents/index.js +10 -0
  150. package/dist/services/ai/agents/index.js.map +1 -0
  151. package/dist/services/ai/agents/planAgent.d.ts +68 -0
  152. package/dist/services/ai/agents/planAgent.d.ts.map +1 -0
  153. package/dist/services/ai/agents/planAgent.js +342 -0
  154. package/dist/services/ai/agents/planAgent.js.map +1 -0
  155. package/dist/services/ai/agents/playbookAgent.d.ts +54 -0
  156. package/dist/services/ai/agents/playbookAgent.d.ts.map +1 -0
  157. package/dist/services/ai/agents/playbookAgent.js +244 -0
  158. package/dist/services/ai/agents/playbookAgent.js.map +1 -0
  159. package/dist/services/ai/aiSdkClient.d.ts +67 -0
  160. package/dist/services/ai/aiSdkClient.d.ts.map +1 -0
  161. package/dist/services/ai/aiSdkClient.js +143 -0
  162. package/dist/services/ai/aiSdkClient.js.map +1 -0
  163. package/dist/services/ai/index.d.ts +7 -0
  164. package/dist/services/ai/index.d.ts.map +1 -0
  165. package/dist/services/ai/index.js +49 -0
  166. package/dist/services/ai/index.js.map +1 -0
  167. package/dist/services/ai/prompts/index.d.ts +2 -0
  168. package/dist/services/ai/prompts/index.d.ts.map +1 -0
  169. package/dist/services/ai/prompts/index.js +12 -0
  170. package/dist/services/ai/prompts/index.js.map +1 -0
  171. package/dist/services/ai/prompts/sharedPrompts.d.ts +33 -0
  172. package/dist/services/ai/prompts/sharedPrompts.d.ts.map +1 -0
  173. package/dist/services/ai/prompts/sharedPrompts.js +136 -0
  174. package/dist/services/ai/prompts/sharedPrompts.js.map +1 -0
  175. package/dist/services/ai/providerFactory.d.ts +35 -0
  176. package/dist/services/ai/providerFactory.d.ts.map +1 -0
  177. package/dist/services/ai/providerFactory.js +107 -0
  178. package/dist/services/ai/providerFactory.js.map +1 -0
  179. package/dist/services/ai/schemas.d.ts +331 -0
  180. package/dist/services/ai/schemas.d.ts.map +1 -0
  181. package/dist/services/ai/schemas.js +236 -0
  182. package/dist/services/ai/schemas.js.map +1 -0
  183. package/dist/services/ai/toolRegistry.d.ts +27 -0
  184. package/dist/services/ai/toolRegistry.d.ts.map +1 -0
  185. package/dist/services/ai/toolRegistry.js +126 -0
  186. package/dist/services/ai/toolRegistry.js.map +1 -0
  187. package/dist/services/ai/tools/analyzeSymbolsTool.d.ts +33 -0
  188. package/dist/services/ai/tools/analyzeSymbolsTool.d.ts.map +1 -0
  189. package/dist/services/ai/tools/analyzeSymbolsTool.js +57 -0
  190. package/dist/services/ai/tools/analyzeSymbolsTool.js.map +1 -0
  191. package/dist/services/ai/tools/checkScaffoldingTool.d.ts +18 -0
  192. package/dist/services/ai/tools/checkScaffoldingTool.d.ts.map +1 -0
  193. package/dist/services/ai/tools/checkScaffoldingTool.js +86 -0
  194. package/dist/services/ai/tools/checkScaffoldingTool.js.map +1 -0
  195. package/dist/services/ai/tools/fillScaffoldingTool.d.ts +108 -0
  196. package/dist/services/ai/tools/fillScaffoldingTool.d.ts.map +1 -0
  197. package/dist/services/ai/tools/fillScaffoldingTool.js +463 -0
  198. package/dist/services/ai/tools/fillScaffoldingTool.js.map +1 -0
  199. package/dist/services/ai/tools/getFileStructureTool.d.ts +29 -0
  200. package/dist/services/ai/tools/getFileStructureTool.d.ts.map +1 -0
  201. package/dist/services/ai/tools/getFileStructureTool.js +48 -0
  202. package/dist/services/ai/tools/getFileStructureTool.js.map +1 -0
  203. package/dist/services/ai/tools/index.d.ts +20 -0
  204. package/dist/services/ai/tools/index.d.ts.map +1 -0
  205. package/dist/services/ai/tools/index.js +68 -0
  206. package/dist/services/ai/tools/index.js.map +1 -0
  207. package/dist/services/ai/tools/initializeContextTool.d.ts +25 -0
  208. package/dist/services/ai/tools/initializeContextTool.d.ts.map +1 -0
  209. package/dist/services/ai/tools/initializeContextTool.js +121 -0
  210. package/dist/services/ai/tools/initializeContextTool.js.map +1 -0
  211. package/dist/services/ai/tools/listFilesTool.d.ts +18 -0
  212. package/dist/services/ai/tools/listFilesTool.d.ts.map +1 -0
  213. package/dist/services/ai/tools/listFilesTool.js +34 -0
  214. package/dist/services/ai/tools/listFilesTool.js.map +1 -0
  215. package/dist/services/ai/tools/readFileTool.d.ts +17 -0
  216. package/dist/services/ai/tools/readFileTool.d.ts.map +1 -0
  217. package/dist/services/ai/tools/readFileTool.js +63 -0
  218. package/dist/services/ai/tools/readFileTool.js.map +1 -0
  219. package/dist/services/ai/tools/scaffoldPlanTool.d.ts +19 -0
  220. package/dist/services/ai/tools/scaffoldPlanTool.d.ts.map +1 -0
  221. package/dist/services/ai/tools/scaffoldPlanTool.js +81 -0
  222. package/dist/services/ai/tools/scaffoldPlanTool.js.map +1 -0
  223. package/dist/services/ai/tools/searchCodeTool.d.ts +25 -0
  224. package/dist/services/ai/tools/searchCodeTool.d.ts.map +1 -0
  225. package/dist/services/ai/tools/searchCodeTool.js +96 -0
  226. package/dist/services/ai/tools/searchCodeTool.js.map +1 -0
  227. package/dist/services/fill/fillService.d.ts +11 -1
  228. package/dist/services/fill/fillService.d.ts.map +1 -1
  229. package/dist/services/fill/fillService.js +157 -40
  230. package/dist/services/fill/fillService.js.map +1 -1
  231. package/dist/services/init/initService.d.ts +1 -0
  232. package/dist/services/init/initService.d.ts.map +1 -1
  233. package/dist/services/init/initService.js +12 -7
  234. package/dist/services/init/initService.js.map +1 -1
  235. package/dist/services/llmClientFactory.d.ts +36 -2
  236. package/dist/services/llmClientFactory.d.ts.map +1 -1
  237. package/dist/services/llmClientFactory.js +57 -11
  238. package/dist/services/llmClientFactory.js.map +1 -1
  239. package/dist/services/mcp/index.d.ts +2 -0
  240. package/dist/services/mcp/index.d.ts.map +1 -0
  241. package/dist/services/mcp/index.js +7 -0
  242. package/dist/services/mcp/index.js.map +1 -0
  243. package/dist/services/mcp/mcpServer.d.ts +45 -0
  244. package/dist/services/mcp/mcpServer.d.ts.map +1 -0
  245. package/dist/services/mcp/mcpServer.js +411 -0
  246. package/dist/services/mcp/mcpServer.js.map +1 -0
  247. package/dist/services/openRouterClient.js +1 -1
  248. package/dist/services/openRouterClient.js.map +1 -1
  249. package/dist/services/passthrough/commandRouter.d.ts +53 -0
  250. package/dist/services/passthrough/commandRouter.d.ts.map +1 -0
  251. package/dist/services/passthrough/commandRouter.js +349 -0
  252. package/dist/services/passthrough/commandRouter.js.map +1 -0
  253. package/dist/services/passthrough/index.d.ts +7 -0
  254. package/dist/services/passthrough/index.d.ts.map +1 -0
  255. package/dist/services/passthrough/index.js +23 -0
  256. package/dist/services/passthrough/index.js.map +1 -0
  257. package/dist/services/passthrough/protocol.d.ts +269 -0
  258. package/dist/services/passthrough/protocol.d.ts.map +1 -0
  259. package/dist/services/passthrough/protocol.js +151 -0
  260. package/dist/services/passthrough/protocol.js.map +1 -0
  261. package/dist/services/passthrough/stdinReader.d.ts +42 -0
  262. package/dist/services/passthrough/stdinReader.d.ts.map +1 -0
  263. package/dist/services/passthrough/stdinReader.js +111 -0
  264. package/dist/services/passthrough/stdinReader.js.map +1 -0
  265. package/dist/services/plan/planService.d.ts +3 -1
  266. package/dist/services/plan/planService.d.ts.map +1 -1
  267. package/dist/services/plan/planService.js +49 -41
  268. package/dist/services/plan/planService.js.map +1 -1
  269. package/dist/services/semantic/codebaseAnalyzer.d.ts +40 -0
  270. package/dist/services/semantic/codebaseAnalyzer.d.ts.map +1 -0
  271. package/dist/services/semantic/codebaseAnalyzer.js +540 -0
  272. package/dist/services/semantic/codebaseAnalyzer.js.map +1 -0
  273. package/dist/services/semantic/contextBuilder.d.ts +79 -0
  274. package/dist/services/semantic/contextBuilder.d.ts.map +1 -0
  275. package/dist/services/semantic/contextBuilder.js +538 -0
  276. package/dist/services/semantic/contextBuilder.js.map +1 -0
  277. package/dist/services/semantic/index.d.ts +12 -0
  278. package/dist/services/semantic/index.d.ts.map +1 -0
  279. package/dist/services/semantic/index.js +33 -0
  280. package/dist/services/semantic/index.js.map +1 -0
  281. package/dist/services/semantic/lsp/index.d.ts +2 -0
  282. package/dist/services/semantic/lsp/index.d.ts.map +1 -0
  283. package/dist/services/semantic/lsp/index.js +6 -0
  284. package/dist/services/semantic/lsp/index.js.map +1 -0
  285. package/dist/services/semantic/lsp/lspLayer.d.ts +32 -0
  286. package/dist/services/semantic/lsp/lspLayer.d.ts.map +1 -0
  287. package/dist/services/semantic/lsp/lspLayer.js +378 -0
  288. package/dist/services/semantic/lsp/lspLayer.js.map +1 -0
  289. package/dist/services/semantic/treeSitter/index.d.ts +2 -0
  290. package/dist/services/semantic/treeSitter/index.d.ts.map +1 -0
  291. package/dist/services/semantic/treeSitter/index.js +6 -0
  292. package/dist/services/semantic/treeSitter/index.js.map +1 -0
  293. package/dist/services/semantic/treeSitter/treeSitterLayer.d.ts +37 -0
  294. package/dist/services/semantic/treeSitter/treeSitterLayer.d.ts.map +1 -0
  295. package/dist/services/semantic/treeSitter/treeSitterLayer.js +518 -0
  296. package/dist/services/semantic/treeSitter/treeSitterLayer.js.map +1 -0
  297. package/dist/services/semantic/types.d.ts +122 -0
  298. package/dist/services/semantic/types.d.ts.map +1 -0
  299. package/dist/services/semantic/types.js +31 -0
  300. package/dist/services/semantic/types.js.map +1 -0
  301. package/dist/services/serve/index.d.ts +2 -0
  302. package/dist/services/serve/index.d.ts.map +1 -0
  303. package/dist/services/serve/index.js +6 -0
  304. package/dist/services/serve/index.js.map +1 -0
  305. package/dist/services/serve/serveService.d.ts +38 -0
  306. package/dist/services/serve/serveService.d.ts.map +1 -0
  307. package/dist/services/serve/serveService.js +99 -0
  308. package/dist/services/serve/serveService.js.map +1 -0
  309. package/dist/services/shared/llmConfig.d.ts +19 -3
  310. package/dist/services/shared/llmConfig.d.ts.map +1 -1
  311. package/dist/services/shared/llmConfig.js +39 -10
  312. package/dist/services/shared/llmConfig.js.map +1 -1
  313. package/dist/services/state/index.d.ts +2 -0
  314. package/dist/services/state/index.d.ts.map +1 -0
  315. package/dist/services/state/index.js +6 -0
  316. package/dist/services/state/index.js.map +1 -0
  317. package/dist/services/state/stateDetector.d.ts +53 -0
  318. package/dist/services/state/stateDetector.d.ts.map +1 -0
  319. package/dist/services/state/stateDetector.js +189 -0
  320. package/dist/services/state/stateDetector.js.map +1 -0
  321. package/dist/services/sync/index.d.ts +6 -0
  322. package/dist/services/sync/index.d.ts.map +1 -0
  323. package/dist/services/sync/index.js +16 -0
  324. package/dist/services/sync/index.js.map +1 -0
  325. package/dist/services/sync/markdownReferenceHandler.d.ts +3 -0
  326. package/dist/services/sync/markdownReferenceHandler.d.ts.map +1 -0
  327. package/dist/services/sync/markdownReferenceHandler.js +133 -0
  328. package/dist/services/sync/markdownReferenceHandler.js.map +1 -0
  329. package/dist/services/sync/presets.d.ts +6 -0
  330. package/dist/services/sync/presets.d.ts.map +1 -0
  331. package/dist/services/sync/presets.js +49 -0
  332. package/dist/services/sync/presets.js.map +1 -0
  333. package/dist/services/sync/symlinkHandler.d.ts +7 -0
  334. package/dist/services/sync/symlinkHandler.d.ts.map +1 -0
  335. package/dist/services/sync/symlinkHandler.js +129 -0
  336. package/dist/services/sync/symlinkHandler.js.map +1 -0
  337. package/dist/services/sync/syncService.d.ts +15 -0
  338. package/dist/services/sync/syncService.d.ts.map +1 -0
  339. package/dist/services/sync/syncService.js +222 -0
  340. package/dist/services/sync/syncService.js.map +1 -0
  341. package/dist/services/sync/types.d.ts +62 -0
  342. package/dist/services/sync/types.d.ts.map +1 -0
  343. package/dist/services/sync/types.js +3 -0
  344. package/dist/services/sync/types.js.map +1 -0
  345. package/dist/services/update/index.d.ts +2 -0
  346. package/dist/services/update/index.d.ts.map +1 -0
  347. package/dist/services/update/index.js +6 -0
  348. package/dist/services/update/index.js.map +1 -0
  349. package/dist/services/update/updateService.d.ts +64 -0
  350. package/dist/services/update/updateService.d.ts.map +1 -0
  351. package/dist/services/update/updateService.js +295 -0
  352. package/dist/services/update/updateService.js.map +1 -0
  353. package/dist/types.d.ts +2 -6
  354. package/dist/types.d.ts.map +1 -1
  355. package/dist/utils/cliUI.d.ts +33 -0
  356. package/dist/utils/cliUI.d.ts.map +1 -1
  357. package/dist/utils/cliUI.js +157 -107
  358. package/dist/utils/cliUI.js.map +1 -1
  359. package/dist/utils/contentSanitizer.d.ts +42 -0
  360. package/dist/utils/contentSanitizer.d.ts.map +1 -0
  361. package/dist/utils/contentSanitizer.js +238 -0
  362. package/dist/utils/contentSanitizer.js.map +1 -0
  363. package/dist/utils/frontMatter.d.ts +55 -0
  364. package/dist/utils/frontMatter.d.ts.map +1 -0
  365. package/dist/utils/frontMatter.js +173 -0
  366. package/dist/utils/frontMatter.js.map +1 -0
  367. package/dist/utils/gitService.d.ts.map +1 -1
  368. package/dist/utils/gitService.js +12 -14
  369. package/dist/utils/gitService.js.map +1 -1
  370. package/dist/utils/i18n.d.ts +101 -13
  371. package/dist/utils/i18n.d.ts.map +1 -1
  372. package/dist/utils/i18n.js +204 -28
  373. package/dist/utils/i18n.js.map +1 -1
  374. package/dist/utils/prompts/configSummary.d.ts +7 -0
  375. package/dist/utils/prompts/configSummary.d.ts.map +1 -0
  376. package/dist/utils/prompts/configSummary.js +63 -0
  377. package/dist/utils/prompts/configSummary.js.map +1 -0
  378. package/dist/utils/prompts/index.d.ts +22 -0
  379. package/dist/utils/prompts/index.d.ts.map +1 -0
  380. package/dist/utils/prompts/index.js +122 -0
  381. package/dist/utils/prompts/index.js.map +1 -0
  382. package/dist/utils/prompts/llmPrompts.d.ts +11 -0
  383. package/dist/utils/prompts/llmPrompts.d.ts.map +1 -0
  384. package/dist/utils/prompts/llmPrompts.js +96 -0
  385. package/dist/utils/prompts/llmPrompts.js.map +1 -0
  386. package/dist/utils/prompts/smartDefaults.d.ts +15 -0
  387. package/dist/utils/prompts/smartDefaults.d.ts.map +1 -0
  388. package/dist/utils/prompts/smartDefaults.js +105 -0
  389. package/dist/utils/prompts/smartDefaults.js.map +1 -0
  390. package/dist/utils/prompts/types.d.ts +38 -0
  391. package/dist/utils/prompts/types.d.ts.map +1 -0
  392. package/dist/utils/prompts/types.js +3 -0
  393. package/dist/utils/prompts/types.js.map +1 -0
  394. package/dist/utils/theme.d.ts +66 -0
  395. package/dist/utils/theme.d.ts.map +1 -0
  396. package/dist/utils/theme.js +93 -0
  397. package/dist/utils/theme.js.map +1 -0
  398. package/dist/version.d.ts +8 -0
  399. package/dist/version.d.ts.map +1 -0
  400. package/dist/version.js +15 -0
  401. package/dist/version.js.map +1 -0
  402. package/package.json +12 -2
  403. package/prompts/update_scaffold_prompt.md +14 -34
  404. package/dist/commands/shared/agents.d.ts +0 -2
  405. package/dist/commands/shared/agents.d.ts.map +0 -1
  406. package/dist/commands/shared/agents.js +0 -15
  407. package/dist/commands/shared/agents.js.map +0 -1
  408. package/dist/commands/shared/selection.d.ts +0 -12
  409. package/dist/commands/shared/selection.d.ts.map +0 -1
  410. package/dist/commands/shared/selection.js +0 -95
  411. package/dist/commands/shared/selection.js.map +0 -1
  412. package/dist/generators/documentation/templates/frontMatter.d.ts +0 -11
  413. package/dist/generators/documentation/templates/frontMatter.d.ts.map +0 -1
  414. package/dist/generators/documentation/templates/frontMatter.js +0 -29
  415. package/dist/generators/documentation/templates/frontMatter.js.map +0 -1
  416. package/dist/services/anthropicClient.d.ts +0 -12
  417. package/dist/services/anthropicClient.d.ts.map +0 -1
  418. package/dist/services/anthropicClient.js +0 -98
  419. package/dist/services/anthropicClient.js.map +0 -1
  420. package/dist/services/geminiClient.d.ts +0 -12
  421. package/dist/services/geminiClient.d.ts.map +0 -1
  422. package/dist/services/geminiClient.js +0 -96
  423. package/dist/services/geminiClient.js.map +0 -1
  424. package/dist/services/grokClient.d.ts +0 -12
  425. package/dist/services/grokClient.d.ts.map +0 -1
  426. package/dist/services/grokClient.js +0 -101
  427. package/dist/services/grokClient.js.map +0 -1
  428. package/dist/services/openaiClient.d.ts +0 -12
  429. package/dist/services/openaiClient.d.ts.map +0 -1
  430. package/dist/services/openaiClient.js +0 -98
  431. package/dist/services/openaiClient.js.map +0 -1
  432. package/dist/utils/pricing.d.ts +0 -14
  433. package/dist/utils/pricing.d.ts.map +0 -1
  434. package/dist/utils/pricing.js +0 -115
  435. package/dist/utils/pricing.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fragments/extractors/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EACjB,YAAY,EACb,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAKxE,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAGD,KAAK,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;AAE5C,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,iBAAiB,CAAC,eAAe,CAAC,EAAE,CAAC;IACjD,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,WAAW,EAAE,CAAC;IAClD,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,iBAAiB,CAAC,eAAe,CAAC,EAAE,CAAC;CACrE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,iBAAiB,CAuC3D;AAGD,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ /**
3
+ * Fragment Extractors - Registry and common utilities
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.extractSemanticFragments = exports.extractModuleFragments = exports.extractProjectFragments = void 0;
7
+ exports.createExtractorRegistry = createExtractorRegistry;
8
+ const project_js_1 = require("./project.js");
9
+ const module_js_1 = require("./module.js");
10
+ const semantic_js_1 = require("./semantic.js");
11
+ /**
12
+ * Create the default extractor registry with all built-in extractors
13
+ */
14
+ function createExtractorRegistry() {
15
+ const extractors = [
16
+ {
17
+ name: 'project',
18
+ produces: ['project-overview', 'config', 'command'],
19
+ extract: project_js_1.extractProjectFragments,
20
+ },
21
+ {
22
+ name: 'module',
23
+ produces: ['module', 'file-summary'],
24
+ extract: module_js_1.extractModuleFragments,
25
+ },
26
+ {
27
+ name: 'semantic',
28
+ produces: [
29
+ 'type-definition',
30
+ 'function',
31
+ 'pattern',
32
+ 'dependency-graph',
33
+ ],
34
+ extract: semantic_js_1.extractSemanticFragments,
35
+ },
36
+ ];
37
+ return {
38
+ extractors,
39
+ extractAll(input) {
40
+ const fragments = [];
41
+ for (const extractor of extractors) {
42
+ fragments.push(...extractor.extract(input));
43
+ }
44
+ return fragments;
45
+ },
46
+ getByType(type) {
47
+ return extractors.filter((e) => e.produces.includes(type));
48
+ },
49
+ };
50
+ }
51
+ // Re-export individual extractors
52
+ var project_js_2 = require("./project.js");
53
+ Object.defineProperty(exports, "extractProjectFragments", { enumerable: true, get: function () { return project_js_2.extractProjectFragments; } });
54
+ var module_js_2 = require("./module.js");
55
+ Object.defineProperty(exports, "extractModuleFragments", { enumerable: true, get: function () { return module_js_2.extractModuleFragments; } });
56
+ var semantic_js_2 = require("./semantic.js");
57
+ Object.defineProperty(exports, "extractSemanticFragments", { enumerable: true, get: function () { return semantic_js_2.extractSemanticFragments; } });
58
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/fragments/extractors/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAgCH,0DAuCC;AA9DD,6CAAuD;AACvD,2CAAqD;AACrD,+CAAyD;AAkBzD;;GAEG;AACH,SAAgB,uBAAuB;IACrC,MAAM,UAAU,GAAyC;QACvD;YACE,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,CAAC,kBAAkB,EAAE,QAAQ,EAAE,SAAS,CAAC;YACnD,OAAO,EAAE,oCAAuB;SACjC;QACD;YACE,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,CAAC,QAAQ,EAAE,cAAc,CAAC;YACpC,OAAO,EAAE,kCAAsB;SAChC;QACD;YACE,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,iBAAiB;gBACjB,UAAU;gBACV,SAAS;gBACT,kBAAkB;aACnB;YACD,OAAO,EAAE,sCAAwB;SAClC;KACF,CAAC;IAEF,OAAO;QACL,UAAU;QAEV,UAAU,CAAC,KAAsB;YAC/B,MAAM,SAAS,GAAkB,EAAE,CAAC;YACpC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;gBACnC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9C,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,SAAS,CAAC,IAAkB;YAC1B,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7D,CAAC;KACF,CAAC;AACJ,CAAC;AAED,kCAAkC;AAClC,2CAAuD;AAA9C,qHAAA,uBAAuB,OAAA;AAChC,yCAAqD;AAA5C,mHAAA,sBAAsB,OAAA;AAC/B,6CAAyD;AAAhD,uHAAA,wBAAwB,OAAA"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Module Extractor - Extract module and file-level fragments
3
+ */
4
+ import type { ContextFragment } from '../types.js';
5
+ import type { ExtractionInput } from './index.js';
6
+ type AnyFragment = ContextFragment<unknown>;
7
+ /**
8
+ * Extract module and file fragments from repo structure
9
+ */
10
+ export declare function extractModuleFragments(input: ExtractionInput): AnyFragment[];
11
+ export {};
12
+ //# sourceMappingURL=module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../src/fragments/extractors/module.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EACV,eAAe,EAGhB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlD,KAAK,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;AAE5C;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,eAAe,GACrB,WAAW,EAAE,CAyJf"}
@@ -0,0 +1,302 @@
1
+ "use strict";
2
+ /**
3
+ * Module Extractor - Extract module and file-level fragments
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.extractModuleFragments = extractModuleFragments;
40
+ const path = __importStar(require("path"));
41
+ /**
42
+ * Extract module and file fragments from repo structure
43
+ */
44
+ function extractModuleFragments(input) {
45
+ const fragments = [];
46
+ const { repoStructure, semantics } = input;
47
+ // Extract module fragments from top-level directories
48
+ for (const dirStats of repoStructure.topLevelDirectoryStats) {
49
+ const dirFiles = repoStructure.files.filter((f) => f.relativePath.startsWith(dirStats.name + '/'));
50
+ // Detect exports by looking for index files
51
+ const indexFile = dirFiles.find((f) => f.relativePath === `${dirStats.name}/index.ts` ||
52
+ f.relativePath === `${dirStats.name}/index.js`);
53
+ // Get exported symbols from semantics if available
54
+ const moduleExports = [];
55
+ const moduleDependencies = [];
56
+ if (semantics) {
57
+ // Find exports from this module
58
+ const moduleSymbols = [
59
+ ...semantics.symbols.classes,
60
+ ...semantics.symbols.interfaces,
61
+ ...semantics.symbols.functions,
62
+ ...semantics.symbols.types,
63
+ ].filter((s) => s.exported && s.location.file.includes(`${dirStats.name}/`));
64
+ moduleExports.push(...moduleSymbols.map((s) => s.name));
65
+ // Find dependencies from the dependency graph
66
+ if (semantics.dependencies?.graph) {
67
+ for (const [source, targets] of semantics.dependencies.graph) {
68
+ if (source.includes(`${dirStats.name}/`)) {
69
+ for (const target of targets) {
70
+ if (!target.includes(`${dirStats.name}/`)) {
71
+ const depModule = extractModuleName(target);
72
+ if (depModule && !moduleDependencies.includes(depModule)) {
73
+ moduleDependencies.push(depModule);
74
+ }
75
+ }
76
+ }
77
+ }
78
+ }
79
+ }
80
+ }
81
+ const moduleData = {
82
+ name: dirStats.name,
83
+ path: dirStats.name,
84
+ description: describeModule(dirStats.name),
85
+ exports: moduleExports,
86
+ dependencies: moduleDependencies,
87
+ };
88
+ const moduleFragment = {
89
+ id: `module-${dirStats.name}`,
90
+ type: 'module',
91
+ data: moduleData,
92
+ summary: `${dirStats.name}/: ${dirStats.fileCount} files, ${describeModule(dirStats.name) || 'module'}`,
93
+ refs: {
94
+ files: indexFile ? [indexFile.relativePath] : [],
95
+ fragments: [],
96
+ symbols: moduleExports,
97
+ },
98
+ meta: {
99
+ priority: modulePriority(dirStats.name),
100
+ tags: ['module', moduleCategory(dirStats.name)],
101
+ scope: 'module',
102
+ freshness: new Date(),
103
+ },
104
+ };
105
+ fragments.push(moduleFragment);
106
+ }
107
+ // Extract file summary fragments for important files
108
+ const importantExtensions = ['.ts', '.tsx', '.js', '.jsx', '.py', '.go', '.rs'];
109
+ const importantFiles = repoStructure.files.filter((f) => importantExtensions.includes(f.extension) &&
110
+ !f.relativePath.includes('test') &&
111
+ !f.relativePath.includes('spec') &&
112
+ !f.relativePath.includes('.d.ts'));
113
+ // Limit to most important files based on semantics or heuristics
114
+ const filesToProcess = importantFiles
115
+ .sort((a, b) => {
116
+ // Prioritize index files, main entry points
117
+ const aScore = fileImportance(a.relativePath);
118
+ const bScore = fileImportance(b.relativePath);
119
+ return bScore - aScore;
120
+ })
121
+ .slice(0, 50); // Limit to 50 files
122
+ for (const file of filesToProcess) {
123
+ const fileExports = [];
124
+ const fileImports = [];
125
+ let filePurpose;
126
+ // Get from semantics if available
127
+ if (semantics) {
128
+ const fileSymbols = [
129
+ ...semantics.symbols.classes,
130
+ ...semantics.symbols.interfaces,
131
+ ...semantics.symbols.functions,
132
+ ...semantics.symbols.types,
133
+ ].filter((s) => s.location.file.includes(file.relativePath));
134
+ fileExports.push(...fileSymbols.filter((s) => s.exported).map((s) => s.name));
135
+ // Infer purpose from symbol names and types
136
+ filePurpose = inferFilePurpose(file.relativePath, fileSymbols);
137
+ }
138
+ const fileSummaryData = {
139
+ path: file.relativePath,
140
+ language: extensionToLanguage(file.extension),
141
+ lines: 0, // Would need to read file to get this
142
+ exports: fileExports,
143
+ imports: fileImports,
144
+ purpose: filePurpose,
145
+ };
146
+ const fileFragment = {
147
+ id: `file-${file.relativePath.replace(/[^a-z0-9]/gi, '-')}`,
148
+ type: 'file-summary',
149
+ data: fileSummaryData,
150
+ summary: filePurpose || `File: ${file.relativePath}`,
151
+ refs: {
152
+ files: [file.relativePath],
153
+ fragments: [],
154
+ symbols: fileExports,
155
+ },
156
+ meta: {
157
+ priority: fileImportance(file.relativePath),
158
+ tags: ['file', extensionToLanguage(file.extension)],
159
+ scope: 'file',
160
+ freshness: new Date(),
161
+ },
162
+ };
163
+ fragments.push(fileFragment);
164
+ }
165
+ return fragments;
166
+ }
167
+ function extractModuleName(filePath) {
168
+ const parts = filePath.split('/');
169
+ if (parts.length > 1) {
170
+ return parts[0];
171
+ }
172
+ return null;
173
+ }
174
+ function describeModule(name) {
175
+ const descriptions = {
176
+ src: 'Source code',
177
+ lib: 'Library code',
178
+ components: 'UI components',
179
+ pages: 'Page components',
180
+ utils: 'Utility functions',
181
+ helpers: 'Helper functions',
182
+ services: 'Service layer',
183
+ api: 'API layer',
184
+ hooks: 'React hooks',
185
+ store: 'State management',
186
+ types: 'Type definitions',
187
+ models: 'Data models',
188
+ controllers: 'Controllers',
189
+ routes: 'Route definitions',
190
+ middleware: 'Middleware',
191
+ config: 'Configuration',
192
+ tests: 'Test files',
193
+ __tests__: 'Test files',
194
+ public: 'Static assets',
195
+ assets: 'Assets',
196
+ styles: 'Stylesheets',
197
+ generators: 'Code generators',
198
+ templates: 'Templates',
199
+ prompts: 'AI prompts',
200
+ fragments: 'Context fragments',
201
+ };
202
+ return descriptions[name];
203
+ }
204
+ function modulePriority(name) {
205
+ const highPriority = ['src', 'lib', 'components', 'services', 'api'];
206
+ const mediumPriority = ['utils', 'helpers', 'types', 'models', 'hooks'];
207
+ const lowPriority = ['tests', '__tests__', 'public', 'assets', 'styles'];
208
+ if (highPriority.includes(name))
209
+ return 8;
210
+ if (mediumPriority.includes(name))
211
+ return 6;
212
+ if (lowPriority.includes(name))
213
+ return 3;
214
+ return 5;
215
+ }
216
+ function moduleCategory(name) {
217
+ if (['src', 'lib'].includes(name))
218
+ return 'core';
219
+ if (['components', 'pages', 'views'].includes(name))
220
+ return 'ui';
221
+ if (['services', 'api', 'controllers'].includes(name))
222
+ return 'backend';
223
+ if (['utils', 'helpers', 'common'].includes(name))
224
+ return 'utility';
225
+ if (['types', 'models', 'interfaces'].includes(name))
226
+ return 'types';
227
+ if (['tests', '__tests__', 'spec'].includes(name))
228
+ return 'test';
229
+ return 'other';
230
+ }
231
+ function fileImportance(relativePath) {
232
+ // Entry points
233
+ if (relativePath.includes('index.'))
234
+ return 8;
235
+ if (relativePath.includes('main.'))
236
+ return 8;
237
+ if (relativePath.includes('cli.'))
238
+ return 8;
239
+ if (relativePath.includes('app.'))
240
+ return 8;
241
+ // Type definitions
242
+ if (relativePath.includes('types.'))
243
+ return 7;
244
+ // Config
245
+ if (relativePath.includes('config.'))
246
+ return 6;
247
+ // Root src files
248
+ if (relativePath.startsWith('src/') && relativePath.split('/').length === 2) {
249
+ return 6;
250
+ }
251
+ // Nested files
252
+ return 4;
253
+ }
254
+ function extensionToLanguage(ext) {
255
+ const map = {
256
+ '.ts': 'typescript',
257
+ '.tsx': 'typescript',
258
+ '.js': 'javascript',
259
+ '.jsx': 'javascript',
260
+ '.py': 'python',
261
+ '.go': 'go',
262
+ '.rs': 'rust',
263
+ '.java': 'java',
264
+ '.rb': 'ruby',
265
+ '.php': 'php',
266
+ };
267
+ return map[ext] || 'unknown';
268
+ }
269
+ function inferFilePurpose(relativePath, symbols) {
270
+ const fileName = path.basename(relativePath, path.extname(relativePath));
271
+ // Based on filename
272
+ if (fileName === 'index')
273
+ return 'Module entry point';
274
+ if (fileName === 'types')
275
+ return 'Type definitions';
276
+ if (fileName.endsWith('Service'))
277
+ return `${fileName} - Service layer`;
278
+ if (fileName.endsWith('Controller'))
279
+ return `${fileName} - Controller`;
280
+ if (fileName.endsWith('Utils') || fileName.endsWith('Util'))
281
+ return `${fileName} - Utilities`;
282
+ if (fileName.endsWith('Helper'))
283
+ return `${fileName} - Helpers`;
284
+ // Based on symbols
285
+ if (symbols.length > 0) {
286
+ const mainExport = symbols.find((s) => s.name === fileName);
287
+ if (mainExport) {
288
+ return `Defines ${mainExport.kind} ${mainExport.name}`;
289
+ }
290
+ // If single class/interface
291
+ const classes = symbols.filter((s) => s.kind === 'class');
292
+ if (classes.length === 1) {
293
+ return `Class: ${classes[0].name}`;
294
+ }
295
+ const interfaces = symbols.filter((s) => s.kind === 'interface');
296
+ if (interfaces.length === 1) {
297
+ return `Interface: ${interfaces[0].name}`;
298
+ }
299
+ }
300
+ return undefined;
301
+ }
302
+ //# sourceMappingURL=module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/fragments/extractors/module.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Project Extractor - Extract project-level fragments
3
+ */
4
+ import type { ContextFragment } from '../types.js';
5
+ import type { ExtractionInput } from './index.js';
6
+ type AnyFragment = ContextFragment<unknown>;
7
+ /**
8
+ * Extract project-level fragments from repo structure and package.json
9
+ */
10
+ export declare function extractProjectFragments(input: ExtractionInput): AnyFragment[];
11
+ export {};
12
+ //# sourceMappingURL=project.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../src/fragments/extractors/project.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EACV,eAAe,EAIhB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlD,KAAK,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;AAE5C;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,eAAe,GACrB,WAAW,EAAE,CA0Hf"}