ai-first-cli 1.2.3 → 1.3.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 (467) hide show
  1. package/.github/workflows/publish.yml +4 -1
  2. package/CHANGELOG.md +292 -6
  3. package/README.md +24 -4
  4. package/dist/analyzers/symbols.d.ts.map +1 -1
  5. package/dist/analyzers/symbols.js +9 -7
  6. package/dist/analyzers/symbols.js.map +1 -1
  7. package/dist/analyzers/techStack.d.ts.map +1 -1
  8. package/dist/analyzers/techStack.js +198 -3
  9. package/dist/analyzers/techStack.js.map +1 -1
  10. package/dist/commands/ai-first.d.ts.map +1 -1
  11. package/dist/commands/ai-first.js +14 -13
  12. package/dist/commands/ai-first.js.map +1 -1
  13. package/dist/core/analysis/architectureDetector.d.ts +37 -0
  14. package/dist/core/analysis/architectureDetector.d.ts.map +1 -0
  15. package/dist/core/analysis/architectureDetector.js +316 -0
  16. package/dist/core/analysis/architectureDetector.js.map +1 -0
  17. package/dist/core/analysis/callGraphBuilder.d.ts +37 -0
  18. package/dist/core/analysis/callGraphBuilder.d.ts.map +1 -0
  19. package/dist/core/analysis/callGraphBuilder.js +101 -0
  20. package/dist/core/analysis/callGraphBuilder.js.map +1 -0
  21. package/dist/core/analysis/dependencyAnalyzer.d.ts +45 -0
  22. package/dist/core/analysis/dependencyAnalyzer.d.ts.map +1 -0
  23. package/dist/core/analysis/dependencyAnalyzer.js +98 -0
  24. package/dist/core/analysis/dependencyAnalyzer.js.map +1 -0
  25. package/dist/core/analysis/index.d.ts +5 -0
  26. package/dist/core/analysis/index.d.ts.map +1 -0
  27. package/dist/core/analysis/index.js +5 -0
  28. package/dist/core/analysis/index.js.map +1 -0
  29. package/dist/core/analysis/inheritanceAnalyzer.d.ts +35 -0
  30. package/dist/core/analysis/inheritanceAnalyzer.d.ts.map +1 -0
  31. package/dist/core/analysis/inheritanceAnalyzer.js +115 -0
  32. package/dist/core/analysis/inheritanceAnalyzer.js.map +1 -0
  33. package/dist/core/ccp.d.ts.map +1 -1
  34. package/dist/core/ccp.js +3 -2
  35. package/dist/core/ccp.js.map +1 -1
  36. package/dist/core/generation/aiContextGenerator.d.ts +71 -0
  37. package/dist/core/generation/aiContextGenerator.d.ts.map +1 -0
  38. package/dist/core/generation/aiContextGenerator.js +217 -0
  39. package/dist/core/generation/aiContextGenerator.js.map +1 -0
  40. package/dist/core/generation/architectureGenerator.d.ts +17 -0
  41. package/dist/core/generation/architectureGenerator.d.ts.map +1 -0
  42. package/dist/core/generation/architectureGenerator.js +160 -0
  43. package/dist/core/generation/architectureGenerator.js.map +1 -0
  44. package/dist/core/generation/flowGenerator.d.ts +52 -0
  45. package/dist/core/generation/flowGenerator.d.ts.map +1 -0
  46. package/dist/core/generation/flowGenerator.js +164 -0
  47. package/dist/core/generation/flowGenerator.js.map +1 -0
  48. package/dist/core/generation/index.d.ts +4 -0
  49. package/dist/core/generation/index.d.ts.map +1 -0
  50. package/dist/core/generation/index.js +4 -0
  51. package/dist/core/generation/index.js.map +1 -0
  52. package/dist/core/hierarchyGenerator.d.ts.map +1 -1
  53. package/dist/core/hierarchyGenerator.js +3 -2
  54. package/dist/core/hierarchyGenerator.js.map +1 -1
  55. package/dist/core/parsers/index.d.ts +20 -0
  56. package/dist/core/parsers/index.d.ts.map +1 -0
  57. package/dist/core/parsers/index.js +76 -0
  58. package/dist/core/parsers/index.js.map +1 -0
  59. package/dist/core/parsers/pythonParser.d.ts +37 -0
  60. package/dist/core/parsers/pythonParser.d.ts.map +1 -0
  61. package/dist/core/parsers/pythonParser.js +229 -0
  62. package/dist/core/parsers/pythonParser.js.map +1 -0
  63. package/dist/core/parsers/typescriptParser.d.ts +54 -0
  64. package/dist/core/parsers/typescriptParser.d.ts.map +1 -0
  65. package/dist/core/parsers/typescriptParser.js +291 -0
  66. package/dist/core/parsers/typescriptParser.js.map +1 -0
  67. package/dist/core/pipeline.d.ts +42 -0
  68. package/dist/core/pipeline.d.ts.map +1 -0
  69. package/dist/core/pipeline.js +172 -0
  70. package/dist/core/pipeline.js.map +1 -0
  71. package/dist/core/semanticContexts.js +1 -1
  72. package/dist/core/semanticContexts.js.map +1 -1
  73. package/dist/utils/constants.d.ts +46 -0
  74. package/dist/utils/constants.d.ts.map +1 -0
  75. package/dist/utils/constants.js +67 -0
  76. package/dist/utils/constants.js.map +1 -0
  77. package/package.json +1 -1
  78. package/run-all-tests.sh +184 -0
  79. package/src/analyzers/symbols.ts +12 -7
  80. package/src/analyzers/techStack.ts +203 -3
  81. package/src/commands/ai-first.ts +14 -13
  82. package/src/core/analysis/architectureDetector.ts +487 -0
  83. package/src/core/analysis/callGraphBuilder.ts +158 -0
  84. package/src/core/analysis/dependencyAnalyzer.ts +167 -0
  85. package/src/core/analysis/index.ts +28 -0
  86. package/src/core/analysis/inheritanceAnalyzer.ts +169 -0
  87. package/src/core/ccp.ts +3 -2
  88. package/src/core/generation/aiContextGenerator.ts +335 -0
  89. package/src/core/generation/architectureGenerator.ts +200 -0
  90. package/src/core/generation/flowGenerator.ts +238 -0
  91. package/src/core/generation/index.ts +16 -0
  92. package/src/core/hierarchyGenerator.ts +3 -2
  93. package/src/core/parsers/index.ts +99 -0
  94. package/src/core/parsers/pythonParser.ts +302 -0
  95. package/src/core/parsers/typescriptParser.ts +445 -0
  96. package/src/core/pipeline.ts +241 -0
  97. package/src/core/semanticContexts.ts +1 -1
  98. package/src/utils/constants.ts +78 -0
  99. package/test-ai-context-understanding.sh +21 -0
  100. package/test_adapters.mjs +11 -11
  101. package/tests/analysis.test.ts +283 -0
  102. package/tests/architectureDetector.test.ts +137 -0
  103. package/tests/generation.test.ts +216 -0
  104. package/tests/parserRegistry.test.ts +139 -0
  105. package/tests/pipeline.integration.test.ts +245 -0
  106. package/tests/pythonParser.test.ts +210 -0
  107. package/tests/typescriptParser.test.ts +197 -0
  108. package/.ai-dev/index.db +0 -0
  109. package/BUGS.md +0 -455
  110. package/PLAN_MEJORAS.md +0 -216
  111. package/STATUS_ADAPTADORES +0 -126
  112. package/TEST_RESULTS_PHASE1.md +0 -420
  113. package/ai/dependencies.json +0 -15
  114. package/ai/graph/knowledge-graph.json +0 -12
  115. package/ai-context/ai_context.md +0 -130
  116. package/ai-context/ai_rules.md +0 -54
  117. package/ai-context/architecture.md +0 -136
  118. package/ai-context/cache.json +0 -2349
  119. package/ai-context/ccp/jira-123/context.json +0 -7
  120. package/ai-context/context/features/commands.json +0 -18
  121. package/ai-context/context/features/src.json +0 -61
  122. package/ai-context/context/features/test-projects.json +0 -69
  123. package/ai-context/context/flows/account.json +0 -9
  124. package/ai-context/context/flows/ai-first.json +0 -9
  125. package/ai-context/context/flows/api.json +0 -9
  126. package/ai-context/context/flows/auth.json +0 -13
  127. package/ai-context/context/flows/category.json +0 -12
  128. package/ai-context/context/flows/comment.json +0 -16
  129. package/ai-context/context/flows/dashboard.json +0 -9
  130. package/ai-context/context/flows/doctor.json +0 -9
  131. package/ai-context/context/flows/explore.json +0 -9
  132. package/ai-context/context/flows/login.json +0 -9
  133. package/ai-context/context/flows/opportunity.json +0 -9
  134. package/ai-context/context/flows/post.json +0 -18
  135. package/ai-context/context/flows/routes.json +0 -19
  136. package/ai-context/context/flows/user.json +0 -20
  137. package/ai-context/context/flows/users.json +0 -9
  138. package/ai-context/context/flows/views.json +0 -14
  139. package/ai-context/context/repo.json +0 -56
  140. package/ai-context/context/utils.json +0 -7
  141. package/ai-context/conventions.md +0 -53
  142. package/ai-context/dependencies.json +0 -2978
  143. package/ai-context/embeddings.json +0 -23828
  144. package/ai-context/entrypoints.md +0 -42
  145. package/ai-context/files.json +0 -2944
  146. package/ai-context/git/commit-activity.json +0 -8646
  147. package/ai-context/git/recent-features.json +0 -1
  148. package/ai-context/git/recent-files.json +0 -52
  149. package/ai-context/git/recent-flows.json +0 -1
  150. package/ai-context/graph/knowledge-graph.json +0 -44129
  151. package/ai-context/graph/module-graph.json +0 -866
  152. package/ai-context/graph/symbol-graph.json +0 -200622
  153. package/ai-context/graph/symbol-references.json +0 -6778
  154. package/ai-context/hierarchy.json +0 -20
  155. package/ai-context/index-state.json +0 -4487
  156. package/ai-context/index.db +0 -0
  157. package/ai-context/modules.json +0 -933
  158. package/ai-context/project.json +0 -30
  159. package/ai-context/repo_map.json +0 -9116
  160. package/ai-context/repo_map.md +0 -2061
  161. package/ai-context/schema.json +0 -5
  162. package/ai-context/summary.md +0 -47
  163. package/ai-context/symbols.json +0 -65351
  164. package/ai-context/tech_stack.md +0 -47
  165. package/ai-context/tools.json +0 -10
  166. package/test-projects/django-app/.ai-dev/index.db +0 -0
  167. package/test-projects/django-app/ai-context/ai_context.md +0 -92
  168. package/test-projects/django-app/ai-context/ai_rules.md +0 -47
  169. package/test-projects/django-app/ai-context/architecture.md +0 -57
  170. package/test-projects/django-app/ai-context/cache.json +0 -169
  171. package/test-projects/django-app/ai-context/context/flows/views.json +0 -10
  172. package/test-projects/django-app/ai-context/conventions.md +0 -51
  173. package/test-projects/django-app/ai-context/dependencies.json +0 -312
  174. package/test-projects/django-app/ai-context/entrypoints.md +0 -4
  175. package/test-projects/django-app/ai-context/files.json +0 -209
  176. package/test-projects/django-app/ai-context/graph/knowledge-graph.json +0 -36
  177. package/test-projects/django-app/ai-context/graph/module-graph.json +0 -145
  178. package/test-projects/django-app/ai-context/graph/symbol-graph.json +0 -1488
  179. package/test-projects/django-app/ai-context/graph/symbol-references.json +0 -1
  180. package/test-projects/django-app/ai-context/index-state.json +0 -294
  181. package/test-projects/django-app/ai-context/index.db +0 -0
  182. package/test-projects/django-app/ai-context/modules.json +0 -35
  183. package/test-projects/django-app/ai-context/project.json +0 -11
  184. package/test-projects/django-app/ai-context/repo_map.json +0 -412
  185. package/test-projects/django-app/ai-context/repo_map.md +0 -105
  186. package/test-projects/django-app/ai-context/schema.json +0 -5
  187. package/test-projects/django-app/ai-context/summary.md +0 -15
  188. package/test-projects/django-app/ai-context/symbols.json +0 -1
  189. package/test-projects/django-app/ai-context/tech_stack.md +0 -32
  190. package/test-projects/django-app/ai-context/tools.json +0 -10
  191. package/test-projects/express-api/ai-context/ai_context.md +0 -112
  192. package/test-projects/express-api/ai-context/ai_rules.md +0 -50
  193. package/test-projects/express-api/ai-context/architecture.md +0 -62
  194. package/test-projects/express-api/ai-context/context/features/controllers.json +0 -13
  195. package/test-projects/express-api/ai-context/context/features/services.json +0 -13
  196. package/test-projects/express-api/ai-context/context/flows/auth.json +0 -12
  197. package/test-projects/express-api/ai-context/context/flows/user.json +0 -13
  198. package/test-projects/express-api/ai-context/conventions.md +0 -51
  199. package/test-projects/express-api/ai-context/dependencies.json +0 -54
  200. package/test-projects/express-api/ai-context/entrypoints.md +0 -17
  201. package/test-projects/express-api/ai-context/modules.json +0 -30
  202. package/test-projects/express-api/ai-context/project.json +0 -15
  203. package/test-projects/express-api/ai-context/repo_map.json +0 -100
  204. package/test-projects/express-api/ai-context/repo_map.md +0 -36
  205. package/test-projects/express-api/ai-context/schema.json +0 -5
  206. package/test-projects/express-api/ai-context/summary.md +0 -14
  207. package/test-projects/express-api/ai-context/symbols.json +0 -7
  208. package/test-projects/express-api/ai-context/tech_stack.md +0 -38
  209. package/test-projects/express-api/ai-context/tools.json +0 -10
  210. package/test-projects/fastapi-app/.ai-dev/index.db +0 -0
  211. package/test-projects/fastapi-app/ai-context/ai_context.md +0 -89
  212. package/test-projects/fastapi-app/ai-context/ai_rules.md +0 -47
  213. package/test-projects/fastapi-app/ai-context/architecture.md +0 -39
  214. package/test-projects/fastapi-app/ai-context/cache.json +0 -125
  215. package/test-projects/fastapi-app/ai-context/conventions.md +0 -51
  216. package/test-projects/fastapi-app/ai-context/dependencies.json +0 -244
  217. package/test-projects/fastapi-app/ai-context/entrypoints.md +0 -4
  218. package/test-projects/fastapi-app/ai-context/files.json +0 -154
  219. package/test-projects/fastapi-app/ai-context/graph/knowledge-graph.json +0 -15
  220. package/test-projects/fastapi-app/ai-context/graph/module-graph.json +0 -78
  221. package/test-projects/fastapi-app/ai-context/graph/symbol-graph.json +0 -1724
  222. package/test-projects/fastapi-app/ai-context/graph/symbol-references.json +0 -51
  223. package/test-projects/fastapi-app/ai-context/index-state.json +0 -217
  224. package/test-projects/fastapi-app/ai-context/index.db +0 -0
  225. package/test-projects/fastapi-app/ai-context/modules.json +0 -16
  226. package/test-projects/fastapi-app/ai-context/project.json +0 -9
  227. package/test-projects/fastapi-app/ai-context/repo_map.json +0 -298
  228. package/test-projects/fastapi-app/ai-context/repo_map.md +0 -74
  229. package/test-projects/fastapi-app/ai-context/schema.json +0 -5
  230. package/test-projects/fastapi-app/ai-context/summary.md +0 -12
  231. package/test-projects/fastapi-app/ai-context/symbols.json +0 -1
  232. package/test-projects/fastapi-app/ai-context/tech_stack.md +0 -32
  233. package/test-projects/fastapi-app/ai-context/tools.json +0 -10
  234. package/test-projects/flask-app/.ai-dev/index.db +0 -0
  235. package/test-projects/flask-app/ai-context/ai_context.md +0 -94
  236. package/test-projects/flask-app/ai-context/ai_rules.md +0 -47
  237. package/test-projects/flask-app/ai-context/architecture.md +0 -49
  238. package/test-projects/flask-app/ai-context/cache.json +0 -157
  239. package/test-projects/flask-app/ai-context/context/features/app.json +0 -25
  240. package/test-projects/flask-app/ai-context/context/flows/routes.json +0 -14
  241. package/test-projects/flask-app/ai-context/conventions.md +0 -51
  242. package/test-projects/flask-app/ai-context/dependencies.json +0 -298
  243. package/test-projects/flask-app/ai-context/entrypoints.md +0 -4
  244. package/test-projects/flask-app/ai-context/files.json +0 -194
  245. package/test-projects/flask-app/ai-context/graph/knowledge-graph.json +0 -60
  246. package/test-projects/flask-app/ai-context/graph/module-graph.json +0 -95
  247. package/test-projects/flask-app/ai-context/graph/symbol-graph.json +0 -1448
  248. package/test-projects/flask-app/ai-context/graph/symbol-references.json +0 -45
  249. package/test-projects/flask-app/ai-context/index-state.json +0 -273
  250. package/test-projects/flask-app/ai-context/index.db +0 -0
  251. package/test-projects/flask-app/ai-context/modules.json +0 -21
  252. package/test-projects/flask-app/ai-context/project.json +0 -13
  253. package/test-projects/flask-app/ai-context/repo_map.json +0 -400
  254. package/test-projects/flask-app/ai-context/repo_map.md +0 -98
  255. package/test-projects/flask-app/ai-context/schema.json +0 -5
  256. package/test-projects/flask-app/ai-context/summary.md +0 -13
  257. package/test-projects/flask-app/ai-context/symbols.json +0 -1
  258. package/test-projects/flask-app/ai-context/tech_stack.md +0 -32
  259. package/test-projects/flask-app/ai-context/tools.json +0 -10
  260. package/test-projects/laravel-app/.ai-dev/index.db +0 -0
  261. package/test-projects/laravel-app/ai-context/ai_context.md +0 -97
  262. package/test-projects/laravel-app/ai-context/ai_rules.md +0 -47
  263. package/test-projects/laravel-app/ai-context/architecture.md +0 -60
  264. package/test-projects/laravel-app/ai-context/cache.json +0 -161
  265. package/test-projects/laravel-app/ai-context/context/features/app.json +0 -21
  266. package/test-projects/laravel-app/ai-context/context/flows/.json +0 -9
  267. package/test-projects/laravel-app/ai-context/context/flows/category.json +0 -12
  268. package/test-projects/laravel-app/ai-context/context/flows/comment.json +0 -12
  269. package/test-projects/laravel-app/ai-context/context/flows/post.json +0 -12
  270. package/test-projects/laravel-app/ai-context/context/flows/unnamed.json +0 -9
  271. package/test-projects/laravel-app/ai-context/conventions.md +0 -51
  272. package/test-projects/laravel-app/ai-context/dependencies.json +0 -6
  273. package/test-projects/laravel-app/ai-context/entrypoints.md +0 -4
  274. package/test-projects/laravel-app/ai-context/files.json +0 -199
  275. package/test-projects/laravel-app/ai-context/graph/knowledge-graph.json +0 -98
  276. package/test-projects/laravel-app/ai-context/graph/module-graph.json +0 -30
  277. package/test-projects/laravel-app/ai-context/graph/symbol-graph.json +0 -5
  278. package/test-projects/laravel-app/ai-context/graph/symbol-references.json +0 -1
  279. package/test-projects/laravel-app/ai-context/index-state.json +0 -280
  280. package/test-projects/laravel-app/ai-context/index.db +0 -0
  281. package/test-projects/laravel-app/ai-context/modules.json +0 -29
  282. package/test-projects/laravel-app/ai-context/project.json +0 -17
  283. package/test-projects/laravel-app/ai-context/repo_map.json +0 -419
  284. package/test-projects/laravel-app/ai-context/repo_map.md +0 -106
  285. package/test-projects/laravel-app/ai-context/schema.json +0 -5
  286. package/test-projects/laravel-app/ai-context/summary.md +0 -15
  287. package/test-projects/laravel-app/ai-context/symbols.json +0 -1
  288. package/test-projects/laravel-app/ai-context/tech_stack.md +0 -34
  289. package/test-projects/laravel-app/ai-context/tools.json +0 -10
  290. package/test-projects/nestjs-backend/.ai-dev/index.db +0 -0
  291. package/test-projects/nestjs-backend/ai-context/ai_context.md +0 -111
  292. package/test-projects/nestjs-backend/ai-context/ai_rules.md +0 -52
  293. package/test-projects/nestjs-backend/ai-context/architecture.md +0 -49
  294. package/test-projects/nestjs-backend/ai-context/cache.json +0 -169
  295. package/test-projects/nestjs-backend/ai-context/context/features/src.json +0 -23
  296. package/test-projects/nestjs-backend/ai-context/context/flows/auth.controller.json +0 -14
  297. package/test-projects/nestjs-backend/ai-context/context/flows/auth.json +0 -10
  298. package/test-projects/nestjs-backend/ai-context/context/flows/users..json +0 -10
  299. package/test-projects/nestjs-backend/ai-context/context/flows/users.controller.json +0 -14
  300. package/test-projects/nestjs-backend/ai-context/context/flows/users.json +0 -10
  301. package/test-projects/nestjs-backend/ai-context/conventions.md +0 -52
  302. package/test-projects/nestjs-backend/ai-context/dependencies.json +0 -152
  303. package/test-projects/nestjs-backend/ai-context/entrypoints.md +0 -18
  304. package/test-projects/nestjs-backend/ai-context/files.json +0 -209
  305. package/test-projects/nestjs-backend/ai-context/graph/knowledge-graph.json +0 -132
  306. package/test-projects/nestjs-backend/ai-context/graph/module-graph.json +0 -29
  307. package/test-projects/nestjs-backend/ai-context/graph/symbol-graph.json +0 -304
  308. package/test-projects/nestjs-backend/ai-context/graph/symbol-references.json +0 -5
  309. package/test-projects/nestjs-backend/ai-context/index-state.json +0 -294
  310. package/test-projects/nestjs-backend/ai-context/index.db +0 -0
  311. package/test-projects/nestjs-backend/ai-context/modules.json +0 -19
  312. package/test-projects/nestjs-backend/ai-context/project.json +0 -18
  313. package/test-projects/nestjs-backend/ai-context/repo_map.json +0 -427
  314. package/test-projects/nestjs-backend/ai-context/repo_map.md +0 -104
  315. package/test-projects/nestjs-backend/ai-context/schema.json +0 -5
  316. package/test-projects/nestjs-backend/ai-context/summary.md +0 -13
  317. package/test-projects/nestjs-backend/ai-context/symbols.json +0 -1
  318. package/test-projects/nestjs-backend/ai-context/tech_stack.md +0 -38
  319. package/test-projects/nestjs-backend/ai-context/tools.json +0 -10
  320. package/test-projects/python-cli/.ai-dev/index.db +0 -0
  321. package/test-projects/python-cli/ai-context/ai_context.md +0 -95
  322. package/test-projects/python-cli/ai-context/ai_rules.md +0 -47
  323. package/test-projects/python-cli/ai-context/architecture.md +0 -55
  324. package/test-projects/python-cli/ai-context/cache.json +0 -149
  325. package/test-projects/python-cli/ai-context/context/features/cli.json +0 -16
  326. package/test-projects/python-cli/ai-context/context/flows/list_.json +0 -9
  327. package/test-projects/python-cli/ai-context/context/flows/remove_.json +0 -9
  328. package/test-projects/python-cli/ai-context/conventions.md +0 -51
  329. package/test-projects/python-cli/ai-context/dependencies.json +0 -66
  330. package/test-projects/python-cli/ai-context/entrypoints.md +0 -4
  331. package/test-projects/python-cli/ai-context/files.json +0 -184
  332. package/test-projects/python-cli/ai-context/graph/knowledge-graph.json +0 -83
  333. package/test-projects/python-cli/ai-context/graph/module-graph.json +0 -31
  334. package/test-projects/python-cli/ai-context/graph/symbol-graph.json +0 -358
  335. package/test-projects/python-cli/ai-context/graph/symbol-references.json +0 -11
  336. package/test-projects/python-cli/ai-context/index-state.json +0 -259
  337. package/test-projects/python-cli/ai-context/index.db +0 -0
  338. package/test-projects/python-cli/ai-context/modules.json +0 -21
  339. package/test-projects/python-cli/ai-context/project.json +0 -15
  340. package/test-projects/python-cli/ai-context/repo_map.json +0 -367
  341. package/test-projects/python-cli/ai-context/repo_map.md +0 -93
  342. package/test-projects/python-cli/ai-context/schema.json +0 -5
  343. package/test-projects/python-cli/ai-context/summary.md +0 -14
  344. package/test-projects/python-cli/ai-context/symbols.json +0 -1
  345. package/test-projects/python-cli/ai-context/tech_stack.md +0 -32
  346. package/test-projects/python-cli/ai-context/tools.json +0 -10
  347. package/test-projects/rails-app/.ai-dev/index.db +0 -0
  348. package/test-projects/rails-app/ai-context/ai_context.md +0 -94
  349. package/test-projects/rails-app/ai-context/ai_rules.md +0 -47
  350. package/test-projects/rails-app/ai-context/architecture.md +0 -49
  351. package/test-projects/rails-app/ai-context/cache.json +0 -193
  352. package/test-projects/rails-app/ai-context/context/features/app.json +0 -24
  353. package/test-projects/rails-app/ai-context/context/features/config.json +0 -13
  354. package/test-projects/rails-app/ai-context/context/flows/application.json +0 -9
  355. package/test-projects/rails-app/ai-context/context/flows/application_.json +0 -9
  356. package/test-projects/rails-app/ai-context/context/flows/comments.json +0 -11
  357. package/test-projects/rails-app/ai-context/context/flows/comments_.json +0 -11
  358. package/test-projects/rails-app/ai-context/context/flows/posts.json +0 -11
  359. package/test-projects/rails-app/ai-context/context/flows/posts_.json +0 -11
  360. package/test-projects/rails-app/ai-context/context/flows/routes.json +0 -9
  361. package/test-projects/rails-app/ai-context/context/flows/users.json +0 -11
  362. package/test-projects/rails-app/ai-context/context/flows/users_.json +0 -11
  363. package/test-projects/rails-app/ai-context/conventions.md +0 -51
  364. package/test-projects/rails-app/ai-context/dependencies.json +0 -6
  365. package/test-projects/rails-app/ai-context/entrypoints.md +0 -4
  366. package/test-projects/rails-app/ai-context/files.json +0 -239
  367. package/test-projects/rails-app/ai-context/graph/knowledge-graph.json +0 -130
  368. package/test-projects/rails-app/ai-context/graph/module-graph.json +0 -27
  369. package/test-projects/rails-app/ai-context/graph/symbol-graph.json +0 -5
  370. package/test-projects/rails-app/ai-context/graph/symbol-references.json +0 -1
  371. package/test-projects/rails-app/ai-context/index-state.json +0 -336
  372. package/test-projects/rails-app/ai-context/index.db +0 -0
  373. package/test-projects/rails-app/ai-context/modules.json +0 -26
  374. package/test-projects/rails-app/ai-context/project.json +0 -22
  375. package/test-projects/rails-app/ai-context/repo_map.json +0 -486
  376. package/test-projects/rails-app/ai-context/repo_map.md +0 -117
  377. package/test-projects/rails-app/ai-context/schema.json +0 -5
  378. package/test-projects/rails-app/ai-context/summary.md +0 -13
  379. package/test-projects/rails-app/ai-context/symbols.json +0 -1
  380. package/test-projects/rails-app/ai-context/tech_stack.md +0 -32
  381. package/test-projects/rails-app/ai-context/tools.json +0 -10
  382. package/test-projects/react-app/.ai-dev/index.db +0 -0
  383. package/test-projects/react-app/ai-context/ai_context.md +0 -96
  384. package/test-projects/react-app/ai-context/ai_rules.md +0 -49
  385. package/test-projects/react-app/ai-context/architecture.md +0 -39
  386. package/test-projects/react-app/ai-context/cache.json +0 -153
  387. package/test-projects/react-app/ai-context/context/features/src.json +0 -18
  388. package/test-projects/react-app/ai-context/context/flows/UsersPage.json +0 -14
  389. package/test-projects/react-app/ai-context/context/flows/dashboard.json +0 -9
  390. package/test-projects/react-app/ai-context/context/flows/login.json +0 -9
  391. package/test-projects/react-app/ai-context/context/flows/users.json +0 -9
  392. package/test-projects/react-app/ai-context/conventions.md +0 -52
  393. package/test-projects/react-app/ai-context/dependencies.json +0 -128
  394. package/test-projects/react-app/ai-context/entrypoints.md +0 -4
  395. package/test-projects/react-app/ai-context/files.json +0 -189
  396. package/test-projects/react-app/ai-context/graph/knowledge-graph.json +0 -112
  397. package/test-projects/react-app/ai-context/graph/module-graph.json +0 -31
  398. package/test-projects/react-app/ai-context/graph/symbol-graph.json +0 -868
  399. package/test-projects/react-app/ai-context/graph/symbol-references.json +0 -31
  400. package/test-projects/react-app/ai-context/index-state.json +0 -266
  401. package/test-projects/react-app/ai-context/index.db +0 -0
  402. package/test-projects/react-app/ai-context/modules.json +0 -17
  403. package/test-projects/react-app/ai-context/project.json +0 -16
  404. package/test-projects/react-app/ai-context/repo_map.json +0 -391
  405. package/test-projects/react-app/ai-context/repo_map.md +0 -94
  406. package/test-projects/react-app/ai-context/schema.json +0 -5
  407. package/test-projects/react-app/ai-context/summary.md +0 -13
  408. package/test-projects/react-app/ai-context/symbols.json +0 -1
  409. package/test-projects/react-app/ai-context/tech_stack.md +0 -39
  410. package/test-projects/react-app/ai-context/tools.json +0 -10
  411. package/test-projects/salesforce-cli/.ai-dev/index.db +0 -0
  412. package/test-projects/salesforce-cli/ai-context/ai_context.md +0 -89
  413. package/test-projects/salesforce-cli/ai-context/ai_rules.md +0 -47
  414. package/test-projects/salesforce-cli/ai-context/architecture.md +0 -39
  415. package/test-projects/salesforce-cli/ai-context/cache.json +0 -125
  416. package/test-projects/salesforce-cli/ai-context/context/features/force-app.json +0 -14
  417. package/test-projects/salesforce-cli/ai-context/context/flows/account.json +0 -9
  418. package/test-projects/salesforce-cli/ai-context/context/flows/opportunity.json +0 -9
  419. package/test-projects/salesforce-cli/ai-context/conventions.md +0 -51
  420. package/test-projects/salesforce-cli/ai-context/dependencies.json +0 -6
  421. package/test-projects/salesforce-cli/ai-context/entrypoints.md +0 -4
  422. package/test-projects/salesforce-cli/ai-context/files.json +0 -154
  423. package/test-projects/salesforce-cli/ai-context/graph/knowledge-graph.json +0 -64
  424. package/test-projects/salesforce-cli/ai-context/graph/module-graph.json +0 -13
  425. package/test-projects/salesforce-cli/ai-context/graph/symbol-graph.json +0 -148
  426. package/test-projects/salesforce-cli/ai-context/graph/symbol-references.json +0 -1
  427. package/test-projects/salesforce-cli/ai-context/index-state.json +0 -217
  428. package/test-projects/salesforce-cli/ai-context/index.db +0 -0
  429. package/test-projects/salesforce-cli/ai-context/modules.json +0 -12
  430. package/test-projects/salesforce-cli/ai-context/project.json +0 -14
  431. package/test-projects/salesforce-cli/ai-context/repo_map.json +0 -328
  432. package/test-projects/salesforce-cli/ai-context/repo_map.md +0 -80
  433. package/test-projects/salesforce-cli/ai-context/schema.json +0 -5
  434. package/test-projects/salesforce-cli/ai-context/summary.md +0 -13
  435. package/test-projects/salesforce-cli/ai-context/symbols.json +0 -1
  436. package/test-projects/salesforce-cli/ai-context/tech_stack.md +0 -31
  437. package/test-projects/salesforce-cli/ai-context/tools.json +0 -10
  438. package/test-projects/spring-boot-app/.ai-dev/index.db +0 -0
  439. package/test-projects/spring-boot-app/ai-context/ai_context.md +0 -91
  440. package/test-projects/spring-boot-app/ai-context/ai_rules.md +0 -48
  441. package/test-projects/spring-boot-app/ai-context/architecture.md +0 -39
  442. package/test-projects/spring-boot-app/ai-context/cache.json +0 -173
  443. package/test-projects/spring-boot-app/ai-context/context/features/src.json +0 -26
  444. package/test-projects/spring-boot-app/ai-context/context/flows/PostController.json +0 -19
  445. package/test-projects/spring-boot-app/ai-context/context/flows/UserController.json +0 -19
  446. package/test-projects/spring-boot-app/ai-context/context/flows/comment.json +0 -11
  447. package/test-projects/spring-boot-app/ai-context/context/flows/post.json +0 -14
  448. package/test-projects/spring-boot-app/ai-context/context/flows/user.json +0 -14
  449. package/test-projects/spring-boot-app/ai-context/conventions.md +0 -52
  450. package/test-projects/spring-boot-app/ai-context/dependencies.json +0 -326
  451. package/test-projects/spring-boot-app/ai-context/entrypoints.md +0 -4
  452. package/test-projects/spring-boot-app/ai-context/files.json +0 -214
  453. package/test-projects/spring-boot-app/ai-context/graph/knowledge-graph.json +0 -231
  454. package/test-projects/spring-boot-app/ai-context/graph/module-graph.json +0 -22
  455. package/test-projects/spring-boot-app/ai-context/graph/symbol-graph.json +0 -794
  456. package/test-projects/spring-boot-app/ai-context/graph/symbol-references.json +0 -70
  457. package/test-projects/spring-boot-app/ai-context/index-state.json +0 -301
  458. package/test-projects/spring-boot-app/ai-context/index.db +0 -0
  459. package/test-projects/spring-boot-app/ai-context/modules.json +0 -21
  460. package/test-projects/spring-boot-app/ai-context/project.json +0 -17
  461. package/test-projects/spring-boot-app/ai-context/repo_map.json +0 -461
  462. package/test-projects/spring-boot-app/ai-context/repo_map.md +0 -109
  463. package/test-projects/spring-boot-app/ai-context/schema.json +0 -5
  464. package/test-projects/spring-boot-app/ai-context/summary.md +0 -12
  465. package/test-projects/spring-boot-app/ai-context/symbols.json +0 -1
  466. package/test-projects/spring-boot-app/ai-context/tech_stack.md +0 -32
  467. package/test-projects/spring-boot-app/ai-context/tools.json +0 -10
