@tyvm/knowhow 0.0.145 → 0.0.147

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 (320) hide show
  1. package/autodoc/cli-reference.md +36 -7
  2. package/bin/knowhow.js +8 -6
  3. package/package.json +1 -1
  4. package/src/agents/base/base.ts +24 -0
  5. package/src/agents/historyRollback.ts +36 -0
  6. package/src/agents/tools/startAgentTask.ts +41 -9
  7. package/src/auth/browserLogin.ts +9 -3
  8. package/src/auth/keyAuth.ts +115 -0
  9. package/src/auth/keyManager.ts +166 -0
  10. package/src/chat/CliChatService.ts +16 -0
  11. package/src/chat/modules/AgentModule.ts +144 -56
  12. package/src/chat/modules/AskModule.ts +2 -0
  13. package/src/chat/modules/BaseChatModule.ts +0 -1
  14. package/src/chat/modules/CustomCommandsModule.ts +2 -0
  15. package/src/chat/modules/InternalChatModule.ts +2 -0
  16. package/src/chat/modules/RemoteSyncModule.ts +4 -0
  17. package/src/chat/modules/RendererModule.ts +2 -0
  18. package/src/chat/modules/SearchModule.ts +2 -0
  19. package/src/chat/modules/SessionsModule.ts +110 -39
  20. package/src/chat/modules/SetupModule.ts +2 -0
  21. package/src/chat/modules/ShellCommandModule.ts +2 -0
  22. package/src/chat/modules/SystemModule.ts +2 -0
  23. package/src/chat/types.ts +5 -2
  24. package/src/cli.ts +1 -1
  25. package/src/clients/anthropic.ts +24 -0
  26. package/src/clients/fireworks.ts +3 -0
  27. package/src/clients/gemini.ts +8 -0
  28. package/src/clients/index.ts +2 -0
  29. package/src/clients/openai.ts +7 -4
  30. package/src/clients/types.ts +30 -7
  31. package/src/clients/xai.ts +23 -4
  32. package/src/commands/agent.ts +11 -39
  33. package/src/commands/agents.ts +403 -53
  34. package/src/commands/misc.ts +3 -2
  35. package/src/commands/services.ts +49 -3
  36. package/src/login.ts +89 -28
  37. package/src/plugins/plugins.ts +16 -0
  38. package/src/processors/TokenCompressor.ts +40 -8
  39. package/src/processors/ToolResponseCache.ts +17 -8
  40. package/src/processors/tools/boundedToolResponse.ts +49 -0
  41. package/src/processors/tools/grepToolResponse.ts +164 -38
  42. package/src/processors/tools/index.ts +2 -0
  43. package/src/processors/tools/jqToolResponse.ts +40 -10
  44. package/src/processors/tools/listStoredToolResponses.ts +51 -10
  45. package/src/processors/tools/tailToolResponse.ts +85 -17
  46. package/src/services/AgentService.ts +2 -0
  47. package/src/services/AgentSyncFs.ts +65 -0
  48. package/src/services/AgentSyncKnowhowWeb.ts +22 -4
  49. package/src/services/BehaviorsService.ts +2 -0
  50. package/src/services/DockerService.ts +2 -0
  51. package/src/services/EmbeddingService.ts +2 -0
  52. package/src/services/EmbeddingsService.ts +3 -0
  53. package/src/services/KnowhowClient.ts +68 -7
  54. package/src/services/LazyToolsService.ts +16 -0
  55. package/src/services/Mcp.ts +11 -2
  56. package/src/services/McpServer.ts +2 -0
  57. package/src/services/MessageProcessor.ts +2 -0
  58. package/src/services/MinimalToolsService.ts +2 -0
  59. package/src/services/RuntimeReloadService.ts +31 -0
  60. package/src/services/SessionManager.ts +5 -0
  61. package/src/services/SkillsService.ts +2 -0
  62. package/src/services/SyncedAgentWatcher.ts +2 -0
  63. package/src/services/SyncerService.ts +23 -8
  64. package/src/services/TaskRegistry.ts +2 -0
  65. package/src/services/Tools.ts +13 -0
  66. package/src/services/TracingService.ts +116 -0
  67. package/src/services/index.ts +10 -0
  68. package/src/services/modules/index.ts +49 -3
  69. package/src/services/modules/types.ts +8 -0
  70. package/src/types.ts +2 -0
  71. package/src/util/Trace.ts +236 -0
  72. package/src/utils/http.ts +18 -2
  73. package/tests/clients/fireworks.test.ts +65 -0
  74. package/tests/clients/reasoningEffort.test.ts +79 -0
  75. package/tests/compressor/toolResponseCache.test.ts +2 -1
  76. package/tests/manual/clients/completions.test.ts +27 -10
  77. package/tests/processors/TokenCompressor.test.ts +17 -3
  78. package/tests/processors/tools/boundedRetrievalTools.test.ts +68 -0
  79. package/tests/processors/tools/grepToolResponse.test.ts +88 -1
  80. package/tests/unit/agents/historyRollback.test.ts +53 -0
  81. package/tests/unit/auth/keyAuth.test.ts +102 -0
  82. package/tests/unit/auth/keyManager.test.ts +67 -0
  83. package/tests/unit/chat/historyCommandArgs.test.ts +37 -0
  84. package/tests/unit/commands/agents.test.ts +68 -0
  85. package/tests/unit/login.test.ts +119 -0
  86. package/tests/unit/plugins/pluginLoading.test.ts +31 -0
  87. package/tests/unit/services/AgentSyncKnowhowWeb.test.ts +38 -0
  88. package/tests/unit/services/LazyToolsService.test.ts +29 -0
  89. package/tests/unit/services/RuntimeReloadService.test.ts +29 -0
  90. package/tests/unit/services/SessionManager.test.ts +43 -0
  91. package/tests/unit/services/SyncerService.test.ts +45 -0
  92. package/tests/unit/util/Trace.test.ts +119 -0
  93. package/tests/unit/utils/http.test.ts +43 -0
  94. package/ts_build/package.json +1 -1
  95. package/ts_build/src/agents/base/base.d.ts +1 -0
  96. package/ts_build/src/agents/base/base.js +31 -2
  97. package/ts_build/src/agents/base/base.js.map +1 -1
  98. package/ts_build/src/agents/historyRollback.d.ts +2 -0
  99. package/ts_build/src/agents/historyRollback.js +22 -0
  100. package/ts_build/src/agents/historyRollback.js.map +1 -0
  101. package/ts_build/src/agents/tools/startAgentTask.d.ts +2 -0
  102. package/ts_build/src/agents/tools/startAgentTask.js +36 -9
  103. package/ts_build/src/agents/tools/startAgentTask.js.map +1 -1
  104. package/ts_build/src/auth/browserLogin.d.ts +1 -0
  105. package/ts_build/src/auth/browserLogin.js +5 -2
  106. package/ts_build/src/auth/browserLogin.js.map +1 -1
  107. package/ts_build/src/auth/keyAuth.d.ts +5 -0
  108. package/ts_build/src/auth/keyAuth.js +79 -0
  109. package/ts_build/src/auth/keyAuth.js.map +1 -0
  110. package/ts_build/src/auth/keyManager.d.ts +14 -0
  111. package/ts_build/src/auth/keyManager.js +145 -0
  112. package/ts_build/src/auth/keyManager.js.map +1 -0
  113. package/ts_build/src/chat/CliChatService.js +15 -0
  114. package/ts_build/src/chat/CliChatService.js.map +1 -1
  115. package/ts_build/src/chat/modules/AgentModule.d.ts +13 -1
  116. package/ts_build/src/chat/modules/AgentModule.js +96 -43
  117. package/ts_build/src/chat/modules/AgentModule.js.map +1 -1
  118. package/ts_build/src/chat/modules/AskModule.js +12 -2
  119. package/ts_build/src/chat/modules/AskModule.js.map +1 -1
  120. package/ts_build/src/chat/modules/BaseChatModule.js.map +1 -1
  121. package/ts_build/src/chat/modules/CustomCommandsModule.js +12 -2
  122. package/ts_build/src/chat/modules/CustomCommandsModule.js.map +1 -1
  123. package/ts_build/src/chat/modules/InternalChatModule.js +16 -2
  124. package/ts_build/src/chat/modules/InternalChatModule.js.map +1 -1
  125. package/ts_build/src/chat/modules/RemoteSyncModule.js +19 -2
  126. package/ts_build/src/chat/modules/RemoteSyncModule.js.map +1 -1
  127. package/ts_build/src/chat/modules/RendererModule.js +17 -2
  128. package/ts_build/src/chat/modules/RendererModule.js.map +1 -1
  129. package/ts_build/src/chat/modules/SearchModule.js +12 -2
  130. package/ts_build/src/chat/modules/SearchModule.js.map +1 -1
  131. package/ts_build/src/chat/modules/SessionsModule.d.ts +6 -0
  132. package/ts_build/src/chat/modules/SessionsModule.js +114 -24
  133. package/ts_build/src/chat/modules/SessionsModule.js.map +1 -1
  134. package/ts_build/src/chat/modules/SetupModule.js +17 -2
  135. package/ts_build/src/chat/modules/SetupModule.js.map +1 -1
  136. package/ts_build/src/chat/modules/ShellCommandModule.js +12 -2
  137. package/ts_build/src/chat/modules/ShellCommandModule.js.map +1 -1
  138. package/ts_build/src/chat/modules/SystemModule.js +12 -2
  139. package/ts_build/src/chat/modules/SystemModule.js.map +1 -1
  140. package/ts_build/src/chat/types.d.ts +5 -2
  141. package/ts_build/src/cli.js +1 -1
  142. package/ts_build/src/cli.js.map +1 -1
  143. package/ts_build/src/clients/anthropic.d.ts +1 -0
  144. package/ts_build/src/clients/anthropic.js +12 -0
  145. package/ts_build/src/clients/anthropic.js.map +1 -1
  146. package/ts_build/src/clients/fireworks.js +1 -0
  147. package/ts_build/src/clients/fireworks.js.map +1 -1
  148. package/ts_build/src/clients/gemini.js +8 -0
  149. package/ts_build/src/clients/gemini.js.map +1 -1
  150. package/ts_build/src/clients/index.js +19 -4
  151. package/ts_build/src/clients/index.js.map +1 -1
  152. package/ts_build/src/clients/openai.js +4 -2
  153. package/ts_build/src/clients/openai.js.map +1 -1
  154. package/ts_build/src/clients/types.d.ts +4 -1
  155. package/ts_build/src/clients/types.js +14 -0
  156. package/ts_build/src/clients/types.js.map +1 -1
  157. package/ts_build/src/clients/xai.d.ts +1 -0
  158. package/ts_build/src/clients/xai.js +23 -4
  159. package/ts_build/src/clients/xai.js.map +1 -1
  160. package/ts_build/src/commands/agent.js +7 -22
  161. package/ts_build/src/commands/agent.js.map +1 -1
  162. package/ts_build/src/commands/agents.d.ts +1 -1
  163. package/ts_build/src/commands/agents.js +174 -16
  164. package/ts_build/src/commands/agents.js.map +1 -1
  165. package/ts_build/src/commands/misc.js +3 -2
  166. package/ts_build/src/commands/misc.js.map +1 -1
  167. package/ts_build/src/commands/services.d.ts +2 -0
  168. package/ts_build/src/commands/services.js +45 -3
  169. package/ts_build/src/commands/services.js.map +1 -1
  170. package/ts_build/src/login.d.ts +1 -1
  171. package/ts_build/src/login.js +53 -15
  172. package/ts_build/src/login.js.map +1 -1
  173. package/ts_build/src/plugins/plugins.d.ts +1 -0
  174. package/ts_build/src/plugins/plugins.js +14 -0
  175. package/ts_build/src/plugins/plugins.js.map +1 -1
  176. package/ts_build/src/processors/TokenCompressor.js +15 -6
  177. package/ts_build/src/processors/TokenCompressor.js.map +1 -1
  178. package/ts_build/src/processors/ToolResponseCache.d.ts +3 -3
  179. package/ts_build/src/processors/ToolResponseCache.js +8 -8
  180. package/ts_build/src/processors/ToolResponseCache.js.map +1 -1
  181. package/ts_build/src/processors/tools/boundedToolResponse.d.ts +7 -0
  182. package/ts_build/src/processors/tools/boundedToolResponse.js +27 -0
  183. package/ts_build/src/processors/tools/boundedToolResponse.js.map +1 -0
  184. package/ts_build/src/processors/tools/grepToolResponse.d.ts +4 -0
  185. package/ts_build/src/processors/tools/grepToolResponse.js +101 -25
  186. package/ts_build/src/processors/tools/grepToolResponse.js.map +1 -1
  187. package/ts_build/src/processors/tools/index.d.ts +2 -2
  188. package/ts_build/src/processors/tools/index.js.map +1 -1
  189. package/ts_build/src/processors/tools/jqToolResponse.d.ts +5 -1
  190. package/ts_build/src/processors/tools/jqToolResponse.js +26 -9
  191. package/ts_build/src/processors/tools/jqToolResponse.js.map +1 -1
  192. package/ts_build/src/processors/tools/listStoredToolResponses.d.ts +7 -1
  193. package/ts_build/src/processors/tools/listStoredToolResponses.js +39 -9
  194. package/ts_build/src/processors/tools/listStoredToolResponses.js.map +1 -1
  195. package/ts_build/src/processors/tools/tailToolResponse.d.ts +5 -0
  196. package/ts_build/src/processors/tools/tailToolResponse.js +56 -13
  197. package/ts_build/src/processors/tools/tailToolResponse.js.map +1 -1
  198. package/ts_build/src/services/AgentService.js +18 -2
  199. package/ts_build/src/services/AgentService.js.map +1 -1
  200. package/ts_build/src/services/AgentSyncFs.d.ts +3 -0
  201. package/ts_build/src/services/AgentSyncFs.js +62 -15
  202. package/ts_build/src/services/AgentSyncFs.js.map +1 -1
  203. package/ts_build/src/services/AgentSyncKnowhowWeb.d.ts +2 -0
  204. package/ts_build/src/services/AgentSyncKnowhowWeb.js +28 -6
  205. package/ts_build/src/services/AgentSyncKnowhowWeb.js.map +1 -1
  206. package/ts_build/src/services/BehaviorsService.js +12 -2
  207. package/ts_build/src/services/BehaviorsService.js.map +1 -1
  208. package/ts_build/src/services/DockerService.js +20 -8
  209. package/ts_build/src/services/DockerService.js.map +1 -1
  210. package/ts_build/src/services/EmbeddingService.js +16 -2
  211. package/ts_build/src/services/EmbeddingService.js.map +1 -1
  212. package/ts_build/src/services/EmbeddingsService.js +12 -2
  213. package/ts_build/src/services/EmbeddingsService.js.map +1 -1
  214. package/ts_build/src/services/KnowhowClient.d.ts +7 -2
  215. package/ts_build/src/services/KnowhowClient.js +108 -10
  216. package/ts_build/src/services/KnowhowClient.js.map +1 -1
  217. package/ts_build/src/services/LazyToolsService.d.ts +2 -0
  218. package/ts_build/src/services/LazyToolsService.js +26 -2
  219. package/ts_build/src/services/LazyToolsService.js.map +1 -1
  220. package/ts_build/src/services/Mcp.js +20 -4
  221. package/ts_build/src/services/Mcp.js.map +1 -1
  222. package/ts_build/src/services/McpServer.js +17 -2
  223. package/ts_build/src/services/McpServer.js.map +1 -1
  224. package/ts_build/src/services/MessageProcessor.js +16 -2
  225. package/ts_build/src/services/MessageProcessor.js.map +1 -1
  226. package/ts_build/src/services/MinimalToolsService.js +16 -2
  227. package/ts_build/src/services/MinimalToolsService.js.map +1 -1
  228. package/ts_build/src/services/RuntimeReloadService.d.ts +12 -0
  229. package/ts_build/src/services/RuntimeReloadService.js +26 -0
  230. package/ts_build/src/services/RuntimeReloadService.js.map +1 -0
  231. package/ts_build/src/services/SessionManager.js +19 -2
  232. package/ts_build/src/services/SessionManager.js.map +1 -1
  233. package/ts_build/src/services/SkillsService.js +16 -2
  234. package/ts_build/src/services/SkillsService.js.map +1 -1
  235. package/ts_build/src/services/SyncedAgentWatcher.js +16 -2
  236. package/ts_build/src/services/SyncedAgentWatcher.js.map +1 -1
  237. package/ts_build/src/services/SyncerService.d.ts +1 -0
  238. package/ts_build/src/services/SyncerService.js +27 -5
  239. package/ts_build/src/services/SyncerService.js.map +1 -1
  240. package/ts_build/src/services/TaskRegistry.js +12 -2
  241. package/ts_build/src/services/TaskRegistry.js.map +1 -1
  242. package/ts_build/src/services/Tools.d.ts +1 -0
  243. package/ts_build/src/services/Tools.js +21 -2
  244. package/ts_build/src/services/Tools.js.map +1 -1
  245. package/ts_build/src/services/TracingService.d.ts +16 -0
  246. package/ts_build/src/services/TracingService.js +35 -0
  247. package/ts_build/src/services/TracingService.js.map +1 -0
  248. package/ts_build/src/services/index.d.ts +8 -0
  249. package/ts_build/src/services/index.js +9 -1
  250. package/ts_build/src/services/index.js.map +1 -1
  251. package/ts_build/src/services/modules/index.d.ts +6 -0
  252. package/ts_build/src/services/modules/index.js +29 -3
  253. package/ts_build/src/services/modules/index.js.map +1 -1
  254. package/ts_build/src/services/modules/types.d.ts +3 -0
  255. package/ts_build/src/types.d.ts +1 -0
  256. package/ts_build/src/types.js.map +1 -1
  257. package/ts_build/src/util/Trace.d.ts +11 -0
  258. package/ts_build/src/util/Trace.js +107 -0
  259. package/ts_build/src/util/Trace.js.map +1 -0
  260. package/ts_build/src/utils/http.d.ts +6 -2
  261. package/ts_build/src/utils/http.js +8 -2
  262. package/ts_build/src/utils/http.js.map +1 -1
  263. package/ts_build/tests/clients/fireworks.test.d.ts +1 -0
  264. package/ts_build/tests/clients/fireworks.test.js +65 -0
  265. package/ts_build/tests/clients/fireworks.test.js.map +1 -0
  266. package/ts_build/tests/clients/reasoningEffort.test.d.ts +1 -0
  267. package/ts_build/tests/clients/reasoningEffort.test.js +68 -0
  268. package/ts_build/tests/clients/reasoningEffort.test.js.map +1 -0
  269. package/ts_build/tests/compressor/toolResponseCache.test.js +1 -1
  270. package/ts_build/tests/compressor/toolResponseCache.test.js.map +1 -1
  271. package/ts_build/tests/manual/clients/completions.test.js +19 -6
  272. package/ts_build/tests/manual/clients/completions.test.js.map +1 -1
  273. package/ts_build/tests/processors/TokenCompressor.test.js +11 -2
  274. package/ts_build/tests/processors/TokenCompressor.test.js.map +1 -1
  275. package/ts_build/tests/processors/tools/boundedRetrievalTools.test.d.ts +1 -0
  276. package/ts_build/tests/processors/tools/boundedRetrievalTools.test.js +57 -0
  277. package/ts_build/tests/processors/tools/boundedRetrievalTools.test.js.map +1 -0
  278. package/ts_build/tests/processors/tools/grepToolResponse.test.js +37 -0
  279. package/ts_build/tests/processors/tools/grepToolResponse.test.js.map +1 -1
  280. package/ts_build/tests/unit/agents/historyRollback.test.d.ts +1 -0
  281. package/ts_build/tests/unit/agents/historyRollback.test.js +42 -0
  282. package/ts_build/tests/unit/agents/historyRollback.test.js.map +1 -0
  283. package/ts_build/tests/unit/auth/keyAuth.test.d.ts +1 -0
  284. package/ts_build/tests/unit/auth/keyAuth.test.js +77 -0
  285. package/ts_build/tests/unit/auth/keyAuth.test.js.map +1 -0
  286. package/ts_build/tests/unit/auth/keyManager.test.d.ts +1 -0
  287. package/ts_build/tests/unit/auth/keyManager.test.js +52 -0
  288. package/ts_build/tests/unit/auth/keyManager.test.js.map +1 -0
  289. package/ts_build/tests/unit/chat/historyCommandArgs.test.d.ts +1 -0
  290. package/ts_build/tests/unit/chat/historyCommandArgs.test.js +29 -0
  291. package/ts_build/tests/unit/chat/historyCommandArgs.test.js.map +1 -0
  292. package/ts_build/tests/unit/commands/agents.test.d.ts +1 -0
  293. package/ts_build/tests/unit/commands/agents.test.js +91 -0
  294. package/ts_build/tests/unit/commands/agents.test.js.map +1 -0
  295. package/ts_build/tests/unit/login.test.d.ts +1 -0
  296. package/ts_build/tests/unit/login.test.js +97 -0
  297. package/ts_build/tests/unit/login.test.js.map +1 -0
  298. package/ts_build/tests/unit/plugins/pluginLoading.test.js +59 -0
  299. package/ts_build/tests/unit/plugins/pluginLoading.test.js.map +1 -1
  300. package/ts_build/tests/unit/services/AgentSyncKnowhowWeb.test.d.ts +1 -0
  301. package/ts_build/tests/unit/services/AgentSyncKnowhowWeb.test.js +32 -0
  302. package/ts_build/tests/unit/services/AgentSyncKnowhowWeb.test.js.map +1 -0
  303. package/ts_build/tests/unit/services/LazyToolsService.test.d.ts +1 -0
  304. package/ts_build/tests/unit/services/LazyToolsService.test.js +27 -0
  305. package/ts_build/tests/unit/services/LazyToolsService.test.js.map +1 -0
  306. package/ts_build/tests/unit/services/RuntimeReloadService.test.d.ts +1 -0
  307. package/ts_build/tests/unit/services/RuntimeReloadService.test.js +26 -0
  308. package/ts_build/tests/unit/services/RuntimeReloadService.test.js.map +1 -0
  309. package/ts_build/tests/unit/services/SessionManager.test.d.ts +1 -0
  310. package/ts_build/tests/unit/services/SessionManager.test.js +72 -0
  311. package/ts_build/tests/unit/services/SessionManager.test.js.map +1 -0
  312. package/ts_build/tests/unit/services/SyncerService.test.d.ts +1 -0
  313. package/ts_build/tests/unit/services/SyncerService.test.js +40 -0
  314. package/ts_build/tests/unit/services/SyncerService.test.js.map +1 -0
  315. package/ts_build/tests/unit/util/Trace.test.d.ts +1 -0
  316. package/ts_build/tests/unit/util/Trace.test.js +107 -0
  317. package/ts_build/tests/unit/util/Trace.test.js.map +1 -0
  318. package/ts_build/tests/unit/utils/http.test.d.ts +1 -0
  319. package/ts_build/tests/unit/utils/http.test.js +69 -0
  320. package/ts_build/tests/unit/utils/http.test.js.map +1 -0
