indusagi-coding-agent 0.1.38 → 0.1.40

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 (493) hide show
  1. package/CHANGELOG.md +22 -7
  2. package/{LICENSE.md → LICENSE} +0 -1
  3. package/README.md +2 -4
  4. package/dist/cli/args.d.ts +6 -128
  5. package/dist/cli/args.d.ts.map +1 -1
  6. package/dist/cli/args.js +277 -472
  7. package/dist/cli/args.js.map +1 -1
  8. package/dist/cli/config-selector.d.ts +9 -62
  9. package/dist/cli/config-selector.d.ts.map +1 -1
  10. package/dist/cli/config-selector.js +31 -146
  11. package/dist/cli/config-selector.js.map +1 -1
  12. package/dist/cli/file-processor.d.ts +1 -69
  13. package/dist/cli/file-processor.d.ts.map +1 -1
  14. package/dist/cli/file-processor.js +36 -267
  15. package/dist/cli/file-processor.js.map +1 -1
  16. package/dist/cli/list-models.d.ts +0 -60
  17. package/dist/cli/list-models.d.ts.map +1 -1
  18. package/dist/cli/list-models.js +53 -246
  19. package/dist/cli/list-models.js.map +1 -1
  20. package/dist/cli/session-picker.d.ts +1 -72
  21. package/dist/cli/session-picker.d.ts.map +1 -1
  22. package/dist/cli/session-picker.js +57 -231
  23. package/dist/cli/session-picker.js.map +1 -1
  24. package/dist/cli.js +25 -31
  25. package/dist/cli.js.map +1 -1
  26. package/dist/config.d.ts +0 -42
  27. package/dist/config.d.ts.map +1 -1
  28. package/dist/config.js +62 -97
  29. package/dist/config.js.map +1 -1
  30. package/dist/core/agent-session.d.ts +26 -2
  31. package/dist/core/agent-session.d.ts.map +1 -1
  32. package/dist/core/agent-session.js +78 -66
  33. package/dist/core/agent-session.js.map +1 -1
  34. package/dist/core/auth-storage.d.ts +4 -95
  35. package/dist/core/auth-storage.d.ts.map +1 -1
  36. package/dist/core/auth-storage.js +233 -288
  37. package/dist/core/auth-storage.js.map +1 -1
  38. package/dist/core/bash-executor.d.ts +0 -323
  39. package/dist/core/bash-executor.d.ts.map +1 -1
  40. package/dist/core/bash-executor.js +126 -359
  41. package/dist/core/bash-executor.js.map +1 -1
  42. package/dist/core/compaction/branch-summarization.d.ts +3 -3
  43. package/dist/core/compaction/branch-summarization.js +16 -16
  44. package/dist/core/compaction/branch-summarization.js.map +1 -1
  45. package/dist/core/compaction/compaction.d.ts +3 -3
  46. package/dist/core/compaction/compaction.js +40 -40
  47. package/dist/core/compaction/compaction.js.map +1 -1
  48. package/dist/core/compaction/index.d.ts +32 -4
  49. package/dist/core/compaction/index.d.ts.map +1 -1
  50. package/dist/core/compaction/index.js +30 -4
  51. package/dist/core/compaction/index.js.map +1 -1
  52. package/dist/core/compaction/utils.d.ts +1 -19
  53. package/dist/core/compaction/utils.d.ts.map +1 -1
  54. package/dist/core/compaction/utils.js +92 -113
  55. package/dist/core/compaction/utils.js.map +1 -1
  56. package/dist/core/discover-packages.d.ts +0 -4
  57. package/dist/core/discover-packages.d.ts.map +1 -1
  58. package/dist/core/discover-packages.js +41 -44
  59. package/dist/core/discover-packages.js.map +1 -1
  60. package/dist/core/event-bus.d.ts +1 -147
  61. package/dist/core/event-bus.d.ts.map +1 -1
  62. package/dist/core/event-bus.js +17 -106
  63. package/dist/core/event-bus.js.map +1 -1
  64. package/dist/core/exec.d.ts +0 -16
  65. package/dist/core/exec.d.ts.map +1 -1
  66. package/dist/core/exec.js +18 -27
  67. package/dist/core/exec.js.map +1 -1
  68. package/dist/core/export-html/ansi-to-html.ts +262 -0
  69. package/dist/core/export-html/index.ts +433 -0
  70. package/dist/core/export-html/template.html +48 -26
  71. package/dist/core/export-html/tool-renderer.d.ts +0 -21
  72. package/dist/core/export-html/tool-renderer.d.ts.map +1 -1
  73. package/dist/core/export-html/tool-renderer.js +35 -51
  74. package/dist/core/export-html/tool-renderer.js.map +1 -1
  75. package/dist/core/export-html/tool-renderer.ts +80 -0
  76. package/dist/core/export-html/vendor/highlight.min.js +401 -370
  77. package/dist/core/export-html/vendor/marked.min.js +71 -3
  78. package/dist/core/extensions/index.d.ts +7 -4
  79. package/dist/core/extensions/index.d.ts.map +1 -1
  80. package/dist/core/extensions/index.js +17 -3
  81. package/dist/core/extensions/index.js.map +1 -1
  82. package/dist/core/extensions/loader.d.ts +0 -6
  83. package/dist/core/extensions/loader.d.ts.map +1 -1
  84. package/dist/core/extensions/loader.js +60 -56
  85. package/dist/core/extensions/loader.js.map +1 -1
  86. package/dist/core/extensions/runner.d.ts +3 -0
  87. package/dist/core/extensions/runner.d.ts.map +1 -1
  88. package/dist/core/extensions/runner.js +48 -80
  89. package/dist/core/extensions/runner.js.map +1 -1
  90. package/dist/core/extensions/types.d.ts +50 -23
  91. package/dist/core/extensions/types.d.ts.map +1 -1
  92. package/dist/core/footer-data-provider.d.ts +2 -15
  93. package/dist/core/footer-data-provider.d.ts.map +1 -1
  94. package/dist/core/footer-data-provider.js +21 -33
  95. package/dist/core/footer-data-provider.js.map +1 -1
  96. package/dist/core/hooks/loader.js +2 -2
  97. package/dist/core/hooks/loader.js.map +1 -1
  98. package/dist/core/index.d.ts +29 -10
  99. package/dist/core/index.d.ts.map +1 -1
  100. package/dist/core/index.js +29 -10
  101. package/dist/core/index.js.map +1 -1
  102. package/dist/core/keybindings.d.ts +2 -179
  103. package/dist/core/keybindings.d.ts.map +1 -1
  104. package/dist/core/keybindings.js +64 -238
  105. package/dist/core/keybindings.js.map +1 -1
  106. package/dist/core/model-registry.d.ts +26 -181
  107. package/dist/core/model-registry.d.ts.map +1 -1
  108. package/dist/core/model-registry.js +228 -407
  109. package/dist/core/model-registry.js.map +1 -1
  110. package/dist/core/model-resolver.d.ts +0 -139
  111. package/dist/core/model-resolver.d.ts.map +1 -1
  112. package/dist/core/model-resolver.js +34 -215
  113. package/dist/core/model-resolver.js.map +1 -1
  114. package/dist/core/package-manager.d.ts +25 -57
  115. package/dist/core/package-manager.d.ts.map +1 -1
  116. package/dist/core/package-manager.js +326 -964
  117. package/dist/core/package-manager.js.map +1 -1
  118. package/dist/core/prompt-templates.d.ts +2 -34
  119. package/dist/core/prompt-templates.d.ts.map +1 -1
  120. package/dist/core/prompt-templates.js +122 -170
  121. package/dist/core/prompt-templates.js.map +1 -1
  122. package/dist/core/resource-loader.d.ts +19 -12
  123. package/dist/core/resource-loader.d.ts.map +1 -1
  124. package/dist/core/resource-loader.js +353 -467
  125. package/dist/core/resource-loader.js.map +1 -1
  126. package/dist/core/sdk.d.ts +2 -61
  127. package/dist/core/sdk.d.ts.map +1 -1
  128. package/dist/core/sdk.js +184 -252
  129. package/dist/core/sdk.js.map +1 -1
  130. package/dist/core/session-manager.d.ts +447 -1
  131. package/dist/core/session-manager.d.ts.map +1 -1
  132. package/dist/core/session-manager.js +1176 -1
  133. package/dist/core/session-manager.js.map +1 -1
  134. package/dist/core/settings-manager.d.ts +9 -12
  135. package/dist/core/settings-manager.d.ts.map +1 -1
  136. package/dist/core/settings-manager.js +170 -398
  137. package/dist/core/settings-manager.js.map +1 -1
  138. package/dist/core/skills.d.ts +2 -27
  139. package/dist/core/skills.d.ts.map +1 -1
  140. package/dist/core/skills.js +149 -212
  141. package/dist/core/skills.js.map +1 -1
  142. package/dist/core/subagents.d.ts +2 -2
  143. package/dist/core/subagents.d.ts.map +1 -1
  144. package/dist/core/subagents.js +21 -14
  145. package/dist/core/subagents.js.map +1 -1
  146. package/dist/core/system-prompt.d.ts +0 -11
  147. package/dist/core/system-prompt.d.ts.map +1 -1
  148. package/dist/core/system-prompt.js +168 -139
  149. package/dist/core/system-prompt.js.map +1 -1
  150. package/dist/core/timings.d.ts +1 -4
  151. package/dist/core/timings.d.ts.map +1 -1
  152. package/dist/core/timings.js +34 -18
  153. package/dist/core/timings.js.map +1 -1
  154. package/dist/core/todo-store.d.ts +20 -0
  155. package/dist/core/todo-store.d.ts.map +1 -0
  156. package/dist/core/todo-store.js +60 -0
  157. package/dist/core/todo-store.js.map +1 -0
  158. package/dist/core/tools/bash.d.ts +2 -0
  159. package/dist/core/tools/bash.d.ts.map +1 -0
  160. package/dist/core/tools/bash.js +2 -0
  161. package/dist/core/tools/bash.js.map +1 -0
  162. package/dist/core/tools/bg-process.d.ts +1 -6
  163. package/dist/core/tools/bg-process.d.ts.map +1 -1
  164. package/dist/core/tools/bg-process.js +4 -18
  165. package/dist/core/tools/bg-process.js.map +1 -1
  166. package/dist/core/tools/edit-diff.d.ts +9 -0
  167. package/dist/core/tools/edit-diff.d.ts.map +1 -0
  168. package/dist/core/tools/edit-diff.js +2 -0
  169. package/dist/core/tools/edit-diff.js.map +1 -0
  170. package/dist/core/tools/edit.d.ts +2 -0
  171. package/dist/core/tools/edit.d.ts.map +1 -0
  172. package/dist/core/tools/edit.js +2 -0
  173. package/dist/core/tools/edit.js.map +1 -0
  174. package/dist/core/tools/find.d.ts +2 -0
  175. package/dist/core/tools/find.d.ts.map +1 -0
  176. package/dist/core/tools/find.js +2 -0
  177. package/dist/core/tools/find.js.map +1 -0
  178. package/dist/core/tools/grep.d.ts +2 -0
  179. package/dist/core/tools/grep.d.ts.map +1 -0
  180. package/dist/core/tools/grep.js +2 -0
  181. package/dist/core/tools/grep.js.map +1 -0
  182. package/dist/core/tools/index.d.ts +8 -2
  183. package/dist/core/tools/index.d.ts.map +1 -1
  184. package/dist/core/tools/ls.d.ts +2 -0
  185. package/dist/core/tools/ls.d.ts.map +1 -0
  186. package/dist/core/tools/ls.js +2 -0
  187. package/dist/core/tools/ls.js.map +1 -0
  188. package/dist/core/tools/memory.d.ts +50 -1
  189. package/dist/core/tools/memory.d.ts.map +1 -1
  190. package/dist/core/tools/memory.js +11 -7
  191. package/dist/core/tools/memory.js.map +1 -1
  192. package/dist/core/tools/path-utils.d.ts +2 -0
  193. package/dist/core/tools/path-utils.d.ts.map +1 -0
  194. package/dist/core/tools/path-utils.js +2 -0
  195. package/dist/core/tools/path-utils.js.map +1 -0
  196. package/dist/core/tools/read.d.ts +2 -0
  197. package/dist/core/tools/read.d.ts.map +1 -0
  198. package/dist/core/tools/read.js +2 -0
  199. package/dist/core/tools/read.js.map +1 -0
  200. package/dist/core/tools/registry.d.ts +0 -15
  201. package/dist/core/tools/registry.d.ts.map +1 -1
  202. package/dist/core/tools/registry.js +13 -37
  203. package/dist/core/tools/registry.js.map +1 -1
  204. package/dist/core/tools/task.d.ts +17 -23
  205. package/dist/core/tools/task.d.ts.map +1 -1
  206. package/dist/core/tools/task.js +43 -82
  207. package/dist/core/tools/task.js.map +1 -1
  208. package/dist/core/tools/todo.d.ts +17 -20
  209. package/dist/core/tools/todo.d.ts.map +1 -1
  210. package/dist/core/tools/todo.js +79 -58
  211. package/dist/core/tools/todo.js.map +1 -1
  212. package/dist/core/tools/truncate.d.ts +2 -0
  213. package/dist/core/tools/truncate.d.ts.map +1 -0
  214. package/dist/core/tools/truncate.js +2 -0
  215. package/dist/core/tools/truncate.js.map +1 -0
  216. package/dist/core/tools/webfetch.d.ts +2 -0
  217. package/dist/core/tools/webfetch.d.ts.map +1 -0
  218. package/dist/core/tools/webfetch.js +2 -0
  219. package/dist/core/tools/webfetch.js.map +1 -0
  220. package/dist/core/tools/websearch.d.ts +2 -0
  221. package/dist/core/tools/websearch.d.ts.map +1 -0
  222. package/dist/core/tools/websearch.js +2 -0
  223. package/dist/core/tools/websearch.js.map +1 -0
  224. package/dist/core/tools/write.d.ts +2 -0
  225. package/dist/core/tools/write.d.ts.map +1 -0
  226. package/dist/core/tools/write.js +2 -0
  227. package/dist/core/tools/write.js.map +1 -0
  228. package/dist/index.d.ts +35 -29
  229. package/dist/index.d.ts.map +1 -1
  230. package/dist/index.js +33 -41
  231. package/dist/index.js.map +1 -1
  232. package/dist/main.d.ts.map +1 -1
  233. package/dist/main.js +237 -225
  234. package/dist/main.js.map +1 -1
  235. package/dist/migrations.d.ts +0 -25
  236. package/dist/migrations.d.ts.map +1 -1
  237. package/dist/migrations.js +129 -180
  238. package/dist/migrations.js.map +1 -1
  239. package/dist/modes/index.d.ts +13 -6
  240. package/dist/modes/index.d.ts.map +1 -1
  241. package/dist/modes/index.js +11 -5
  242. package/dist/modes/index.js.map +1 -1
  243. package/dist/modes/interactive/components/armin.d.ts +8 -23
  244. package/dist/modes/interactive/components/armin.d.ts.map +1 -1
  245. package/dist/modes/interactive/components/armin.js +217 -266
  246. package/dist/modes/interactive/components/armin.js.map +1 -1
  247. package/dist/modes/interactive/components/assistant-message.d.ts +2 -168
  248. package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  249. package/dist/modes/interactive/components/assistant-message.js +61 -216
  250. package/dist/modes/interactive/components/assistant-message.js.map +1 -1
  251. package/dist/modes/interactive/components/bash-execution.d.ts +6 -313
  252. package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
  253. package/dist/modes/interactive/components/bash-execution.js +86 -403
  254. package/dist/modes/interactive/components/bash-execution.js.map +1 -1
  255. package/dist/modes/interactive/components/bordered-loader.d.ts +1 -3
  256. package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -1
  257. package/dist/modes/interactive/components/bordered-loader.js +59 -29
  258. package/dist/modes/interactive/components/bordered-loader.js.map +1 -1
  259. package/dist/modes/interactive/components/branch-summary-message.d.ts +3 -3
  260. package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
  261. package/dist/modes/interactive/components/branch-summary-message.js +30 -17
  262. package/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
  263. package/dist/modes/interactive/components/compaction-summary-message.d.ts +3 -3
  264. package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -1
  265. package/dist/modes/interactive/components/compaction-summary-message.js +35 -18
  266. package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -1
  267. package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
  268. package/dist/modes/interactive/components/config-selector.js +60 -68
  269. package/dist/modes/interactive/components/config-selector.js.map +1 -1
  270. package/dist/modes/interactive/components/countdown-timer.d.ts +2 -6
  271. package/dist/modes/interactive/components/countdown-timer.d.ts.map +1 -1
  272. package/dist/modes/interactive/components/countdown-timer.js +32 -18
  273. package/dist/modes/interactive/components/countdown-timer.js.map +1 -1
  274. package/dist/modes/interactive/components/custom-editor.d.ts +1 -5
  275. package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
  276. package/dist/modes/interactive/components/custom-editor.js +45 -37
  277. package/dist/modes/interactive/components/custom-editor.js.map +1 -1
  278. package/dist/modes/interactive/components/custom-message.d.ts +5 -6
  279. package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
  280. package/dist/modes/interactive/components/custom-message.js +43 -53
  281. package/dist/modes/interactive/components/custom-message.js.map +1 -1
  282. package/dist/modes/interactive/components/diff.d.ts +0 -3
  283. package/dist/modes/interactive/components/diff.d.ts.map +1 -1
  284. package/dist/modes/interactive/components/diff.js +101 -108
  285. package/dist/modes/interactive/components/diff.js.map +1 -1
  286. package/dist/modes/interactive/components/dynamic-border.d.ts +7 -2
  287. package/dist/modes/interactive/components/dynamic-border.d.ts.map +1 -1
  288. package/dist/modes/interactive/components/dynamic-border.js +24 -4
  289. package/dist/modes/interactive/components/dynamic-border.js.map +1 -1
  290. package/dist/modes/interactive/components/extension-editor.d.ts +5 -9
  291. package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
  292. package/dist/modes/interactive/components/extension-editor.js +43 -46
  293. package/dist/modes/interactive/components/extension-editor.js.map +1 -1
  294. package/dist/modes/interactive/components/extension-input.d.ts +4 -9
  295. package/dist/modes/interactive/components/extension-input.d.ts.map +1 -1
  296. package/dist/modes/interactive/components/extension-input.js +45 -28
  297. package/dist/modes/interactive/components/extension-input.js.map +1 -1
  298. package/dist/modes/interactive/components/extension-selector.d.ts +7 -12
  299. package/dist/modes/interactive/components/extension-selector.d.ts.map +1 -1
  300. package/dist/modes/interactive/components/extension-selector.js +54 -32
  301. package/dist/modes/interactive/components/extension-selector.js.map +1 -1
  302. package/dist/modes/interactive/components/footer.d.ts +2 -11
  303. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  304. package/dist/modes/interactive/components/footer.js +135 -183
  305. package/dist/modes/interactive/components/footer.js.map +1 -1
  306. package/dist/modes/interactive/components/index.d.ts +79 -30
  307. package/dist/modes/interactive/components/index.d.ts.map +1 -1
  308. package/dist/modes/interactive/components/index.js +73 -31
  309. package/dist/modes/interactive/components/index.js.map +1 -1
  310. package/dist/modes/interactive/components/keybinding-hints.d.ts +0 -18
  311. package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -1
  312. package/dist/modes/interactive/components/keybinding-hints.js +24 -31
  313. package/dist/modes/interactive/components/keybinding-hints.js.map +1 -1
  314. package/dist/modes/interactive/components/login-dialog.d.ts +11 -24
  315. package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
  316. package/dist/modes/interactive/components/login-dialog.js +89 -86
  317. package/dist/modes/interactive/components/login-dialog.js.map +1 -1
  318. package/dist/modes/interactive/components/model-selector.d.ts +15 -19
  319. package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  320. package/dist/modes/interactive/components/model-selector.js +104 -157
  321. package/dist/modes/interactive/components/model-selector.js.map +1 -1
  322. package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
  323. package/dist/modes/interactive/components/oauth-selector.js +5 -5
  324. package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
  325. package/dist/modes/interactive/components/scoped-models-selector.d.ts +12 -22
  326. package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
  327. package/dist/modes/interactive/components/scoped-models-selector.js +111 -132
  328. package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
  329. package/dist/modes/interactive/components/session-selector-search.d.ts +3 -3
  330. package/dist/modes/interactive/components/session-selector-search.d.ts.map +1 -1
  331. package/dist/modes/interactive/components/session-selector-search.js +92 -103
  332. package/dist/modes/interactive/components/session-selector-search.js.map +1 -1
  333. package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
  334. package/dist/modes/interactive/components/session-selector.js +28 -39
  335. package/dist/modes/interactive/components/session-selector.js.map +1 -1
  336. package/dist/modes/interactive/components/settings-selector.d.ts +1 -1
  337. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  338. package/dist/modes/interactive/components/settings-selector.js +111 -203
  339. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  340. package/dist/modes/interactive/components/show-images-selector.d.ts +1 -1
  341. package/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -1
  342. package/dist/modes/interactive/components/show-images-selector.js +17 -19
  343. package/dist/modes/interactive/components/show-images-selector.js.map +1 -1
  344. package/dist/modes/interactive/components/skill-invocation-message.d.ts +3 -3
  345. package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
  346. package/dist/modes/interactive/components/skill-invocation-message.js +29 -19
  347. package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
  348. package/dist/modes/interactive/components/theme-selector.d.ts +2 -2
  349. package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -1
  350. package/dist/modes/interactive/components/theme-selector.js +20 -25
  351. package/dist/modes/interactive/components/theme-selector.js.map +1 -1
  352. package/dist/modes/interactive/components/thinking-selector.d.ts +1 -1
  353. package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
  354. package/dist/modes/interactive/components/thinking-selector.js +19 -20
  355. package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
  356. package/dist/modes/interactive/components/tool-execution.d.ts +12 -10
  357. package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
  358. package/dist/modes/interactive/components/tool-execution.js +14 -8
  359. package/dist/modes/interactive/components/tool-execution.js.map +1 -1
  360. package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
  361. package/dist/modes/interactive/components/tree-selector.js +53 -60
  362. package/dist/modes/interactive/components/tree-selector.js.map +1 -1
  363. package/dist/modes/interactive/components/user-message-selector.d.ts +3 -9
  364. package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
  365. package/dist/modes/interactive/components/user-message-selector.js +57 -68
  366. package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
  367. package/dist/modes/interactive/components/visual-truncate.d.ts +0 -12
  368. package/dist/modes/interactive/components/visual-truncate.d.ts.map +1 -1
  369. package/dist/modes/interactive/components/visual-truncate.js +14 -22
  370. package/dist/modes/interactive/components/visual-truncate.js.map +1 -1
  371. package/dist/modes/interactive/interactive-mode.d.ts +6 -0
  372. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  373. package/dist/modes/interactive/interactive-mode.js +118 -113
  374. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  375. package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  376. package/dist/modes/interactive/theme/theme.js +189 -39
  377. package/dist/modes/interactive/theme/theme.js.map +1 -1
  378. package/dist/modes/rpc/rpc-client.d.ts +8 -1
  379. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  380. package/dist/modes/rpc/rpc-client.js +88 -59
  381. package/dist/modes/rpc/rpc-client.js.map +1 -1
  382. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  383. package/dist/modes/rpc/rpc-mode.js +24 -46
  384. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  385. package/dist/modes/rpc/rpc-types.d.ts +75 -409
  386. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  387. package/dist/modes/rpc/rpc-types.js +21 -360
  388. package/dist/modes/rpc/rpc-types.js.map +1 -1
  389. package/dist/observability/core/config.d.ts +28 -0
  390. package/dist/observability/core/config.d.ts.map +1 -0
  391. package/dist/observability/core/config.js +150 -0
  392. package/dist/observability/core/config.js.map +1 -0
  393. package/dist/observability/core/event-bus.d.ts +15 -0
  394. package/dist/observability/core/event-bus.d.ts.map +1 -0
  395. package/dist/observability/core/event-bus.js +37 -0
  396. package/dist/observability/core/event-bus.js.map +1 -0
  397. package/dist/observability/core/index.d.ts +12 -0
  398. package/dist/observability/core/index.d.ts.map +1 -0
  399. package/dist/observability/core/index.js +14 -0
  400. package/dist/observability/core/index.js.map +1 -0
  401. package/dist/observability/core/observability.d.ts +63 -0
  402. package/dist/observability/core/observability.d.ts.map +1 -0
  403. package/dist/observability/core/observability.js +127 -0
  404. package/dist/observability/core/observability.js.map +1 -0
  405. package/dist/observability/core/span.d.ts +37 -0
  406. package/dist/observability/core/span.d.ts.map +1 -0
  407. package/dist/observability/core/span.js +90 -0
  408. package/dist/observability/core/span.js.map +1 -0
  409. package/dist/observability/core/tracer.d.ts +22 -0
  410. package/dist/observability/core/tracer.d.ts.map +1 -0
  411. package/dist/observability/core/tracer.js +79 -0
  412. package/dist/observability/core/tracer.js.map +1 -0
  413. package/dist/observability/core/types.d.ts +155 -0
  414. package/dist/observability/core/types.d.ts.map +1 -0
  415. package/dist/observability/core/types.js +38 -0
  416. package/dist/observability/core/types.js.map +1 -0
  417. package/dist/observability/exporters/base-exporter.d.ts +16 -0
  418. package/dist/observability/exporters/base-exporter.d.ts.map +1 -0
  419. package/dist/observability/exporters/base-exporter.js +26 -0
  420. package/dist/observability/exporters/base-exporter.js.map +1 -0
  421. package/dist/observability/exporters/console-exporter.d.ts +22 -0
  422. package/dist/observability/exporters/console-exporter.d.ts.map +1 -0
  423. package/dist/observability/exporters/console-exporter.js +80 -0
  424. package/dist/observability/exporters/console-exporter.js.map +1 -0
  425. package/dist/observability/exporters/file-exporter.d.ts +31 -0
  426. package/dist/observability/exporters/file-exporter.d.ts.map +1 -0
  427. package/dist/observability/exporters/file-exporter.js +120 -0
  428. package/dist/observability/exporters/file-exporter.js.map +1 -0
  429. package/dist/observability/exporters/index.d.ts +12 -0
  430. package/dist/observability/exporters/index.d.ts.map +1 -0
  431. package/dist/observability/exporters/index.js +11 -0
  432. package/dist/observability/exporters/index.js.map +1 -0
  433. package/dist/observability/exporters/langfuse-exporter.d.ts +27 -0
  434. package/dist/observability/exporters/langfuse-exporter.d.ts.map +1 -0
  435. package/dist/observability/exporters/langfuse-exporter.js +146 -0
  436. package/dist/observability/exporters/langfuse-exporter.js.map +1 -0
  437. package/dist/observability/exporters/sentry-exporter.d.ts +22 -0
  438. package/dist/observability/exporters/sentry-exporter.d.ts.map +1 -0
  439. package/dist/observability/exporters/sentry-exporter.js +121 -0
  440. package/dist/observability/exporters/sentry-exporter.js.map +1 -0
  441. package/dist/observability/index.d.ts +3 -0
  442. package/dist/observability/index.d.ts.map +1 -0
  443. package/dist/observability/index.js +3 -0
  444. package/dist/observability/index.js.map +1 -0
  445. package/dist/utils/changelog.d.ts +1 -2
  446. package/dist/utils/changelog.d.ts.map +1 -1
  447. package/dist/utils/changelog.js +53 -61
  448. package/dist/utils/changelog.js.map +1 -1
  449. package/dist/utils/clipboard-image.d.ts.map +1 -1
  450. package/dist/utils/clipboard-image.js +77 -83
  451. package/dist/utils/clipboard-image.js.map +1 -1
  452. package/dist/utils/clipboard.d.ts.map +1 -1
  453. package/dist/utils/clipboard.js +62 -49
  454. package/dist/utils/clipboard.js.map +1 -1
  455. package/dist/utils/image-convert.d.ts +6 -6
  456. package/dist/utils/image-convert.d.ts.map +1 -1
  457. package/dist/utils/image-convert.js +29 -23
  458. package/dist/utils/image-convert.js.map +1 -1
  459. package/dist/utils/image-resize.d.ts +0 -17
  460. package/dist/utils/image-resize.d.ts.map +1 -1
  461. package/dist/utils/image-resize.js +100 -138
  462. package/dist/utils/image-resize.js.map +1 -1
  463. package/dist/utils/mime.d.ts +1 -0
  464. package/dist/utils/mime.d.ts.map +1 -1
  465. package/dist/utils/mime.js +35 -15
  466. package/dist/utils/mime.js.map +1 -1
  467. package/dist/utils/photon.d.ts +4 -15
  468. package/dist/utils/photon.d.ts.map +1 -1
  469. package/dist/utils/photon.js +71 -60
  470. package/dist/utils/photon.js.map +1 -1
  471. package/dist/utils/shell.d.ts +4 -21
  472. package/dist/utils/shell.d.ts.map +1 -1
  473. package/dist/utils/shell.js +101 -124
  474. package/dist/utils/shell.js.map +1 -1
  475. package/dist/utils/sleep.d.ts +1 -1
  476. package/dist/utils/sleep.d.ts.map +1 -1
  477. package/dist/utils/sleep.js +32 -8
  478. package/dist/utils/sleep.js.map +1 -1
  479. package/dist/utils/tools-manager.d.ts +4 -2
  480. package/dist/utils/tools-manager.d.ts.map +1 -1
  481. package/dist/utils/tools-manager.js +96 -122
  482. package/dist/utils/tools-manager.js.map +1 -1
  483. package/docs/PI_MONO_MIT_REMOVAL_GUIDE.md +2132 -0
  484. package/docs/SAME_TO_SAME_PARITY_REPORT.md +312 -0
  485. package/examples/README.md +12 -0
  486. package/package.json +62 -88
  487. package/dist/modes/interactive/theme/dark.json +0 -85
  488. package/dist/modes/interactive/theme/light.json +0 -84
  489. package/dist/modes/interactive/theme/theme-schema.json +0 -335
  490. package/docs/FEATURES.md +0 -306
  491. package/docs/MCP.md +0 -341
  492. package/docs/MEMORY.md +0 -443
  493. package/examples/mcp-servers.example.json +0 -50
