@juspay/neurolink 9.5.2 → 9.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (356) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +29 -25
  3. package/dist/agent/directTools.d.ts +5 -5
  4. package/dist/cli/commands/config.d.ts +9 -9
  5. package/dist/cli/commands/serve.d.ts +37 -0
  6. package/dist/cli/commands/serve.js +302 -229
  7. package/dist/cli/commands/setup-anthropic.d.ts +2 -2
  8. package/dist/cli/commands/setup-azure.d.ts +2 -2
  9. package/dist/cli/commands/setup-bedrock.d.ts +2 -2
  10. package/dist/cli/commands/setup-gcp.d.ts +2 -2
  11. package/dist/cli/commands/setup-google-ai.d.ts +2 -2
  12. package/dist/cli/commands/setup-huggingface.d.ts +2 -2
  13. package/dist/cli/commands/setup-mistral.d.ts +2 -2
  14. package/dist/cli/commands/setup-openai.d.ts +2 -2
  15. package/dist/cli/commands/setup.d.ts +2 -2
  16. package/dist/cli/factories/commandFactory.js +16 -2
  17. package/dist/cli/loop/optionsSchema.d.ts +2 -2
  18. package/dist/cli/loop/session.d.ts +4 -0
  19. package/dist/cli/loop/session.js +49 -4
  20. package/dist/cli/utils/interactiveSetup.d.ts +4 -4
  21. package/dist/config/conversationMemory.d.ts +2 -0
  22. package/dist/config/conversationMemory.js +5 -5
  23. package/dist/constants/contextWindows.d.ts +46 -0
  24. package/dist/constants/contextWindows.js +156 -0
  25. package/dist/context/budgetChecker.d.ts +18 -0
  26. package/dist/context/budgetChecker.js +71 -0
  27. package/dist/context/contextCompactor.d.ts +22 -0
  28. package/dist/context/contextCompactor.js +106 -0
  29. package/dist/context/effectiveHistory.d.ts +52 -0
  30. package/dist/context/effectiveHistory.js +105 -0
  31. package/dist/context/errorDetection.d.ts +14 -0
  32. package/dist/context/errorDetection.js +124 -0
  33. package/dist/context/fileSummarizationService.d.ts +54 -0
  34. package/dist/context/fileSummarizationService.js +255 -0
  35. package/dist/context/fileSummarizer.d.ts +56 -0
  36. package/dist/context/fileSummarizer.js +145 -0
  37. package/dist/context/fileTokenBudget.d.ts +53 -0
  38. package/dist/context/fileTokenBudget.js +127 -0
  39. package/dist/context/prompts/summarizationPrompt.d.ts +17 -0
  40. package/dist/context/prompts/summarizationPrompt.js +110 -0
  41. package/dist/context/stages/fileReadDeduplicator.d.ts +10 -0
  42. package/dist/context/stages/fileReadDeduplicator.js +66 -0
  43. package/dist/context/stages/slidingWindowTruncator.d.ts +11 -0
  44. package/dist/context/stages/slidingWindowTruncator.js +42 -0
  45. package/dist/context/stages/structuredSummarizer.d.ts +10 -0
  46. package/dist/context/stages/structuredSummarizer.js +49 -0
  47. package/dist/context/stages/toolOutputPruner.d.ts +10 -0
  48. package/dist/context/stages/toolOutputPruner.js +52 -0
  49. package/dist/context/summarizationEngine.d.ts +45 -0
  50. package/dist/context/summarizationEngine.js +110 -0
  51. package/dist/context/toolOutputLimits.d.ts +17 -0
  52. package/dist/context/toolOutputLimits.js +84 -0
  53. package/dist/context/toolPairRepair.d.ts +16 -0
  54. package/dist/context/toolPairRepair.js +66 -0
  55. package/dist/core/conversationMemoryManager.d.ts +5 -15
  56. package/dist/core/conversationMemoryManager.js +15 -75
  57. package/dist/core/modules/MessageBuilder.d.ts +1 -1
  58. package/dist/core/modules/MessageBuilder.js +2 -0
  59. package/dist/core/modules/TelemetryHandler.d.ts +2 -3
  60. package/dist/core/modules/TelemetryHandler.js +3 -3
  61. package/dist/core/modules/ToolsManager.d.ts +2 -2
  62. package/dist/core/redisConversationMemoryManager.d.ts +8 -14
  63. package/dist/core/redisConversationMemoryManager.js +69 -78
  64. package/dist/factories/providerFactory.d.ts +2 -2
  65. package/dist/files/fileReferenceRegistry.d.ts +276 -0
  66. package/dist/files/fileReferenceRegistry.js +1543 -0
  67. package/dist/files/fileTools.d.ts +423 -0
  68. package/dist/files/fileTools.js +449 -0
  69. package/dist/files/index.d.ts +14 -0
  70. package/dist/files/index.js +13 -0
  71. package/dist/files/streamingReader.d.ts +93 -0
  72. package/dist/files/streamingReader.js +321 -0
  73. package/dist/files/types.d.ts +23 -0
  74. package/dist/files/types.js +23 -0
  75. package/dist/image-gen/imageGenTools.d.ts +2 -2
  76. package/dist/image-gen/types.d.ts +12 -12
  77. package/dist/lib/agent/directTools.d.ts +7 -7
  78. package/dist/lib/config/conversationMemory.d.ts +2 -0
  79. package/dist/lib/config/conversationMemory.js +5 -5
  80. package/dist/lib/constants/contextWindows.d.ts +46 -0
  81. package/dist/lib/constants/contextWindows.js +157 -0
  82. package/dist/lib/context/budgetChecker.d.ts +18 -0
  83. package/dist/lib/context/budgetChecker.js +72 -0
  84. package/dist/lib/context/contextCompactor.d.ts +22 -0
  85. package/dist/lib/context/contextCompactor.js +107 -0
  86. package/dist/lib/context/effectiveHistory.d.ts +52 -0
  87. package/dist/lib/context/effectiveHistory.js +106 -0
  88. package/dist/lib/context/errorDetection.d.ts +14 -0
  89. package/dist/lib/context/errorDetection.js +125 -0
  90. package/dist/lib/context/fileSummarizationService.d.ts +54 -0
  91. package/dist/lib/context/fileSummarizationService.js +256 -0
  92. package/dist/lib/context/fileSummarizer.d.ts +56 -0
  93. package/dist/lib/context/fileSummarizer.js +146 -0
  94. package/dist/lib/context/fileTokenBudget.d.ts +53 -0
  95. package/dist/lib/context/fileTokenBudget.js +128 -0
  96. package/dist/lib/context/prompts/summarizationPrompt.d.ts +17 -0
  97. package/dist/lib/context/prompts/summarizationPrompt.js +111 -0
  98. package/dist/lib/context/stages/fileReadDeduplicator.d.ts +10 -0
  99. package/dist/lib/context/stages/fileReadDeduplicator.js +67 -0
  100. package/dist/lib/context/stages/slidingWindowTruncator.d.ts +11 -0
  101. package/dist/lib/context/stages/slidingWindowTruncator.js +43 -0
  102. package/dist/lib/context/stages/structuredSummarizer.d.ts +10 -0
  103. package/dist/lib/context/stages/structuredSummarizer.js +50 -0
  104. package/dist/lib/context/stages/toolOutputPruner.d.ts +10 -0
  105. package/dist/lib/context/stages/toolOutputPruner.js +53 -0
  106. package/dist/lib/context/summarizationEngine.d.ts +45 -0
  107. package/dist/lib/context/summarizationEngine.js +111 -0
  108. package/dist/lib/context/toolOutputLimits.d.ts +17 -0
  109. package/dist/lib/context/toolOutputLimits.js +85 -0
  110. package/dist/lib/context/toolPairRepair.d.ts +16 -0
  111. package/dist/lib/context/toolPairRepair.js +67 -0
  112. package/dist/lib/core/conversationMemoryManager.d.ts +5 -15
  113. package/dist/lib/core/conversationMemoryManager.js +15 -75
  114. package/dist/lib/core/modules/MessageBuilder.d.ts +1 -1
  115. package/dist/lib/core/modules/MessageBuilder.js +2 -0
  116. package/dist/lib/core/modules/TelemetryHandler.d.ts +2 -3
  117. package/dist/lib/core/modules/TelemetryHandler.js +3 -3
  118. package/dist/lib/core/modules/ToolsManager.d.ts +2 -2
  119. package/dist/lib/core/redisConversationMemoryManager.d.ts +8 -14
  120. package/dist/lib/core/redisConversationMemoryManager.js +69 -78
  121. package/dist/lib/factories/providerFactory.d.ts +2 -2
  122. package/dist/lib/files/fileReferenceRegistry.d.ts +276 -0
  123. package/dist/lib/files/fileReferenceRegistry.js +1544 -0
  124. package/dist/lib/files/fileTools.d.ts +423 -0
  125. package/dist/lib/files/fileTools.js +450 -0
  126. package/dist/lib/files/index.d.ts +14 -0
  127. package/dist/lib/files/index.js +14 -0
  128. package/dist/lib/files/streamingReader.d.ts +93 -0
  129. package/dist/lib/files/streamingReader.js +322 -0
  130. package/dist/lib/files/types.d.ts +23 -0
  131. package/dist/lib/files/types.js +24 -0
  132. package/dist/lib/image-gen/imageGenTools.d.ts +2 -2
  133. package/dist/lib/image-gen/types.d.ts +12 -12
  134. package/dist/lib/memory/mem0Initializer.d.ts +2 -2
  135. package/dist/lib/neurolink.d.ts +61 -2
  136. package/dist/lib/neurolink.js +619 -307
  137. package/dist/lib/processors/archive/ArchiveProcessor.d.ts +327 -0
  138. package/dist/lib/processors/archive/ArchiveProcessor.js +1309 -0
  139. package/dist/lib/processors/archive/index.d.ts +33 -0
  140. package/dist/lib/processors/archive/index.js +43 -0
  141. package/dist/lib/processors/base/types.d.ts +70 -64
  142. package/dist/lib/processors/base/types.js +6 -0
  143. package/dist/lib/processors/cli/fileProcessorCli.d.ts +8 -8
  144. package/dist/lib/processors/cli/fileProcessorCli.js +5 -5
  145. package/dist/lib/processors/config/mimeTypes.js +25 -0
  146. package/dist/lib/processors/config/sizeLimits.d.ts +52 -40
  147. package/dist/lib/processors/config/sizeLimits.js +56 -44
  148. package/dist/lib/processors/document/ExcelProcessor.d.ts +14 -0
  149. package/dist/lib/processors/document/ExcelProcessor.js +72 -1
  150. package/dist/lib/processors/document/PptxProcessor.d.ts +63 -0
  151. package/dist/lib/processors/document/PptxProcessor.js +158 -0
  152. package/dist/lib/processors/document/index.d.ts +1 -0
  153. package/dist/lib/processors/document/index.js +6 -0
  154. package/dist/lib/processors/errors/FileErrorCode.d.ts +2 -2
  155. package/dist/lib/processors/errors/errorHelpers.d.ts +2 -2
  156. package/dist/lib/processors/errors/errorSerializer.d.ts +4 -4
  157. package/dist/lib/processors/index.d.ts +8 -2
  158. package/dist/lib/processors/index.js +5 -2
  159. package/dist/lib/processors/integration/FileProcessorIntegration.d.ts +8 -8
  160. package/dist/lib/processors/integration/FileProcessorIntegration.js +7 -7
  161. package/dist/lib/processors/media/AudioProcessor.d.ts +328 -0
  162. package/dist/lib/processors/media/AudioProcessor.js +708 -0
  163. package/dist/lib/processors/media/VideoProcessor.d.ts +350 -0
  164. package/dist/lib/processors/media/VideoProcessor.js +992 -0
  165. package/dist/lib/processors/media/index.d.ts +27 -0
  166. package/dist/lib/processors/media/index.js +37 -0
  167. package/dist/lib/processors/registry/ProcessorRegistry.d.ts +19 -5
  168. package/dist/lib/processors/registry/ProcessorRegistry.js +103 -8
  169. package/dist/lib/processors/registry/index.d.ts +1 -1
  170. package/dist/lib/processors/registry/index.js +1 -1
  171. package/dist/lib/processors/registry/types.d.ts +2 -2
  172. package/dist/lib/providers/googleAiStudio.d.ts +34 -0
  173. package/dist/lib/providers/googleAiStudio.js +267 -397
  174. package/dist/lib/providers/googleVertex.d.ts +55 -1
  175. package/dist/lib/providers/googleVertex.js +452 -719
  176. package/dist/lib/providers/sagemaker/detection.d.ts +6 -6
  177. package/dist/lib/providers/sagemaker/diagnostics.d.ts +4 -4
  178. package/dist/lib/providers/sagemaker/parsers.d.ts +4 -4
  179. package/dist/lib/rag/chunkers/RecursiveChunker.js +2 -2
  180. package/dist/lib/rag/document/loaders.d.ts +6 -71
  181. package/dist/lib/rag/document/loaders.js +5 -5
  182. package/dist/lib/rag/graphRag/graphRAG.js +26 -9
  183. package/dist/lib/rag/metadata/MetadataExtractorFactory.d.ts +5 -55
  184. package/dist/lib/rag/metadata/metadataExtractor.js +6 -3
  185. package/dist/lib/rag/pipeline/RAGPipeline.d.ts +8 -126
  186. package/dist/lib/rag/pipeline/RAGPipeline.js +11 -11
  187. package/dist/lib/rag/pipeline/contextAssembly.d.ts +3 -42
  188. package/dist/lib/rag/pipeline/contextAssembly.js +6 -3
  189. package/dist/lib/rag/reranker/RerankerFactory.d.ts +5 -60
  190. package/dist/lib/rag/resilience/CircuitBreaker.d.ts +3 -33
  191. package/dist/lib/rag/resilience/RetryHandler.d.ts +2 -21
  192. package/dist/lib/rag/retrieval/hybridSearch.d.ts +3 -41
  193. package/dist/lib/rag/retrieval/vectorQueryTool.d.ts +2 -13
  194. package/dist/lib/rag/retrieval/vectorQueryTool.js +4 -3
  195. package/dist/lib/rag/types.d.ts +3 -3
  196. package/dist/lib/sdk/toolRegistration.d.ts +2 -2
  197. package/dist/lib/server/middleware/cache.d.ts +2 -2
  198. package/dist/lib/server/middleware/rateLimit.d.ts +2 -2
  199. package/dist/lib/server/routes/mcpRoutes.js +277 -249
  200. package/dist/lib/server/routes/memoryRoutes.js +287 -281
  201. package/dist/lib/server/utils/validation.d.ts +10 -10
  202. package/dist/lib/session/globalSessionState.d.ts +2 -2
  203. package/dist/lib/telemetry/telemetryService.d.ts +2 -2
  204. package/dist/lib/types/common.d.ts +39 -0
  205. package/dist/lib/types/contextTypes.d.ts +255 -0
  206. package/dist/lib/types/contextTypes.js +0 -2
  207. package/dist/lib/types/conversation.d.ts +62 -0
  208. package/dist/lib/types/conversationMemoryInterface.d.ts +27 -0
  209. package/dist/lib/types/conversationMemoryInterface.js +7 -0
  210. package/dist/lib/types/fileReferenceTypes.d.ts +222 -0
  211. package/dist/lib/types/fileReferenceTypes.js +9 -0
  212. package/dist/lib/types/fileTypes.d.ts +26 -3
  213. package/dist/lib/types/generateTypes.d.ts +22 -1
  214. package/dist/lib/types/index.d.ts +4 -5
  215. package/dist/lib/types/index.js +8 -10
  216. package/dist/lib/types/modelTypes.d.ts +2 -2
  217. package/dist/lib/types/processorTypes.d.ts +597 -0
  218. package/dist/lib/types/processorTypes.js +91 -0
  219. package/dist/lib/types/ragTypes.d.ts +481 -0
  220. package/dist/lib/types/ragTypes.js +8 -0
  221. package/dist/lib/types/sdkTypes.d.ts +17 -18
  222. package/dist/lib/types/streamTypes.d.ts +11 -1
  223. package/dist/lib/utils/async/retry.d.ts +2 -2
  224. package/dist/lib/utils/async/withTimeout.js +3 -1
  225. package/dist/lib/utils/conversationMemory.d.ts +12 -6
  226. package/dist/lib/utils/conversationMemory.js +76 -36
  227. package/dist/lib/utils/fileDetector.d.ts +62 -0
  228. package/dist/lib/utils/fileDetector.js +1014 -14
  229. package/dist/lib/utils/json/safeParse.d.ts +2 -2
  230. package/dist/lib/utils/messageBuilder.js +806 -153
  231. package/dist/lib/utils/modelChoices.d.ts +2 -2
  232. package/dist/lib/utils/multimodalOptionsBuilder.d.ts +2 -1
  233. package/dist/lib/utils/multimodalOptionsBuilder.js +1 -0
  234. package/dist/lib/utils/rateLimiter.d.ts +2 -2
  235. package/dist/lib/utils/sanitizers/filename.d.ts +4 -4
  236. package/dist/lib/utils/sanitizers/svg.d.ts +2 -2
  237. package/dist/lib/utils/thinkingConfig.d.ts +6 -6
  238. package/dist/lib/utils/tokenEstimation.d.ts +68 -0
  239. package/dist/lib/utils/tokenEstimation.js +113 -0
  240. package/dist/lib/utils/tokenUtils.d.ts +4 -4
  241. package/dist/lib/utils/ttsProcessor.d.ts +2 -2
  242. package/dist/lib/workflow/config.d.ts +150 -150
  243. package/dist/memory/mem0Initializer.d.ts +2 -2
  244. package/dist/neurolink.d.ts +61 -2
  245. package/dist/neurolink.js +619 -307
  246. package/dist/processors/archive/ArchiveProcessor.d.ts +327 -0
  247. package/dist/processors/archive/ArchiveProcessor.js +1308 -0
  248. package/dist/processors/archive/index.d.ts +33 -0
  249. package/dist/processors/archive/index.js +42 -0
  250. package/dist/processors/base/types.d.ts +70 -64
  251. package/dist/processors/base/types.js +6 -0
  252. package/dist/processors/cli/fileProcessorCli.d.ts +8 -8
  253. package/dist/processors/cli/fileProcessorCli.js +5 -5
  254. package/dist/processors/config/mimeTypes.js +25 -0
  255. package/dist/processors/config/sizeLimits.d.ts +52 -40
  256. package/dist/processors/config/sizeLimits.js +56 -44
  257. package/dist/processors/document/ExcelProcessor.d.ts +14 -0
  258. package/dist/processors/document/ExcelProcessor.js +72 -1
  259. package/dist/processors/document/PptxProcessor.d.ts +63 -0
  260. package/dist/processors/document/PptxProcessor.js +157 -0
  261. package/dist/processors/document/index.d.ts +1 -0
  262. package/dist/processors/document/index.js +6 -0
  263. package/dist/processors/errors/FileErrorCode.d.ts +2 -2
  264. package/dist/processors/errors/errorHelpers.d.ts +2 -2
  265. package/dist/processors/errors/errorSerializer.d.ts +4 -4
  266. package/dist/processors/index.d.ts +8 -2
  267. package/dist/processors/index.js +5 -2
  268. package/dist/processors/integration/FileProcessorIntegration.d.ts +8 -8
  269. package/dist/processors/integration/FileProcessorIntegration.js +7 -7
  270. package/dist/processors/media/AudioProcessor.d.ts +328 -0
  271. package/dist/processors/media/AudioProcessor.js +707 -0
  272. package/dist/processors/media/VideoProcessor.d.ts +350 -0
  273. package/dist/processors/media/VideoProcessor.js +991 -0
  274. package/dist/processors/media/ffprobe-static.d.ts +4 -0
  275. package/dist/processors/media/index.d.ts +27 -0
  276. package/dist/processors/media/index.js +36 -0
  277. package/dist/processors/registry/ProcessorRegistry.d.ts +19 -5
  278. package/dist/processors/registry/ProcessorRegistry.js +103 -8
  279. package/dist/processors/registry/index.d.ts +1 -1
  280. package/dist/processors/registry/index.js +1 -1
  281. package/dist/processors/registry/types.d.ts +2 -2
  282. package/dist/providers/googleAiStudio.d.ts +34 -0
  283. package/dist/providers/googleAiStudio.js +267 -397
  284. package/dist/providers/googleVertex.d.ts +55 -1
  285. package/dist/providers/googleVertex.js +452 -719
  286. package/dist/providers/sagemaker/detection.d.ts +6 -6
  287. package/dist/providers/sagemaker/diagnostics.d.ts +4 -4
  288. package/dist/providers/sagemaker/parsers.d.ts +4 -4
  289. package/dist/rag/chunkers/RecursiveChunker.js +2 -2
  290. package/dist/rag/document/loaders.d.ts +6 -71
  291. package/dist/rag/document/loaders.js +5 -5
  292. package/dist/rag/graphRag/graphRAG.js +26 -9
  293. package/dist/rag/metadata/MetadataExtractorFactory.d.ts +5 -55
  294. package/dist/rag/metadata/metadataExtractor.js +6 -3
  295. package/dist/rag/pipeline/RAGPipeline.d.ts +8 -126
  296. package/dist/rag/pipeline/RAGPipeline.js +11 -11
  297. package/dist/rag/pipeline/contextAssembly.d.ts +3 -42
  298. package/dist/rag/pipeline/contextAssembly.js +6 -3
  299. package/dist/rag/reranker/RerankerFactory.d.ts +5 -60
  300. package/dist/rag/resilience/CircuitBreaker.d.ts +3 -33
  301. package/dist/rag/resilience/RetryHandler.d.ts +2 -21
  302. package/dist/rag/retrieval/hybridSearch.d.ts +3 -41
  303. package/dist/rag/retrieval/vectorQueryTool.d.ts +2 -13
  304. package/dist/rag/retrieval/vectorQueryTool.js +4 -3
  305. package/dist/rag/types.d.ts +3 -3
  306. package/dist/sdk/toolRegistration.d.ts +2 -2
  307. package/dist/server/middleware/cache.d.ts +2 -2
  308. package/dist/server/middleware/rateLimit.d.ts +2 -2
  309. package/dist/server/routes/mcpRoutes.js +277 -249
  310. package/dist/server/routes/memoryRoutes.js +287 -281
  311. package/dist/server/utils/validation.d.ts +4 -4
  312. package/dist/session/globalSessionState.d.ts +2 -2
  313. package/dist/telemetry/telemetryService.d.ts +2 -2
  314. package/dist/types/common.d.ts +39 -0
  315. package/dist/types/contextTypes.d.ts +255 -0
  316. package/dist/types/contextTypes.js +0 -2
  317. package/dist/types/conversation.d.ts +62 -0
  318. package/dist/types/conversationMemoryInterface.d.ts +27 -0
  319. package/dist/types/conversationMemoryInterface.js +6 -0
  320. package/dist/types/fileReferenceTypes.d.ts +222 -0
  321. package/dist/types/fileReferenceTypes.js +8 -0
  322. package/dist/types/fileTypes.d.ts +26 -3
  323. package/dist/types/generateTypes.d.ts +22 -1
  324. package/dist/types/index.d.ts +4 -5
  325. package/dist/types/index.js +8 -10
  326. package/dist/types/processorTypes.d.ts +597 -0
  327. package/dist/types/processorTypes.js +90 -0
  328. package/dist/types/ragTypes.d.ts +481 -0
  329. package/dist/types/ragTypes.js +7 -0
  330. package/dist/types/sdkTypes.d.ts +17 -18
  331. package/dist/types/streamTypes.d.ts +11 -1
  332. package/dist/utils/async/retry.d.ts +2 -2
  333. package/dist/utils/async/withTimeout.js +3 -1
  334. package/dist/utils/conversationMemory.d.ts +12 -6
  335. package/dist/utils/conversationMemory.js +76 -36
  336. package/dist/utils/fileDetector.d.ts +62 -0
  337. package/dist/utils/fileDetector.js +1014 -14
  338. package/dist/utils/json/safeParse.d.ts +2 -2
  339. package/dist/utils/messageBuilder.js +806 -153
  340. package/dist/utils/modelChoices.d.ts +2 -2
  341. package/dist/utils/multimodalOptionsBuilder.d.ts +2 -1
  342. package/dist/utils/multimodalOptionsBuilder.js +1 -0
  343. package/dist/utils/rateLimiter.d.ts +2 -2
  344. package/dist/utils/sanitizers/filename.d.ts +4 -4
  345. package/dist/utils/sanitizers/svg.d.ts +2 -2
  346. package/dist/utils/thinkingConfig.d.ts +6 -6
  347. package/dist/utils/tokenEstimation.d.ts +68 -0
  348. package/dist/utils/tokenEstimation.js +112 -0
  349. package/dist/utils/tokenUtils.d.ts +4 -4
  350. package/dist/utils/ttsProcessor.d.ts +2 -2
  351. package/dist/workflow/config.d.ts +104 -104
  352. package/package.json +18 -6
  353. package/dist/lib/utils/conversationMemoryUtils.d.ts +0 -25
  354. package/dist/lib/utils/conversationMemoryUtils.js +0 -138
  355. package/dist/utils/conversationMemoryUtils.d.ts +0 -25
  356. package/dist/utils/conversationMemoryUtils.js +0 -137