@@ -1,5 +1,6 @@
1
1
  import { readFile, readJsonFile } from "../utils/fileUtils.js";
2
2
  import path from "path";
3
+ import fs from "fs";
3
4
  /**
4
5
  * Detect technology stack from repository
5
6
  */
@@ -119,9 +120,9 @@ function detectFrameworks(files, fileNames, rootDir) {
119
120
  return [...new Set(frameworks)];
120
121
  }
121
122
  /**
122
- * Detect libraries
123
+ * Detect Node.js libraries from package.json
123
124
  */
124
- function detectLibraries(files, rootDir) {
125
+ function detectNodeLibraries(rootDir) {
125
126
  const libraries = [];
126
127
  try {
127
128
  const pkgPath = path.join(rootDir, "package.json");
@@ -146,7 +147,65 @@ function detectLibraries(files, rootDir) {
146
147
  }
147
148
  }
148
149
  catch { }
149
- return [...new Set(libraries)];
150
+ return libraries;
151
+ }
152
+ function detectSwiftLibraries(rootDir) {
153
+ const libraries = [];
154
+ const packagePath = path.join(rootDir, "Package.swift");
155
+ try {
156
+ const content = readFile(packagePath);
157
+ const libMap = {
158
+ "Vapor": "Vapor",
159
+ "Fluent": "Fluent ORM",
160
+ "FluentPostgresDriver": "Fluent PostgreSQL",
161
+ "FluentMySQLDriver": "Fluent MySQL",
162
+ "FluentSQLiteDriver": "Fluent SQLite",
163
+ "FluentMongoDriver": "Fluent MongoDB",
164
+ "Leaf": "Leaf",
165
+ "APNS": "APNS",
166
+ "Queues": "Queues",
167
+ "QueuesRedisDriver": "Queues Redis",
168
+ "QueuesFluentDriver": "Queues Fluent",
169
+ "Mailgun": "Mailgun",
170
+ "SendGrid": "SendGrid",
171
+ "JWTKit": "JWTKit",
172
+ "Crypto": "Apple CryptoKit",
173
+ "NIO": "SwiftNIO",
174
+ "NIOSSL": "SwiftNIO SSL",
175
+ "NIOHTTP1": "SwiftNIO HTTP",
176
+ "NIOWebSocket": "SwiftNIO WebSocket",
177
+ "NIOTransportServices": "SwiftNIO Transport Services",
178
+ "AsyncHTTPClient": "AsyncHTTPClient",
179
+ "Alamofire": "Alamofire",
180
+ "Moya": "Moya",
181
+ "RxSwift": "RxSwift",
182
+ "PromiseKit": "PromiseKit",
183
+ "SwiftyJSON": "SwiftyJSON",
184
+ "ObjectMapper": "ObjectMapper",
185
+ "SnapKit": "SnapKit",
186
+ "Kingfisher": "Kingfisher",
187
+ "SDWebImage": "SDWebImage Swift",
188
+ "Lottie": "Lottie",
189
+ "SwiftLint": "SwiftLint",
190
+ "SwiftFormat": "SwiftFormat",
191
+ };
192
+ const depPattern = /\.package\s*\(\s*url:\s*"[^"]+"\s*,\s*(?:from|\.upToNextMajor|\.upToNextMinor|\.exact):\s*"[^"]+"\s*\)/g;
193
+ let match;
194
+ while ((match = depPattern.exec(content)) !== null) {
195
+ const depString = match[0];
196
+ const urlMatch = depString.match(/url:\s*"([^"]+)"/);
197
+ if (urlMatch) {
198
+ const url = urlMatch[1];
199
+ const depName = url.split("/").pop()?.replace(".git", "") || "";
200
+ const libName = libMap[depName] || depName;
201
+ if (!libraries.includes(libName)) {
202
+ libraries.push(libName);
203
+ }
204
+ }
205
+ }
206
+ }
207
+ catch { }
208
+ return libraries;
150
209
  }