@@ -113,10 +113,10 @@ class ToolResponseCache {
113
113
  }
114
114
  };
115
115
  }
116
- async queryToolResponse(toolCallId, jqQuery) {
116
+ async queryToolResponse(toolCallId, jqQuery, options) {
117
117
  const data = this.storage[toolCallId];
118
118
  const availableIds = Object.keys(this.storage);
119
- return (0, tools_1.executeJqQuery)(data, toolCallId, jqQuery, availableIds, this.toolNameMap);
119
+ return (0, tools_1.executeJqQuery)(data, toolCallId, jqQuery, availableIds, this.toolNameMap, options);
120
120
  }
121
121
  async grepToolResponse(toolCallId, pattern, options) {
122
122
  const data = this.storage[toolCallId];
@@ -128,8 +128,8 @@ class ToolResponseCache {
128
128
  const availableIds = Object.keys(this.storage);
129
129
  return (0, tools_1.executeTail)(data, toolCallId, availableIds, options, this.toolNameMap);
130
130
  }
131
- async listStoredToolResponses() {
132
- return (0, tools_1.executeListStoredToolResponses)(this.storage, this.metadataStorage, this.toolNameMap);
131
+ async listStoredToolResponses(options) {
132
+ return (0, tools_1.executeListStoredToolResponses)(this.storage, this.metadataStorage, this.toolNameMap, options);
133
133
  }
134
134
  retrieveRawResponse(toolCallId) {
135
135
  return this.storage[toolCallId] || null;
@@ -152,8 +152,8 @@ class ToolResponseCache {
152
152
  tools_1.listStoredToolResponsesDefinition,
153
153
  ]);
154
154
  toolsService.addFunctions({
155
- [tools_1.jqToolResponseDefinition.function.name]: async (toolCallId, jqQuery) => {
156
- return await this.queryToolResponse(toolCallId, jqQuery);
155
+ [tools_1.jqToolResponseDefinition.function.name]: async (toolCallId, jqQuery, options) => {
156
+ return await this.queryToolResponse(toolCallId, jqQuery, options);
157
157
  },
158
158
  [tools_1.grepToolResponseDefinition.function.name]: async (toolCallId, pattern, options) => {
159
159
  return await this.grepToolResponse(toolCallId, pattern, options);
@@ -161,8 +161,8 @@ class ToolResponseCache {
161
161
  [tools_1.tailToolResponseDefinition.function.name]: async (toolCallId, options) => {
162
162
  return await this.tailToolResponse(toolCallId, options);
163
163
  },
164
- [tools_1.listStoredToolResponsesDefinition.function.name]: async () => {
165
- return await this.listStoredToolResponses();
164
+ [tools_1.listStoredToolResponsesDefinition.function.name]: async (options) => {
165
+ return await this.listStoredToolResponses(options);
166
166
  },
167
167
  });
168
168
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ToolResponseCache.js","sourceRoot":"","sources":["../../../src/processors/ToolResponseCache.ts"],"names":[],"mappings":";;;AAGA,qDAAkD;AAClD,mCAWiB;AAqSf,yGA/SA,gCAAwB,OA+SA;AACxB,2GA9SA,kCAA0B,OA8SA;AAC1B,2GA5SA,kCAA0B,OA4SA;AAC1B,kHA1SA,yCAAiC,OA0SA;AAxRnC,MAAa,iBAAiB;IACpB,OAAO,GAAwB,EAAE,CAAC;IAClC,eAAe,GAAgC,EAAE,CAAC;IAClD,WAAW,GAAqC,EAAE,CAAC;IACnD,cAAc,CAAiB;IAEvC,YAAY,YAA0B,EAAE,cAA+B;QAErE,IAAI,CAAC,cAAc,GAAG,cAAc,IAAI,IAAI,CAAC,2BAA2B,EAAE,CAAC;QAC3E,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC;IAMO,2BAA2B;QAEjC,MAAM,cAAc,GAAG;YACrB,WAAW,EAAE,CAAC,GAAW,EAAE,KAAa,EAAE,EAAE;YAE5C,CAAC;YACD,WAAW,EAAE,GAAG,EAAE;gBAChB,OAAO,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACzE,CAAC;YACD,cAAc,EAAE,CAAC,IAAY,EAAE,EAAE;gBAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACpC,CAAC;SACF,CAAC;QAGF,OAAO,IAAI,+BAAc,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IACxE,CAAC;IAKM,sBAAsB,CAAC,GAAQ;QACpC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YACrD,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;YAC7C,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YACnC,MAAM,MAAM,GAAQ,EAAE,CAAC;YACvB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/C,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;YACnD,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAKM,iBAAiB,CACtB,OAAe,EACf,UAAkB,EAClB,QAAiB;QAKjB,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QAGD,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAEzD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,WAAW,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAIxF,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;gBACxC,WAAW,EAAE,IAAI;gBACjB,cAAc,EAAE,MAAM,CAAC,cAAc;gBACrC,KAAK,EAAE,MAAM,CAAC,KAAK;aACpB,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YAG3B,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACvC,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;oBAEnC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;wBAC/B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oBACpD,CAAC;yBAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;wBAEtC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC;oBACpC,CAAC;yBAAM,CAAC;wBAEN,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;oBACrC,CAAC;gBACH,CAAC;qBAAM,CAAC;oBAEN,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;gBACrC,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBAEP,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;YACrC,CAAC;QACH,CAAC;aAAM,CAAC;YAEN,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;QACrC,CAAC;QAGD,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,GAAG;YACjC,UAAU;YACV,cAAc,EAAE,OAAO,CAAC,MAAM;YAC9B,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE;SACrB,CAAC;QAEF,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;QAC1C,CAAC;IACH,CAAC;IAKO,KAAK,CAAC,cAAc,CAAC,OAAgB;QAE3C,IACE,OAAO,CAAC,IAAI,KAAK,MAAM;YACvB,CAAC,OAAO,CAAC,YAAY;YACrB,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,EACnC,CAAC;YACD,OAAO;QACT,CAAC;QAGD,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9E,CAAC;IAKD,eAAe,CACb,QAAoC;QAEpC,OAAO,KAAK,EAAE,gBAA2B,EAAE,gBAA2B,EAAE,EAAE;YACxE,KAAK,MAAM,OAAO,IAAI,gBAAgB,EAAE,CAAC;gBACvC,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBACnC,SAAS;gBACX,CAAC;gBACD,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YACrC,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;IAKD,KAAK,CAAC,iBAAiB,CACrB,UAAkB,EAClB,OAAe;QAEf,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACtC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,OAAO,IAAA,sBAAc,EAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACnF,CAAC;IAKD,KAAK,CAAC,gBAAgB,CACpB,UAAkB,EAClB,OAAe,EACf,OAAqB;QAErB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACtC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,OAAO,IAAA,mBAAW,EAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACzF,CAAC;IAKD,KAAK,CAAC,gBAAgB,CACpB,UAAkB,EAClB,OAAqB;QAErB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACtC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,OAAO,IAAA,mBAAW,EAAC,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAChF,CAAC;IAKD,KAAK,CAAC,uBAAuB;QAC3B,OAAO,IAAA,sCAA8B,EACnC,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,WAAW,CACjB,CAAC;IACJ,CAAC;IAKD,mBAAmB,CAAC,UAAkB;QACpC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC;IAC1C,CAAC;IAKD,YAAY;QACV,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;IAC5B,CAAC;IAKD,cAAc;QACZ,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAKD,cAAc;QACZ,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IAC1C,CAAC;IAKD,YAAY,CAAC,YAA0B;QACrC,YAAY,CAAC,QAAQ,CAAC;YACpB,gCAAwB;YACxB,kCAA0B;YAC1B,kCAA0B;YAC1B,yCAAiC;SAClC,CAAC,CAAC;QACH,YAAY,CAAC,YAAY,CAAC;YACxB,CAAC,gCAAwB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAC7C,UAAkB,EAClB,OAAe,EACf,EAAE;gBACF,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC3D,CAAC;YACD,CAAC,kCAA0B,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAC/C,UAAkB,EAClB,OAAe,EACf,OAAa,EACb,EAAE;gBACF,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACnE,CAAC;YACD,CAAC,kCAA0B,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAC/C,UAAkB,EAClB,OAAa,EACb,EAAE;gBACF,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC1D,CAAC;YACD,CAAC,yCAAiC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,EAAE;gBAC5D,OAAO,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAC9C,CAAC;SACF,CAAC,CAAC;IACL,CAAC;CACF;AAlRD,8CAkRC"}
1
+ {"version":3,"file":"ToolResponseCache.js","sourceRoot":"","sources":["../../../src/processors/ToolResponseCache.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export declare const DEFAULT_TOOL_RESPONSE_CHARACTERS = 20000;
2
+ export declare const MAX_TOOL_RESPONSE_CHARACTERS = 50000;
3
+ export declare function boundedInteger(value: number | undefined, fallback: number, min: number, max: number): number;
4
+ export declare function paginateToolResponse(value: string, options?: {
5
+ characterOffset?: number;
6
+ maxCharacters?: number;
7
+ }, label?: string): string;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MAX_TOOL_RESPONSE_CHARACTERS = exports.DEFAULT_TOOL_RESPONSE_CHARACTERS = void 0;
4
+ exports.boundedInteger = boundedInteger;
5
+ exports.paginateToolResponse = paginateToolResponse;
6
+ exports.DEFAULT_TOOL_RESPONSE_CHARACTERS = 20_000;
7
+ exports.MAX_TOOL_RESPONSE_CHARACTERS = 50_000;
8
+ function boundedInteger(value, fallback, min, max) {
9
+ return Math.min(max, Math.max(min, Number.isFinite(value) ? Math.floor(value) : fallback));
10
+ }
11
+ function paginateToolResponse(value, options, label = "response") {
12
+ const characterOffset = boundedInteger(options?.characterOffset, 0, 0, Number.MAX_SAFE_INTEGER);
13
+ const maxCharacters = boundedInteger(options?.maxCharacters, exports.DEFAULT_TOOL_RESPONSE_CHARACTERS, 1_000, exports.MAX_TOOL_RESPONSE_CHARACTERS);
14
+ const footerReserve = 300;
15
+ const contentLimit = Math.max(1, maxCharacters - footerReserve);
16
+ const page = value.slice(characterOffset, characterOffset + contentLimit);
17
+ const end = characterOffset + page.length;
18
+ if (characterOffset === 0 && end >= value.length) {
19
+ return page;
20
+ }
21
+ const safeLabel = label.slice(0, 200);
22
+ const footer = end < value.length
23
+ ? `\n\n[${safeLabel} characters ${characterOffset}-${Math.max(characterOffset, end - 1)} of ${value.length}. Repeat with characterOffset=${end} to continue; maxCharacters=${maxCharacters}.]`
24
+ : `\n\n[End of ${safeLabel}; characters ${characterOffset}-${Math.max(characterOffset, end - 1)} of ${value.length}.]`;
25
+ return (page + footer).slice(0, maxCharacters);
26
+ }
27
+ //# sourceMappingURL=boundedToolResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boundedToolResponse.js","sourceRoot":"","sources":["../../../../src/processors/tools/boundedToolResponse.ts"],"names":[],"mappings":";;;AAGA,wCAUC;AAGD,oDAgCC;AAhDY,QAAA,gCAAgC,GAAG,MAAM,CAAC;AAC1C,QAAA,4BAA4B,GAAG,MAAM,CAAC;AAEnD,SAAgB,cAAc,CAC5B,KAAyB,EACzB,QAAgB,EAChB,GAAW,EACX,GAAW;IAEX,OAAO,IAAI,CAAC,GAAG,CACb,GAAG,EACH,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAC/E,CAAC;AACJ,CAAC;AAGD,SAAgB,oBAAoB,CAClC,KAAa,EACb,OAA8D,EAC9D,KAAK,GAAG,UAAU;IAElB,MAAM,eAAe,GAAG,cAAc,CACpC,OAAO,EAAE,eAAe,EACxB,CAAC,EACD,CAAC,EACD,MAAM,CAAC,gBAAgB,CACxB,CAAC;IACF,MAAM,aAAa,GAAG,cAAc,CAClC,OAAO,EAAE,aAAa,EACtB,wCAAgC,EAChC,KAAK,EACL,oCAA4B,CAC7B,CAAC;IACF,MAAM,aAAa,GAAG,GAAG,CAAC;IAC1B,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,GAAG,aAAa,CAAC,CAAC;IAChE,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,eAAe,EAAE,eAAe,GAAG,YAAY,CAAC,CAAC;IAC1E,MAAM,GAAG,GAAG,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC;IAC1C,IAAI,eAAe,KAAK,CAAC,IAAI,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACtC,MAAM,MAAM,GACV,GAAG,GAAG,KAAK,CAAC,MAAM;QAChB,CAAC,CAAC,QAAQ,SAAS,eAAe,eAAe,IAAI,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,GAAG,GAAG,CAAC,CAAC,OAAO,KAAK,CAAC,MAAM,iCAAiC,GAAG,+BAA+B,aAAa,IAAI;QAC9L,CAAC,CAAC,eAAe,SAAS,gBAAgB,eAAe,IAAI,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,GAAG,GAAG,CAAC,CAAC,OAAO,KAAK,CAAC,MAAM,IAAI,CAAC;IAE3H,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;AACjD,CAAC"}
@@ -5,6 +5,10 @@ export interface GrepOptions {
5
5
  contextBefore?: number;
6
6
  contextAfter?: number;
7
7
  maxResults?: number;
8
+ resultOffset?: number;
9
+ maxCharacters?: number;
10
+ lineCharacterOffset?: number;
11
+ maxLineCharacters?: number;
8
12
  }
9
13
  export declare function executeGrep(data: string, toolCallId: string, pattern: string, availableIds: string[], options?: GrepOptions, toolNameMap?: {
10
14
  [toolCallId: string]: string;
@@ -2,6 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.grepToolResponseDefinition = void 0;
4
4
  exports.executeGrep = executeGrep;
5
+ const DEFAULT_MAX_RESULTS = 100;
6
+ const MAX_RESULTS = 1000;
7
+ const DEFAULT_MAX_CHARACTERS = 20_000;
8
+ const MAX_CHARACTERS = 50_000;
9
+ const DEFAULT_MAX_LINE_CHARACTERS = 4_000;
10
+ const MAX_LINE_CHARACTERS = 10_000;
11
+ const FOOTER_RESERVE = 700;
12
+ function boundedInteger(value, fallback, min, max) {
13
+ return Math.min(max, Math.max(min, Number.isFinite(value) ? Math.floor(value) : fallback));
14
+ }
5
15
  async function executeGrep(data, toolCallId, pattern, availableIds, options, toolNameMap) {
6
16
  if (!data) {
7
17
  const idList = availableIds
@@ -10,48 +20,104 @@ async function executeGrep(data, toolCallId, pattern, availableIds, options, too
10
20
  return name ? `${id} (${name})` : id;
11
21
  })
12
22
  .join("\n - ");
13
- return `Error: No tool response found for toolCallId "${toolCallId}". Call listStoredToolResponses to see all available responses with their tool names.\n\nAvailable toolCallIds:\n - ${idList || "(none)"}`;
23
+ const maxCharacters = boundedInteger(options?.maxCharacters, DEFAULT_MAX_CHARACTERS, 1000, MAX_CHARACTERS);
24
+ return `Error: No tool response found for toolCallId "${toolCallId}". Call listStoredToolResponses to see all available responses with their tool names.\n\nAvailable toolCallIds:\n - ${idList || "(none)"}`.slice(0, maxCharacters);
14
25
  }
15
26
  try {
16
27
  const lines = data.split("\n");
17
28
  const matchedResults = [];
18
- const ignoreCase = options?.ignoreCase || false;
19
- const invertMatch = options?.invertMatch || false;
20
- const contextBefore = options?.contextBefore || 0;
21
- const contextAfter = options?.contextAfter || 0;
22
- const maxResults = options?.maxResults || 1000;
23
- const flags = ignoreCase ? "i" : "";
24
- const regex = new RegExp(pattern, flags);
25
- for (let i = 0; i < lines.length && matchedResults.length < maxResults; i++) {
26
- const line = lines[i];
27
- const matches = regex.test(line);
28
- const shouldInclude = invertMatch ? !matches : matches;
29
- if (shouldInclude) {
30
- const startIdx = Math.max(0, i - contextBefore);
31
- const endIdx = Math.min(lines.length - 1, i + contextAfter);
29
+ const ignoreCase = options?.ignoreCase ?? false;
30
+ const invertMatch = options?.invertMatch ?? false;
31
+ const contextBefore = boundedInteger(options?.contextBefore, 0, 0, 1000);
32
+ const contextAfter = boundedInteger(options?.contextAfter, 0, 0, 1000);
33
+ const maxResults = boundedInteger(options?.maxResults, DEFAULT_MAX_RESULTS, 1, MAX_RESULTS);
34
+ const resultOffset = boundedInteger(options?.resultOffset, 0, 0, Number.MAX_SAFE_INTEGER);
35
+ const maxCharacters = boundedInteger(options?.maxCharacters, DEFAULT_MAX_CHARACTERS, 1000, MAX_CHARACTERS);
36
+ const lineCharacterOffset = boundedInteger(options?.lineCharacterOffset, 0, 0, Number.MAX_SAFE_INTEGER);
37
+ const maxLineCharacters = boundedInteger(options?.maxLineCharacters, DEFAULT_MAX_LINE_CHARACTERS, 100, MAX_LINE_CHARACTERS);
38
+ const contentBudget = Math.max(1, maxCharacters - FOOTER_RESERVE);
39
+ const regex = new RegExp(pattern, ignoreCase ? "i" : "");
40
+ let totalMatches = 0;
41
+ let outputCharacters = 0;
42
+ let outputTruncated = false;
43
+ const pagedLineNumbers = new Set();
44
+ for (let i = 0; i < lines.length; i++) {
45
+ const matches = regex.test(lines[i]);
46
+ if (invertMatch ? matches : !matches)
47
+ continue;
48
+ const resultIndex = totalMatches++;
49
+ const startIdx = Math.max(0, i - contextBefore);
50
+ const endIdx = Math.min(lines.length - 1, i + contextAfter);
51
+ if (resultIndex >= resultOffset &&
52
+ matchedResults.length < maxResults &&
53
+ !outputTruncated) {
32
54
  const contextLines = [];
33
55
  for (let j = startIdx; j <= endIdx; j++) {
56
+ const sourceLine = lines[j];
57
+ const visibleLine = sourceLine.slice(lineCharacterOffset, lineCharacterOffset + maxLineCharacters);
34
58
  const prefix = j === i ? "> " : " ";
35
- contextLines.push(`${prefix}${j + 1}: ${lines[j]}`);
59
+ let rendered = `${prefix}${j + 1}: ${visibleLine}`;
60
+ if (lineCharacterOffset >= sourceLine.length && sourceLine.length > 0) {
61
+ rendered += ` [no characters at offset ${lineCharacterOffset}; line length=${sourceLine.length}]`;
62
+ }
63
+ else if (lineCharacterOffset + maxLineCharacters < sourceLine.length) {
64
+ pagedLineNumbers.add(j + 1);
65
+ rendered += `\n [line ${j + 1} truncated; characters ${lineCharacterOffset}-${lineCharacterOffset + visibleLine.length - 1} of ${sourceLine.length}]`;
66
+ }
67
+ contextLines.push(rendered);
68
+ }
69
+ const separatorLength = matchedResults.length > 0 ? 5 : 0;
70
+ const result = contextLines.join("\n");
71
+ const remaining = contentBudget - outputCharacters - separatorLength;
72
+ if (result.length > remaining) {
73
+ if (matchedResults.length === 0 && remaining > 80) {
74
+ matchedResults.push(`${result.slice(0, remaining - 48)}\n[result page truncated by maxCharacters]`);
75
+ outputCharacters = contentBudget;
76
+ }
77
+ outputTruncated = true;
78
+ }
79
+ else {
80
+ matchedResults.push(result);
81
+ outputCharacters += separatorLength + result.length;
36
82
  }
37
- matchedResults.push(contextLines.join("\n"));
38
- i += contextAfter;
39
83
  }
84
+ i += contextAfter;
85
+ }
86
+ if (totalMatches === 0) {
87
+ const preview = pattern.length > 200 ? `${pattern.slice(0, 200)}…` : pattern;
88
+ return `No matches found for pattern "${preview}" in toolCallId "${toolCallId}"`.slice(0, maxCharacters);
89
+ }
90
+ const consumedResults = matchedResults.length;
91
+ const nextResultOffset = resultOffset + consumedResults;
92
+ const hasMoreResults = nextResultOffset < totalMatches;
93
+ const range = consumedResults
94
+ ? `${resultOffset + 1}-${nextResultOffset}`
95
+ : `none (offset ${resultOffset} is past the final result)`;
96
+ const footerLines = [
97
+ "",
98
+ `[grep page: results ${range} of ${totalMatches}; ${consumedResults} returned; maxCharacters=${maxCharacters}]`,
99
+ ];
100
+ if (pagedLineNumbers.size > 0) {
101
+ footerLines.push(`[Long source line(s) ${Array.from(pagedLineNumbers).join(", ")} were sliced. Repeat with options.lineCharacterOffset=${lineCharacterOffset + maxLineCharacters} to read their next characters.]`);
102
+ }
103
+ if (hasMoreResults) {
104
+ footerLines.push(`[More matches available. Repeat with options.resultOffset=${nextResultOffset}.]`);
40
105
  }
41
- if (matchedResults.length === 0) {
42
- return `No matches found for pattern "${pattern}" in toolCallId "${toolCallId}"`;
106
+ else {
107
+ footerLines.push("[End of matches.]");
43
108
  }
44
- return matchedResults.join("\n---\n");
109
+ return (matchedResults.join("\n---\n") + footerLines.join("\n")).slice(0, maxCharacters);
45
110
  }
46
111
  catch (error) {
47
- return `Grep Error: ${error.message}`;
112
+ const message = error instanceof Error ? error.message : String(error);
113
+ return `Grep Error: ${message.slice(0, 500)}`;
48
114
  }
49
115
  }
50
116
  exports.grepToolResponseDefinition = {
51
117
  type: "function",
52
118
  function: {
53
119
  name: "grepToolResponse",
54
- description: "Search through a stored tool response using grep-like pattern matching. Useful when a tool response is too large and you need to find specific lines or content without re-running the tool. Returns matching lines with optional context.",
120
+ description: "Search a stored tool response using a regular expression. Results and individual source lines are bounded and paginated. Follow the returned resultOffset or lineCharacterOffset instruction to retrieve more.",
55
121
  parameters: {
56
122
  type: "object",
57
123
  positional: true,
@@ -66,8 +132,18 @@ exports.grepToolResponseDefinition = {
66
132
  },
67
133
  options: {
68
134
  type: "object",
69
- description: "Optional grep settings: ignoreCase (boolean), invertMatch (boolean), contextBefore (number), contextAfter (number), maxResults (number, default: 1000)",
70
- properties: {},
135
+ description: "Optional grep, output-bound, and pagination settings.",
136
+ properties: {
137
+ ignoreCase: { type: "boolean", description: "Case-insensitive matching." },
138
+ invertMatch: { type: "boolean", description: "Return non-matching lines." },
139
+ contextBefore: { type: "number", description: "Context lines before a match (maximum 1000)." },
140
+ contextAfter: { type: "number", description: "Context lines after a match (maximum 1000)." },
141
+ maxResults: { type: "number", description: "Matches per page (default 100, maximum 1000)." },
142
+ resultOffset: { type: "number", description: "Zero-based match offset for the next result page." },
143
+ maxCharacters: { type: "number", description: "Response size (default 20000, hard maximum 50000)." },
144
+ lineCharacterOffset: { type: "number", description: "Character offset within every source line, for paging very long lines." },
145
+ maxLineCharacters: { type: "number", description: "Characters shown per source line (default 4000, maximum 10000)." },
146
+ },
71
147
  },
72
148
  },
73
149
  required: ["toolCallId", "pattern"],
@@ -1 +1 @@
1
- {"version":3,"file":"grepToolResponse.js","sourceRoot":"","sources":["../../../../src/processors/tools/grepToolResponse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grepToolResponse.js","sourceRoot":"","sources":["../../../../src/processors/tools/grepToolResponse.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export { jqToolResponseDefinition, executeJqQuery, } from "./jqToolResponse";
1
+ export { jqToolResponseDefinition, executeJqQuery, JqOptions, } from "./jqToolResponse";
2
2
  export { grepToolResponseDefinition, executeGrep, GrepOptions, } from "./grepToolResponse";
3
3
  export { tailToolResponseDefinition, executeTail, TailOptions, } from "./tailToolResponse";
4
- export { listStoredToolResponsesDefinition, executeListStoredToolResponses, } from "./listStoredToolResponses";
4
+ export { listStoredToolResponsesDefinition, executeListStoredToolResponses, ListStoredToolResponsesOptions, } from "./listStoredToolResponses";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/processors/tools/index.ts"],"names":[],"mappings":";;;AAAA,mDAG0B;AAFxB,0HAAA,wBAAwB,OAAA;AACxB,gHAAA,cAAc,OAAA;AAGhB,uDAI4B;AAH1B,8HAAA,0BAA0B,OAAA;AAC1B,+GAAA,WAAW,OAAA;AAIb,uDAI4B;AAH1B,8HAAA,0BAA0B,OAAA;AAC1B,+GAAA,WAAW,OAAA;AAIb,qEAGmC;AAFjC,4IAAA,iCAAiC,OAAA;AACjC,yIAAA,8BAA8B,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/processors/tools/index.ts"],"names":[],"mappings":";;;AAAA,mDAI0B;AAHxB,0HAAA,wBAAwB,OAAA;AACxB,gHAAA,cAAc,OAAA;AAIhB,uDAI4B;AAH1B,8HAAA,0BAA0B,OAAA;AAC1B,+GAAA,WAAW,OAAA;AAIb,uDAI4B;AAH1B,8HAAA,0BAA0B,OAAA;AAC1B,+GAAA,WAAW,OAAA;AAIb,qEAImC;AAHjC,4IAAA,iCAAiC,OAAA;AACjC,yIAAA,8BAA8B,OAAA"}
@@ -1,5 +1,9 @@
1
1
  import { Tool } from "../../clients";
2
+ export interface JqOptions {
3
+ characterOffset?: number;
4
+ maxCharacters?: number;
5
+ }
2
6
  export declare function executeJqQuery(data: string, toolCallId: string, jqQuery: string, availableIds: string[], toolNameMap?: {
3
7
  [toolCallId: string]: string;
4
- }): Promise<string>;
8
+ }, options?: JqOptions): Promise<string>;
5
9
  export declare const jqToolResponseDefinition: Tool;
@@ -36,6 +36,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.jqToolResponseDefinition = void 0;
37
37
  exports.executeJqQuery = executeJqQuery;
38
38
  const jq = __importStar(require("node-jq"));
39
+ const boundedToolResponse_1 = require("./boundedToolResponse");
39
40
  function tryParseJson(content) {
40
41
  try {
41
42
  return JSON.parse(content);
@@ -64,7 +65,7 @@ function parseNestedJsonStrings(obj) {
64
65
  }
65
66
  return obj;
66
67
  }
67
- async function executeJqQuery(data, toolCallId, jqQuery, availableIds, toolNameMap) {
68
+ async function executeJqQuery(data, toolCallId, jqQuery, availableIds, toolNameMap, options) {
68
69
  if (!data) {
69
70
  const idList = availableIds
70
71
  .map((id) => {
@@ -72,27 +73,29 @@ async function executeJqQuery(data, toolCallId, jqQuery, availableIds, toolNameM
72
73
  return name ? `${id} (${name})` : id;
73
74
  })
74
75
  .join("\n - ");
75
- return `Error: No tool response found for toolCallId "${toolCallId}". Call listStoredToolResponses to see all available responses with their tool names.\n\nAvailable toolCallIds:\n - ${idList || "(none)"}`;
76
+ return (0, boundedToolResponse_1.paginateToolResponse)(`Error: No tool response found for toolCallId "${toolCallId}". Call listStoredToolResponses to see all available responses with their tool names.\n\nAvailable toolCallIds:\n - ${idList || "(none)"}`, options, "available toolCallId list");
76
77
  }
77
78
  try {
78
79
  const jsonData = tryParseJson(data);
79
80
  if (!jsonData) {
80
- return `Error: Tool response data is not valid JSON for toolCallId "${toolCallId}"`;
81
+ return (0, boundedToolResponse_1.paginateToolResponse)(`Error: Tool response data is not valid JSON for toolCallId "${toolCallId}"`, options, "jq input error");
81
82
  }
82
83
  const parsedData = parseNestedJsonStrings(jsonData);
83
84
  const result = await jq.run(jqQuery, parsedData, { input: "json" });
85
+ let rendered;
84
86
  if (typeof result === "string") {
85
- return result;
87
+ rendered = result;
86
88
  }
87
89
  else if (typeof result === "number" || typeof result === "boolean") {
88
- return String(result);
90
+ rendered = String(result);
89
91
  }
90
92
  else if (result === null) {
91
- return "null";
93
+ rendered = "null";
92
94
  }
93
95
  else {
94
- return JSON.stringify(result);
96
+ rendered = JSON.stringify(result);
95
97
  }
98
+ return (0, boundedToolResponse_1.paginateToolResponse)(rendered, options, "jq result");
96
99
  }
97
100
  catch (error) {
98
101
  let errorMessage = `JQ Query Error: ${error.message}`;
@@ -103,14 +106,14 @@ async function executeJqQuery(data, toolCallId, jqQuery, availableIds, toolNameM
103
106
  else {
104
107
  errorMessage += `\nData structure preview:\n${JSON.stringify(jsonObj, null, 2).substring(0, 500)}...`;
105
108
  }
106
- return errorMessage;
109
+ return (0, boundedToolResponse_1.paginateToolResponse)(errorMessage, options, "jq error");
107
110
  }
108
111
  }
109
112
  exports.jqToolResponseDefinition = {
110
113
  type: "function",
111
114
  function: {
112
115
  name: "jqToolResponse",
113
- description: "Execute a JQ query on a stored tool response to extract specific data. Use this when you need to extract specific information from any tool response that has been stored. This is the preferred way to search or filter compressed JSON tool responses — it parses the data automatically without requiring repeated expandTokens calls. IMPORTANT: You do NOT know the toolCallId at the time you call a tool — you must call listStoredToolResponses first to discover the correct toolCallId. The listStoredToolResponses output shows each response's tool name so you can identify which response belongs to which call. How to determine the correct JQ query: (1) For mcp_* tool responses (external MCP tools like mcp_1_*): the response is stored as a raw JSON object — use '.' to access the root directly, e.g. '.children | map(.name)' or '.state'. Do NOT use .content[0].text | fromjson for these. (2) For compressed MCP tool responses (._mcp_format === true): use '._data' e.g. '._data.children | map(.name)'. (3) For standard built-in tool responses: data may be nested under '.content[0].text | fromjson'. Use jqToolResponse instead of expandTokens whenever the stored data is JSON.",
116
+ description: "Execute a JQ query on a stored tool response. Output is bounded to 20,000 characters by default; use options.characterOffset to page through a large result. Prefer a selective JQ query over paging a broad query. Call listStoredToolResponses first to discover the toolCallId. MCP responses are generally rooted at '.' (or '._data' when _mcp_format is true); standard built-in responses may be nested under '.content[0].text | fromjson'.",
114
117
  parameters: {
115
118
  type: "object",
116
119
  positional: true,
@@ -123,6 +126,20 @@ exports.jqToolResponseDefinition = {
123
126
  type: "string",
124
127
  description: "The JQ query to execute on the tool response data. For mcp_* tool responses (raw JSON object): '.children | map({id: .id, name: .name})' (extract fields from children array), '.children | map(select(.state == \"PENDING\")) | length' (count pending children), '.name' (get a top-level field). For compressed responses (._mcp_format true): '._data.children | map(.name)' or '._data | map(select(.state == \"PENDING\")) | length'. For standard built-in tool responses: '.content[0].text | fromjson | map(.title)' (extract titles from standard MCP array), '.content[0].text | fromjson | map(select(.createdAt > \"2025-01-01\"))' (filter by date).",
125
128
  },
129
+ options: {
130
+ type: "object",
131
+ description: "Optional output pagination settings.",
132
+ properties: {
133
+ characterOffset: {
134
+ type: "number",
135
+ description: "Zero-based character offset into the rendered JQ result.",
136
+ },
137
+ maxCharacters: {
138
+ type: "number",
139
+ description: "Response size (default 20000, hard maximum 50000).",
140
+ },
141
+ },
142
+ },
126
143
  },
127
144
  required: ["toolCallId", "jqQuery"],
128
145
  },
@@ -1 +1 @@
1
- {"version":3,"file":"jqToolResponse.js","sourceRoot":"","sources":["../../../../src/processors/tools/jqToolResponse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jqToolResponse.js","sourceRoot":"","sources":["../../../../src/processors/tools/jqToolResponse.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,10 @@
1
1
  import { Tool } from "../../clients";
2
+ export interface ListStoredToolResponsesOptions {
3
+ resultOffset?: number;
4
+ maxResults?: number;
5
+ characterOffset?: number;
6
+ maxCharacters?: number;
7
+ }
2
8
  export interface ToolResponseInfo {
3
9
  toolCallId: string;
4
10
  toolName: string;
@@ -17,5 +23,5 @@ export declare function executeListStoredToolResponses(storage: {
17
23
  };
18
24
  }, toolNameMap: {
19
25
  [toolCallId: string]: string;
20
- }): Promise<string>;
26
+ }, options?: ListStoredToolResponsesOptions): Promise<string>;
21
27
  export declare const listStoredToolResponsesDefinition: Tool;
@@ -2,7 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.listStoredToolResponsesDefinition = void 0;
4
4
  exports.executeListStoredToolResponses = executeListStoredToolResponses;
5
- async function executeListStoredToolResponses(storage, metadataStorage, toolNameMap) {
5
+ const boundedToolResponse_1 = require("./boundedToolResponse");
6
+ async function executeListStoredToolResponses(storage, metadataStorage, toolNameMap, options) {
6
7
  const toolCallIds = Object.keys(storage);
7
8
  if (toolCallIds.length === 0) {
8
9
  return "No tool responses have been stored yet.";
@@ -21,30 +22,59 @@ async function executeListStoredToolResponses(storage, metadataStorage, toolName
21
22
  };
22
23
  });
23
24
  responses.sort((a, b) => b.storedAt - a.storedAt);
24
- const output = responses
25
+ const resultOffset = (0, boundedToolResponse_1.boundedInteger)(options?.resultOffset, 0, 0, responses.length);
26
+ const maxResults = (0, boundedToolResponse_1.boundedInteger)(options?.maxResults, 100, 1, 1000);
27
+ const page = responses.slice(resultOffset, resultOffset + maxResults);
28
+ const output = page
25
29
  .map((resp) => {
26
30
  const date = new Date(resp.storedAt).toISOString();
27
31
  return `
28
- Tool Call ID: ${resp.toolCallId}
29
- Tool Name: ${resp.toolName}
32
+ Tool Call ID: ${resp.toolCallId.slice(0, 500)}
33
+ Tool Name: ${resp.toolName.slice(0, 500)}
30
34
  Size: ${resp.size} characters
31
35
  Stored At: ${date}
32
36
  Preview: ${resp.preview}
33
37
  ---`;
34
38
  })
35
39
  .join("\n");
36
- return `Found ${responses.length} stored tool response(s):\n${output}`;
40
+ const nextOffset = resultOffset + page.length;
41
+ const footer = nextOffset < responses.length
42
+ ? `\n[More stored responses available. Repeat with options.resultOffset=${nextOffset}.]`
43
+ : "\n[End of stored responses.]";
44
+ return (0, boundedToolResponse_1.paginateToolResponse)(`Found ${responses.length} stored tool response(s); showing ${resultOffset + 1}-${nextOffset}:\n${output}${footer}`, options, "stored-response list");
37
45
  }
38
46
  exports.listStoredToolResponsesDefinition = {
39
47
  type: "function",
40
48
  function: {
41
49
  name: "listStoredToolResponses",
42
- description: "List all stored tool responses with metadata including tool call ID, tool name, size, timestamp, and a preview of the content. ALWAYS call this before using jqToolResponse, grepToolResponse, or tailToolResponse — you need the toolCallId from this list to query a specific response. The tool name shown here corresponds to the tool that produced the response (e.g. 'mcp_1_knowhow-web_GetOrgUserTask'), making it easy to identify which response you want.",
50
+ description: "List a bounded page of stored tool responses with IDs, tool names, sizes, timestamps, and previews. Call this before jqToolResponse, grepToolResponse, or tailToolResponse to discover a toolCallId.",
43
51
  parameters: {
44
52
  type: "object",
45
- positional: false,
46
- properties: {},
47
- required: [],
53
+ positional: true,
54
+ properties: {
55
+ options: {
56
+ type: "object",
57
+ description: "Optional result and output pagination settings.",
58
+ properties: {
59
+ resultOffset: {
60
+ type: "number",
61
+ description: "Zero-based response offset (default 0).",
62
+ },
63
+ maxResults: {
64
+ type: "number",
65
+ description: "Responses per page (default 100, maximum 1000).",
66
+ },
67
+ characterOffset: {
68
+ type: "number",
69
+ description: "Character offset within the rendered page.",
70
+ },
71
+ maxCharacters: {
72
+ type: "number",
73
+ description: "Response size (default 20000, hard maximum 50000).",
74
+ },
75
+ },
76
+ },
77
+ },
48
78
  },
49
79
  },
50
80
  };
@@ -1 +1 @@
1
- {"version":3,"file":"listStoredToolResponses.js","sourceRoot":"","sources":["../../../../src/processors/tools/listStoredToolResponses.ts"],"names":[],"mappings":";;;AAaA,wEAsDC;AAtDM,KAAK,UAAU,8BAA8B,CAClD,OAAyC,EACzC,eAOC,EACD,WAA6C;IAE7C,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEzC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,yCAAyC,CAAC;IACnD,CAAC;IAED,MAAM,SAAS,GAAuB,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;QACnE,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QACjC,MAAM,QAAQ,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC;QAGtD,MAAM,OAAO,GACX,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QAE5D,OAAO;YACL,UAAU;YACV,QAAQ;YACR,IAAI,EAAE,QAAQ,EAAE,cAAc,IAAI,IAAI,CAAC,MAAM;YAC7C,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,CAAC;YACjC,OAAO;SACR,CAAC;IACJ,CAAC,CAAC,CAAC;IAGH,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAGlD,MAAM,MAAM,GAAG,SAAS;SACrB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;QACnD,OAAO;gBACG,IAAI,CAAC,UAAU;aAClB,IAAI,CAAC,QAAQ;QAClB,IAAI,CAAC,IAAI;aACJ,IAAI;WACN,IAAI,CAAC,OAAO;IACnB,CAAC;IACD,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO,SAAS,SAAS,CAAC,MAAM,8BAA8B,MAAM,EAAE,CAAC;AACzE,CAAC;AAEY,QAAA,iCAAiC,GAAS;IACrD,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EACT,scAAsc;QACxc,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;SACb;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"listStoredToolResponses.js","sourceRoot":"","sources":["../../../../src/processors/tools/listStoredToolResponses.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,11 @@
1
1
  import { Tool } from "../../clients";
2
2
  export interface TailOptions {
3
3
  lines?: number;
4
+ endLine?: number;
5
+ lineCharacterOffset?: number;
6
+ maxLineCharacters?: number;
7
+ characterOffset?: number;
8
+ maxCharacters?: number;
4
9
  }
5
10
  export declare function executeTail(data: string, toolCallId: string, availableIds: string[], options?: TailOptions, toolNameMap?: {
6
11
  [toolCallId: string]: string;