@@ -1,9 +1,4 @@
1
- /**
2
- * Tool Registry - Complete list of all available tools
3
- * Includes both built-in tools, extension-provided tools, and MCP tools
4
- */
5
1
  export const ALL_AVAILABLE_TOOLS = [
6
- // Core File Tools
7
2
  {
8
3
  name: "read",
9
4
  category: "core",
@@ -22,14 +17,12 @@ export const ALL_AVAILABLE_TOOLS = [
22
17
  description: "Make surgical edits to files by finding and replacing exact text.",
23
18
  example: "edit path/to/file.ts with oldText and newText",
24
19
  },
25
- // Core Command Tools
26
20
  {
27
21
  name: "bash",
28
22
  category: "core",
29
23
  description: "Execute bash commands (ls, grep, find, etc.). Returns stdout and stderr.",
30
24
  example: "bash ls -la",
31
25
  },
32
- // Core Search Tools
33
26
  {
34
27
  name: "grep",
35
28
  category: "core",
@@ -48,7 +41,6 @@ export const ALL_AVAILABLE_TOOLS = [
48
41
  description: "List directory contents with detailed information.",
49
42
  example: "ls -la directory/",
50
43
  },
51
- // Core Task & Todo Tools
52
44
  {
53
45
  name: "task",
54
46
  category: "core",
@@ -67,7 +59,6 @@ export const ALL_AVAILABLE_TOOLS = [
67
59
  description: "Update the todo list with new items or status changes.",
68
60
  example: "todowrite to modify tasks",
69
61
  },
70
- // Core Web Tools
71
62
  {
72
63
  name: "webfetch",
73
64
  category: "core",
@@ -77,46 +68,40 @@ export const ALL_AVAILABLE_TOOLS = [
77
68
  {
78
69
  name: "websearch",
79
70
  category: "core",
80
- description: "Real-time web search using Exa AI API. Search types: auto, fast, deep.",
71
+ description: "Real-time web search using Exa AI API.",
81
72
  example: "websearch query='latest AI developments' numResults=8",
82
73
  },
83
- // Extension Tools
84
74
  {
85
- name: "process",
75
+ name: "bg-process",
86
76
  category: "extension",
87
77
  description: "Manage background processes. Run, monitor, and control long-running commands.",
88
78
  actions: ["start", "list", "output", "logs", "kill", "clear"],
89
- example: "process action=start name='my-task' command='npm run dev'",
79
+ example: "bg-process action=start name='my-task' command='npm run dev'",
90
80
  },
91
81
  ];
92
- export const CORE_TOOLS = ALL_AVAILABLE_TOOLS.filter((t) => t.category === "core");
93
- export const EXTENSION_TOOLS = ALL_AVAILABLE_TOOLS.filter((t) => t.category === "extension");
94
- export const MCP_TOOLS = ALL_AVAILABLE_TOOLS.filter((t) => t.category === "mcp");
82
+ export const CORE_TOOLS = ALL_AVAILABLE_TOOLS.filter((tool) => tool.category === "core");
83
+ export const EXTENSION_TOOLS = ALL_AVAILABLE_TOOLS.filter((tool) => tool.category === "extension");
84
+ export const MCP_TOOLS = ALL_AVAILABLE_TOOLS.filter((tool) => tool.category === "mcp");
95
85
  export function getToolInfo(toolName) {
96
- return ALL_AVAILABLE_TOOLS.find((t) => t.name.toLowerCase() === toolName.toLowerCase());
86
+ return ALL_AVAILABLE_TOOLS.find((tool) => tool.name.toLowerCase() === toolName.toLowerCase());
97
87
  }
98
88
  export function listAllTools() {
99
- const coreToolsList = CORE_TOOLS.map((t) => ` • ${t.name} - ${t.description}`).join("\n");
100
- const extensionToolsList = EXTENSION_TOOLS.map((t) => ` • ${t.name} - ${t.description}`).join("\n");
101
- const mcpToolsList = MCP_TOOLS.map((t) => ` • ${t.name} (${t.serverName}) - ${t.description}`).join("\n");
89
+ const coreToolsList = CORE_TOOLS.map((tool) => ` • ${tool.name} - ${tool.description}`).join("\n");
90
+ const extensionToolsList = EXTENSION_TOOLS.map((tool) => ` • ${tool.name} - ${tool.description}`).join("\n");
91
+ const mcpToolsList = MCP_TOOLS.map((tool) => ` • ${tool.name} (${tool.serverName}) - ${tool.description}`).join("\n");
102
92
  return `
103
93
  CORE TOOLS (Built-in)
104
94
  ${coreToolsList}
105
95
 
106
- EXTENSION TOOLS (@indusagi/bg-process)
96
+ EXTENSION TOOLS
107
97
  ${extensionToolsList}
108
98
 
109
99
  MCP TOOLS (Model Context Protocol)
110
100
  ${mcpToolsList || " (No MCP tools connected)"}
111
101
  `;
112
102
  }
113
- /**
114
- * Add MCP tools to the registry dynamically.
115
- * Called when MCP servers are connected.
116
- */
117
103
  export function registerMCPTool(tool) {
118
- // Remove existing entry if present (for re-registration)
119
- const existingIndex = ALL_AVAILABLE_TOOLS.findIndex((t) => t.category === "mcp" && t.name === tool.name && t.serverName === tool.serverName);
104
+ const existingIndex = ALL_AVAILABLE_TOOLS.findIndex((entry) => entry.category === "mcp" && entry.name === tool.name && entry.serverName === tool.serverName);
120
105
  if (existingIndex >= 0) {
121
106
  ALL_AVAILABLE_TOOLS[existingIndex] = tool;
122
107
  }
@@ -124,10 +109,6 @@ export function registerMCPTool(tool) {
124
109
  ALL_AVAILABLE_TOOLS.push(tool);
125
110
  }
126
111
  }
127
- /**
128
- * Remove MCP tools for a specific server.
129
- * Called when MCP servers are disconnected.
130
- */
131
112
  export function unregisterMCPServerTools(serverName) {
132
113
  const indicesToRemove = [];
133
114
  ALL_AVAILABLE_TOOLS.forEach((tool, index) => {
@@ -135,17 +116,12 @@ export function unregisterMCPServerTools(serverName) {
135
116
  indicesToRemove.push(index);
136
117
  }
137
118
  });
138
- // Remove in reverse order to maintain valid indices
139
119
  indicesToRemove.reverse().forEach((index) => {
140
120
  ALL_AVAILABLE_TOOLS.splice(index, 1);
141
121
  });
142
122
  }
143
- /**
144
- * Clear all MCP tools from the registry.
145
- */
146
123
  export function clearMCPTools() {
147
- // Remove all MCP tools
148
- for (let i = ALL_AVAILABLE_TOOLS.length - 1; i >= 0; i--) {
124
+ for (let i = ALL_AVAILABLE_TOOLS.length - 1; i >= 0; i -= 1) {
149
125
  if (ALL_AVAILABLE_TOOLS[i].category === "mcp") {
150
126
  ALL_AVAILABLE_TOOLS.splice(i, 1);
151
127
  }
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/core/tools/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/core/tools/registry.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,18 @@
1
- /**
2
- * Task Tool - Uses indusagi's task tool with custom TaskSessionManager executor
3
- *
4
- * @module core/tools/task
5
- * @description
6
- * Wraps indusagi's createTaskTool with a custom TaskExecutor that uses
7
- * TaskSessionManager for actual subagent execution.
8
- */
9
- import { type TaskToolDetails } from "indusagi/agent";
10
- import type { AgentTool } from "indusagi/agent";
1
+ import type { AgentTool, ThinkingLevel } from "indusagi/agent";
11
2
  import type { Model } from "indusagi/ai";
12
- import type { ThinkingLevel } from "indusagi/agent";
13
3
  import type { ModelRegistry } from "../model-registry.js";
14
4
  import type { SettingsManager } from "../settings-manager.js";
15
5
  import type { Skill } from "../skills.js";
16
6
  import type { SubagentStore } from "../subagents.js";
7
+ import { type TaskToolDetails } from "../task-session-manager.js";
17
8
  export type { TaskToolDetails };
18
- /**
19
- * Task tool options - includes all dependencies for TaskSessionManager
20
- */
9
+ declare const taskSchema: import("@sinclair/typebox").TObject<{
10
+ description: import("@sinclair/typebox").TString;
11
+ prompt: import("@sinclair/typebox").TString;
12
+ subagent_type: import("@sinclair/typebox").TString;
13
+ task_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
14
+ command: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
15
+ }>;
21
16
  export interface TaskToolOptions {
22
17
  cwd?: string;
23
18
  settingsManager: SettingsManager;
@@ -31,13 +26,12 @@ export interface TaskToolOptions {
31
26
  }>;
32
27
  skills?: Skill[];
33
28
  }
34
- /**
35
- * Create task tool with custom executor using TaskSessionManager
36
- */
37
- export declare function createTaskTool(options?: TaskToolOptions): AgentTool<any, TaskToolDetails>;
38
- /**
39
- * Default task tool - throws error if used without configuration
40
- * This is intentionally not functional - must use createTaskTool with options
41
- */
42
- export declare const taskTool: AgentTool<any, TaskToolDetails>;
29
+ export declare function createTaskTool(options?: TaskToolOptions): AgentTool<typeof taskSchema, TaskToolDetails>;
30
+ export declare const taskTool: AgentTool<import("@sinclair/typebox").TObject<{
31
+ description: import("@sinclair/typebox").TString;
32
+ prompt: import("@sinclair/typebox").TString;
33
+ subagent_type: import("@sinclair/typebox").TString;
34
+ task_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
35
+ command: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
36
+ }>, TaskToolDetails>;
43
37
  //# sourceMappingURL=task.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../../src/core/tools/task.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAGN,KAAK,eAAe,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAA2B,MAAM,gBAAgB,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAsB,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGzE,YAAY,EAAE,eAAe,EAAE,CAAC;AAEhC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,eAAe,CAAC;IACjC,aAAa,EAAE,aAAa,CAAC;IAC7B,aAAa,EAAE,aAAa,CAAC;IAC7B,eAAe,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAC9C,uBAAuB,EAAE,MAAM,aAAa,CAAC;IAC7C,YAAY,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACxD,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;CACjB;AA2ED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC,GAAG,EAAE,eAAe,CAAC,CAczF;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,SAAS,CAAC,GAAG,EAAE,eAAe,CAQpD,CAAC"}
1
+ {"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../../src/core/tools/task.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAA2B,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACxF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAsB,KAAK,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAEtF,YAAY,EAAE,eAAe,EAAE,CAAC;AAEhC,QAAA,MAAM,UAAU;;;;;;EAWd,CAAC;AAEH,MAAM,WAAW,eAAe;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,eAAe,CAAC;IACjC,aAAa,EAAE,aAAa,CAAC;IAC7B,aAAa,EAAE,aAAa,CAAC;IAC7B,eAAe,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAC9C,uBAAuB,EAAE,MAAM,aAAa,CAAC;IAC7C,YAAY,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACxD,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;CACjB;AAsBD,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC,OAAO,UAAU,EAAE,eAAe,CAAC,CAiDvG;AAED,eAAO,MAAM,QAAQ;;;;;;oBAA4B,CAAC"}
@@ -1,21 +1,19 @@
1
- /**
2
- * Task Tool - Uses indusagi's task tool with custom TaskSessionManager executor
3
- *
4
- * @module core/tools/task
5
- * @description
6
- * Wraps indusagi's createTaskTool with a custom TaskExecutor that uses
7
- * TaskSessionManager for actual subagent execution.
8
- */
9
- import { createTaskTool as createIndusagiTaskTool, } from "indusagi/agent";
1
+ import { Type } from "@sinclair/typebox";
10
2
  import { TaskSessionManager } from "../task-session-manager.js";
11
- /**
12
- * Build task description with available subagent types
13
- */
3
+ const taskSchema = Type.Object({
4
+ description: Type.String({ description: "A short (3-5 words) description of the task" }),
5
+ prompt: Type.String({ description: "The task for the subagent to perform" }),
6
+ subagent_type: Type.String({ description: "The type of specialized subagent to use for this task" }),
7
+ task_id: Type.Optional(Type.String({
8
+ description: "Only set to resume a previous task. The task will continue the same subagent session as before.",
9
+ })),
10
+ command: Type.Optional(Type.String({ description: "The command that triggered this task (optional)" })),
11
+ });
14
12
  function buildTaskDescription(subagentStore) {
15
13
  const header = "Launch a subagent to handle complex or multi-step work autonomously.";
16
- const instructions = "\n\nAvailable subagent types:\n- general: General-purpose subagent for multi-step tasks and research.\n- explore: Subagent specialized in codebase exploration and search.\n\nWhen using this tool, provide a clear description, a detailed prompt, and the subagent_type. Use task_id to resume a previous task.";
14
+ const instructions = "When using this tool, provide a clear description, a detailed prompt, and the subagent_type. Use task_id to resume a previous task.";
17
15
  if (!subagentStore) {
18
- return `${header}${instructions}`;
16
+ return `${header}\n\n${instructions}`;
19
17
  }
20
18
  const subagents = subagentStore
21
19
  .list()
@@ -23,82 +21,45 @@ function buildTaskDescription(subagentStore) {
23
21
  .map((agent) => `- ${agent.name}${agent.description ? `: ${agent.description}` : ""}`)
24
22
  .join("\n");
25
23
  return subagents
26
- ? `${header}\n\nAvailable subagent types:\n${subagents}\n\nWhen using this tool, provide a clear description, a detailed prompt, and the subagent_type. Use task_id to resume a previous task.`
27
- : `${header}${instructions}`;
24
+ ? `${header}\n\nAvailable subagent types:\n${subagents}\n\n${instructions}`
25
+ : `${header}\n\n${instructions}`;
28
26
  }
29
- /**
30
- * Create a task executor that uses TaskSessionManager
31
- */
32
- function createTaskExecutor(options) {
27
+ export function createTaskTool(options) {
28
+ const manager = options
29
+ ? new TaskSessionManager({
30
+ cwd: options.cwd ?? process.cwd(),
31
+ settingsManager: options.settingsManager,
32
+ modelRegistry: options.modelRegistry,
33
+ subagentStore: options.subagentStore,
34
+ getDefaultModel: options.getDefaultModel,
35
+ getDefaultThinkingLevel: options.getDefaultThinkingLevel,
36
+ contextFiles: options.contextFiles,
37
+ skills: options.skills,
38
+ })
39
+ : undefined;
33
40
  return {
34
- async runTask(params) {
35
- const manager = new TaskSessionManager({
36
- cwd: options.cwd ?? process.cwd(),
37
- settingsManager: options.settingsManager,
38
- modelRegistry: options.modelRegistry,
39
- subagentStore: options.subagentStore,
40
- getDefaultModel: options.getDefaultModel,
41
- getDefaultThinkingLevel: options.getDefaultThinkingLevel,
42
- contextFiles: options.contextFiles,
43
- skills: options.skills,
44
- });
45
- // Convert TaskUpdate callback to AgentToolUpdateCallback
46
- const adaptedOnUpdate = params.onUpdate
47
- ? (partialResult) => {
48
- // Extract text from content
49
- const text = partialResult.content
50
- .filter(c => c.type === "text" && c.text)
51
- .map(c => c.text)
52
- .join("");
53
- params.onUpdate?.({
54
- type: "chunk",
55
- content: text,
56
- details: partialResult.details,
57
- });
58
- }
59
- : undefined;
41
+ name: "task",
42
+ label: "task",
43
+ description: buildTaskDescription(options?.subagentStore),
44
+ parameters: taskSchema,
45
+ execute: async (_toolCallId, { description, prompt, subagent_type, task_id, }, signal, onUpdate) => {
46
+ if (!manager) {
47
+ throw new Error("Task tool is not configured. Provide TaskToolOptions when creating tools.");
48
+ }
60
49
  const result = await manager.runTask({
61
- description: params.description,
62
- prompt: params.prompt,
63
- subagentType: params.subagentType,
64
- taskId: params.taskId,
65
- signal: params.signal,
66
- onUpdate: adaptedOnUpdate, // Type cast to handle callback signature mismatch
50
+ description,
51
+ prompt,
52
+ subagentType: subagent_type,
53
+ taskId: task_id,
54
+ signal,
55
+ onUpdate,
67
56
  });
68
57
  return {
69
- output: result.output,
58
+ content: [{ type: "text", text: result.output }],
70
59
  details: result.details,
71
60
  };
72
61
  },
73
62
  };
74
63
  }
75
- /**
76
- * Create task tool with custom executor using TaskSessionManager
77
- */
78
- export function createTaskTool(options) {
79
- if (!options) {
80
- // Return a simple placeholder tool when no options provided
81
- throw new Error("Task tool requires TaskToolOptions with settingsManager, modelRegistry, subagentStore, etc.");
82
- }
83
- const executor = createTaskExecutor(options);
84
- return createIndusagiTaskTool({
85
- cwd: options.cwd,
86
- executor,
87
- subagentStore: options.subagentStore, // Type cast to handle interface mismatch
88
- buildDescription: (store) => buildTaskDescription(store),
89
- });
90
- }
91
- /**
92
- * Default task tool - throws error if used without configuration
93
- * This is intentionally not functional - must use createTaskTool with options
94
- */
95
- export const taskTool = {
96
- name: "task",
97
- label: "task",
98
- description: "Launch a subagent to handle complex or multi-step work autonomously.",
99
- parameters: {},
100
- execute: async () => {
101
- throw new Error("Task tool is not configured. Use createTaskTool() with TaskToolOptions.");
102
- },
103
- };
64
+ export const taskTool = createTaskTool(undefined);
104
65
  //# sourceMappingURL=task.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/core/tools/task.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/core/tools/task.ts"],"names":[],"mappings":"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"}
@@ -1,30 +1,27 @@
1
- /**
2
- * Todo Tools - Uses indusagi's todo tools with session persistence
3
- *
4
- * @module core/tools/todo
5
- * @description
6
- * Wraps indusagi's createTodoReadTool/createTodoWriteTool with a TodoStore
7
- * that uses TodoStoreOptions for session persistence.
8
- */
9
1
  import { createTodoReadTool as createIndusagiTodoReadTool, createTodoWriteTool as createIndusagiTodoWriteTool, TodoStore as IndusagiTodoStore, type TodoItem, type TodoPriority, type TodoStatus, type TodoToolDetails, type TodoStoreOptions } from "indusagi/agent";
10
2
  import type { SessionManager } from "../session-manager.js";
11
- /**
12
- * Create a TodoStore with session persistence
13
- */
14
- export declare function createSessionTodoStore(sessionManager?: SessionManager): IndusagiTodoStore;
15
3
  export type { TodoItem, TodoPriority, TodoStatus, TodoToolDetails, TodoStoreOptions };
16
4
  export { IndusagiTodoStore as TodoStore };
17
- /**
18
- * Create todo read tool
19
- */
5
+ export interface SessionTodoStoreOptions {
6
+ sessionId?: string;
7
+ getSessionId?: () => string | undefined;
8
+ storageDir?: string;
9
+ sessionManager?: {
10
+ appendCustomEntry?: (customType: string, data: {
11
+ todos: TodoItem[];
12
+ }) => void;
13
+ getBranch?: () => Array<{
14
+ type?: string;
15
+ customType?: string;
16
+ data?: unknown;
17
+ }>;
18
+ };
19
+ }
20
+ export declare function createSessionTodoStore(sessionManager?: SessionManager): IndusagiTodoStore;
21
+ export declare function createSessionTodoStore(options?: SessionTodoStoreOptions): IndusagiTodoStore;
20
22
  export declare function createTodoReadTool(store: IndusagiTodoStore): ReturnType<typeof createIndusagiTodoReadTool>;
21
- /**
22
- * Create todo write tool
23
- */
24
23
  export declare function createTodoWriteTool(store: IndusagiTodoStore): ReturnType<typeof createIndusagiTodoWriteTool>;
25
- /** Default todo read tool using in-memory store */
26
24
  export declare const todoReadTool: import("indusagi/agent").AgentTool<import("@sinclair/typebox").TObject<{}>, TodoToolDetails>;
27
- /** Default todo write tool using in-memory store */
28
25
  export declare const todoWriteTool: import("indusagi/agent").AgentTool<import("@sinclair/typebox").TObject<{
29
26
  todos: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
30
27
  content: import("@sinclair/typebox").TString;
@@ -1 +1 @@
1
- {"version":3,"file":"todo.d.ts","sourceRoot":"","sources":["../../../src/core/tools/todo.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACN,kBAAkB,IAAI,0BAA0B,EAChD,mBAAmB,IAAI,2BAA2B,EAClD,SAAS,IAAI,iBAAiB,EAC9B,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAI5D;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,cAAc,CAAC,EAAE,cAAc,GAAG,iBAAiB,CAgCzF;AAGD,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC;AAGtF,OAAO,EAAE,iBAAiB,IAAI,SAAS,EAAE,CAAC;AAE1C;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAE1G;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,GAAG,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAE5G;AAKD,mDAAmD;AACnD,eAAO,MAAM,YAAY,8FAAmC,CAAC;AAE7D,oDAAoD;AACpD,eAAO,MAAM,aAAa;;;;;;;;oBAAoC,CAAC"}
1
+ {"version":3,"file":"todo.d.ts","sourceRoot":"","sources":["../../../src/core/tools/todo.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,kBAAkB,IAAI,0BAA0B,EAChD,mBAAmB,IAAI,2BAA2B,EAClD,SAAS,IAAI,iBAAiB,EAC9B,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACtB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC;AACtF,OAAO,EAAE,iBAAiB,IAAI,SAAS,EAAE,CAAC;AAE1C,MAAM,WAAW,uBAAuB;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE;QACf,iBAAiB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE;YAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;SAAE,KAAK,IAAI,CAAC;QAC9E,SAAS,CAAC,EAAE,MAAM,KAAK,CAAC;YAAE,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,UAAU,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;KACjF,CAAC;CACH;AAwFD,wBAAgB,sBAAsB,CAAC,cAAc,CAAC,EAAE,cAAc,GAAG,iBAAiB,CAAC;AAC3F,wBAAgB,sBAAsB,CAAC,OAAO,CAAC,EAAE,uBAAuB,GAAG,iBAAiB,CAAC;AAQ7F,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAE1G;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,GAAG,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAE5G;AAGD,eAAO,MAAM,YAAY,8FAAmC,CAAC;AAC7D,eAAO,MAAM,aAAa;;;;;;;;oBAAoC,CAAC"}
@@ -1,75 +1,96 @@
1
- /**
2
- * Todo Tools - Uses indusagi's todo tools with session persistence
3
- *
4
- * @module core/tools/todo
5
- * @description
6
- * Wraps indusagi's createTodoReadTool/createTodoWriteTool with a TodoStore
7
- * that uses TodoStoreOptions for session persistence.
8
- */
1
+ import { createHash } from "node:crypto";
2
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
3
+ import { dirname, join } from "node:path";
9
4
  import { createTodoReadTool as createIndusagiTodoReadTool, createTodoWriteTool as createIndusagiTodoWriteTool, TodoStore as IndusagiTodoStore, } from "indusagi/agent";
10
- const TODO_CUSTOM_TYPE = "todo";
11
- /**
12
- * Create a TodoStore with session persistence
13
- */
14
- export function createSessionTodoStore(sessionManager) {
15
- return new IndusagiTodoStore({
5
+ import { getAgentDir } from "../../config.js";
6
+ import { TODO_CUSTOM_TYPE } from "../todo-store.js";
7
+ export { IndusagiTodoStore as TodoStore };
8
+ function isSessionTodoStoreOptions(value) {
9
+ if (!value || typeof value !== "object") {
10
+ return false;
11
+ }
12
+ const candidate = value;
13
+ return ("sessionManager" in candidate ||
14
+ "sessionId" in candidate ||
15
+ "getSessionId" in candidate ||
16
+ "storageDir" in candidate);
17
+ }
18
+ function normalizeOptions(input) {
19
+ if (!input) {
20
+ return undefined;
21
+ }
22
+ if (isSessionTodoStoreOptions(input)) {
23
+ return input;
24
+ }
25
+ return { sessionManager: input };
26
+ }
27
+ function createSessionKey(options) {
28
+ const sessionId = options?.sessionId || options?.getSessionId?.();
29
+ if (sessionId) {
30
+ return sessionId;
31
+ }
32
+ return createHash("sha1").update(process.cwd()).digest("hex").slice(0, 16);
33
+ }
34
+ function readTodosFromBranch(sessionManager) {
35
+ const entries = sessionManager?.getBranch?.() || [];
36
+ for (let i = entries.length - 1; i >= 0; i -= 1) {
37
+ const entry = entries[i];
38
+ if (entry?.type !== "custom" || entry.customType !== TODO_CUSTOM_TYPE) {
39
+ continue;
40
+ }
41
+ const data = entry.data;
42
+ if (Array.isArray(data?.todos)) {
43
+ return data.todos;
44
+ }
45
+ }
46
+ return [];
47
+ }
48
+ function createFilePersistence(options) {
49
+ const storageDir = options?.storageDir ?? join(getAgentDir(), "todo-sessions");
50
+ const sessionKey = createSessionKey(options);
51
+ const filePath = join(storageDir, `${sessionKey}.json`);
52
+ const persistToFile = (todos) => {
53
+ mkdirSync(dirname(filePath), { recursive: true });
54
+ writeFileSync(filePath, JSON.stringify({ todos }, null, 2), "utf-8");
55
+ };
56
+ const loadFromFile = () => {
57
+ if (!existsSync(filePath)) {
58
+ return [];
59
+ }
60
+ try {
61
+ const data = JSON.parse(readFileSync(filePath, "utf-8"));
62
+ return Array.isArray(data.todos) ? data.todos : [];
63
+ }
64
+ catch {
65
+ return [];
66
+ }
67
+ };
68
+ return {
16
69
  persist: (todos) => {
17
- sessionManager?.appendCustomEntry(TODO_CUSTOM_TYPE, { todos });
70
+ persistToFile(todos);
71
+ options?.sessionManager?.appendCustomEntry?.(TODO_CUSTOM_TYPE, { todos });
18
72
  },
19
73
  load: () => {
20
- if (!sessionManager)
21
- return [];
22
- const entries = sessionManager.getBranch();
23
- for (let i = entries.length - 1; i >= 0; i--) {
24
- const entry = entries[i];
25
- if (entry?.type !== "custom")
26
- continue;
27
- if (entry.customType !== TODO_CUSTOM_TYPE)
28
- continue;
29
- const data = entry.data;
30
- if (!data || !Array.isArray(data.todos))
31
- continue;
32
- return data.todos;
33
- }
34
- return [];
74
+ const branchTodos = readTodosFromBranch(options?.sessionManager);
75
+ return branchTodos.length > 0 ? branchTodos : loadFromFile();
35
76
  },
36
77
  rebuildFromBranch: () => {
37
- if (!sessionManager)
38
- return [];
39
- const entries = sessionManager.getBranch();
40
- for (let i = entries.length - 1; i >= 0; i--) {
41
- const entry = entries[i];
42
- if (entry?.type !== "custom")
43
- continue;
44
- if (entry.customType !== TODO_CUSTOM_TYPE)
45
- continue;
46
- const data = entry.data;
47
- if (!data || !Array.isArray(data.todos))
48
- continue;
49
- return data.todos;
50
- }
51
- return [];
78
+ const branchTodos = readTodosFromBranch(options?.sessionManager);
79
+ return branchTodos.length > 0 ? branchTodos : loadFromFile();
52
80
  },
53
- });
81
+ };
82
+ }
83
+ export function createSessionTodoStore(input) {
84
+ const options = normalizeOptions(input);
85
+ return new IndusagiTodoStore(createFilePersistence(options));
54
86
  }
55
- // Re-export TodoStore
56
- export { IndusagiTodoStore as TodoStore };
57
- /**
58
- * Create todo read tool
59
- */
60
87
  export function createTodoReadTool(store) {
61
88
  return createIndusagiTodoReadTool(store);
62
89
  }
63
- /**
64
- * Create todo write tool
65
- */
66
90
  export function createTodoWriteTool(store) {
67
91
  return createIndusagiTodoWriteTool(store);
68
92
  }
69
- // Default store for simple mode (no session persistence)
70
- const defaultStore = new IndusagiTodoStore();
71
- /** Default todo read tool using in-memory store */
93
+ const defaultStore = createSessionTodoStore();
72
94
  export const todoReadTool = createTodoReadTool(defaultStore);
73
- /** Default todo write tool using in-memory store */
74
95
  export const todoWriteTool = createTodoWriteTool(defaultStore);
75
96
  //# sourceMappingURL=todo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"todo.js","sourceRoot":"","sources":["../../../src/core/tools/todo.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACN,kBAAkB,IAAI,0BAA0B,EAChD,mBAAmB,IAAI,2BAA2B,EAClD,SAAS,IAAI,iBAAiB,GAM9B,MAAM,gBAAgB,CAAC;AAIxB,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEhC;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,cAA+B;IACrE,OAAO,IAAI,iBAAiB,CAAC;QAC5B,OAAO,EAAE,CAAC,KAAiB,EAAE,EAAE;YAC9B,cAAc,EAAE,iBAAiB,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,EAAE,GAAe,EAAE;YACtB,IAAI,CAAC,cAAc;gBAAE,OAAO,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,EAAE,CAAC;YAC3C,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9C,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBACzB,IAAI,KAAK,EAAE,IAAI,KAAK,QAAQ;oBAAE,SAAS;gBACvC,IAAI,KAAK,CAAC,UAAU,KAAK,gBAAgB;oBAAE,SAAS;gBACpD,MAAM,IAAI,GAAG,KAAK,CAAC,IAA8B,CAAC;gBAClD,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;oBAAE,SAAS;gBAClD,OAAO,IAAI,CAAC,KAAK,CAAC;YACnB,CAAC;YACD,OAAO,EAAE,CAAC;QACX,CAAC;QACD,iBAAiB,EAAE,GAAe,EAAE;YACnC,IAAI,CAAC,cAAc;gBAAE,OAAO,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,EAAE,CAAC;YAC3C,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9C,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBACzB,IAAI,KAAK,EAAE,IAAI,KAAK,QAAQ;oBAAE,SAAS;gBACvC,IAAI,KAAK,CAAC,UAAU,KAAK,gBAAgB;oBAAE,SAAS;gBACpD,MAAM,IAAI,GAAG,KAAK,CAAC,IAA8B,CAAC;gBAClD,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;oBAAE,SAAS;gBAClD,OAAO,IAAI,CAAC,KAAK,CAAC;YACnB,CAAC;YACD,OAAO,EAAE,CAAC;QACX,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AAKD,sBAAsB;AACtB,OAAO,EAAE,iBAAiB,IAAI,SAAS,EAAE,CAAC;AAE1C;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAwB;IAC1D,OAAO,0BAA0B,CAAC,KAAK,CAAC,CAAC;AAC1C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAwB;IAC3D,OAAO,2BAA2B,CAAC,KAAK,CAAC,CAAC;AAC3C,CAAC;AAED,yDAAyD;AACzD,MAAM,YAAY,GAAG,IAAI,iBAAiB,EAAE,CAAC;AAE7C,mDAAmD;AACnD,MAAM,CAAC,MAAM,YAAY,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;AAE7D,oDAAoD;AACpD,MAAM,CAAC,MAAM,aAAa,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"todo.js","sourceRoot":"","sources":["../../../src/core/tools/todo.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { DEFAULT_MAX_BYTES, DEFAULT_MAX_LINES, formatSize, truncateHead, truncateLine, truncateTail, type TruncationOptions, type TruncationResult, } from "indusagi/agent";
2
+ //# sourceMappingURL=truncate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"truncate.d.ts","sourceRoot":"","sources":["../../../src/core/tools/truncate.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,GACtB,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { DEFAULT_MAX_BYTES, DEFAULT_MAX_LINES, formatSize, truncateHead, truncateLine, truncateTail, } from "indusagi/agent";
2
+ //# sourceMappingURL=truncate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"truncate.js","sourceRoot":"","sources":["../../../src/core/tools/truncate.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,YAAY,GAGb,MAAM,gBAAgB,CAAC"}