151
210
  /**
152
211
  * Detect development tools
@@ -325,6 +384,142 @@ function generateTechStackDescription(languages, frameworks, libraries, tools, p
325
384
  lines.push(`**Formatters**: ${formatters.join(", ")}`);
326
385
  return lines.join("\n\n");
327
386
  }
387
+ function detectGradleLibraries(_files, rootDir) {
388
+ const libraries = [];
389
+ const gradleFiles = [];
390
+ function findGradleFiles(dir, depth = 0) {
391
+ if (depth > 3)
392
+ return;
393
+ try {
394
+ const entries = fs.readdirSync(dir, { withFileTypes: true });
395
+ for (const entry of entries) {
396
+ const fullPath = path.join(dir, entry.name);
397
+ if (entry.isDirectory() && !entry.name.startsWith('.') && entry.name !== 'node_modules') {
398
+ findGradleFiles(fullPath, depth + 1);
399
+ }
400
+ else if (entry.isFile() && (entry.name === 'build.gradle' || entry.name === 'build.gradle.kts')) {
401
+ gradleFiles.push(fullPath);
402
+ }
403
+ }
404
+ }
405
+ catch { }
406
+ }
407
+ findGradleFiles(rootDir);
408
+ const libMap = {
409
+ "androidx.core": "AndroidX Core", "androidx.appcompat": "AppCompat",
410
+ "com.google.android.material": "Material Design",
411
+ "androidx.constraintlayout": "ConstraintLayout",
412
+ "androidx.navigation": "Navigation", "androidx.room": "Room",
413
+ "org.jetbrains.kotlin": "Kotlin", "kotlinx.coroutines": "Kotlin Coroutines",
414
+ "com.squareup.retrofit2": "Retrofit", "com.squareup.okhttp3": "OkHttp",
415
+ "com.google.dagger": "Dagger", "junit": "JUnit",
416
+ "org.mockito": "Mockito", "com.jakewharton.timber": "Timber",
417
+ "com.github.bumptech.glide": "Glide", "io.coil-kt": "Coil",
418
+ "com.google.code.gson": "Gson",
419
+ };
420
+ for (const gf of gradleFiles) {
421
+ try {
422
+ const content = readFile(gf);
423
+ const depPattern = /(?:implementation|api|compileOnly|runtimeOnly|testImplementation|androidTestImplementation|kapt|annotationProcessor)\s*(?:\(|\s)?['"]([^'"]+)['"](?:\))?/g;
424
+ let match;
425
+ while ((match = depPattern.exec(content)) !== null) {
426
+ const parts = match[1].split(':');
427
+ if (parts.length >= 2) {
428
+ const libName = libMap[parts[0]] || `${parts[0]}:${parts[1]}`;
429
+ if (!libraries.includes(libName))
430
+ libraries.push(libName);
431
+ }
432
+ }
433
+ if (content.includes("com.android.application") && !libraries.includes("Android Gradle Plugin")) {
434
+ libraries.push("Android Gradle Plugin");
435
+ }
436
+ }
437
+ catch { }
438
+ }
439
+ return libraries;
440
+ }
441
+ function detectCargoLibraries(rootDir) {
442
+ const libraries = [];
443
+ try {
444
+ const content = readFile(path.join(rootDir, "Cargo.toml"));
445
+ const libMap = {
446
+ tokio: "Tokio", serde: "Serde", "serde_json": "Serde JSON",
447
+ reqwest: "Reqwest", actix_web: "Actix Web", axum: "Axum",
448
+ sqlx: "SQLx", diesel: "Diesel", mongodb: "MongoDB",
449
+ redis: "Redis", chrono: "Chrono", regex: "Regex",
450
+ clap: "Clap", log: "Log", tracing: "Tracing",
451
+ anyhow: "Anyhow", thiserror: "ThisError", rayon: "Rayon",
452
+ uuid: "UUID", rand: "Rand", hyper: "Hyper",
453
+ };
454
+ const depSection = content.match(/\[dependencies\]([^\[]*)/);
455
+ if (depSection) {
456
+ const depPattern = /^(\w+)\s*=/gm;
457
+ let match;
458
+ while ((match = depPattern.exec(depSection[1])) !== null) {
459
+ const libName = libMap[match[1]] || match[1];
460
+ if (!libraries.includes(libName))
461
+ libraries.push(libName);
462
+ }
463
+ }
464
+ }
465
+ catch { }
466
+ return libraries;
467
+ }
468
+ function detectGoLibraries(rootDir) {
469
+ const libraries = [];
470
+ try {
471
+ const content = readFile(path.join(rootDir, "go.mod"));
472
+ const libMap = {
473
+ "gin-gonic/gin": "Gin", "labstack/echo": "Echo",
474
+ "gorilla/mux": "Gorilla Mux", "go-chi/chi": "Chi",
475
+ "gofiber/fiber": "Fiber", "gorm.io/gorm": "GORM",
476
+ "github.com/jmoiron/sqlx": "SQLx",
477
+ "github.com/lib/pq": "PostgreSQL Driver",
478
+ "github.com/spf13/cobra": "Cobra", "github.com/spf13/viper": "Viper",
479
+ };
480
+ const requirePattern = /^\s*(\S+)\s+v?[\d\.]+/gm;
481
+ let match;
482
+ while ((match = requirePattern.exec(content)) !== null) {
483
+ const libName = libMap[match[1]] || match[1];
484
+ if (!libraries.includes(libName))
485
+ libraries.push(libName);
486
+ }
487
+ }
488
+ catch { }
489
+ return libraries;
490
+ }
491
+ function detectMavenLibraries(rootDir) {
492
+ const libraries = [];
493
+ try {
494
+ const content = readFile(path.join(rootDir, "pom.xml"));
495
+ const libMap = {
496
+ "org.springframework.boot": "Spring Boot",
497
+ "org.springframework": "Spring Framework",
498
+ "org.springframework.data": "Spring Data",
499
+ "org.springframework.security": "Spring Security",
500
+ "org.springframework.cloud": "Spring Cloud",
501
+ };
502
+ const depPattern = /<dependency>\s*<groupId>([^<]+)<\/groupId>\s*<artifactId>([^<]+)<\/artifactId>/g;
503
+ let match;
504
+ while ((match = depPattern.exec(content)) !== null) {
505
+ const libName = libMap[match[1]] || `${match[1]}:${match[2]}`;
506
+ if (!libraries.includes(libName))
507
+ libraries.push(libName);
508
+ }
509
+ }
510
+ catch { }
511
+ return libraries;
512
+ }
513
+ function detectLibraries(files, rootDir) {
514
+ const libraries = [];
515
+ libraries.push(...detectNodeLibraries(rootDir));
516
+ libraries.push(...detectGradleLibraries(files, rootDir));
517
+ libraries.push(...detectCargoLibraries(rootDir));
518
+ libraries.push(...detectGoLibraries(rootDir));
519
+ libraries.push(...detectMavenLibraries(rootDir));
520
+ libraries.push(...detectSwiftLibraries(rootDir));
521
+ return [...new Set(libraries)];
522
+ }
328
523
  /**
329
524
  * Generate tech_stack.md content
330
525
  */
