@nxuss/lemma 1.18.0 → 1.18.2

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 (356) hide show
  1. package/dist/cjs/mcp/cognitiveMap.d.ts +27 -0
  2. package/dist/cjs/mcp/cognitiveMap.d.ts.map +1 -0
  3. package/dist/cjs/mcp/cognitiveMap.js +47 -0
  4. package/dist/cjs/mcp/cognitiveMap.js.map +1 -0
  5. package/dist/cjs/mcp/toolTypes.d.ts +39 -0
  6. package/dist/cjs/mcp/toolTypes.d.ts.map +1 -0
  7. package/dist/cjs/mcp/toolTypes.js +8 -0
  8. package/dist/cjs/mcp/toolTypes.js.map +1 -0
  9. package/dist/cjs/mcp/tools/analysis.d.ts +11 -0
  10. package/dist/cjs/mcp/tools/analysis.d.ts.map +1 -0
  11. package/dist/cjs/mcp/tools/analysis.js +933 -0
  12. package/dist/cjs/mcp/tools/analysis.js.map +1 -0
  13. package/dist/cjs/mcp/tools/codenav.d.ts +9 -0
  14. package/dist/cjs/mcp/tools/codenav.d.ts.map +1 -0
  15. package/dist/cjs/mcp/tools/codenav.js +524 -0
  16. package/dist/cjs/mcp/tools/codenav.js.map +1 -0
  17. package/dist/cjs/mcp/tools/context-tools.d.ts +20 -0
  18. package/dist/cjs/mcp/tools/context-tools.d.ts.map +1 -0
  19. package/dist/cjs/mcp/tools/context-tools.js +543 -0
  20. package/dist/cjs/mcp/tools/context-tools.js.map +1 -0
  21. package/dist/cjs/mcp/tools/depgraph.d.ts +8 -0
  22. package/dist/cjs/mcp/tools/depgraph.d.ts.map +1 -0
  23. package/dist/cjs/mcp/tools/depgraph.js +321 -0
  24. package/dist/cjs/mcp/tools/depgraph.js.map +1 -0
  25. package/dist/cjs/mcp/tools/dev-utils.d.ts +11 -0
  26. package/dist/cjs/mcp/tools/dev-utils.d.ts.map +1 -0
  27. package/dist/cjs/mcp/tools/dev-utils.js +519 -0
  28. package/dist/cjs/mcp/tools/dev-utils.js.map +1 -0
  29. package/dist/cjs/mcp/tools/devtools.d.ts +9 -0
  30. package/dist/cjs/mcp/tools/devtools.d.ts.map +1 -0
  31. package/dist/cjs/mcp/tools/devtools.js +445 -0
  32. package/dist/cjs/mcp/tools/devtools.js.map +1 -0
  33. package/dist/cjs/mcp/tools/memory.d.ts +10 -0
  34. package/dist/cjs/mcp/tools/memory.d.ts.map +1 -0
  35. package/dist/cjs/mcp/tools/memory.js +539 -0
  36. package/dist/cjs/mcp/tools/memory.js.map +1 -0
  37. package/dist/cjs/mcp/tools/misc.d.ts +10 -0
  38. package/dist/cjs/mcp/tools/misc.d.ts.map +1 -0
  39. package/dist/cjs/mcp/tools/misc.js +423 -0
  40. package/dist/cjs/mcp/tools/misc.js.map +1 -0
  41. package/dist/cjs/mcp/tools/refactor.d.ts +8 -0
  42. package/dist/cjs/mcp/tools/refactor.d.ts.map +1 -0
  43. package/dist/cjs/mcp/tools/refactor.js +335 -0
  44. package/dist/cjs/mcp/tools/refactor.js.map +1 -0
  45. package/dist/cjs/mcp/tools/review.d.ts +10 -0
  46. package/dist/cjs/mcp/tools/review.d.ts.map +1 -0
  47. package/dist/cjs/mcp/tools/review.js +283 -0
  48. package/dist/cjs/mcp/tools/review.js.map +1 -0
  49. package/dist/cjs/mcp/tools/squeeze-cache.d.ts +14 -0
  50. package/dist/cjs/mcp/tools/squeeze-cache.d.ts.map +1 -0
  51. package/dist/cjs/mcp/tools/squeeze-cache.js +418 -0
  52. package/dist/cjs/mcp/tools/squeeze-cache.js.map +1 -0
  53. package/dist/cjs/mcp/tools/text-ops.d.ts +14 -0
  54. package/dist/cjs/mcp/tools/text-ops.d.ts.map +1 -0
  55. package/dist/cjs/mcp/tools/text-ops.js +155 -0
  56. package/dist/cjs/mcp/tools/text-ops.js.map +1 -0
  57. package/dist/cjs/mcp/tools/workspace.d.ts +10 -0
  58. package/dist/cjs/mcp/tools/workspace.d.ts.map +1 -0
  59. package/dist/cjs/mcp/tools/workspace.js +675 -0
  60. package/dist/cjs/mcp/tools/workspace.js.map +1 -0
  61. package/dist/cjs/mcp/tools.d.ts.map +1 -1
  62. package/dist/cjs/mcp/tools.js +636 -6388
  63. package/dist/cjs/mcp/tools.js.map +1 -1
  64. package/dist/cjs/mcp/utils.d.ts +55 -2
  65. package/dist/cjs/mcp/utils.d.ts.map +1 -1
  66. package/dist/cjs/mcp/utils.js +194 -10
  67. package/dist/cjs/mcp/utils.js.map +1 -1
  68. package/dist/cjs/mcp/workspaceShared.d.ts +19 -0
  69. package/dist/cjs/mcp/workspaceShared.d.ts.map +1 -0
  70. package/dist/cjs/mcp/workspaceShared.js +101 -0
  71. package/dist/cjs/mcp/workspaceShared.js.map +1 -0
  72. package/dist/cjs/package.json +3 -0
  73. package/dist/cjs/utils/ExecAuditLog.d.ts +27 -0
  74. package/dist/cjs/utils/ExecAuditLog.d.ts.map +1 -0
  75. package/dist/cjs/utils/ExecAuditLog.js +53 -0
  76. package/dist/cjs/utils/ExecAuditLog.js.map +1 -0
  77. package/dist/esm/api/dashboardRoutes.d.ts +3 -3
  78. package/dist/esm/api/dashboardRoutes.js +1 -1
  79. package/dist/esm/api/server.d.ts +4 -4
  80. package/dist/esm/api/server.js +3 -3
  81. package/dist/esm/autopilot/AutopilotWatcher.js +3 -3
  82. package/dist/esm/autopilot/Notifier.d.ts +1 -1
  83. package/dist/esm/cli/lemma-proxy.js +15 -15
  84. package/dist/esm/cli/stack.d.ts +4 -4
  85. package/dist/esm/cli/stack.js +5 -5
  86. package/dist/esm/cloud/KeyManager.d.ts +1 -1
  87. package/dist/esm/cloud/KeyManager.js +1 -1
  88. package/dist/esm/cloud/TenantCache.d.ts +1 -1
  89. package/dist/esm/cloud/identity/ApiKey.d.ts +1 -1
  90. package/dist/esm/cloud/identity/TenantResolver.d.ts +1 -1
  91. package/dist/esm/cloud/identity/TenantResolver.js +1 -1
  92. package/dist/esm/cloud/identity/authenticateV2.d.ts +3 -3
  93. package/dist/esm/cloud/identity/authenticateV2.js +3 -3
  94. package/dist/esm/cloud/identity/identityStore.d.ts +2 -2
  95. package/dist/esm/cloud/identity/index.d.ts +6 -6
  96. package/dist/esm/cloud/identity/index.js +6 -6
  97. package/dist/esm/cloud/index.d.ts +3 -3
  98. package/dist/esm/cloud/index.js +3 -3
  99. package/dist/esm/cloud/metering/UsageLedger.d.ts +1 -1
  100. package/dist/esm/cloud/metering/index.d.ts +2 -2
  101. package/dist/esm/cloud/metering/index.js +2 -2
  102. package/dist/esm/cloud/scrub/StatelessScrubber.d.ts +1 -1
  103. package/dist/esm/cloud/scrub/index.d.ts +1 -1
  104. package/dist/esm/cloud/scrub/index.js +1 -1
  105. package/dist/esm/cloud/server.d.ts +3 -3
  106. package/dist/esm/cloud/server.js +5 -5
  107. package/dist/esm/cloud/store/FileBrainStore.d.ts +1 -1
  108. package/dist/esm/cloud/store/FileBrainStore.js +1 -1
  109. package/dist/esm/cloud/store/PostgresBrainStore.d.ts +1 -1
  110. package/dist/esm/cloud/store/PostgresBrainStore.js +2 -2
  111. package/dist/esm/cloud/store/index.d.ts +2 -2
  112. package/dist/esm/cloud/store/index.js +2 -2
  113. package/dist/esm/cloud/v2/app.d.ts +1 -1
  114. package/dist/esm/cloud/v2/app.js +3 -3
  115. package/dist/esm/cloud/v2/routes/index.d.ts +5 -5
  116. package/dist/esm/cloud/v2/routes/index.js +7 -7
  117. package/dist/esm/cloud/v2/routes/memories.d.ts +4 -4
  118. package/dist/esm/cloud/v2/routes/memories.js +2 -2
  119. package/dist/esm/cloud/v2/routes/recall.d.ts +1 -1
  120. package/dist/esm/cloud/v2/routes/recall.js +1 -1
  121. package/dist/esm/cloud/v2/routes/scrub.d.ts +2 -2
  122. package/dist/esm/cloud/v2/routes/scrub.js +2 -2
  123. package/dist/esm/cloud/v2/routes/usage.d.ts +1 -1
  124. package/dist/esm/cloud/v2/routes/verify.d.ts +1 -1
  125. package/dist/esm/cloud/v2/routes/verify.js +1 -1
  126. package/dist/esm/cloud/v2/server.js +4 -4
  127. package/dist/esm/config/index.d.ts +1 -1
  128. package/dist/esm/config/index.js +1 -1
  129. package/dist/esm/consensus/index.d.ts +2 -2
  130. package/dist/esm/consensus/index.js +2 -2
  131. package/dist/esm/contracts/api-v2.types.d.ts +1 -1
  132. package/dist/esm/contracts/index.d.ts +4 -4
  133. package/dist/esm/contracts/index.js +4 -4
  134. package/dist/esm/core/AgentRegistry.d.ts +1 -1
  135. package/dist/esm/core/AgentRegistry.js +1 -1
  136. package/dist/esm/core/DashboardBroadcaster.d.ts +3 -3
  137. package/dist/esm/core/DashboardBroadcaster.js +2 -2
  138. package/dist/esm/core/DashboardWebSocketServer.d.ts +1 -1
  139. package/dist/esm/core/DashboardWebSocketServer.js +1 -1
  140. package/dist/esm/core/GhostAlchemist.js +1 -1
  141. package/dist/esm/core/GhostListener.js +2 -2
  142. package/dist/esm/core/OrchestrationEngine.d.ts +3 -3
  143. package/dist/esm/core/OrchestrationEngine.js +2 -2
  144. package/dist/esm/core/SubconsciousEngine.d.ts +1 -1
  145. package/dist/esm/core/SubconsciousEngine.js +2 -2
  146. package/dist/esm/core/WebSocketServer.d.ts +2 -2
  147. package/dist/esm/core/WebSocketServer.js +1 -1
  148. package/dist/esm/core/index.d.ts +6 -6
  149. package/dist/esm/core/index.js +6 -6
  150. package/dist/esm/core/router.d.ts +3 -3
  151. package/dist/esm/core/router.js +1 -1
  152. package/dist/esm/db/database.js +1 -1
  153. package/dist/esm/embed.d.ts +2 -2
  154. package/dist/esm/embed.js +2 -2
  155. package/dist/esm/examples/basic-usage.js +1 -1
  156. package/dist/esm/index.d.ts +14 -14
  157. package/dist/esm/index.js +14 -14
  158. package/dist/esm/infra/analyzers/DriftDetector.d.ts +1 -1
  159. package/dist/esm/infra/analyzers/InfraAnalyzer.d.ts +1 -1
  160. package/dist/esm/infra/analyzers/MonolithAnalyzer.d.ts +1 -1
  161. package/dist/esm/infra/analyzers/index.d.ts +3 -3
  162. package/dist/esm/infra/analyzers/index.js +3 -3
  163. package/dist/esm/infra/cli.js +2 -2
  164. package/dist/esm/infra/config.d.ts +1 -1
  165. package/dist/esm/infra/index.d.ts +5 -5
  166. package/dist/esm/infra/index.js +5 -5
  167. package/dist/esm/infra/mcp-tools.js +5 -5
  168. package/dist/esm/infra/providers/InfraProvider.d.ts +1 -1
  169. package/dist/esm/infra/providers/JenkinsProvider.d.ts +2 -2
  170. package/dist/esm/infra/providers/OKDProvider.d.ts +2 -2
  171. package/dist/esm/infra/providers/TerraformProvider.d.ts +2 -2
  172. package/dist/esm/infra/providers/index.d.ts +5 -5
  173. package/dist/esm/infra/providers/index.js +3 -3
  174. package/dist/esm/mcp/cognitiveMap.d.ts +27 -0
  175. package/dist/esm/mcp/cognitiveMap.d.ts.map +1 -0
  176. package/dist/esm/mcp/cognitiveMap.js +40 -0
  177. package/dist/esm/mcp/cognitiveMap.js.map +1 -0
  178. package/dist/esm/mcp/index.js +5 -5
  179. package/dist/esm/mcp/prompts.js +1 -1
  180. package/dist/esm/mcp/resources.js +2 -2
  181. package/dist/esm/mcp/tasks.js +1 -1
  182. package/dist/esm/mcp/tool-profiles.js +1 -1
  183. package/dist/esm/mcp/toolTypes.d.ts +39 -0
  184. package/dist/esm/mcp/toolTypes.d.ts.map +1 -0
  185. package/dist/esm/mcp/toolTypes.js +7 -0
  186. package/dist/esm/mcp/toolTypes.js.map +1 -0
  187. package/dist/esm/mcp/tools/analysis.d.ts +11 -0
  188. package/dist/esm/mcp/tools/analysis.d.ts.map +1 -0
  189. package/dist/esm/mcp/tools/analysis.js +894 -0
  190. package/dist/esm/mcp/tools/analysis.js.map +1 -0
  191. package/dist/esm/mcp/tools/codenav.d.ts +9 -0
  192. package/dist/esm/mcp/tools/codenav.d.ts.map +1 -0
  193. package/dist/esm/mcp/tools/codenav.js +485 -0
  194. package/dist/esm/mcp/tools/codenav.js.map +1 -0
  195. package/dist/esm/mcp/tools/context-tools.d.ts +20 -0
  196. package/dist/esm/mcp/tools/context-tools.d.ts.map +1 -0
  197. package/dist/esm/mcp/tools/context-tools.js +503 -0
  198. package/dist/esm/mcp/tools/context-tools.js.map +1 -0
  199. package/dist/esm/mcp/tools/depgraph.d.ts +8 -0
  200. package/dist/esm/mcp/tools/depgraph.d.ts.map +1 -0
  201. package/dist/esm/mcp/tools/depgraph.js +315 -0
  202. package/dist/esm/mcp/tools/depgraph.js.map +1 -0
  203. package/dist/esm/mcp/tools/dev-utils.d.ts +11 -0
  204. package/dist/esm/mcp/tools/dev-utils.d.ts.map +1 -0
  205. package/dist/esm/mcp/tools/dev-utils.js +516 -0
  206. package/dist/esm/mcp/tools/dev-utils.js.map +1 -0
  207. package/dist/esm/mcp/tools/devtools.d.ts +9 -0
  208. package/dist/esm/mcp/tools/devtools.d.ts.map +1 -0
  209. package/dist/esm/mcp/tools/devtools.js +406 -0
  210. package/dist/esm/mcp/tools/devtools.js.map +1 -0
  211. package/dist/esm/mcp/tools/memory.d.ts +10 -0
  212. package/dist/esm/mcp/tools/memory.d.ts.map +1 -0
  213. package/dist/esm/mcp/tools/memory.js +533 -0
  214. package/dist/esm/mcp/tools/memory.js.map +1 -0
  215. package/dist/esm/mcp/tools/misc.d.ts +10 -0
  216. package/dist/esm/mcp/tools/misc.d.ts.map +1 -0
  217. package/dist/esm/mcp/tools/misc.js +417 -0
  218. package/dist/esm/mcp/tools/misc.js.map +1 -0
  219. package/dist/esm/mcp/tools/refactor.d.ts +8 -0
  220. package/dist/esm/mcp/tools/refactor.d.ts.map +1 -0
  221. package/dist/esm/mcp/tools/refactor.js +296 -0
  222. package/dist/esm/mcp/tools/refactor.js.map +1 -0
  223. package/dist/esm/mcp/tools/review.d.ts +10 -0
  224. package/dist/esm/mcp/tools/review.d.ts.map +1 -0
  225. package/dist/esm/mcp/tools/review.js +277 -0
  226. package/dist/esm/mcp/tools/review.js.map +1 -0
  227. package/dist/esm/mcp/tools/squeeze-cache.d.ts +14 -0
  228. package/dist/esm/mcp/tools/squeeze-cache.d.ts.map +1 -0
  229. package/dist/esm/mcp/tools/squeeze-cache.js +382 -0
  230. package/dist/esm/mcp/tools/squeeze-cache.js.map +1 -0
  231. package/dist/esm/mcp/tools/text-ops.d.ts +14 -0
  232. package/dist/esm/mcp/tools/text-ops.d.ts.map +1 -0
  233. package/dist/esm/mcp/tools/text-ops.js +152 -0
  234. package/dist/esm/mcp/tools/text-ops.js.map +1 -0
  235. package/dist/esm/mcp/tools/workspace.d.ts +10 -0
  236. package/dist/esm/mcp/tools/workspace.d.ts.map +1 -0
  237. package/dist/esm/mcp/tools/workspace.js +669 -0
  238. package/dist/esm/mcp/tools/workspace.js.map +1 -0
  239. package/dist/esm/mcp/tools.d.ts +1 -1
  240. package/dist/esm/mcp/tools.d.ts.map +1 -1
  241. package/dist/esm/mcp/tools.js +652 -6404
  242. package/dist/esm/mcp/tools.js.map +1 -1
  243. package/dist/esm/mcp/utils.d.ts +55 -2
  244. package/dist/esm/mcp/utils.d.ts.map +1 -1
  245. package/dist/esm/mcp/utils.js +189 -10
  246. package/dist/esm/mcp/utils.js.map +1 -1
  247. package/dist/esm/mcp/workspaceShared.d.ts +19 -0
  248. package/dist/esm/mcp/workspaceShared.d.ts.map +1 -0
  249. package/dist/esm/mcp/workspaceShared.js +93 -0
  250. package/dist/esm/mcp/workspaceShared.js.map +1 -0
  251. package/dist/esm/observability/IdeContextSync.d.ts +1 -1
  252. package/dist/esm/observability/IdeContextSync.js +5 -5
  253. package/dist/esm/package.json +3 -0
  254. package/dist/esm/pr-review/PRReviewEngine.d.ts +1 -1
  255. package/dist/esm/pr-review/PRReviewEngine.js +4 -4
  256. package/dist/esm/pr-review/ReviewStore.d.ts +1 -1
  257. package/dist/esm/pr-review/adapters/AzureDevOpsAdapter.d.ts +2 -2
  258. package/dist/esm/pr-review/adapters/AzureDevOpsAdapter.js +1 -1
  259. package/dist/esm/pr-review/adapters/GitHubAdapter.d.ts +2 -2
  260. package/dist/esm/pr-review/adapters/GitHubAdapter.js +1 -1
  261. package/dist/esm/pr-review/adapters/GitLabAdapter.d.ts +2 -2
  262. package/dist/esm/pr-review/adapters/GitLabAdapter.js +1 -1
  263. package/dist/esm/pr-review/adapters/GitPlatformAdapter.d.ts +1 -1
  264. package/dist/esm/pr-review/adapters/index.d.ts +4 -4
  265. package/dist/esm/pr-review/adapters/index.js +3 -3
  266. package/dist/esm/pr-review/analyzers/QualityGrader.d.ts +1 -1
  267. package/dist/esm/pr-review/analyzers/RegressionDetector.d.ts +1 -1
  268. package/dist/esm/pr-review/analyzers/SecurityScanner.d.ts +1 -1
  269. package/dist/esm/pr-review/analyzers/StaticAnalyzer.d.ts +1 -1
  270. package/dist/esm/pr-review/analyzers/index.d.ts +8 -8
  271. package/dist/esm/pr-review/analyzers/index.js +4 -4
  272. package/dist/esm/pr-review/bridge/BrainBridge.d.ts +1 -1
  273. package/dist/esm/pr-review/bridge/BrainBridge.js +1 -1
  274. package/dist/esm/pr-review/bridge/index.d.ts +1 -1
  275. package/dist/esm/pr-review/bridge/index.js +1 -1
  276. package/dist/esm/pr-review/index.d.ts +4 -4
  277. package/dist/esm/pr-review/index.js +2 -2
  278. package/dist/esm/pr-review/reviewRunner.d.ts +2 -2
  279. package/dist/esm/pr-review/reviewRunner.js +6 -6
  280. package/dist/esm/pr-review/webhook/WebhookServer.js +1 -1
  281. package/dist/esm/pr-review/webhook/index.d.ts +1 -1
  282. package/dist/esm/pr-review/webhook/index.js +1 -1
  283. package/dist/esm/protocol/flows.d.ts +1 -1
  284. package/dist/esm/protocol/flows.js +1 -1
  285. package/dist/esm/protocol/index.d.ts +4 -4
  286. package/dist/esm/protocol/index.js +4 -4
  287. package/dist/esm/protocol/utils.d.ts +1 -1
  288. package/dist/esm/protocol/utils.js +2 -2
  289. package/dist/esm/protocol/validators.d.ts +1 -1
  290. package/dist/esm/protocol/validators.js +1 -1
  291. package/dist/esm/proxy/ContextInjector.d.ts +1 -1
  292. package/dist/esm/proxy/Gatekeeper.d.ts +1 -1
  293. package/dist/esm/security/SecurityMiddleware.d.ts +1 -1
  294. package/dist/esm/security/SecurityMiddleware.js +3 -3
  295. package/dist/esm/security/index.d.ts +4 -4
  296. package/dist/esm/security/index.js +4 -4
  297. package/dist/esm/speculative/SpeculativeCache.d.ts +2 -2
  298. package/dist/esm/speculative/SpeculativeEngine.d.ts +2 -2
  299. package/dist/esm/speculative/SpeculativeEngine.js +3 -3
  300. package/dist/esm/speculative/WorkerPool.d.ts +1 -1
  301. package/dist/esm/speculative/index.d.ts +4 -4
  302. package/dist/esm/speculative/index.js +4 -4
  303. package/dist/esm/subconscious/GitIngest.d.ts +1 -1
  304. package/dist/esm/subconscious/GitIngest.js +1 -1
  305. package/dist/esm/subconscious/SemanticCache.d.ts +2 -2
  306. package/dist/esm/subconscious/SemanticCache.js +2 -2
  307. package/dist/esm/subconscious/SubconsciousEngine.d.ts +1 -1
  308. package/dist/esm/subconscious/SubconsciousEngine.js +3 -3
  309. package/dist/esm/subconscious/TheBrainV2.d.ts +1 -1
  310. package/dist/esm/subconscious/TheBrainV2.js +2 -2
  311. package/dist/esm/subconscious/freshness/LocalFsResolver.d.ts +1 -1
  312. package/dist/esm/subconscious/freshness/LocalFsResolver.js +1 -1
  313. package/dist/esm/subconscious/freshness/SuppliedEvidenceResolver.d.ts +1 -1
  314. package/dist/esm/subconscious/freshness/index.d.ts +2 -2
  315. package/dist/esm/subconscious/freshness/index.js +2 -2
  316. package/dist/esm/subconscious/index.d.ts +4 -4
  317. package/dist/esm/subconscious/index.js +4 -4
  318. package/dist/esm/utils/AffectedTests.js +1 -1
  319. package/dist/esm/utils/AutoContextBundle.d.ts +1 -1
  320. package/dist/esm/utils/AutoContextBundle.js +4 -4
  321. package/dist/esm/utils/BulkFileDigest.js +2 -2
  322. package/dist/esm/utils/ClipboardWatcher.js +2 -2
  323. package/dist/esm/utils/ContextCollapser.js +1 -1
  324. package/dist/esm/utils/ConversationCheckpoint.js +1 -1
  325. package/dist/esm/utils/ExecAuditLog.d.ts +27 -0
  326. package/dist/esm/utils/ExecAuditLog.d.ts.map +1 -0
  327. package/dist/esm/utils/ExecAuditLog.js +45 -0
  328. package/dist/esm/utils/ExecAuditLog.js.map +1 -0
  329. package/dist/esm/utils/ExecutiveReport.js +1 -1
  330. package/dist/esm/utils/OutputLedger.js +2 -2
  331. package/dist/esm/utils/ReadWorkspaceCache.js +1 -1
  332. package/dist/esm/utils/SpeculativeWarmer.d.ts +1 -1
  333. package/dist/esm/utils/SpeculativeWarmer.js +2 -2
  334. package/dist/esm/utils/StateHashCache.js +1 -1
  335. package/dist/esm/utils/StructuralSearch.d.ts +1 -1
  336. package/dist/esm/utils/SurgicalASTInsert.js +1 -1
  337. package/dist/esm/utils/SymbolSurgicalContext.js +1 -1
  338. package/dist/esm/utils/TestAutofixInterceptor.js +1 -1
  339. package/dist/esm/utils/WorkspaceSearch.js +0 -0
  340. package/dist/esm/utils/logger.js +1 -1
  341. package/dist/esm/utils/reportSavings.js +1 -1
  342. package/package.json +3 -1
  343. package/sdks/crewai/dist/crewai/src/index.d.ts +131 -0
  344. package/sdks/crewai/dist/crewai/src/index.js +325 -0
  345. package/sdks/crewai/dist/crewai/src/memory.d.ts +36 -0
  346. package/sdks/crewai/dist/crewai/src/memory.js +61 -0
  347. package/sdks/crewai/dist/ts/src/client.d.ts +39 -0
  348. package/sdks/crewai/dist/ts/src/client.js +124 -0
  349. package/sdks/crewai/dist/ts/src/errors.d.ts +19 -0
  350. package/sdks/crewai/dist/ts/src/errors.js +18 -0
  351. package/sdks/crewai/dist/ts/src/evidence.d.ts +30 -0
  352. package/sdks/crewai/dist/ts/src/evidence.js +175 -0
  353. package/sdks/crewai/dist/ts/src/index.d.ts +4 -0
  354. package/sdks/crewai/dist/ts/src/index.js +27 -0
  355. package/sdks/crewai/dist/ts/src/types.d.ts +112 -0
  356. package/sdks/crewai/dist/ts/src/types.js +11 -0