@@ -0,0 +1,423 @@
1
+ /**
2
+ * On-Demand File Access Tools
3
+ *
4
+ * Exposes file operations as LLM tools via the Vercel AI SDK `tool()` pattern.
5
+ * These tools allow the LLM to access file content lazily — only reading
6
+ * the specific sections, lines, or search results it needs.
7
+ *
8
+ * Tools:
9
+ * - list_attached_files: List all registered files with metadata
10
+ * - read_file_section: Read specific line range with token budget
11
+ * - search_in_file: Search for patterns within a file
12
+ * - get_file_preview: Get the preview/summary of a file
13
+ * - extract_file_content: Targeted extraction for any file type (video frames,
14
+ * PDF pages, spreadsheet ranges, archive entries, PPTX slides)
15
+ *
16
+ * @module files/fileTools
17
+ */
18
+ import { z } from "zod";
19
+ import type { FileReferenceRegistry } from "./fileReferenceRegistry.js";
20
+ /**
21
+ * Create file access tools bound to a FileReferenceRegistry instance.
22
+ *
23
+ * These tools follow the same pattern as the existing directAgentTools
24
+ * (getCurrentTime, readFile, etc.) in src/lib/agent/directTools.ts.
25
+ * They use `tool()` from the Vercel AI SDK with zod parameter schemas.
26
+ *
27
+ * @param registry - The FileReferenceRegistry instance to bind to
28
+ * @returns Record of tool name to tool definition
29
+ *
30
+ * @example
31
+ * ```typescript
32
+ * const registry = new FileReferenceRegistry();
33
+ * const tools = createFileTools(registry);
34
+ * // tools.list_attached_files, tools.read_file_section, etc.
35
+ * ```
36
+ */
37
+ export declare function createFileTools(registry: FileReferenceRegistry): {
38
+ list_attached_files: import("ai").Tool<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>, {
39
+ success: boolean;
40
+ message: string;
41
+ fileCount: number;
42
+ files?: undefined;
43
+ formatted?: undefined;
44
+ error?: undefined;
45
+ } | {
46
+ success: boolean;
47
+ fileCount: number;
48
+ files: {
49
+ index: number;
50
+ id: string;
51
+ filename: string;
52
+ type: import("../index.js").FileType;
53
+ size: string;
54
+ sizeBytes: number;
55
+ sizeTier: import("./types.js").SizeTier;
56
+ estimatedTokens: number;
57
+ status: import("./types.js").FileReferenceStatus;
58
+ hasPreview: boolean;
59
+ hasSummary: boolean;
60
+ totalLines: number | null;
61
+ }[];
62
+ formatted: string;
63
+ message?: undefined;
64
+ error?: undefined;
65
+ } | {
66
+ success: boolean;
67
+ error: string;
68
+ message?: undefined;
69
+ fileCount?: undefined;
70
+ files?: undefined;
71
+ formatted?: undefined;
72
+ }> & {
73
+ execute: (args: {}, options: import("ai").ToolExecutionOptions) => PromiseLike<{
74
+ success: boolean;
75
+ message: string;
76
+ fileCount: number;
77
+ files?: undefined;
78
+ formatted?: undefined;
79
+ error?: undefined;
80
+ } | {
81
+ success: boolean;
82
+ fileCount: number;
83
+ files: {
84
+ index: number;
85
+ id: string;
86
+ filename: string;
87
+ type: import("../index.js").FileType;
88
+ size: string;
89
+ sizeBytes: number;
90
+ sizeTier: import("./types.js").SizeTier;
91
+ estimatedTokens: number;
92
+ status: import("./types.js").FileReferenceStatus;
93
+ hasPreview: boolean;
94
+ hasSummary: boolean;
95
+ totalLines: number | null;
96
+ }[];
97
+ formatted: string;
98
+ message?: undefined;
99
+ error?: undefined;
100
+ } | {
101
+ success: boolean;
102
+ error: string;
103
+ message?: undefined;
104
+ fileCount?: undefined;
105
+ files?: undefined;
106
+ formatted?: undefined;
107
+ }>;
108
+ };
109
+ read_file_section: import("ai").Tool<z.ZodObject<{
110
+ file_id: z.ZodString;
111
+ start_line: z.ZodDefault<z.ZodNumber>;
112
+ end_line: z.ZodOptional<z.ZodNumber>;
113
+ token_budget: z.ZodDefault<z.ZodNumber>;
114
+ }, "strip", z.ZodTypeAny, {
115
+ file_id: string;
116
+ start_line: number;
117
+ token_budget: number;
118
+ end_line?: number | undefined;
119
+ }, {
120
+ file_id: string;
121
+ start_line?: number | undefined;
122
+ end_line?: number | undefined;
123
+ token_budget?: number | undefined;
124
+ }>, {
125
+ success: boolean;
126
+ error: string;
127
+ content?: undefined;
128
+ startLine?: undefined;
129
+ endLine?: undefined;
130
+ totalLines?: undefined;
131
+ truncated?: undefined;
132
+ estimatedTokens?: undefined;
133
+ guidance?: undefined;
134
+ } | {
135
+ success: boolean;
136
+ content: string;
137
+ startLine: number;
138
+ endLine: number;
139
+ totalLines: number;
140
+ truncated: boolean;
141
+ estimatedTokens: number;
142
+ guidance: string | undefined;
143
+ error?: undefined;
144
+ }> & {
145
+ execute: (args: {
146
+ file_id: string;
147
+ start_line: number;
148
+ token_budget: number;
149
+ end_line?: number | undefined;
150
+ }, options: import("ai").ToolExecutionOptions) => PromiseLike<{
151
+ success: boolean;
152
+ error: string;
153
+ content?: undefined;
154
+ startLine?: undefined;
155
+ endLine?: undefined;
156
+ totalLines?: undefined;
157
+ truncated?: undefined;
158
+ estimatedTokens?: undefined;
159
+ guidance?: undefined;
160
+ } | {
161
+ success: boolean;
162
+ content: string;
163
+ startLine: number;
164
+ endLine: number;
165
+ totalLines: number;
166
+ truncated: boolean;
167
+ estimatedTokens: number;
168
+ guidance: string | undefined;
169
+ error?: undefined;
170
+ }>;
171
+ };
172
+ search_in_file: import("ai").Tool<z.ZodObject<{
173
+ file_id: z.ZodString;
174
+ pattern: z.ZodString;
175
+ max_matches: z.ZodDefault<z.ZodNumber>;
176
+ }, "strip", z.ZodTypeAny, {
177
+ pattern: string;
178
+ file_id: string;
179
+ max_matches: number;
180
+ }, {
181
+ pattern: string;
182
+ file_id: string;
183
+ max_matches?: number | undefined;
184
+ }>, {
185
+ success: boolean;
186
+ error: string;
187
+ pattern?: undefined;
188
+ totalMatches?: undefined;
189
+ matchesReturned?: undefined;
190
+ truncated?: undefined;
191
+ matches?: undefined;
192
+ } | {
193
+ success: boolean;
194
+ pattern: string;
195
+ totalMatches: number;
196
+ matchesReturned: number;
197
+ truncated: boolean;
198
+ matches: {
199
+ lineNumber: number;
200
+ line: string;
201
+ context: {
202
+ before: string[];
203
+ after: string[];
204
+ } | undefined;
205
+ }[];
206
+ error?: undefined;
207
+ }> & {
208
+ execute: (args: {
209
+ pattern: string;
210
+ file_id: string;
211
+ max_matches: number;
212
+ }, options: import("ai").ToolExecutionOptions) => PromiseLike<{
213
+ success: boolean;
214
+ error: string;
215
+ pattern?: undefined;
216
+ totalMatches?: undefined;
217
+ matchesReturned?: undefined;
218
+ truncated?: undefined;
219
+ matches?: undefined;
220
+ } | {
221
+ success: boolean;
222
+ pattern: string;
223
+ totalMatches: number;
224
+ matchesReturned: number;
225
+ truncated: boolean;
226
+ matches: {
227
+ lineNumber: number;
228
+ line: string;
229
+ context: {
230
+ before: string[];
231
+ after: string[];
232
+ } | undefined;
233
+ }[];
234
+ error?: undefined;
235
+ }>;
236
+ };
237
+ get_file_preview: import("ai").Tool<z.ZodObject<{
238
+ file_id: z.ZodString;
239
+ }, "strip", z.ZodTypeAny, {
240
+ file_id: string;
241
+ }, {
242
+ file_id: string;
243
+ }>, {
244
+ success: boolean;
245
+ error: string;
246
+ filename?: undefined;
247
+ type?: undefined;
248
+ size?: undefined;
249
+ sizeBytes?: undefined;
250
+ sizeTier?: undefined;
251
+ mimeType?: undefined;
252
+ estimatedTokens?: undefined;
253
+ status?: undefined;
254
+ totalLines?: undefined;
255
+ preview?: undefined;
256
+ summary?: undefined;
257
+ hasSummary?: undefined;
258
+ } | {
259
+ success: boolean;
260
+ filename: string;
261
+ type: import("../index.js").FileType;
262
+ size: string;
263
+ sizeBytes: number;
264
+ sizeTier: import("./types.js").SizeTier;
265
+ mimeType: string;
266
+ estimatedTokens: number;
267
+ status: import("./types.js").FileReferenceStatus;
268
+ totalLines: number | null;
269
+ preview: string;
270
+ summary: string | null;
271
+ hasSummary: boolean;
272
+ error?: undefined;
273
+ }> & {
274
+ execute: (args: {
275
+ file_id: string;
276
+ }, options: import("ai").ToolExecutionOptions) => PromiseLike<{
277
+ success: boolean;
278
+ error: string;
279
+ filename?: undefined;
280
+ type?: undefined;
281
+ size?: undefined;
282
+ sizeBytes?: undefined;
283
+ sizeTier?: undefined;
284
+ mimeType?: undefined;
285
+ estimatedTokens?: undefined;
286
+ status?: undefined;
287
+ totalLines?: undefined;
288
+ preview?: undefined;
289
+ summary?: undefined;
290
+ hasSummary?: undefined;
291
+ } | {
292
+ success: boolean;
293
+ filename: string;
294
+ type: import("../index.js").FileType;
295
+ size: string;
296
+ sizeBytes: number;
297
+ sizeTier: import("./types.js").SizeTier;
298
+ mimeType: string;
299
+ estimatedTokens: number;
300
+ status: import("./types.js").FileReferenceStatus;
301
+ totalLines: number | null;
302
+ preview: string;
303
+ summary: string | null;
304
+ hasSummary: boolean;
305
+ error?: undefined;
306
+ }>;
307
+ };
308
+ extract_file_content: import("ai").Tool<z.ZodObject<{
309
+ file_id: z.ZodString;
310
+ start_time: z.ZodOptional<z.ZodNumber>;
311
+ end_time: z.ZodOptional<z.ZodNumber>;
312
+ frame_count: z.ZodOptional<z.ZodNumber>;
313
+ pages: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
314
+ page_range: z.ZodOptional<z.ZodObject<{
315
+ start: z.ZodNumber;
316
+ end: z.ZodNumber;
317
+ }, "strip", z.ZodTypeAny, {
318
+ end: number;
319
+ start: number;
320
+ }, {
321
+ end: number;
322
+ start: number;
323
+ }>>;
324
+ sheet: z.ZodOptional<z.ZodString>;
325
+ row_range: z.ZodOptional<z.ZodObject<{
326
+ start: z.ZodNumber;
327
+ end: z.ZodNumber;
328
+ }, "strip", z.ZodTypeAny, {
329
+ end: number;
330
+ start: number;
331
+ }, {
332
+ end: number;
333
+ start: number;
334
+ }>>;
335
+ columns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
336
+ entry_path: z.ZodOptional<z.ZodString>;
337
+ format: z.ZodOptional<z.ZodEnum<["text", "detailed", "summary"]>>;
338
+ }, "strip", z.ZodTypeAny, {
339
+ file_id: string;
340
+ format?: "text" | "summary" | "detailed" | undefined;
341
+ columns?: string[] | undefined;
342
+ sheet?: string | undefined;
343
+ start_time?: number | undefined;
344
+ end_time?: number | undefined;
345
+ frame_count?: number | undefined;
346
+ pages?: number[] | undefined;
347
+ page_range?: {
348
+ end: number;
349
+ start: number;
350
+ } | undefined;
351
+ row_range?: {
352
+ end: number;
353
+ start: number;
354
+ } | undefined;
355
+ entry_path?: string | undefined;
356
+ }, {
357
+ file_id: string;
358
+ format?: "text" | "summary" | "detailed" | undefined;
359
+ columns?: string[] | undefined;
360
+ sheet?: string | undefined;
361
+ start_time?: number | undefined;
362
+ end_time?: number | undefined;
363
+ frame_count?: number | undefined;
364
+ pages?: number[] | undefined;
365
+ page_range?: {
366
+ end: number;
367
+ start: number;
368
+ } | undefined;
369
+ row_range?: {
370
+ end: number;
371
+ start: number;
372
+ } | undefined;
373
+ entry_path?: string | undefined;
374
+ }>, {
375
+ success: false;
376
+ error: string | undefined;
377
+ text: string | undefined;
378
+ metadata: Record<string, unknown> | undefined;
379
+ imageCount: number;
380
+ _images: Buffer[] | undefined;
381
+ } | {
382
+ success: true;
383
+ text: string | undefined;
384
+ metadata: Record<string, unknown> | undefined;
385
+ imageCount: number;
386
+ _images: Buffer<ArrayBufferLike>[] | undefined;
387
+ error: string | undefined;
388
+ }> & {
389
+ execute: (args: {
390
+ file_id: string;
391
+ format?: "text" | "summary" | "detailed" | undefined;
392
+ columns?: string[] | undefined;
393
+ sheet?: string | undefined;
394
+ start_time?: number | undefined;
395
+ end_time?: number | undefined;
396
+ frame_count?: number | undefined;
397
+ pages?: number[] | undefined;
398
+ page_range?: {
399
+ end: number;
400
+ start: number;
401
+ } | undefined;
402
+ row_range?: {
403
+ end: number;
404
+ start: number;
405
+ } | undefined;
406
+ entry_path?: string | undefined;
407
+ }, options: import("ai").ToolExecutionOptions) => PromiseLike<{
408
+ success: false;
409
+ error: string | undefined;
410
+ text: string | undefined;
411
+ metadata: Record<string, unknown> | undefined;
412
+ imageCount: number;
413
+ _images: Buffer[] | undefined;
414
+ } | {
415
+ success: true;
416
+ text: string | undefined;
417
+ metadata: Record<string, unknown> | undefined;
418
+ imageCount: number;
419
+ _images: Buffer<ArrayBufferLike>[] | undefined;
420
+ error: string | undefined;
421
+ }>;
422
+ };
423
+ };