@@ -1 +1 @@
1
- {"version":3,"file":"techStack.js","sourceRoot":"","sources":["../../src/analyzers/techStack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"techStack.js","sourceRoot":"","sources":["../../src/analyzers/techStack.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ai-first.d.ts","sourceRoot":"","sources":["../../src/commands/ai-first.ts"],"names":[],"mappings":";AAqCA,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC,CA+JrF"}
1
+ {"version":3,"file":"ai-first.d.ts","sourceRoot":"","sources":["../../src/commands/ai-first.ts"],"names":[],"mappings":";AAsCA,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC,CA+JrF"}
@@ -8,6 +8,7 @@ import { generateIndex, IncrementalIndexer } from "../core/indexer.js";
8
8
  import { generateAIContext } from "../core/aiContextGenerator.js";
9
9
  import { generateHierarchy } from "../core/hierarchyGenerator.js";
10
10
  import { ensureDir, writeFile } from "../utils/fileUtils.js";
11
+ import { AI_CONTEXT_DIR, getIndexDbPath, getHierarchyPath } from "../utils/constants.js";
11
12
  import { analyzeArchitecture, generateArchitectureFile } from "../analyzers/architecture.js";
12
13
  import { detectTechStack, generateTechStackFile } from "../analyzers/techStack.js";
13
14
  import { discoverEntrypoints, generateEntrypointsFile } from "../analyzers/entrypoints.js";
@@ -344,7 +345,7 @@ Usage: ai-first index [options]
344
345
 
345
346
  Options:
346
347
  -r, --root <dir> Root directory to scan (default: current directory)
347
- -o, --output <path> Output path for index.db (default: ./ai/index.db)
348
+ -o, --output <path> Output path for index.db (default: ./ai-context/index.db)
348
349
  -s, --semantic Force semantic indexing
349
350
  -h, --help Show help message
350
351
 
@@ -362,7 +363,7 @@ Example queries (for AI agents):
362
363
  }
363
364
  }