@@ -0,0 +1,315 @@
1
+ /**
2
+ * Import-graph tools: depgraph, affected_tests. Split out of ../tools.ts (see that
3
+ * file's history for why) — pure relocation, no behavior change.
4
+ */
5
+ import path from "path";
6
+ import { buildDepGraphMap, bfsDepGraph } from "../../utils/DepGraph.js";
7
+ import { findAffectedTests, formatAffectedTests } from "../../utils/AffectedTests.js";
8
+ import { ledgerKey, checkOutput, recordOutput as recordLedgerOutput } from "../../utils/OutputLedger.js";
9
+ import { recordReceiptEvent } from "../../utils/TokenReceipt.js";
10
+ import { reportSavings } from "../../utils/reportSavings.js";
11
+ import { safeResolvePath, logError } from "../utils.js";
12
+ export const DEPGRAPH_TOOL_DEFINITIONS = [
13
+ {
14
+ name: "depgraph",
15
+ annotations: { readOnlyHint: true, idempotentHint: true, openWorldHint: false },
16
+ description: "Builds a real-time dependency graph for any file in the workspace using the TypeScript Compiler API. Shows what a file imports, what imports it (reverse deps), and what it exports. Zero LLM calls. Essential before any refactor to understand blast radius.",
17
+ inputSchema: {
18
+ type: "object",
19
+ properties: {
20
+ filePath: { type: "string", description: "Target file path relative to workspace root" },
21
+ reverse: { type: "boolean", description: "Include reverse dependencies (who imports this file)", default: true },
22
+ depth: { type: "number", description: "Graph traversal depth 1-5 (default: 1)", default: 1 },
23
+ format: { type: "string", enum: ["text", "mermaid", "json"], description: "Output format: text tree, Mermaid flowchart, or JSON", default: "text" },
24
+ external: { type: "boolean", description: "Include node_modules dependencies (default: false)", default: false },
25
+ circular: { type: "boolean", description: "Detect and highlight circular dependencies", default: false },
26
+ },
27
+ required: ["filePath"],
28
+ },
29
+ },
30
+ {
31
+ name: "affected_tests",
32
+ annotations: { readOnlyHint: true, idempotentHint: true, openWorldHint: false },
33
+ description: "Given the current diff (or an explicit file list), returns only the test files that transitively import the changed code, plus the exact command to run just those. Uses the TypeScript import graph — zero LLM calls. Run this instead of the full suite after an edit: fewer minutes, and far less test output in context. Reports honestly when the full suite is the right answer (unbounded change, runtime-only coupling, most of the suite affected).",
34
+ inputSchema: {
35
+ type: "object",
36
+ properties: {
37
+ files: { type: "array", items: { type: "string" }, description: "Explicit changed files, relative to workspace root. Omit to read the diff from git (working tree + untracked)." },
38
+ baseRef: { type: "string", description: "Additional git ref to diff against, e.g. 'main'. The working tree is always included." },
39
+ },
40
+ },
41
+ outputSchema: {
42
+ type: "object",
43
+ properties: {
44
+ changed: { type: "array", items: { type: "string" }, description: "Files the diff touched, repo-relative" },
45
+ directTests: { type: "array", items: { type: "string" }, description: "Changed files that are themselves tests" },
46
+ affected: { type: "array", items: { type: "string" }, description: "Test files that transitively import a changed file" },
47
+ totalTests: { type: "number", description: "Total test files in the repo" },
48
+ runner: { type: "string", enum: ["jest", "vitest", "unknown"] },
49
+ command: { type: ["string", "null"], description: "Command to run just the affected tests, or null if the full suite is recommended" },
50
+ fullSuiteReason: { type: ["string", "null"], description: "Why the full suite is recommended instead, when command is null" },
51
+ ungraphed: { type: "array", items: { type: "string" }, description: "Changed files absent from the import graph — blast radius unknown" },
52
+ },
53
+ required: ["changed", "directTests", "affected", "totalTests", "runner", "command", "fullSuiteReason", "ungraphed"],
54
+ },
55
+ },
56
+ ];
57
+ function detectDepCycles(map, subset) {
58
+ const cycles = [];
59
+ const visited = new Set();
60
+ const stack = new Set();
61
+ function dfs(rel, currentPath) {
62
+ if (stack.has(rel)) {
63
+ const idx = currentPath.indexOf(rel);
64
+ if (idx >= 0)
65
+ cycles.push([...currentPath.slice(idx), rel]);
66
+ return;
67
+ }
68
+ if (visited.has(rel))
69
+ return;
70
+ visited.add(rel);
71
+ stack.add(rel);
72
+ const node = map.get(rel);
73
+ if (node) {
74
+ for (const imp of node.imports) {
75
+ if (!subset || subset.has(imp))
76
+ dfs(imp, [...currentPath, rel]);
77
+ }
78
+ }
79
+ stack.delete(rel);
80
+ }
81
+ const keys = subset ? [...subset] : [...map.keys()];
82
+ for (const k of keys)
83
+ dfs(k, []);
84
+ return cycles;
85
+ }
86
+ function formatDGText(targetNode, forwardVisited, backwardVisited, cycles, includeExternal, showReverse) {
87
+ const lines = [`šŸ“¦ ${targetNode.rel}`];
88
+ const directImports = targetNode.imports;
89
+ const externalImps = includeExternal ? targetNode.externalImports : [];
90
+ const allImports = [...directImports, ...externalImps];
91
+ if (allImports.length > 0) {
92
+ lines.push("ā”œā”€ā”€ importa:");
93
+ allImports.forEach((imp, i) => {
94
+ const isLast = i === allImports.length - 1;
95
+ const prefix = isLast ? "│ └──" : "│ ā”œā”€ā”€";
96
+ const isExt = externalImps.includes(imp);
97
+ if (isExt) {
98
+ lines.push(`${prefix} ${imp} (external)`);
99
+ }
100
+ else {
101
+ const impNode = forwardVisited.get(imp)?.node;
102
+ const expSuffix = impNode && impNode.exports.length > 0
103
+ ? ` → ${impNode.exports.slice(0, 3).join(", ")}${impNode.exports.length > 3 ? "…" : ""}`
104
+ : "";
105
+ lines.push(`${prefix} ${imp}${expSuffix}`);
106
+ if (impNode && impNode.imports.length > 0) {
107
+ impNode.imports.forEach((subImp, si) => {
108
+ const subPrefix = si === impNode.imports.length - 1 ? "│ └──" : "│ ā”œā”€ā”€";
109
+ if (subImp !== targetNode.rel)
110
+ lines.push(`${subPrefix} ${subImp}`);
111
+ });
112
+ }
113
+ }
114
+ });
115
+ }
116
+ else {
117
+ lines.push("ā”œā”€ā”€ importa: (ninguno)");
118
+ }
119
+ if (showReverse) {
120
+ const revDeps = targetNode.importedBy;
121
+ if (revDeps.length > 0) {
122
+ lines.push("ā”œā”€ā”€ es importado por:");
123
+ revDeps.forEach((dep, i) => {
124
+ const prefix = i === revDeps.length - 1 ? "│ └──" : "│ ā”œā”€ā”€";
125
+ lines.push(`${prefix} ${dep}`);
126
+ const depNode = backwardVisited.get(dep)?.node;
127
+ if (depNode && depNode.importedBy.length > 0) {
128
+ depNode.importedBy.forEach((subDep, si) => {
129
+ const subPrefix = si === depNode.importedBy.length - 1 ? "│ └──" : "│ ā”œā”€ā”€";
130
+ if (subDep !== targetNode.rel)
131
+ lines.push(`${subPrefix} ${subDep}`);
132
+ });
133
+ }
134
+ });
135
+ }
136
+ else {
137
+ lines.push("ā”œā”€ā”€ es importado por: (nadie — posible dead export)");
138
+ }
139
+ }
140
+ if (targetNode.exports.length > 0) {
141
+ lines.push("└── exporta:");
142
+ targetNode.exports.forEach((exp, i) => {
143
+ const prefix = i === targetNode.exports.length - 1 ? " └──" : " ā”œā”€ā”€";
144
+ lines.push(`${prefix} ${exp}`);
145
+ });
146
+ }
147
+ else {
148
+ lines.push("└── exporta: (ningĆŗn export detectado)");
149
+ }
150
+ if (cycles.length > 0) {
151
+ lines.push("");
152
+ lines.push("āš ļø DEPENDENCIAS CIRCULARES DETECTADAS:");
153
+ cycles.slice(0, 5).forEach((c) => lines.push(` šŸ”„ ${c.join(" → ")}`));
154
+ }
155
+ return lines.join("\n");
156
+ }
157
+ function formatDGMermaid(targetNode, forwardVisited, backwardVisited, cycles, includeExternal, showReverse) {
158
+ const lines = ["flowchart LR"];
159
+ const addedEdges = new Set();
160
+ const safeId = (s) => s.replace(/[^a-zA-Z0-9_]/g, "_");
161
+ const tid = safeId(targetNode.rel);
162
+ lines.push(` ${tid}["šŸ“¦ ${path.basename(targetNode.rel)}"]`);
163
+ lines.push(` style ${tid} fill:#6366f1,color:#fff,stroke:#4f46e5`);
164
+ for (const imp of targetNode.imports) {
165
+ const eid = `${tid}-->${safeId(imp)}`;
166
+ if (!addedEdges.has(eid)) {
167
+ addedEdges.add(eid);
168
+ lines.push(` ${tid} --> ${safeId(imp)}["${path.basename(imp)}"]`);
169
+ }
170
+ }
171
+ if (includeExternal) {
172
+ for (const ext of targetNode.externalImports) {
173
+ const extId = safeId(`ext_${ext}`);
174
+ lines.push(` ${tid} --> ${extId}["šŸ“¦ ${ext}"]`);
175
+ lines.push(` style ${extId} fill:#374151,color:#9ca3af,stroke:#374151`);
176
+ }
177
+ }
178
+ for (const [rel, { node }] of forwardVisited) {
179
+ if (rel === targetNode.rel)
180
+ continue;
181
+ for (const imp of node.imports) {
182
+ const eid = `${safeId(rel)}-->${safeId(imp)}`;
183
+ if (!addedEdges.has(eid)) {
184
+ addedEdges.add(eid);
185
+ lines.push(` ${safeId(rel)} --> ${safeId(imp)}["${path.basename(imp)}"]`);
186
+ }
187
+ }
188
+ }
189
+ if (showReverse) {
190
+ for (const dep of targetNode.importedBy) {
191
+ const eid = `${safeId(dep)}-->${tid}`;
192
+ if (!addedEdges.has(eid)) {
193
+ addedEdges.add(eid);
194
+ lines.push(` ${safeId(dep)}["${path.basename(dep)}"] --> ${tid}`);
195
+ lines.push(` style ${safeId(dep)} fill:#065f46,color:#fff,stroke:#047857`);
196
+ }
197
+ }
198
+ for (const [rel, { node }] of backwardVisited) {
199
+ if (rel === targetNode.rel)
200
+ continue;
201
+ for (const dep of node.importedBy) {
202
+ const eid = `${safeId(dep)}-->${safeId(rel)}`;
203
+ if (!addedEdges.has(eid)) {
204
+ addedEdges.add(eid);
205
+ lines.push(` ${safeId(dep)}["${path.basename(dep)}"] --> ${safeId(rel)}["${path.basename(rel)}"]`);
206
+ }
207
+ }
208
+ }
209
+ }
210
+ if (cycles.length > 0) {
211
+ lines.push(` %% āš ļø Cycles: ${cycles.length}`);
212
+ cycles.slice(0, 3).forEach(c => lines.push(` %% ${c.join(" → ")}`));
213
+ }
214
+ return lines.join("\n");
215
+ }
216
+ async function handleDepgraph(args) {
217
+ const filePath = args?.filePath;
218
+ const showReverse = args?.reverse !== false;
219
+ const depth = Math.min(Math.max(typeof args?.depth === "number" ? args.depth : 1, 1), 5);
220
+ const format = args?.format || "text";
221
+ const includeExternal = !!(args?.external);
222
+ const detectCircular = !!(args?.circular);
223
+ const workspaceRoot = process.cwd();
224
+ if (!filePath)
225
+ throw new Error("filePath is required");
226
+ try {
227
+ const { resolved } = safeResolvePath(workspaceRoot, filePath);
228
+ const relTarget = path.relative(workspaceRoot, resolved).replace(/\\/g, "/");
229
+ const map = buildDepGraphMap(workspaceRoot);
230
+ const targetNode = map.get(relTarget);
231
+ if (!targetNode) {
232
+ return { content: [{ type: "text", text: `File not found in workspace graph: ${relTarget}\nCheck path is correct and has .ts/.tsx/.js/.jsx extension.` }] };
233
+ }
234
+ const forwardVisited = bfsDepGraph(map, relTarget, "forward", depth);
235
+ const backwardVisited = showReverse ? bfsDepGraph(map, relTarget, "backward", depth) : new Map();
236
+ const allRelInScope = new Set([...forwardVisited.keys(), ...(showReverse ? backwardVisited.keys() : [])]);
237
+ const cycles = detectCircular ? detectDepCycles(map, allRelInScope) : [];
238
+ let output;
239
+ if (format === "json") {
240
+ const jsonResult = {
241
+ target: relTarget,
242
+ imports: targetNode.imports,
243
+ importedBy: showReverse ? targetNode.importedBy : undefined,
244
+ externalImports: includeExternal ? targetNode.externalImports : undefined,
245
+ exports: targetNode.exports,
246
+ cycles: cycles.length > 0 ? cycles : undefined,
247
+ subGraph: {
248
+ forward: Object.fromEntries([...forwardVisited.entries()].map(([k, v]) => [k, { depth: v.depth, imports: v.node.imports }])),
249
+ backward: showReverse ? Object.fromEntries([...backwardVisited.entries()].map(([k, v]) => [k, { depth: v.depth, importedBy: v.node.importedBy }])) : undefined,
250
+ },
251
+ };
252
+ output = JSON.stringify(jsonResult, null, 2);
253
+ }
254
+ else if (format === "mermaid") {
255
+ output = formatDGMermaid(targetNode, forwardVisited, backwardVisited, cycles, includeExternal, showReverse);
256
+ }
257
+ else {
258
+ output = formatDGText(targetNode, forwardVisited, backwardVisited, cycles, includeExternal, showReverse);
259
+ }
260
+ const stats = `\n\nšŸ“Š Stats: ${forwardVisited.size} nodos forward, ${backwardVisited.size} nodos reverse, depth=${depth}`;
261
+ const finalText = output + (format === "json" ? "" : stats);
262
+ const key = ledgerKey("depgraph", { file: relTarget, depth, format, showReverse, includeExternal, detectCircular, cwd: workspaceRoot });
263
+ const ledger = checkOutput(key, finalText, { label: `depgraph for ${relTarget}` });
264
+ recordLedgerOutput(key, finalText);
265
+ if (ledger.replacement) {
266
+ reportSavings({ source: "contextSqueeze", charsBefore: finalText.length, charsAfter: ledger.replacement.length, toolName: "depgraph", filePath: relTarget });
267
+ return { content: [{ type: "text", text: ledger.replacement }] };
268
+ }
269
+ return { content: [{ type: "text", text: finalText }] };
270
+ }
271
+ catch (err) {
272
+ logError("depgraph", err);
273
+ return { content: [{ type: "text", text: `depgraph failed: ${err.message}` }] };
274
+ }
275
+ }
276
+ async function handleAffectedTests(args) {
277
+ const workspaceRoot = process.cwd();
278
+ try {
279
+ const files = Array.isArray(args?.files) ? args.files.filter((f) => typeof f === "string") : undefined;
280
+ const result = findAffectedTests({ workspaceRoot, files, baseRef: args?.baseRef });
281
+ const text = formatAffectedTests(result);
282
+ // Worth recording even when it narrows nothing: the receipt is the record of what this
283
+ // tool actually did, and "recommended the full suite" is as much a result as a subset.
284
+ recordReceiptEvent("tool_call", "affected_tests", {
285
+ changed: result.changed.length,
286
+ affected: result.affected.length,
287
+ totalTests: result.totalTests,
288
+ narrowed: result.command !== null,
289
+ });
290
+ const structured = {
291
+ changed: result.changed,
292
+ directTests: result.directTests,
293
+ affected: result.affected,
294
+ totalTests: result.totalTests,
295
+ runner: result.runner,
296
+ command: result.command,
297
+ fullSuiteReason: result.fullSuiteReason,
298
+ ungraphed: result.ungraphed,
299
+ };
300
+ return { content: [{ type: "text", text }], structuredContent: structured };
301
+ }
302
+ catch (err) {
303
+ logError("affected_tests", err);
304
+ // Failing here must never look like "nothing is affected" — that would talk a caller
305
+ // out of running tests at all.
306
+ return {
307
+ content: [{ type: "text", text: `affected_tests failed: ${err.message}\nFall back to running the full suite.` }],
308
+ };
309
+ }
310
+ }
311
+ export const DEPGRAPH_TOOL_HANDLERS = {
312
+ depgraph: handleDepgraph,
313
+ affected_tests: handleAffectedTests,
314
+ };
315
+ //# sourceMappingURL=depgraph.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"depgraph.js","sourceRoot":"","sources":["../../../../src/mcp/tools/depgraph.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Thin wrapper tools around already-separate util modules: file_fingerprint,
3
+ * git_blame_heat, type_coverage_report, import_tree_context, read_token_budgeted,
4
+ * bulk_file_digest, auto_context_bundle, repeat_guard, conversation_checkpoint,
5
+ * test_autofix_interceptor, prompt_pattern_cache. Split out of ../tools.ts (see that
6
+ * file's history for why) — pure relocation, no behavior change.
7
+ */
8
+ import type { ToolDefinition, ToolHandler } from "../toolTypes.js";
9
+ export declare const DEV_UTILS_TOOL_DEFINITIONS: ToolDefinition[];
10
+ export declare const DEV_UTILS_TOOL_HANDLERS: Record<string, ToolHandler>;
11
+ //# sourceMappingURL=dev-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-utils.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/dev-utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAeH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhE,eAAO,MAAM,0BAA0B,EAAE,cAAc,EAsJtD,CAAC;AAgWF,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAY/D,CAAC"}