364
365
  if (!outputPath) {
365
- outputPath = path.join(rootDir, "ai", "index.db");
366
+ outputPath = getIndexDbPath(rootDir);
366
367
  }
367
368
  const aiDir = path.join(rootDir, "ai-context");
368
369
  // Create output directory if it doesn't exist
@@ -404,7 +405,7 @@ Example queries (for AI agents):
404
405
  const modules = {};
405
406
  for (const file of scanResult.files) {
406
407
  const parts = file.relativePath.split('/');
407
- if (parts.length > 1 && parts[0] !== 'ai') {
408
+ if (parts.length > 1 && parts[0] !== AI_CONTEXT_DIR && parts[0] !== 'ai') {
408
409
  if (!modules[parts[0]])
409
410
  modules[parts[0]] = { path: parts[0], files: [] };
410
411
  modules[parts[0]].files.push(file.relativePath);
@@ -453,7 +454,7 @@ Example queries (for AI agents):
453
454
  const { embeddings, model } = await generateEmbeddings(chunks);
454
455
  const initSqlJs = (await import("sql.js")).default;
455
456
  const SQL = await initSqlJs();
456
- const dbPath = outputPath || path.join(rootDir, "ai", "index.db");
457
+ const dbPath = outputPath || getIndexDbPath(rootDir);
457
458
  let db;
458
459
  if (fs.existsSync(dbPath)) {
459
460
  const fileBuffer = fs.readFileSync(dbPath);
@@ -491,7 +492,7 @@ Example queries (for AI agents):
491
492
  // Watch command - incremental indexing
492
493
  args.shift();
493
494
  let rootDir = process.cwd();
494
- let outputPath = path.join(rootDir, "ai", "index.db");
495
+ let outputPath = getIndexDbPath(rootDir);
495
496
  let semanticMode = false;
496
497
  let debounceMs = 300;
497
498
  for (let i = 0; i < args.length; i++) {
@@ -518,7 +519,7 @@ Usage: ai-first watch [options]
518
519
 
519
520
  Options:
520
521
  -r, --root <dir> Root directory to watch (default: current directory)
521
- -o, --output <path> Output path for index.db (default: ./ai/index.db)
522
+ -o, --output <path> Output path for index.db (default: ./ai-context/index.db)
522
523
  -d, --debounce <ms> Debounce delay in ms (default: 300)
523
524
  -h, --help Show help message
524
525
 
@@ -608,7 +609,7 @@ Arguments:
608
609
 
609
610
  Options:
610
611
  -r, --root <dir> Root directory (default: current directory)
611
- -o, --output <dir> Output directory (default: ./ai)
612
+ -o, --output <dir> Output directory (default: ./ai-context)
612
613
  -d, --depth <n> Graph traversal depth (default: 1)
613
614
  -m, --max-symbols <n> Max related symbols (default: 50)
614
615
  -f, --format <fmt> Output format: json, markdown, text (default: json)
@@ -689,7 +690,7 @@ Examples:
689
690
  // Summarize command - generate hierarchical repository summaries
690
691
  args.shift();
691
692
  let rootDir = process.cwd();
692
- let outputPath = path.join(rootDir, "ai", "hierarchy.json");
693
+ let outputPath = getHierarchyPath(rootDir);
693
694
  for (let i = 0; i < args.length; i++) {
694
695
  const arg = args[i];
695
696
  switch (arg) {
@@ -710,7 +711,7 @@ Usage: ai-first summarize [options]
710
711
 
711
712
  Options:
712
713
  -r, --root <dir> Root directory (default: current directory)
713
- -o, --output <path> Output path (default: ./ai/hierarchy.json)
714
+ -o, --output <path> Output path (default: ./ai-context/hierarchy.json)
714
715
  -h, --help Show help message
715
716
 
716
717
  Output:
@@ -741,14 +742,14 @@ Output:
741
742
  args.shift();
742
743
  const queryType = args.shift();
743
744
  let rootDir = process.cwd();
744
- let dbPath = path.join(rootDir, "ai", "index.db");
745
+ let dbPath = getIndexDbPath(rootDir);
745
746
  for (let i = 0; i < args.length; i++) {
746
747
  const arg = args[i];
747
748
  switch (arg) {
748
749
  case "--root":
749
750
  case "-r":
750
751
  rootDir = args[++i];
751
- dbPath = path.join(rootDir, "ai", "index.db");
752
+ dbPath = getIndexDbPath(rootDir);
752
753
  break;
753
754
  case "--db":
754
755
  case "-d":
@@ -772,7 +773,7 @@ Subcommands:
772
773
 
773
774
  Options:
774
775
  -r, --root <dir> Root directory (default: current directory)
775
- -d, --db <path> Database path (default: ./ai/index.db)
776
+ -d, --db <path> Database path (default: ./ai-context/index.db)
776
777
  -h, --help Show help message
777
778
  `);
778
779
  process.exit(0);
@@ -1000,7 +1001,7 @@ Commands:
1000
1001
 
1001
1002
  Options:
1002
1003
  -r, --root <dir> Root directory to scan (default: current directory)
1003
- -o, --output <dir> Output directory (default: ./ai)
1004
+ -o, --output <dir> Output directory (default: ./ai-context)
1004
1005
  -h, --help Show help message
1005
1006
  `);
1006
1007
  process.exit(0);