whale-code 6.5.5 → 6.5.6

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 (847) hide show
  1. package/README.md +39 -31
  2. package/bin/{swagmanager-mcp.js → whale-code.js} +17 -2
  3. package/dist/cli/app.js +148 -72
  4. package/dist/cli/app.js.map +1 -0
  5. package/dist/cli/chat/AgentSelector.js +105 -10
  6. package/dist/cli/chat/AgentSelector.js.map +1 -0
  7. package/dist/cli/chat/ChatApp.d.ts +31 -0
  8. package/dist/cli/chat/ChatApp.js +539 -286
  9. package/dist/cli/chat/ChatApp.js.map +1 -0
  10. package/dist/cli/chat/ChatInput.js +1088 -770
  11. package/dist/cli/chat/ChatInput.js.map +1 -0
  12. package/dist/cli/chat/MarkdownText.js +39 -14
  13. package/dist/cli/chat/MarkdownText.js.map +1 -0
  14. package/dist/cli/chat/MemoryManager.js +181 -46
  15. package/dist/cli/chat/MemoryManager.js.map +1 -0
  16. package/dist/cli/chat/MessageList.d.ts +2 -3
  17. package/dist/cli/chat/MessageList.js +186 -45
  18. package/dist/cli/chat/MessageList.js.map +1 -0
  19. package/dist/cli/chat/ModelSelector.js +282 -63
  20. package/dist/cli/chat/ModelSelector.js.map +1 -0
  21. package/dist/cli/chat/NodeManager.js +165 -75
  22. package/dist/cli/chat/NodeManager.js.map +1 -0
  23. package/dist/cli/chat/NodeSelector.js +171 -30
  24. package/dist/cli/chat/NodeSelector.js.map +1 -0
  25. package/dist/cli/chat/PlanApproval.js +281 -57
  26. package/dist/cli/chat/PlanApproval.js.map +1 -0
  27. package/dist/cli/chat/RewindViewer.js +559 -144
  28. package/dist/cli/chat/RewindViewer.js.map +1 -0
  29. package/dist/cli/chat/SessionManager.js +137 -30
  30. package/dist/cli/chat/SessionManager.js.map +1 -0
  31. package/dist/cli/chat/SlashMenu.js +293 -164
  32. package/dist/cli/chat/SlashMenu.js.map +1 -0
  33. package/dist/cli/chat/StatusBar.js +172 -9
  34. package/dist/cli/chat/StatusBar.js.map +1 -0
  35. package/dist/cli/chat/StoreSelector.js +147 -18
  36. package/dist/cli/chat/StoreSelector.js.map +1 -0
  37. package/dist/cli/chat/StreamingText.d.ts +1 -5
  38. package/dist/cli/chat/StreamingText.js +22 -7
  39. package/dist/cli/chat/StreamingText.js.map +1 -0
  40. package/dist/cli/chat/SubagentPanel.d.ts +1 -2
  41. package/dist/cli/chat/SubagentPanel.js +612 -72
  42. package/dist/cli/chat/SubagentPanel.js.map +1 -0
  43. package/dist/cli/chat/TeamPanel.d.ts +1 -0
  44. package/dist/cli/chat/TeamPanel.js +230 -30
  45. package/dist/cli/chat/TeamPanel.js.map +1 -0
  46. package/dist/cli/chat/ThemeSelector.js +84 -24
  47. package/dist/cli/chat/ThemeSelector.js.map +1 -0
  48. package/dist/cli/chat/ToolIndicator.js +1476 -371
  49. package/dist/cli/chat/ToolIndicator.js.map +1 -0
  50. package/dist/cli/chat/hooks/useAgentLoop.d.ts +1 -0
  51. package/dist/cli/chat/hooks/useAgentLoop.js +481 -367
  52. package/dist/cli/chat/hooks/useAgentLoop.js.map +1 -0
  53. package/dist/cli/chat/hooks/useSlashCommands.d.ts +3 -14
  54. package/dist/cli/chat/hooks/useSlashCommands.js +744 -572
  55. package/dist/cli/chat/hooks/useSlashCommands.js.map +1 -0
  56. package/dist/cli/commands/config-cmd.js +56 -57
  57. package/dist/cli/commands/config-cmd.js.map +1 -0
  58. package/dist/cli/commands/db.js +184 -169
  59. package/dist/cli/commands/db.js.map +1 -0
  60. package/dist/cli/commands/doctor.js +212 -122
  61. package/dist/cli/commands/doctor.js.map +1 -0
  62. package/dist/cli/commands/init.js +211 -244
  63. package/dist/cli/commands/init.js.map +1 -0
  64. package/dist/cli/commands/mcp.js +127 -122
  65. package/dist/cli/commands/mcp.js.map +1 -0
  66. package/dist/cli/login/LoginApp.js +355 -141
  67. package/dist/cli/login/LoginApp.js.map +1 -0
  68. package/dist/cli/print-mode.js +196 -177
  69. package/dist/cli/print-mode.js.map +1 -0
  70. package/dist/cli/serve-mode.js +615 -530
  71. package/dist/cli/serve-mode.js.map +1 -0
  72. package/dist/cli/services/agent-config.d.ts +5 -1
  73. package/dist/cli/services/agent-config.js +66 -36
  74. package/dist/cli/services/agent-config.js.map +1 -0
  75. package/dist/cli/services/agent-definitions.d.ts +4 -1
  76. package/dist/cli/services/agent-definitions.js +97 -56
  77. package/dist/cli/services/agent-definitions.js.map +1 -0
  78. package/dist/cli/services/agent-events.js +225 -162
  79. package/dist/cli/services/agent-events.js.map +1 -0
  80. package/dist/cli/services/agent-loop.js +976 -688
  81. package/dist/cli/services/agent-loop.js.map +1 -0
  82. package/dist/cli/services/agent-worker-base.d.ts +35 -5
  83. package/dist/cli/services/agent-worker-base.js +337 -153
  84. package/dist/cli/services/agent-worker-base.js.map +1 -0
  85. package/dist/cli/services/api-retry.js +69 -64
  86. package/dist/cli/services/api-retry.js.map +1 -0
  87. package/dist/cli/services/auth-service.d.ts +3 -3
  88. package/dist/cli/services/auth-service.js +209 -132
  89. package/dist/cli/services/auth-service.js.map +1 -0
  90. package/dist/cli/services/background-processes.js +343 -267
  91. package/dist/cli/services/background-processes.js.map +1 -0
  92. package/dist/cli/services/browser-auth.d.ts +2 -2
  93. package/dist/cli/services/browser-auth.js +159 -118
  94. package/dist/cli/services/browser-auth.js.map +1 -0
  95. package/dist/cli/services/claude-md-loader.js +40 -36
  96. package/dist/cli/services/claude-md-loader.js.map +1 -0
  97. package/dist/cli/services/config-store.d.ts +9 -4
  98. package/dist/cli/services/config-store.js +164 -117
  99. package/dist/cli/services/config-store.js.map +1 -0
  100. package/dist/cli/services/debug-log.d.ts +1 -1
  101. package/dist/cli/services/debug-log.js +34 -35
  102. package/dist/cli/services/debug-log.js.map +1 -0
  103. package/dist/cli/services/env-detect.d.ts +7 -0
  104. package/dist/cli/services/env-detect.js +9 -0
  105. package/dist/cli/services/env-detect.js.map +1 -0
  106. package/dist/cli/services/error-logger.js +187 -169
  107. package/dist/cli/services/error-logger.js.map +1 -0
  108. package/dist/cli/services/file-history.d.ts +1 -1
  109. package/dist/cli/services/file-history.js +50 -54
  110. package/dist/cli/services/file-history.js.map +1 -0
  111. package/dist/cli/services/format-server-response.js +332 -372
  112. package/dist/cli/services/format-server-response.js.map +1 -0
  113. package/dist/cli/services/git-context.js +61 -45
  114. package/dist/cli/services/git-context.js.map +1 -0
  115. package/dist/cli/services/hooks.d.ts +2 -2
  116. package/dist/cli/services/hooks.js +195 -180
  117. package/dist/cli/services/hooks.js.map +1 -0
  118. package/dist/cli/services/ink-incremental.d.ts +19 -0
  119. package/dist/cli/services/ink-incremental.js +59 -0
  120. package/dist/cli/services/ink-incremental.js.map +1 -0
  121. package/dist/cli/services/ink-resize-fix.js +54 -44
  122. package/dist/cli/services/ink-resize-fix.js.map +1 -0
  123. package/dist/cli/services/ink-sync-output.d.ts +12 -0
  124. package/dist/cli/services/ink-sync-output.js +16 -0
  125. package/dist/cli/services/ink-sync-output.js.map +1 -0
  126. package/dist/cli/services/interactive-tools.js +268 -212
  127. package/dist/cli/services/interactive-tools.js.map +1 -0
  128. package/dist/cli/services/keybinding-manager.d.ts +11 -1
  129. package/dist/cli/services/keybinding-manager.js +126 -63
  130. package/dist/cli/services/keybinding-manager.js.map +1 -0
  131. package/dist/cli/services/local-tools.d.ts +1 -1
  132. package/dist/cli/services/local-tools.js +939 -656
  133. package/dist/cli/services/local-tools.js.map +1 -0
  134. package/dist/cli/services/lsp-manager.js +757 -594
  135. package/dist/cli/services/lsp-manager.js.map +1 -0
  136. package/dist/cli/services/mcp-client.d.ts +1 -1
  137. package/dist/cli/services/mcp-client.js +173 -134
  138. package/dist/cli/services/mcp-client.js.map +1 -0
  139. package/dist/cli/services/memory-manager.js +53 -40
  140. package/dist/cli/services/memory-manager.js.map +1 -0
  141. package/dist/cli/services/model-manager.js +55 -40
  142. package/dist/cli/services/model-manager.js.map +1 -0
  143. package/dist/cli/services/model-router.js +115 -85
  144. package/dist/cli/services/model-router.js.map +1 -0
  145. package/dist/cli/services/paths.d.ts +30 -0
  146. package/dist/cli/services/paths.js +81 -0
  147. package/dist/cli/services/paths.js.map +1 -0
  148. package/dist/cli/services/permission-modes.js +32 -25
  149. package/dist/cli/services/permission-modes.js.map +1 -0
  150. package/dist/cli/services/rewind.js +182 -168
  151. package/dist/cli/services/rewind.js.map +1 -0
  152. package/dist/cli/services/ripgrep.js +115 -115
  153. package/dist/cli/services/ripgrep.js.map +1 -0
  154. package/dist/cli/services/sandbox.d.ts +1 -1
  155. package/dist/cli/services/sandbox.js +58 -37
  156. package/dist/cli/services/sandbox.js.map +1 -0
  157. package/dist/cli/services/server-tools.js +738 -565
  158. package/dist/cli/services/server-tools.js.map +1 -0
  159. package/dist/cli/services/session-persistence.js +69 -74
  160. package/dist/cli/services/session-persistence.js.map +1 -0
  161. package/dist/cli/services/subagent-worker.js +42 -27
  162. package/dist/cli/services/subagent-worker.js.map +1 -0
  163. package/dist/cli/services/subagent.d.ts +2 -0
  164. package/dist/cli/services/subagent.js +605 -433
  165. package/dist/cli/services/subagent.js.map +1 -0
  166. package/dist/cli/services/system-prompt.js +86 -78
  167. package/dist/cli/services/system-prompt.js.map +1 -0
  168. package/dist/cli/services/task-decomposer.d.ts +1 -1
  169. package/dist/cli/services/task-decomposer.js +172 -139
  170. package/dist/cli/services/task-decomposer.js.map +1 -0
  171. package/dist/cli/services/team-lead.d.ts +2 -2
  172. package/dist/cli/services/team-lead.js +727 -529
  173. package/dist/cli/services/team-lead.js.map +1 -0
  174. package/dist/cli/services/team-state.js +319 -319
  175. package/dist/cli/services/team-state.js.map +1 -0
  176. package/dist/cli/services/teammate.d.ts +8 -2
  177. package/dist/cli/services/teammate.js +857 -569
  178. package/dist/cli/services/teammate.js.map +1 -0
  179. package/dist/cli/services/telemetry.d.ts +6 -1
  180. package/dist/cli/services/telemetry.js +180 -157
  181. package/dist/cli/services/telemetry.js.map +1 -0
  182. package/dist/cli/services/tools/agent-tools.d.ts +3 -3
  183. package/dist/cli/services/tools/agent-tools.js +480 -322
  184. package/dist/cli/services/tools/agent-tools.js.map +1 -0
  185. package/dist/cli/services/tools/file-ops.js +563 -450
  186. package/dist/cli/services/tools/file-ops.js.map +1 -0
  187. package/dist/cli/services/tools/search-tools.js +231 -162
  188. package/dist/cli/services/tools/search-tools.js.map +1 -0
  189. package/dist/cli/services/tools/shell-exec.js +197 -151
  190. package/dist/cli/services/tools/shell-exec.js.map +1 -0
  191. package/dist/cli/services/tools/task-manager.js +206 -173
  192. package/dist/cli/services/tools/task-manager.js.map +1 -0
  193. package/dist/cli/services/tools/web-tools.js +388 -341
  194. package/dist/cli/services/tools/web-tools.js.map +1 -0
  195. package/dist/cli/setup/SetupApp.d.ts +2 -2
  196. package/dist/cli/setup/SetupApp.js +608 -160
  197. package/dist/cli/setup/SetupApp.js.map +1 -0
  198. package/dist/cli/shared/ErrorBoundary.d.ts +22 -0
  199. package/dist/cli/shared/ErrorBoundary.js +73 -0
  200. package/dist/cli/shared/ErrorBoundary.js.map +1 -0
  201. package/dist/cli/shared/MatrixIntro.js +66 -69
  202. package/dist/cli/shared/MatrixIntro.js.map +1 -0
  203. package/dist/cli/shared/SpinnerSlot.d.ts +14 -0
  204. package/dist/cli/shared/SpinnerSlot.js +63 -0
  205. package/dist/cli/shared/SpinnerSlot.js.map +1 -0
  206. package/dist/cli/shared/Theme.d.ts +1 -1
  207. package/dist/cli/shared/Theme.js +136 -92
  208. package/dist/cli/shared/Theme.js.map +1 -0
  209. package/dist/cli/shared/WhaleBanner.js +99 -11
  210. package/dist/cli/shared/WhaleBanner.js.map +1 -0
  211. package/dist/cli/shared/markdown.d.ts +3 -1
  212. package/dist/cli/shared/markdown.js +736 -674
  213. package/dist/cli/shared/markdown.js.map +1 -0
  214. package/dist/cli/shared/marked-terminal.d.js +2 -0
  215. package/dist/cli/shared/marked-terminal.d.js.map +1 -0
  216. package/dist/cli/shared/theme-manager.js +99 -90
  217. package/dist/cli/shared/theme-manager.js.map +1 -0
  218. package/dist/cli/shared/theme-presets.js +256 -254
  219. package/dist/cli/shared/theme-presets.js.map +1 -0
  220. package/dist/cli/status/StatusApp.js +235 -86
  221. package/dist/cli/status/StatusApp.js.map +1 -0
  222. package/dist/cli/stores/StoreApp.js +275 -65
  223. package/dist/cli/stores/StoreApp.js.map +1 -0
  224. package/dist/index.d.ts +2 -2
  225. package/dist/index.js +509 -396
  226. package/dist/index.js.map +1 -0
  227. package/dist/local-agent/connection.d.ts +2 -2
  228. package/dist/local-agent/connection.js +352 -293
  229. package/dist/local-agent/connection.js.map +1 -0
  230. package/dist/local-agent/discovery.js +259 -122
  231. package/dist/local-agent/discovery.js.map +1 -0
  232. package/dist/local-agent/executor.js +216 -193
  233. package/dist/local-agent/executor.js.map +1 -0
  234. package/dist/local-agent/index.d.ts +2 -2
  235. package/dist/local-agent/index.js +156 -156
  236. package/dist/local-agent/index.js.map +1 -0
  237. package/dist/node/adapters/base.js +18 -8
  238. package/dist/node/adapters/base.js.map +1 -0
  239. package/dist/node/adapters/discord.js +286 -275
  240. package/dist/node/adapters/discord.js.map +1 -0
  241. package/dist/node/adapters/email.js +189 -202
  242. package/dist/node/adapters/email.js.map +1 -0
  243. package/dist/node/adapters/imessage.js +145 -142
  244. package/dist/node/adapters/imessage.js.map +1 -0
  245. package/dist/node/adapters/slack.js +237 -236
  246. package/dist/node/adapters/slack.js.map +1 -0
  247. package/dist/node/adapters/sms.js +149 -151
  248. package/dist/node/adapters/sms.js.map +1 -0
  249. package/dist/node/adapters/telegram.js +88 -92
  250. package/dist/node/adapters/telegram.js.map +1 -0
  251. package/dist/node/adapters/webchat.js +160 -136
  252. package/dist/node/adapters/webchat.js.map +1 -0
  253. package/dist/node/adapters/whatsapp.js +212 -215
  254. package/dist/node/adapters/whatsapp.js.map +1 -0
  255. package/dist/node/cli.js +884 -653
  256. package/dist/node/cli.js.map +1 -0
  257. package/dist/node/config.js +20 -18
  258. package/dist/node/config.js.map +1 -0
  259. package/dist/node/gateway-client.js +191 -181
  260. package/dist/node/gateway-client.js.map +1 -0
  261. package/dist/node/portal/clipboard.js +161 -130
  262. package/dist/node/portal/clipboard.js.map +1 -0
  263. package/dist/node/portal/discovery.js +51 -45
  264. package/dist/node/portal/discovery.js.map +1 -0
  265. package/dist/node/portal/forward.js +64 -58
  266. package/dist/node/portal/forward.js.map +1 -0
  267. package/dist/node/portal/index.js +246 -221
  268. package/dist/node/portal/index.js.map +1 -0
  269. package/dist/node/portal/multiplexer.js +192 -182
  270. package/dist/node/portal/multiplexer.js.map +1 -0
  271. package/dist/node/portal/permissions.js +102 -70
  272. package/dist/node/portal/permissions.js.map +1 -0
  273. package/dist/node/portal/protocol.js +153 -116
  274. package/dist/node/portal/protocol.js.map +1 -0
  275. package/dist/node/portal/screen.js +80 -69
  276. package/dist/node/portal/screen.js.map +1 -0
  277. package/dist/node/portal/session.js +124 -117
  278. package/dist/node/portal/session.js.map +1 -0
  279. package/dist/node/portal/shell.js +140 -113
  280. package/dist/node/portal/shell.js.map +1 -0
  281. package/dist/node/portal/stream.js +77 -75
  282. package/dist/node/portal/stream.js.map +1 -0
  283. package/dist/node/portal/transfer.js +190 -167
  284. package/dist/node/portal/transfer.js.map +1 -0
  285. package/dist/node/portal/ui.js +124 -99
  286. package/dist/node/portal/ui.js.map +1 -0
  287. package/dist/node/remote-desktop/compile-helper.js +50 -45
  288. package/dist/node/remote-desktop/compile-helper.js.map +1 -0
  289. package/dist/node/remote-desktop/index.js +215 -187
  290. package/dist/node/remote-desktop/index.js.map +1 -0
  291. package/dist/node/remote-desktop/protocol.js +45 -29
  292. package/dist/node/remote-desktop/protocol.js.map +1 -0
  293. package/dist/node/runtime.js +493 -410
  294. package/dist/node/runtime.js.map +1 -0
  295. package/dist/server/handlers/__test-utils__/test-db.js +39 -89
  296. package/dist/server/handlers/__test-utils__/test-db.js.map +1 -0
  297. package/dist/server/handlers/analytics.js +467 -261
  298. package/dist/server/handlers/analytics.js.map +1 -0
  299. package/dist/server/handlers/api-docs.js +1030 -895
  300. package/dist/server/handlers/api-docs.js.map +1 -0
  301. package/dist/server/handlers/api-keys.js +291 -242
  302. package/dist/server/handlers/api-keys.js.map +1 -0
  303. package/dist/server/handlers/billing.js +330 -239
  304. package/dist/server/handlers/billing.js.map +1 -0
  305. package/dist/server/handlers/browser.js +468 -395
  306. package/dist/server/handlers/browser.js.map +1 -0
  307. package/dist/server/handlers/catalog.js +1377 -978
  308. package/dist/server/handlers/catalog.js.map +1 -0
  309. package/dist/server/handlers/clickhouse.js +157 -109
  310. package/dist/server/handlers/clickhouse.js.map +1 -0
  311. package/dist/server/handlers/comms.js +1439 -984
  312. package/dist/server/handlers/comms.js.map +1 -0
  313. package/dist/server/handlers/creations.js +461 -394
  314. package/dist/server/handlers/creations.js.map +1 -0
  315. package/dist/server/handlers/crm.js +1082 -791
  316. package/dist/server/handlers/crm.js.map +1 -0
  317. package/dist/server/handlers/discovery.js +251 -232
  318. package/dist/server/handlers/discovery.js.map +1 -0
  319. package/dist/server/handlers/embeddings.js +241 -164
  320. package/dist/server/handlers/embeddings.js.map +1 -0
  321. package/dist/server/handlers/enrichment.js +887 -718
  322. package/dist/server/handlers/enrichment.js.map +1 -0
  323. package/dist/server/handlers/image-gen.js +467 -376
  324. package/dist/server/handlers/image-gen.js.map +1 -0
  325. package/dist/server/handlers/inventory.js +797 -424
  326. package/dist/server/handlers/inventory.js.map +1 -0
  327. package/dist/server/handlers/kali.js +272 -230
  328. package/dist/server/handlers/kali.js.map +1 -0
  329. package/dist/server/handlers/llm-providers.js +803 -580
  330. package/dist/server/handlers/llm-providers.js.map +1 -0
  331. package/dist/server/handlers/local-agent.js +133 -105
  332. package/dist/server/handlers/local-agent.js.map +1 -0
  333. package/dist/server/handlers/media.js +1179 -857
  334. package/dist/server/handlers/media.js.map +1 -0
  335. package/dist/server/handlers/meta-ads.js +2669 -2093
  336. package/dist/server/handlers/meta-ads.js.map +1 -0
  337. package/dist/server/handlers/nodes.js +1321 -913
  338. package/dist/server/handlers/nodes.js.map +1 -0
  339. package/dist/server/handlers/operations.js +183 -157
  340. package/dist/server/handlers/operations.js.map +1 -0
  341. package/dist/server/handlers/platform.js +346 -210
  342. package/dist/server/handlers/platform.js.map +1 -0
  343. package/dist/server/handlers/remove-bg.js +118 -86
  344. package/dist/server/handlers/remove-bg.js.map +1 -0
  345. package/dist/server/handlers/storefront.js +586 -446
  346. package/dist/server/handlers/storefront.js.map +1 -0
  347. package/dist/server/handlers/supply-chain.js +546 -326
  348. package/dist/server/handlers/supply-chain.js.map +1 -0
  349. package/dist/server/handlers/transcription.js +106 -97
  350. package/dist/server/handlers/transcription.js.map +1 -0
  351. package/dist/server/handlers/video-gen.js +593 -424
  352. package/dist/server/handlers/video-gen.js.map +1 -0
  353. package/dist/server/handlers/voice.js +1458 -1039
  354. package/dist/server/handlers/voice.js.map +1 -0
  355. package/dist/server/handlers/workflow-steps.js +2837 -2116
  356. package/dist/server/handlers/workflow-steps.js.map +1 -0
  357. package/dist/server/handlers/workflows.js +1630 -933
  358. package/dist/server/handlers/workflows.js.map +1 -0
  359. package/dist/server/index.js +3167 -2422
  360. package/dist/server/index.js.map +1 -0
  361. package/dist/server/lib/batch-client.js +471 -409
  362. package/dist/server/lib/batch-client.js.map +1 -0
  363. package/dist/server/lib/clickhouse-buffer.js +118 -104
  364. package/dist/server/lib/clickhouse-buffer.js.map +1 -0
  365. package/dist/server/lib/clickhouse-client.js +107 -107
  366. package/dist/server/lib/clickhouse-client.js.map +1 -0
  367. package/dist/server/lib/coa-renderer.js +1786 -356
  368. package/dist/server/lib/coa-renderer.js.map +1 -0
  369. package/dist/server/lib/code-worker-pool.js +227 -177
  370. package/dist/server/lib/code-worker-pool.js.map +1 -0
  371. package/dist/server/lib/code-worker.js +174 -164
  372. package/dist/server/lib/code-worker.js.map +1 -0
  373. package/dist/server/lib/compaction-service.d.ts +2 -12
  374. package/dist/server/lib/compaction-service.js +74 -184
  375. package/dist/server/lib/compaction-service.js.map +1 -0
  376. package/dist/server/lib/logger.js +36 -24
  377. package/dist/server/lib/logger.js.map +1 -0
  378. package/dist/server/lib/otel.js +101 -80
  379. package/dist/server/lib/otel.js.map +1 -0
  380. package/dist/server/lib/pdf-renderer.js +952 -788
  381. package/dist/server/lib/pdf-renderer.js.map +1 -0
  382. package/dist/server/lib/prompt-sanitizer.js +188 -108
  383. package/dist/server/lib/prompt-sanitizer.js.map +1 -0
  384. package/dist/server/lib/provider-capabilities.js +136 -138
  385. package/dist/server/lib/provider-capabilities.js.map +1 -0
  386. package/dist/server/lib/provider-failover.js +190 -168
  387. package/dist/server/lib/provider-failover.js.map +1 -0
  388. package/dist/server/lib/rate-limiter.js +186 -117
  389. package/dist/server/lib/rate-limiter.js.map +1 -0
  390. package/dist/server/lib/react-pdf-layout.js +551 -382
  391. package/dist/server/lib/react-pdf-layout.js.map +1 -0
  392. package/dist/server/lib/server-agent-loop.d.ts +4 -1
  393. package/dist/server/lib/server-agent-loop.js +906 -634
  394. package/dist/server/lib/server-agent-loop.js.map +1 -0
  395. package/dist/server/lib/server-subagent.js +260 -164
  396. package/dist/server/lib/server-subagent.js.map +1 -0
  397. package/dist/server/lib/session-checkpoint.js +105 -96
  398. package/dist/server/lib/session-checkpoint.js.map +1 -0
  399. package/dist/server/lib/ssrf-guard.js +193 -184
  400. package/dist/server/lib/ssrf-guard.js.map +1 -0
  401. package/dist/server/lib/supabase-client.js +94 -82
  402. package/dist/server/lib/supabase-client.js.map +1 -0
  403. package/dist/server/lib/template-resolver.js +154 -176
  404. package/dist/server/lib/template-resolver.js.map +1 -0
  405. package/dist/server/lib/utils.js +242 -133
  406. package/dist/server/lib/utils.js.map +1 -0
  407. package/dist/server/local-agent-gateway.d.ts +2 -2
  408. package/dist/server/local-agent-gateway.js +785 -627
  409. package/dist/server/local-agent-gateway.js.map +1 -0
  410. package/dist/server/providers/anthropic.js +250 -172
  411. package/dist/server/providers/anthropic.js.map +1 -0
  412. package/dist/server/providers/bedrock.js +217 -158
  413. package/dist/server/providers/bedrock.js.map +1 -0
  414. package/dist/server/providers/gemini.js +548 -418
  415. package/dist/server/providers/gemini.js.map +1 -0
  416. package/dist/server/providers/openai.js +571 -437
  417. package/dist/server/providers/openai.js.map +1 -0
  418. package/dist/server/providers/registry.js +23 -18
  419. package/dist/server/providers/registry.js.map +1 -0
  420. package/dist/server/providers/shared.js +123 -95
  421. package/dist/server/providers/shared.js.map +1 -0
  422. package/dist/server/providers/types.js +1 -11
  423. package/dist/server/providers/types.js.map +1 -0
  424. package/dist/server/proxy-handlers.js +209 -165
  425. package/dist/server/proxy-handlers.js.map +1 -0
  426. package/dist/server/tool-router.js +959 -599
  427. package/dist/server/tool-router.js.map +1 -0
  428. package/dist/server/validation.js +248 -188
  429. package/dist/server/validation.js.map +1 -0
  430. package/dist/server/worker.js +202 -133
  431. package/dist/server/worker.js.map +1 -0
  432. package/dist/setup.d.ts +2 -2
  433. package/dist/setup.js +151 -147
  434. package/dist/setup.js.map +1 -0
  435. package/dist/shared/agent-core.d.ts +115 -26
  436. package/dist/shared/agent-core.js +956 -522
  437. package/dist/shared/agent-core.js.map +1 -0
  438. package/dist/shared/anthropic-types.js +1 -6
  439. package/dist/shared/anthropic-types.js.map +1 -0
  440. package/dist/shared/api-client.d.ts +16 -9
  441. package/dist/shared/api-client.js +419 -327
  442. package/dist/shared/api-client.js.map +1 -0
  443. package/dist/shared/compaction.d.ts +36 -0
  444. package/dist/shared/compaction.js +138 -0
  445. package/dist/shared/compaction.js.map +1 -0
  446. package/dist/shared/constants.js +67 -64
  447. package/dist/shared/constants.js.map +1 -0
  448. package/dist/shared/sse-parser.js +221 -219
  449. package/dist/shared/sse-parser.js.map +1 -0
  450. package/dist/shared/tool-dispatch.d.ts +4 -0
  451. package/dist/shared/tool-dispatch.js +226 -165
  452. package/dist/shared/tool-dispatch.js.map +1 -0
  453. package/dist/shared/types.js +1 -6
  454. package/dist/shared/types.js.map +1 -0
  455. package/dist/types/cli-highlight.d.js +2 -0
  456. package/dist/types/cli-highlight.d.js.map +1 -0
  457. package/dist/types/diff.d.js +2 -0
  458. package/dist/types/diff.d.js.map +1 -0
  459. package/dist/types/pdf-parse.d.js +2 -0
  460. package/dist/types/pdf-parse.d.js.map +1 -0
  461. package/dist/updater.d.ts +1 -1
  462. package/dist/updater.js +118 -92
  463. package/dist/updater.js.map +1 -0
  464. package/dist/webchat/widget.js +227 -380
  465. package/dist/webchat/widget.js.map +1 -0
  466. package/package.json +22 -10
  467. package/vendor/ink/build/ansi-tokenizer.d.ts +38 -0
  468. package/vendor/ink/build/ansi-tokenizer.js +316 -0
  469. package/vendor/ink/build/ansi-tokenizer.js.map +1 -0
  470. package/vendor/ink/build/apply-styles.js +175 -0
  471. package/vendor/ink/build/build-layout.js +77 -0
  472. package/vendor/ink/build/calculate-wrapped-text.js +53 -0
  473. package/vendor/ink/build/colorize.d.ts +3 -0
  474. package/vendor/ink/build/colorize.js +48 -0
  475. package/vendor/ink/build/colorize.js.map +1 -0
  476. package/vendor/ink/build/components/AccessibilityContext.d.ts +3 -0
  477. package/vendor/ink/build/components/AccessibilityContext.js +5 -0
  478. package/vendor/ink/build/components/AccessibilityContext.js.map +1 -0
  479. package/vendor/ink/build/components/App.d.ts +18 -0
  480. package/vendor/ink/build/components/App.js +351 -0
  481. package/vendor/ink/build/components/App.js.map +1 -0
  482. package/vendor/ink/build/components/AppContext.d.ts +15 -0
  483. package/vendor/ink/build/components/AppContext.js +11 -0
  484. package/vendor/ink/build/components/AppContext.js.map +1 -0
  485. package/vendor/ink/build/components/BackgroundContext.d.ts +4 -0
  486. package/vendor/ink/build/components/BackgroundContext.js +3 -0
  487. package/vendor/ink/build/components/BackgroundContext.js.map +1 -0
  488. package/vendor/ink/build/components/Box.d.ts +117 -0
  489. package/vendor/ink/build/components/Box.js +34 -0
  490. package/vendor/ink/build/components/Box.js.map +1 -0
  491. package/vendor/ink/build/components/Color.js +62 -0
  492. package/vendor/ink/build/components/Cursor.d.ts +83 -0
  493. package/vendor/ink/build/components/Cursor.js +53 -0
  494. package/vendor/ink/build/components/Cursor.js.map +1 -0
  495. package/vendor/ink/build/components/CursorContext.d.ts +11 -0
  496. package/vendor/ink/build/components/CursorContext.js +8 -0
  497. package/vendor/ink/build/components/CursorContext.js.map +1 -0
  498. package/vendor/ink/build/components/ErrorBoundary.d.ts +18 -0
  499. package/vendor/ink/build/components/ErrorBoundary.js +23 -0
  500. package/vendor/ink/build/components/ErrorBoundary.js.map +1 -0
  501. package/vendor/ink/build/components/ErrorOverview.d.ts +6 -0
  502. package/vendor/ink/build/components/ErrorOverview.js +84 -0
  503. package/vendor/ink/build/components/ErrorOverview.js.map +1 -0
  504. package/vendor/ink/build/components/FocusContext.d.ts +16 -0
  505. package/vendor/ink/build/components/FocusContext.js +17 -0
  506. package/vendor/ink/build/components/FocusContext.js.map +1 -0
  507. package/vendor/ink/build/components/Newline.d.ts +13 -0
  508. package/vendor/ink/build/components/Newline.js +8 -0
  509. package/vendor/ink/build/components/Newline.js.map +1 -0
  510. package/vendor/ink/build/components/Spacer.d.ts +7 -0
  511. package/vendor/ink/build/components/Spacer.js +11 -0
  512. package/vendor/ink/build/components/Spacer.js.map +1 -0
  513. package/vendor/ink/build/components/Static.d.ts +24 -0
  514. package/vendor/ink/build/components/Static.js +28 -0
  515. package/vendor/ink/build/components/Static.js.map +1 -0
  516. package/vendor/ink/build/components/StderrContext.d.ts +15 -0
  517. package/vendor/ink/build/components/StderrContext.js +13 -0
  518. package/vendor/ink/build/components/StderrContext.js.map +1 -0
  519. package/vendor/ink/build/components/StdinContext.d.ts +22 -0
  520. package/vendor/ink/build/components/StdinContext.js +19 -0
  521. package/vendor/ink/build/components/StdinContext.js.map +1 -0
  522. package/vendor/ink/build/components/StdoutContext.d.ts +15 -0
  523. package/vendor/ink/build/components/StdoutContext.js +13 -0
  524. package/vendor/ink/build/components/StdoutContext.js.map +1 -0
  525. package/vendor/ink/build/components/Text.d.ts +55 -0
  526. package/vendor/ink/build/components/Text.js +50 -0
  527. package/vendor/ink/build/components/Text.js.map +1 -0
  528. package/vendor/ink/build/components/Transform.d.ts +16 -0
  529. package/vendor/ink/build/components/Transform.js +15 -0
  530. package/vendor/ink/build/components/Transform.js.map +1 -0
  531. package/vendor/ink/build/cursor-helpers.d.ts +38 -0
  532. package/vendor/ink/build/cursor-helpers.js +56 -0
  533. package/vendor/ink/build/cursor-helpers.js.map +1 -0
  534. package/vendor/ink/build/devtools-window-polyfill.d.ts +1 -0
  535. package/vendor/ink/build/devtools-window-polyfill.js +65 -0
  536. package/vendor/ink/build/devtools-window-polyfill.js.map +1 -0
  537. package/vendor/ink/build/devtools.d.ts +1 -0
  538. package/vendor/ink/build/devtools.js +11 -0
  539. package/vendor/ink/build/devtools.js.map +1 -0
  540. package/vendor/ink/build/dom.d.ts +56 -0
  541. package/vendor/ink/build/dom.js +124 -0
  542. package/vendor/ink/build/dom.js.map +1 -0
  543. package/vendor/ink/build/experimental/apply-style.js +140 -0
  544. package/vendor/ink/build/experimental/dom.js +123 -0
  545. package/vendor/ink/build/experimental/output.js +91 -0
  546. package/vendor/ink/build/experimental/reconciler.js +141 -0
  547. package/vendor/ink/build/experimental/renderer.js +81 -0
  548. package/vendor/ink/build/get-max-width.d.ts +3 -0
  549. package/vendor/ink/build/get-max-width.js +10 -0
  550. package/vendor/ink/build/get-max-width.js.map +1 -0
  551. package/vendor/ink/build/hooks/use-app.d.ts +5 -0
  552. package/vendor/ink/build/hooks/use-app.js +8 -0
  553. package/vendor/ink/build/hooks/use-app.js.map +1 -0
  554. package/vendor/ink/build/hooks/use-cursor.d.ts +12 -0
  555. package/vendor/ink/build/hooks/use-cursor.js +29 -0
  556. package/vendor/ink/build/hooks/use-cursor.js.map +1 -0
  557. package/vendor/ink/build/hooks/use-focus-manager.d.ts +28 -0
  558. package/vendor/ink/build/hooks/use-focus-manager.js +17 -0
  559. package/vendor/ink/build/hooks/use-focus-manager.js.map +1 -0
  560. package/vendor/ink/build/hooks/use-focus.d.ts +29 -0
  561. package/vendor/ink/build/hooks/use-focus.js +42 -0
  562. package/vendor/ink/build/hooks/use-focus.js.map +1 -0
  563. package/vendor/ink/build/hooks/use-input.d.ts +131 -0
  564. package/vendor/ink/build/hooks/use-input.js +124 -0
  565. package/vendor/ink/build/hooks/use-input.js.map +1 -0
  566. package/vendor/ink/build/hooks/use-is-screen-reader-enabled.d.ts +5 -0
  567. package/vendor/ink/build/hooks/use-is-screen-reader-enabled.js +11 -0
  568. package/vendor/ink/build/hooks/use-is-screen-reader-enabled.js.map +1 -0
  569. package/vendor/ink/build/hooks/use-stderr.d.ts +5 -0
  570. package/vendor/ink/build/hooks/use-stderr.js +8 -0
  571. package/vendor/ink/build/hooks/use-stderr.js.map +1 -0
  572. package/vendor/ink/build/hooks/use-stdin.d.ts +5 -0
  573. package/vendor/ink/build/hooks/use-stdin.js +8 -0
  574. package/vendor/ink/build/hooks/use-stdin.js.map +1 -0
  575. package/vendor/ink/build/hooks/use-stdout.d.ts +5 -0
  576. package/vendor/ink/build/hooks/use-stdout.js +8 -0
  577. package/vendor/ink/build/hooks/use-stdout.js.map +1 -0
  578. package/vendor/ink/build/hooks/useInput.js +38 -0
  579. package/vendor/ink/build/index.d.ts +34 -0
  580. package/vendor/ink/build/index.js +20 -0
  581. package/vendor/ink/build/index.js.map +1 -0
  582. package/vendor/ink/build/ink.d.ts +90 -0
  583. package/vendor/ink/build/ink.js +654 -0
  584. package/vendor/ink/build/ink.js.map +1 -0
  585. package/vendor/ink/build/input-parser.d.ts +7 -0
  586. package/vendor/ink/build/input-parser.js +154 -0
  587. package/vendor/ink/build/input-parser.js.map +1 -0
  588. package/vendor/ink/build/instance.js +205 -0
  589. package/vendor/ink/build/instances.d.ts +3 -0
  590. package/vendor/ink/build/instances.js +8 -0
  591. package/vendor/ink/build/instances.js.map +1 -0
  592. package/vendor/ink/build/kitty-keyboard.d.ts +23 -0
  593. package/vendor/ink/build/kitty-keyboard.js +32 -0
  594. package/vendor/ink/build/kitty-keyboard.js.map +1 -0
  595. package/vendor/ink/build/layout.d.ts +7 -0
  596. package/vendor/ink/build/layout.js +33 -0
  597. package/vendor/ink/build/layout.js.map +1 -0
  598. package/vendor/ink/build/log-update.d.ts +19 -0
  599. package/vendor/ink/build/log-update.js +243 -0
  600. package/vendor/ink/build/log-update.js.map +1 -0
  601. package/vendor/ink/build/measure-element.d.ts +16 -0
  602. package/vendor/ink/build/measure-element.js +9 -0
  603. package/vendor/ink/build/measure-element.js.map +1 -0
  604. package/vendor/ink/build/measure-text.d.ts +6 -0
  605. package/vendor/ink/build/measure-text.js +21 -0
  606. package/vendor/ink/build/measure-text.js.map +1 -0
  607. package/vendor/ink/build/options.d.ts +52 -0
  608. package/vendor/ink/build/options.js +2 -0
  609. package/vendor/ink/build/options.js.map +1 -0
  610. package/vendor/ink/build/output.d.ts +35 -0
  611. package/vendor/ink/build/output.js +183 -0
  612. package/vendor/ink/build/output.js.map +1 -0
  613. package/vendor/ink/build/parse-keypress.d.ts +22 -0
  614. package/vendor/ink/build/parse-keypress.js +493 -0
  615. package/vendor/ink/build/parse-keypress.js.map +1 -0
  616. package/vendor/ink/build/reconciler.d.ts +4 -0
  617. package/vendor/ink/build/reconciler.js +274 -0
  618. package/vendor/ink/build/reconciler.js.map +1 -0
  619. package/vendor/ink/build/render-background.d.ts +4 -0
  620. package/vendor/ink/build/render-background.js +25 -0
  621. package/vendor/ink/build/render-background.js.map +1 -0
  622. package/vendor/ink/build/render-border.d.ts +4 -0
  623. package/vendor/ink/build/render-border.js +73 -0
  624. package/vendor/ink/build/render-border.js.map +1 -0
  625. package/vendor/ink/build/render-node-to-output.d.ts +14 -0
  626. package/vendor/ink/build/render-node-to-output.js +147 -0
  627. package/vendor/ink/build/render-node-to-output.js.map +1 -0
  628. package/vendor/ink/build/render-to-string.d.ts +38 -0
  629. package/vendor/ink/build/render-to-string.js +115 -0
  630. package/vendor/ink/build/render-to-string.js.map +1 -0
  631. package/vendor/ink/build/render.d.ts +121 -0
  632. package/vendor/ink/build/render.js +55 -0
  633. package/vendor/ink/build/render.js.map +1 -0
  634. package/vendor/ink/build/renderer.d.ts +8 -0
  635. package/vendor/ink/build/renderer.js +55 -0
  636. package/vendor/ink/build/renderer.js.map +1 -0
  637. package/vendor/ink/build/sanitize-ansi.d.ts +2 -0
  638. package/vendor/ink/build/sanitize-ansi.js +27 -0
  639. package/vendor/ink/build/sanitize-ansi.js.map +1 -0
  640. package/vendor/ink/build/screen-reader-update.d.ts +13 -0
  641. package/vendor/ink/build/screen-reader-update.js +38 -0
  642. package/vendor/ink/build/screen-reader-update.js.map +1 -0
  643. package/vendor/ink/build/squash-text-nodes.d.ts +3 -0
  644. package/vendor/ink/build/squash-text-nodes.js +36 -0
  645. package/vendor/ink/build/squash-text-nodes.js.map +1 -0
  646. package/vendor/ink/build/styles.d.ts +240 -0
  647. package/vendor/ink/build/styles.js +232 -0
  648. package/vendor/ink/build/styles.js.map +1 -0
  649. package/vendor/ink/build/utils.d.ts +2 -0
  650. package/vendor/ink/build/utils.js +4 -0
  651. package/vendor/ink/build/utils.js.map +1 -0
  652. package/vendor/ink/build/wrap-text.d.ts +3 -0
  653. package/vendor/ink/build/wrap-text.js +31 -0
  654. package/vendor/ink/build/wrap-text.js.map +1 -0
  655. package/vendor/ink/build/write-synchronized.d.ts +4 -0
  656. package/vendor/ink/build/write-synchronized.js +7 -0
  657. package/vendor/ink/build/write-synchronized.js.map +1 -0
  658. package/vendor/ink/license +10 -0
  659. package/vendor/ink/node_modules/@types/node/LICENSE +21 -0
  660. package/vendor/ink/node_modules/@types/node/README.md +15 -0
  661. package/vendor/ink/node_modules/@types/node/assert/strict.d.ts +105 -0
  662. package/vendor/ink/node_modules/@types/node/assert.d.ts +955 -0
  663. package/vendor/ink/node_modules/@types/node/async_hooks.d.ts +623 -0
  664. package/vendor/ink/node_modules/@types/node/buffer.buffer.d.ts +466 -0
  665. package/vendor/ink/node_modules/@types/node/buffer.d.ts +1810 -0
  666. package/vendor/ink/node_modules/@types/node/child_process.d.ts +1428 -0
  667. package/vendor/ink/node_modules/@types/node/cluster.d.ts +486 -0
  668. package/vendor/ink/node_modules/@types/node/compatibility/iterators.d.ts +21 -0
  669. package/vendor/ink/node_modules/@types/node/console.d.ts +151 -0
  670. package/vendor/ink/node_modules/@types/node/constants.d.ts +20 -0
  671. package/vendor/ink/node_modules/@types/node/crypto.d.ts +4065 -0
  672. package/vendor/ink/node_modules/@types/node/dgram.d.ts +564 -0
  673. package/vendor/ink/node_modules/@types/node/diagnostics_channel.d.ts +576 -0
  674. package/vendor/ink/node_modules/@types/node/dns/promises.d.ts +503 -0
  675. package/vendor/ink/node_modules/@types/node/dns.d.ts +922 -0
  676. package/vendor/ink/node_modules/@types/node/domain.d.ts +166 -0
  677. package/vendor/ink/node_modules/@types/node/events.d.ts +1054 -0
  678. package/vendor/ink/node_modules/@types/node/fs/promises.d.ts +1329 -0
  679. package/vendor/ink/node_modules/@types/node/fs.d.ts +4676 -0
  680. package/vendor/ink/node_modules/@types/node/globals.d.ts +150 -0
  681. package/vendor/ink/node_modules/@types/node/globals.typedarray.d.ts +101 -0
  682. package/vendor/ink/node_modules/@types/node/http.d.ts +2167 -0
  683. package/vendor/ink/node_modules/@types/node/http2.d.ts +2480 -0
  684. package/vendor/ink/node_modules/@types/node/https.d.ts +405 -0
  685. package/vendor/ink/node_modules/@types/node/index.d.ts +115 -0
  686. package/vendor/ink/node_modules/@types/node/inspector/promises.d.ts +41 -0
  687. package/vendor/ink/node_modules/@types/node/inspector.d.ts +224 -0
  688. package/vendor/ink/node_modules/@types/node/inspector.generated.d.ts +4226 -0
  689. package/vendor/ink/node_modules/@types/node/module.d.ts +819 -0
  690. package/vendor/ink/node_modules/@types/node/net.d.ts +933 -0
  691. package/vendor/ink/node_modules/@types/node/os.d.ts +507 -0
  692. package/vendor/ink/node_modules/@types/node/package.json +155 -0
  693. package/vendor/ink/node_modules/@types/node/path/posix.d.ts +8 -0
  694. package/vendor/ink/node_modules/@types/node/path/win32.d.ts +8 -0
  695. package/vendor/ink/node_modules/@types/node/path.d.ts +187 -0
  696. package/vendor/ink/node_modules/@types/node/perf_hooks.d.ts +643 -0
  697. package/vendor/ink/node_modules/@types/node/process.d.ts +2156 -0
  698. package/vendor/ink/node_modules/@types/node/punycode.d.ts +117 -0
  699. package/vendor/ink/node_modules/@types/node/querystring.d.ts +152 -0
  700. package/vendor/ink/node_modules/@types/node/quic.d.ts +910 -0
  701. package/vendor/ink/node_modules/@types/node/readline/promises.d.ts +161 -0
  702. package/vendor/ink/node_modules/@types/node/readline.d.ts +541 -0
  703. package/vendor/ink/node_modules/@types/node/repl.d.ts +415 -0
  704. package/vendor/ink/node_modules/@types/node/sea.d.ts +162 -0
  705. package/vendor/ink/node_modules/@types/node/sqlite.d.ts +955 -0
  706. package/vendor/ink/node_modules/@types/node/stream/consumers.d.ts +38 -0
  707. package/vendor/ink/node_modules/@types/node/stream/promises.d.ts +211 -0
  708. package/vendor/ink/node_modules/@types/node/stream/web.d.ts +296 -0
  709. package/vendor/ink/node_modules/@types/node/stream.d.ts +1760 -0
  710. package/vendor/ink/node_modules/@types/node/string_decoder.d.ts +67 -0
  711. package/vendor/ink/node_modules/@types/node/test/reporters.d.ts +96 -0
  712. package/vendor/ink/node_modules/@types/node/test.d.ts +2240 -0
  713. package/vendor/ink/node_modules/@types/node/timers/promises.d.ts +108 -0
  714. package/vendor/ink/node_modules/@types/node/timers.d.ts +159 -0
  715. package/vendor/ink/node_modules/@types/node/tls.d.ts +1198 -0
  716. package/vendor/ink/node_modules/@types/node/trace_events.d.ts +197 -0
  717. package/vendor/ink/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +462 -0
  718. package/vendor/ink/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +71 -0
  719. package/vendor/ink/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +36 -0
  720. package/vendor/ink/node_modules/@types/node/ts5.6/index.d.ts +117 -0
  721. package/vendor/ink/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +72 -0
  722. package/vendor/ink/node_modules/@types/node/ts5.7/index.d.ts +117 -0
  723. package/vendor/ink/node_modules/@types/node/tty.d.ts +250 -0
  724. package/vendor/ink/node_modules/@types/node/url.d.ts +519 -0
  725. package/vendor/ink/node_modules/@types/node/util/types.d.ts +558 -0
  726. package/vendor/ink/node_modules/@types/node/util.d.ts +1662 -0
  727. package/vendor/ink/node_modules/@types/node/v8.d.ts +983 -0
  728. package/vendor/ink/node_modules/@types/node/vm.d.ts +1208 -0
  729. package/vendor/ink/node_modules/@types/node/wasi.d.ts +202 -0
  730. package/vendor/ink/node_modules/@types/node/web-globals/abortcontroller.d.ts +59 -0
  731. package/vendor/ink/node_modules/@types/node/web-globals/blob.d.ts +23 -0
  732. package/vendor/ink/node_modules/@types/node/web-globals/console.d.ts +9 -0
  733. package/vendor/ink/node_modules/@types/node/web-globals/crypto.d.ts +39 -0
  734. package/vendor/ink/node_modules/@types/node/web-globals/domexception.d.ts +68 -0
  735. package/vendor/ink/node_modules/@types/node/web-globals/encoding.d.ts +11 -0
  736. package/vendor/ink/node_modules/@types/node/web-globals/events.d.ts +106 -0
  737. package/vendor/ink/node_modules/@types/node/web-globals/fetch.d.ts +69 -0
  738. package/vendor/ink/node_modules/@types/node/web-globals/importmeta.d.ts +13 -0
  739. package/vendor/ink/node_modules/@types/node/web-globals/messaging.d.ts +23 -0
  740. package/vendor/ink/node_modules/@types/node/web-globals/navigator.d.ts +25 -0
  741. package/vendor/ink/node_modules/@types/node/web-globals/performance.d.ts +45 -0
  742. package/vendor/ink/node_modules/@types/node/web-globals/storage.d.ts +24 -0
  743. package/vendor/ink/node_modules/@types/node/web-globals/streams.d.ts +115 -0
  744. package/vendor/ink/node_modules/@types/node/web-globals/timers.d.ts +44 -0
  745. package/vendor/ink/node_modules/@types/node/web-globals/url.d.ts +24 -0
  746. package/vendor/ink/node_modules/@types/node/worker_threads.d.ts +717 -0
  747. package/vendor/ink/node_modules/@types/node/zlib.d.ts +618 -0
  748. package/vendor/ink/node_modules/node-pty/LICENSE +69 -0
  749. package/vendor/ink/node_modules/node-pty/README.md +164 -0
  750. package/vendor/ink/node_modules/node-pty/binding.gyp +150 -0
  751. package/vendor/ink/node_modules/node-pty/lib/conpty_console_list_agent.js +25 -0
  752. package/vendor/ink/node_modules/node-pty/lib/eventEmitter2.js +47 -0
  753. package/vendor/ink/node_modules/node-pty/lib/index.js +52 -0
  754. package/vendor/ink/node_modules/node-pty/lib/interfaces.js +7 -0
  755. package/vendor/ink/node_modules/node-pty/lib/shared/conout.js +11 -0
  756. package/vendor/ink/node_modules/node-pty/lib/terminal.js +190 -0
  757. package/vendor/ink/node_modules/node-pty/lib/types.js +7 -0
  758. package/vendor/ink/node_modules/node-pty/lib/unixTerminal.js +349 -0
  759. package/vendor/ink/node_modules/node-pty/lib/utils.js +39 -0
  760. package/vendor/ink/node_modules/node-pty/lib/windowsConoutConnection.js +125 -0
  761. package/vendor/ink/node_modules/node-pty/lib/windowsPtyAgent.js +287 -0
  762. package/vendor/ink/node_modules/node-pty/lib/windowsTerminal.js +201 -0
  763. package/vendor/ink/node_modules/node-pty/lib/worker/conoutSocketWorker.js +22 -0
  764. package/vendor/ink/node_modules/node-pty/package.json +65 -0
  765. package/vendor/ink/node_modules/node-pty/prebuilds/darwin-arm64/pty.node +0 -0
  766. package/vendor/ink/node_modules/node-pty/prebuilds/darwin-arm64/spawn-helper +0 -0
  767. package/vendor/ink/node_modules/node-pty/prebuilds/darwin-x64/pty.node +0 -0
  768. package/vendor/ink/node_modules/node-pty/prebuilds/darwin-x64/spawn-helper +0 -0
  769. package/vendor/ink/node_modules/node-pty/prebuilds/linux-arm64/pty.node +0 -0
  770. package/vendor/ink/node_modules/node-pty/prebuilds/linux-x64/pty.node +0 -0
  771. package/vendor/ink/node_modules/node-pty/prebuilds/win32-arm64/conpty/OpenConsole.exe +0 -0
  772. package/vendor/ink/node_modules/node-pty/prebuilds/win32-arm64/conpty/conpty.dll +0 -0
  773. package/vendor/ink/node_modules/node-pty/prebuilds/win32-arm64/conpty.node +0 -0
  774. package/vendor/ink/node_modules/node-pty/prebuilds/win32-arm64/conpty.pdb +0 -0
  775. package/vendor/ink/node_modules/node-pty/prebuilds/win32-arm64/conpty_console_list.node +0 -0
  776. package/vendor/ink/node_modules/node-pty/prebuilds/win32-arm64/conpty_console_list.pdb +0 -0
  777. package/vendor/ink/node_modules/node-pty/prebuilds/win32-x64/conpty/OpenConsole.exe +0 -0
  778. package/vendor/ink/node_modules/node-pty/prebuilds/win32-x64/conpty/conpty.dll +0 -0
  779. package/vendor/ink/node_modules/node-pty/prebuilds/win32-x64/conpty.node +0 -0
  780. package/vendor/ink/node_modules/node-pty/prebuilds/win32-x64/conpty.pdb +0 -0
  781. package/vendor/ink/node_modules/node-pty/prebuilds/win32-x64/conpty_console_list.node +0 -0
  782. package/vendor/ink/node_modules/node-pty/prebuilds/win32-x64/conpty_console_list.pdb +0 -0
  783. package/vendor/ink/node_modules/node-pty/scripts/post-install.js +76 -0
  784. package/vendor/ink/node_modules/node-pty/scripts/prebuild.js +34 -0
  785. package/vendor/ink/node_modules/node-pty/src/unix/pty.cc +875 -0
  786. package/vendor/ink/node_modules/node-pty/src/unix/spawn-helper.cc +23 -0
  787. package/vendor/ink/node_modules/node-pty/src/win/conpty.cc +582 -0
  788. package/vendor/ink/node_modules/node-pty/src/win/conpty.h +41 -0
  789. package/vendor/ink/node_modules/node-pty/src/win/conpty_console_list.cc +44 -0
  790. package/vendor/ink/node_modules/node-pty/src/win/path_util.cc +95 -0
  791. package/vendor/ink/node_modules/node-pty/src/win/path_util.h +26 -0
  792. package/vendor/ink/node_modules/node-pty/third_party/conpty/1.23.251008001/win10-arm64/OpenConsole.exe +0 -0
  793. package/vendor/ink/node_modules/node-pty/third_party/conpty/1.23.251008001/win10-arm64/conpty.dll +0 -0
  794. package/vendor/ink/node_modules/node-pty/third_party/conpty/1.23.251008001/win10-x64/OpenConsole.exe +0 -0
  795. package/vendor/ink/node_modules/node-pty/third_party/conpty/1.23.251008001/win10-x64/conpty.dll +0 -0
  796. package/vendor/ink/node_modules/node-pty/typings/node-pty.d.ts +215 -0
  797. package/vendor/ink/node_modules/undici-types/LICENSE +21 -0
  798. package/vendor/ink/node_modules/undici-types/README.md +6 -0
  799. package/vendor/ink/node_modules/undici-types/agent.d.ts +32 -0
  800. package/vendor/ink/node_modules/undici-types/api.d.ts +43 -0
  801. package/vendor/ink/node_modules/undici-types/balanced-pool.d.ts +30 -0
  802. package/vendor/ink/node_modules/undici-types/cache-interceptor.d.ts +173 -0
  803. package/vendor/ink/node_modules/undici-types/cache.d.ts +36 -0
  804. package/vendor/ink/node_modules/undici-types/client-stats.d.ts +15 -0
  805. package/vendor/ink/node_modules/undici-types/client.d.ts +108 -0
  806. package/vendor/ink/node_modules/undici-types/connector.d.ts +34 -0
  807. package/vendor/ink/node_modules/undici-types/content-type.d.ts +21 -0
  808. package/vendor/ink/node_modules/undici-types/cookies.d.ts +30 -0
  809. package/vendor/ink/node_modules/undici-types/diagnostics-channel.d.ts +74 -0
  810. package/vendor/ink/node_modules/undici-types/dispatcher.d.ts +276 -0
  811. package/vendor/ink/node_modules/undici-types/env-http-proxy-agent.d.ts +22 -0
  812. package/vendor/ink/node_modules/undici-types/errors.d.ts +161 -0
  813. package/vendor/ink/node_modules/undici-types/eventsource.d.ts +66 -0
  814. package/vendor/ink/node_modules/undici-types/fetch.d.ts +211 -0
  815. package/vendor/ink/node_modules/undici-types/formdata.d.ts +108 -0
  816. package/vendor/ink/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  817. package/vendor/ink/node_modules/undici-types/global-origin.d.ts +7 -0
  818. package/vendor/ink/node_modules/undici-types/h2c-client.d.ts +73 -0
  819. package/vendor/ink/node_modules/undici-types/handlers.d.ts +15 -0
  820. package/vendor/ink/node_modules/undici-types/header.d.ts +160 -0
  821. package/vendor/ink/node_modules/undici-types/index.d.ts +88 -0
  822. package/vendor/ink/node_modules/undici-types/interceptors.d.ts +73 -0
  823. package/vendor/ink/node_modules/undici-types/mock-agent.d.ts +68 -0
  824. package/vendor/ink/node_modules/undici-types/mock-call-history.d.ts +111 -0
  825. package/vendor/ink/node_modules/undici-types/mock-client.d.ts +27 -0
  826. package/vendor/ink/node_modules/undici-types/mock-errors.d.ts +12 -0
  827. package/vendor/ink/node_modules/undici-types/mock-interceptor.d.ts +94 -0
  828. package/vendor/ink/node_modules/undici-types/mock-pool.d.ts +27 -0
  829. package/vendor/ink/node_modules/undici-types/package.json +55 -0
  830. package/vendor/ink/node_modules/undici-types/patch.d.ts +29 -0
  831. package/vendor/ink/node_modules/undici-types/pool-stats.d.ts +19 -0
  832. package/vendor/ink/node_modules/undici-types/pool.d.ts +41 -0
  833. package/vendor/ink/node_modules/undici-types/proxy-agent.d.ts +29 -0
  834. package/vendor/ink/node_modules/undici-types/readable.d.ts +68 -0
  835. package/vendor/ink/node_modules/undici-types/retry-agent.d.ts +8 -0
  836. package/vendor/ink/node_modules/undici-types/retry-handler.d.ts +125 -0
  837. package/vendor/ink/node_modules/undici-types/round-robin-pool.d.ts +41 -0
  838. package/vendor/ink/node_modules/undici-types/snapshot-agent.d.ts +109 -0
  839. package/vendor/ink/node_modules/undici-types/util.d.ts +18 -0
  840. package/vendor/ink/node_modules/undici-types/utility.d.ts +7 -0
  841. package/vendor/ink/node_modules/undici-types/webidl.d.ts +341 -0
  842. package/vendor/ink/node_modules/undici-types/websocket.d.ts +186 -0
  843. package/vendor/ink/package.json +201 -0
  844. package/vendor/ink/readme.md +2636 -0
  845. package/bin/swag-agent.js +0 -9
  846. package/dist/server/lib/pg-rate-limiter.d.ts +0 -21
  847. package/dist/server/lib/pg-rate-limiter.js +0 -86
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolIndicator.js","names":["React","useState","useEffect","Box","Text","SpinnerSlot","MarkdownText","colors","contentWidth","isLocalTool","os","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","AUTO_EXPAND_THRESHOLD","SERVER_AUTO_EXPAND_THRESHOLD","PREVIEW_LINES","SERVER_PREVIEW_LINES","MINI_PREVIEW_LINES","shortenPath","fullPath","maxLen","p","cwd","process","startsWith","slice","length","home","homedir","parts","split","file","pop","parent","formatDuration","ms","toFixed","Math","round","formatContext","name","input","path","String","cmd","command","replace","m","eq","indexOf","maxCtx","min","max","pattern","filter","Boolean","join","q","query","edits","file_path","type","subagent_type","model","op","operation","fp","filePath","ln","line","action","push","period","product_id","location_id","customer_id","order_id","LANG_MAP","ts","tsx","js","py","rs","go","rb","swift","kt","java","c","cpp","css","html","json","yaml","yml","toml","md","sh","zsh","sql","xml","CATEGORY_STYLES","read","icon","color","info","write","success","edit","warning","search","purple","pink","directory","indigo","web","brand","agent","todo","notebook","server","lsp","interactive","TOOL_CATEGORY_MAP","read_file","write_file","edit_file","multi_edit","search_files","search_content","glob","grep","run_command","list_directory","web_fetch","web_search","task","team_create","tasks","config","ask_user","bash_output","kill_shell","list_shells","notebook_edit","task_output","task_stop","enter_plan_mode","exit_plan_mode","ask_user_question","skill","getToolCategory","TOOL_DISPLAY_NAMES","getDisplayName","formatSearchResult","result","map","grepMatch","match","lineCol","rest","trim","formatElapsed","s","floor","sec","progressBar","elapsed","maxSeconds","pct","filled","repeat","PLAIN_TEXT_TOOLS","Set","detectLang","toolName","base","ext","toLowerCase","has","wrapInFence","content","lang","subtitle","includes","t","endsWith","fence","ToolIndicator","memo","t0","$","_c","status","durationMs","expanded","t1","count","progress","undefined","t2","context","t3","lineCount","setElapsed","t4","t5","setInterval","_temp","clearInterval","t6","t7","Symbol","for","bb0","t8","bb1","t9","category","catStyle","t10","bb2","t11","bb3","t12","lc","t13","t14","label","diffMatch","parseInt","t15","added","removed","lineMatch","lines","charMatch","chars","label_0","t16","lines_0","_temp2","_temp3","_temp4","files","size","matches","_temp5","lines_1","_temp6","items","chars_0","label_1","firstLine","summary","liveLines","_temp7","children","t17","bold","t18","dim","t19","phase","t20","elapsed_s","t21","t22","t23","t24","t25","tertiary","t26","stdout_lines","t27","stderr_lines","t28","marginLeft","t29","last_line","wrap","t30","flexDirection","_temp8","error","text","hasResult","isServer","autoExpandLimit","isShort","hasDiff","collapseByDefault","alwaysExpand","isGrouped","showFull","bb4","firstLine_0","find","_temp9","trimmed","groupSummaryLine","quaternary","dimColor","t31","previewN","remaining","prev","next","id","e","l","l_0","f","l_1","l_2","l_3","line_0","i","l_4"],"sources":["../../../src/cli/chat/ToolIndicator.tsx"],"sourcesContent":["/**\n * ToolIndicator — polished tool call rendering\n *\n * Every result gets syntax highlighting via MarkdownText.\n * Financial-aware: green for gains, red for deductions/negatives.\n * Params: purple keys, typed values (blue dates, green money, red negatives).\n * Duration badge, tool type glyph.\n */\n\nimport React, { useState, useEffect } from \"react\";\nimport { Box, Text } from \"ink\";\nimport { SpinnerSlot } from \"../shared/SpinnerSlot.js\";\nimport { MarkdownText } from \"./MarkdownText.js\";\nimport { colors } from \"../shared/Theme.js\";\nimport { contentWidth } from \"../shared/markdown.js\";\nimport { isLocalTool } from \"../services/local-tools.js\";\nimport os from \"os\";\n\n// ============================================================================\n// CONSTANTS\n// ============================================================================\n\nconst AUTO_EXPAND_THRESHOLD = 12;\nconst SERVER_AUTO_EXPAND_THRESHOLD = 30; // Server tools (tables) get more room before collapsing\nconst PREVIEW_LINES = 6;\nconst SERVER_PREVIEW_LINES = 20; // Tables need ~header + separator + 17 data rows\nconst MINI_PREVIEW_LINES = 3;\n\n// Discriminated union for category-specific summary metrics\ntype ToolSummary =\n | { type: \"read\"; label: string }\n | { type: \"write\"; label: string }\n | { type: \"edit\"; added: number; removed: number }\n | { type: \"search\"; matches: number; files: number }\n | { type: \"command\"; label: string }\n | { type: \"directory\"; label: string }\n | { type: \"web\"; label: string }\n | { type: \"server\"; label: string };\n\n// ============================================================================\n// PROPS\n// ============================================================================\n\ninterface ToolIndicatorProps {\n id: string;\n name: string;\n status: \"running\" | \"success\" | \"error\";\n result?: string;\n input?: Record<string, unknown>;\n durationMs?: number;\n expanded?: boolean;\n /** When > 1, shows a \"× N\" badge and hides result (collapsed duplicate group) */\n count?: number;\n progress?: {\n phase?: string;\n elapsed_s: number;\n stdout_lines: number;\n stderr_lines: number;\n stdout_bytes: number;\n last_line?: string;\n };\n}\n\n// ============================================================================\n// HELPERS\n// ============================================================================\n\n/** Shorten an absolute path for display: strip cwd, collapse home, truncate */\nexport function shortenPath(fullPath: string, maxLen = 40): string {\n let p = fullPath;\n const cwd = process.cwd();\n if (p.startsWith(cwd + \"/\")) p = p.slice(cwd.length + 1);\n else if (p.startsWith(cwd)) p = p.slice(cwd.length);\n else {\n const home = os.homedir();\n if (p.startsWith(home)) p = \"~\" + p.slice(home.length);\n }\n if (p.length <= maxLen) return p;\n const parts = p.split(\"/\");\n const file = parts.pop()!;\n if (file.length >= maxLen - 4) return \"…/\" + file.slice(-(maxLen - 4));\n const parent = parts.pop();\n return parent ? \"…/\" + parent + \"/\" + file : \"…/\" + file;\n}\n\nfunction formatDuration(ms: number): string {\n if (ms < 1000) return `${ms}ms`;\n if (ms < 10000) return `${(ms / 1000).toFixed(1)}s`;\n return `${Math.round(ms / 1000)}s`;\n}\n\n/** Compact one-line context */\nfunction formatContext(name: string, input?: Record<string, unknown>): string {\n if (!input) return \"\";\n\n if (name === \"read_file\" || name === \"write_file\" || name === \"edit_file\" || name === \"list_directory\") {\n return input.path ? shortenPath(String(input.path)) : \"\";\n }\n if (name === \"run_command\") {\n let cmd = String(input.command || \"\");\n // Mask passwords/secrets in display\n cmd = cmd.replace(/(?:PASSWORD|SECRET|TOKEN|KEY)=['\"][^'\"]*['\"]/gi, (m) => {\n const eq = m.indexOf(\"=\");\n return m.slice(0, eq + 1) + \"'••••'\";\n });\n // Adaptive truncation — fit within one terminal line\n const maxCtx = Math.min(60, Math.max(20, contentWidth() - 40));\n return cmd.length > maxCtx ? cmd.slice(0, maxCtx - 1) + \"…\" : cmd;\n }\n if (name === \"search_files\") {\n const parts = [input.pattern, input.path ? shortenPath(String(input.path)) : null].filter(Boolean);\n return parts.join(\" in \");\n }\n if (name === \"search_content\") {\n const q = String(input.query || \"\");\n const p = input.path ? ` in ${shortenPath(String(input.path))}` : \"\";\n return q.length > 30 ? q.slice(0, 27) + \"…\" + p : q + p;\n }\n\n if (name === \"grep\") {\n const parts = [input.pattern, input.path ? shortenPath(String(input.path)) : null].filter(Boolean);\n return parts.join(\" in \");\n }\n if (name === \"glob\") {\n const parts = [input.pattern, input.path ? shortenPath(String(input.path)) : null].filter(Boolean);\n return parts.join(\" in \");\n }\n if (name === \"multi_edit\") {\n const edits = (input.edits ?? []) as unknown[];\n return input.file_path ? `${shortenPath(String(input.file_path))} (${edits.length} edits)` : \"\";\n }\n if (name === \"task\") {\n const type = input.subagent_type || \"\";\n const model = input.model || \"sonnet\";\n return `${type} (${model})`;\n }\n if (name === \"lsp\") {\n const op = input.operation || \"\";\n const fp = input.filePath ? shortenPath(String(input.filePath)) : \"\";\n const ln = input.line ? `:${input.line}` : \"\";\n return `${op} ${fp}${ln}`;\n }\n\n // Kali — show the command being executed (most useful context)\n if (name === \"kali\" && input.command) {\n let cmd = String(input.command);\n const maxCtx = Math.min(60, Math.max(20, contentWidth() - 40));\n cmd = cmd.length > maxCtx ? cmd.slice(0, maxCtx - 1) + \"…\" : cmd;\n const action = input.action ? String(input.action) + \" \" : \"\";\n return action + cmd;\n }\n\n // Server tools → action + key param\n if (input.action) {\n const parts: string[] = [String(input.action)];\n if (input.query) parts.push(String(input.query).slice(0, 25));\n else if (input.command) parts.push(String(input.command).slice(0, 40));\n else if (input.name) parts.push(String(input.name));\n else if (input.period) parts.push(String(input.period));\n else if (input.product_id) parts.push(String(input.product_id).slice(0, 12));\n else if (input.location_id) parts.push(String(input.location_id).slice(0, 12));\n else if (input.customer_id) parts.push(String(input.customer_id).slice(0, 12));\n else if (input.order_id) parts.push(String(input.order_id).slice(0, 12));\n return parts.join(\" \");\n }\n return \"\";\n}\n\nconst LANG_MAP: Record<string, string> = {\n ts: \"typescript\", tsx: \"tsx\", js: \"javascript\", jsx: \"jsx\",\n py: \"python\", rs: \"rust\", go: \"go\", rb: \"ruby\",\n swift: \"swift\", kt: \"kotlin\", java: \"java\", c: \"c\", cpp: \"cpp\",\n css: \"css\", html: \"html\", json: \"json\", yaml: \"yaml\", yml: \"yaml\",\n toml: \"toml\", md: \"markdown\", sh: \"bash\", zsh: \"bash\",\n sql: \"sql\", xml: \"xml\",\n};\n\n// ============================================================================\n// TOOL CATEGORIES — unique icon + color per tool type\n// ============================================================================\n\ntype ToolCategory = \"read\" | \"write\" | \"edit\" | \"search\" | \"command\" | \"directory\" | \"web\" | \"agent\" | \"todo\" | \"notebook\" | \"server\" | \"lsp\" | \"interactive\";\n\ninterface CategoryStyle {\n icon: string;\n color: string;\n}\n\nconst CATEGORY_STYLES: Record<ToolCategory, CategoryStyle> = {\n read: { icon: \"◇\", color: colors.info },\n write: { icon: \"◆\", color: colors.success },\n edit: { icon: \"±\", color: colors.warning },\n search: { icon: \"⊕\", color: colors.purple },\n command: { icon: \"$\", color: colors.pink },\n directory: { icon: \"▤\", color: colors.indigo },\n web: { icon: \"◎\", color: colors.brand },\n agent: { icon: \"⊛\", color: colors.purple },\n todo: { icon: \"☐\", color: colors.success },\n notebook: { icon: \"◫\", color: colors.warning },\n server: { icon: \"▹\", color: colors.pink },\n lsp: { icon: \"⊞\", color: colors.info },\n interactive: { icon: \"▹\", color: colors.indigo },\n};\n\nconst TOOL_CATEGORY_MAP: Record<string, ToolCategory> = {\n read_file: \"read\",\n write_file: \"write\",\n edit_file: \"edit\",\n multi_edit: \"edit\",\n search_files: \"search\",\n search_content: \"search\",\n glob: \"search\",\n grep: \"search\",\n run_command: \"command\",\n list_directory: \"directory\",\n web_fetch: \"web\",\n web_search: \"web\",\n task: \"agent\",\n team_create: \"agent\",\n tasks: \"todo\",\n config: \"command\",\n ask_user: \"command\",\n bash_output: \"command\",\n kill_shell: \"command\",\n list_shells: \"command\",\n notebook_edit: \"notebook\",\n task_output: \"agent\",\n task_stop: \"agent\",\n lsp: \"lsp\",\n enter_plan_mode: \"interactive\",\n exit_plan_mode: \"interactive\",\n ask_user_question: \"interactive\",\n skill: \"command\",\n};\n\nfunction getToolCategory(name: string): ToolCategory {\n return TOOL_CATEGORY_MAP[name] || (isLocalTool(name) ? \"command\" : \"server\");\n}\n\n// Human-readable tool display names (Claude Code parity)\nconst TOOL_DISPLAY_NAMES: Record<string, string> = {\n read_file: \"Read\",\n write_file: \"Write\",\n edit_file: \"Edit\",\n multi_edit: \"MultiEdit\",\n search_files: \"Search\",\n search_content: \"Search\",\n glob: \"Glob\",\n grep: \"Grep\",\n run_command: \"Bash\",\n list_directory: \"List\",\n web_fetch: \"WebFetch\",\n web_search: \"WebSearch\",\n task: \"Task\",\n team_create: \"Team\",\n tasks: \"Tasks\",\n config: \"Config\",\n ask_user: \"AskUser\",\n bash_output: \"TaskOutput\",\n kill_shell: \"TaskStop\",\n list_shells: \"Tasks\",\n notebook_edit: \"NotebookEdit\",\n task_output: \"TaskOutput\",\n task_stop: \"TaskStop\",\n lsp: \"LSP\",\n enter_plan_mode: \"PlanMode\",\n exit_plan_mode: \"PlanMode\",\n ask_user_question: \"AskUser\",\n skill: \"Skill\",\n};\n\nexport function getDisplayName(name: string): string {\n return TOOL_DISPLAY_NAMES[name] || name;\n}\n\n/** Shorten absolute paths in search/grep results for readable display */\nfunction formatSearchResult(result: string): string {\n return result.split(\"\\n\").map(line => {\n // Match \"path:line:col:content\" or \"path:line:content\" (grep/ripgrep output)\n const grepMatch = line.match(/^(\\/[^:]+):(\\d+(?::\\d+)?):(.*)$/);\n if (grepMatch) {\n const [, filePath, lineCol, rest] = grepMatch;\n return `${shortenPath(filePath, 35)}:${lineCol}:${rest}`;\n }\n // Match plain absolute paths (glob results)\n if (line.startsWith(\"/\")) {\n return shortenPath(line.trim(), 60);\n }\n return line;\n }).join(\"\\n\");\n}\n\nfunction formatElapsed(s: number): string {\n const m = Math.floor(s / 60);\n const sec = Math.floor(s % 60);\n return m > 0 ? `${m}m${sec}s` : `${sec}s`;\n}\n\nfunction progressBar(elapsed: number, maxSeconds = 300): string {\n const pct = Math.min(elapsed / maxSeconds, 1);\n const filled = Math.round(pct * 20);\n return \"\\u2588\".repeat(filled) + \"\\u2591\".repeat(20 - filled);\n}\n\nconst PLAIN_TEXT_TOOLS = new Set([\"enter_plan_mode\", \"exit_plan_mode\", \"ask_user_question\", \"skill\"]);\n\nfunction detectLang(toolName: string, input?: Record<string, unknown>): string {\n if (toolName === \"edit_file\" || toolName === \"multi_edit\") return \"diff\";\n if (toolName === \"read_file\" && input?.path) {\n const p = String(input.path);\n const base = p.split(\"/\").pop() || \"\";\n // .env, .env.local, .env.production, etc. → bash (KEY=VALUE syntax)\n if (base.startsWith(\".env\")) return \"bash\";\n const ext = base.split(\".\").pop()?.toLowerCase() || \"\";\n return LANG_MAP[ext] || \"\";\n }\n if (toolName === \"run_command\" || toolName === \"list_directory\") return \"bash\";\n // Interactive/plain tools — render as plain text or markdown (not JSON fences)\n if (PLAIN_TEXT_TOOLS.has(toolName)) return \"\";\n if (!isLocalTool(toolName)) return \"json\";\n return \"\";\n}\n\nfunction wrapInFence(content: string, lang: string, subtitle?: string): string {\n if (content.includes(\"```\")) return content;\n\n // Detect formatted markdown (tables, bold, headings) — render as markdown, not fenced\n const t = content.trim();\n if (t.startsWith(\"**\") || t.startsWith(\"| \") || t.startsWith(\"# \")) return content;\n\n // For server tools, detect JSON\n if (!lang) {\n if ((t.startsWith(\"{\") || t.startsWith(\"[\")) && (t.endsWith(\"}\") || t.endsWith(\"]\"))) {\n lang = \"json\";\n }\n }\n // Only add :subtitle when lang is non-empty (prevents \"```:path\" which has no valid lang)\n const fence = (lang && subtitle) ? lang + \":\" + subtitle : lang;\n return \"```\" + fence + \"\\n\" + content + \"\\n```\";\n}\n\n// ============================================================================\n// COMPONENT\n// ============================================================================\n\nexport const ToolIndicator = React.memo(function ToolIndicator({ id: _id, name, status, result, input, durationMs, expanded = false, count, progress }: ToolIndicatorProps) {\n const context = formatContext(name, input);\n const lineCount = result ? result.split(\"\\n\").length : 0;\n\n // Elapsed time counter for running tools\n const [elapsed, setElapsed] = useState(0);\n useEffect(() => {\n if (status !== \"running\") return;\n setElapsed(0);\n const t = setInterval(() => setElapsed(e => e + 1), 1000);\n return () => clearInterval(t);\n }, [status]);\n // Detect lang — writes with diffs get \"diff\" treatment\n const lang = (() => {\n const base = detectLang(name, input);\n if (base) return base;\n if (name === \"write_file\" && result?.includes(\"\\n@@\")) return \"diff\";\n return base;\n })();\n\n // Category-based styling\n const category = getToolCategory(name);\n const catStyle = CATEGORY_STYLES[category];\n\n // Extract file path for code block subtitle\n const filePath = (() => {\n if (!input) return undefined;\n const p = input.path || input.file_path;\n return p ? String(p) : undefined;\n })();\n\n // Category-specific summary metrics\n const summary: ToolSummary | null = (() => {\n if (!result || status !== \"success\") return null;\n\n if (category === \"read\") {\n const lc = result.split(\"\\n\").length;\n return { type: \"read\" as const, label: `Read ${lc} line${lc !== 1 ? \"s\" : \"\"}` };\n }\n\n if (category === \"write\") {\n // Overwrite with diff — show +N -N badge\n const diffMatch = result.match(/Added (\\d+) lines?, removed (\\d+) lines?/i);\n if (diffMatch) {\n return { type: \"edit\" as const, added: parseInt(diffMatch[1]), removed: parseInt(diffMatch[2]) };\n }\n const lineMatch = result.match(/\\((\\d+) lines?, (\\d+) chars\\)/);\n if (lineMatch) {\n const lines = parseInt(lineMatch[1]);\n const label = `Wrote ${lines} line${lines !== 1 ? \"s\" : \"\"}`;\n return { type: \"write\" as const, label };\n }\n const charMatch = result.match(/\\((\\d+) chars\\)/);\n if (charMatch) {\n const chars = parseInt(charMatch[1]);\n const label = chars >= 1000 ? `Wrote ${(chars / 1000).toFixed(1)}K chars` : `Wrote ${chars} chars`;\n return { type: \"write\" as const, label };\n }\n return { type: \"write\" as const, label: \"Written\" };\n }\n\n if (category === \"edit\") {\n let added = 0, removed = 0;\n for (const line of result.split(\"\\n\")) {\n if (line.startsWith(\"+\")) added++;\n else if (line.startsWith(\"-\")) removed++;\n }\n if (added > 0 || removed > 0) return { type: \"edit\" as const, added, removed };\n }\n\n if (category === \"search\") {\n const lines = result.split(\"\\n\").filter(l => l.trim());\n const files = new Set(lines.map(l => l.split(\":\")[0]).filter(f => f.includes(\"/\") || f.includes(\".\")));\n return { type: \"search\" as const, matches: lines.length, files: files.size };\n }\n\n if (category === \"command\") {\n const lines = result.split(\"\\n\").filter(l => l.trim());\n if (lines.length > 0) return { type: \"command\" as const, label: `${lines.length} line${lines.length !== 1 ? \"s\" : \"\"} output` };\n }\n\n if (category === \"directory\") {\n const items = result.split(\"\\n\").filter(l => l.trim());\n if (items.length > 0) return { type: \"directory\" as const, label: `${items.length} item${items.length !== 1 ? \"s\" : \"\"}` };\n }\n\n if (category === \"web\") {\n const chars = result.length;\n const label = chars >= 1000 ? `${(chars / 1000).toFixed(1)}K chars` : `${chars} chars`;\n return { type: \"web\" as const, label: `fetched ${label}` };\n }\n\n // Server tools with formatted markdown — extract bold title as summary\n if (category === \"server\" && result.trim().startsWith(\"**\")) {\n const firstLine = result.trim().split(\"\\n\")[0];\n const match = firstLine.match(/^\\*\\*(.+?)\\*\\*/);\n if (match) return { type: \"server\" as const, label: match[1] };\n }\n\n return null;\n })();\n\n // Live output lines (last 6) for running commands\n const liveLines = status === \"running\" && result\n ? result.split(\"\\n\").filter(l => l.trim()).slice(-6)\n : [];\n\n // ── RUNNING ──\n if (status === \"running\") {\n // Kali with structured progress — richer display\n if (name === \"kali\" && progress) {\n return (\n <Box flexDirection=\"column\">\n <Box>\n <Text color={catStyle.color}><SpinnerSlot /></Text>\n <Text color={catStyle.color}> {catStyle.icon}</Text>\n <Text color={catStyle.color} bold> {getDisplayName(name)}</Text>\n {context ? <Text color={colors.dim}> {context}</Text> : null}\n {progress.phase && <Text color={colors.info}> {progress.phase}</Text>}\n <Text color={progress.elapsed_s >= 60 ? colors.warning : colors.dim}> {formatElapsed(progress.elapsed_s)}</Text>\n </Box>\n <Box marginLeft={4}>\n <Text color={colors.tertiary}>{progressBar(progress.elapsed_s)}</Text>\n <Text color={colors.dim}> {progress.stdout_lines} lines</Text>\n {progress.stderr_lines > 0 && <Text color={colors.warning}> {progress.stderr_lines} err</Text>}\n </Box>\n {progress.last_line && (\n <Box marginLeft={4}>\n <Text color={colors.tertiary} wrap=\"truncate\">{progress.last_line}</Text>\n </Box>\n )}\n </Box>\n );\n }\n\n return (\n <Box flexDirection=\"column\">\n <Box>\n <Text color={catStyle.color}><SpinnerSlot /></Text>\n <Text color={catStyle.color}> {catStyle.icon}</Text>\n <Text color={catStyle.color} bold> {getDisplayName(name)}</Text>\n {context ? <Text color={colors.dim}> {context}</Text> : null}\n {elapsed >= 2 && <Text color={elapsed >= 30 ? colors.warning : colors.dim}> {formatDuration(elapsed * 1000)}</Text>}\n </Box>\n {/* Live streaming output for running commands */}\n {liveLines.length > 0 && (\n <Box flexDirection=\"column\" marginLeft={4}>\n {liveLines.map((line, i) => (\n <Text key={i} color={colors.tertiary} wrap=\"truncate\">{line}</Text>\n ))}\n </Box>\n )}\n </Box>\n );\n }\n\n // ── ERROR ──\n if (status === \"error\") {\n return (\n <Box flexDirection=\"column\">\n <Box>\n <Text color={colors.error} bold>✕</Text>\n <Text color={catStyle.color}> {catStyle.icon}</Text>\n <Text color={catStyle.color} bold> {getDisplayName(name)}</Text>\n {context ? <Text color={colors.dim}> {context}</Text> : null}\n {durationMs !== undefined && <Text color={colors.dim}> {formatDuration(durationMs)}</Text>}\n </Box>\n {result && (\n <Box marginLeft={2}>\n <MarkdownText text={\"```\\n\" + result.split(\"\\n\").slice(0, PREVIEW_LINES).join(\"\\n\") + \"\\n```\"} />\n </Box>\n )}\n </Box>\n );\n }\n\n // ── SUCCESS ──\n const hasResult = !!(result && result.trim());\n const isServer = category === \"server\" || category === \"agent\";\n const autoExpandLimit = isServer ? SERVER_AUTO_EXPAND_THRESHOLD : AUTO_EXPAND_THRESHOLD;\n const isShort = lineCount <= autoExpandLimit;\n // Read/write results stay collapsed (just header line) — Claude Code parity.\n // Edit/search/command results auto-expand if short enough.\n // Writes with diffs auto-expand like edits.\n // Server/agent results get a higher threshold — tables need more room.\n const hasDiff = lang === \"diff\";\n const collapseByDefault = category === \"read\" || (category === \"write\" && !hasDiff) || category === \"directory\";\n // Interactive tools (plan mode) always expand to show their content\n const alwaysExpand = category === \"interactive\";\n const isGrouped = (count ?? 0) > 1;\n const showFull = hasResult && !isGrouped && (expanded || alwaysExpand || (isShort && !collapseByDefault));\n\n // For grouped tools, extract a one-line summary so they aren't completely invisible\n const groupSummaryLine = (() => {\n if (!isGrouped || !result) return null;\n const firstLine = result.split(\"\\n\").find(l => l.trim() && !l.startsWith(\"**Success**\") && !l.startsWith(\"**Killed**\"));\n if (!firstLine) return null;\n const trimmed = firstLine.replace(/^\\*\\*\\w+\\*\\*:\\s*/, \"\").trim();\n return trimmed.length > 80 ? trimmed.slice(0, 77) + \"…\" : trimmed;\n })();\n\n return (\n <Box flexDirection=\"column\">\n {/* Header: ✓ ◇ Read src/foo.ts 120ms Read 142 lines */}\n <Box>\n <Text color={colors.success}>✓</Text>\n <Text color={catStyle.color}> {catStyle.icon}</Text>\n <Text color={catStyle.color} bold> {getDisplayName(name)}</Text>\n {context ? <Text color={colors.dim}> {context}</Text> : null}\n {durationMs !== undefined && (\n durationMs > 3000\n ? <Text color={colors.warning}> {formatDuration(durationMs)}</Text>\n : <Text color={colors.dim}> {formatDuration(durationMs)}</Text>\n )}\n {/* Inline summary badges — edits only (writes use tree line below) */}\n {summary?.type === \"edit\" && category === \"edit\" && (\n <>\n <Text color={colors.success}> +{summary.added}</Text>\n <Text color={colors.error}> -{summary.removed}</Text>\n </>\n )}\n {summary?.type === \"search\" && (\n <Text color={colors.dim}> {summary.matches} match{summary.matches !== 1 ? \"es\" : \"\"}{summary.files > 0 ? ` in ${summary.files} file${summary.files !== 1 ? \"s\" : \"\"}` : \"\"}</Text>\n )}\n {summary && \"label\" in summary && summary.type !== \"server\" && (\n <Text color={colors.dim}> {summary.label}</Text>\n )}\n {summary?.type === \"server\" && (\n <Text color={colors.info}> {summary.label}</Text>\n )}\n {!summary && hasResult && !showFull && <Text color={colors.dim}> {lineCount} lines</Text>}\n {!hasResult && status === \"success\" && <Text color={colors.quaternary}> (no output)</Text>}\n {hasResult && !showFull && collapseByDefault && !isGrouped && <Text color={colors.quaternary}> ^O</Text>}\n {(count ?? 0) > 1 && <Text color={colors.dim} dimColor> × {count}</Text>}\n </Box>\n\n {/* Grouped tool summary — show first useful line instead of nothing */}\n {isGrouped && groupSummaryLine && (\n <Box marginLeft={4}>\n <Text color={colors.tertiary} wrap=\"truncate\">{groupSummaryLine}</Text>\n </Box>\n )}\n\n {/* Write diff summary tree line */}\n {category === \"write\" && hasDiff && summary?.type === \"edit\" && (\n <Box marginLeft={2}>\n <Text color={colors.tertiary}>└ Added </Text><Text color={colors.success}>{summary.added}</Text>\n <Text color={colors.tertiary}> lines, removed </Text><Text color={colors.error}>{summary.removed}</Text>\n <Text color={colors.tertiary}> lines</Text>\n </Box>\n )}\n\n {/* Result — full, syntax highlighted */}\n {showFull && (\n <Box marginLeft={2} flexDirection=\"column\">\n <MarkdownText text={category === \"agent\"\n ? result!\n : wrapInFence(\n category === \"search\" ? formatSearchResult(result!) : result!,\n lang,\n filePath\n )} />\n </Box>\n )}\n\n {/* Mini preview for collapsed-by-default tools (read, write, directory) */}\n {hasResult && !showFull && collapseByDefault && !isGrouped && (\n <Box flexDirection=\"column\" marginLeft={2}>\n <MarkdownText text={wrapInFence(\n result!.split(\"\\n\").slice(0, MINI_PREVIEW_LINES).join(\"\\n\"),\n lang,\n filePath\n )} />\n {lineCount > MINI_PREVIEW_LINES && <Text color={colors.quaternary}> └ +{lineCount - MINI_PREVIEW_LINES} lines <Text color={colors.tertiary}>^O expand</Text></Text>}\n </Box>\n )}\n\n {/* Preview for long results (edit/search/command/server) */}\n {hasResult && !showFull && !collapseByDefault && !isGrouped && (() => {\n const previewN = isServer ? SERVER_PREVIEW_LINES : PREVIEW_LINES;\n const remaining = lineCount - previewN;\n return (\n <Box flexDirection=\"column\" marginLeft={2}>\n <MarkdownText text={category === \"agent\"\n ? result!.split(\"\\n\").slice(0, previewN).join(\"\\n\")\n : wrapInFence(\n (category === \"search\" ? formatSearchResult(result!) : result!).split(\"\\n\").slice(0, previewN).join(\"\\n\"),\n lang,\n filePath\n )} />\n {remaining > 0 && <Text color={colors.quaternary}> └ +{remaining} lines <Text color={colors.tertiary}>^O expand</Text></Text>}\n </Box>\n );\n })()}\n </Box>\n );\n}, (prev, next) => {\n // Custom comparator: skip deep-comparing input object reference\n return prev.id === next.id\n && prev.status === next.status\n && prev.expanded === next.expanded\n && prev.result === next.result\n && prev.durationMs === next.durationMs\n && prev.name === next.name\n && prev.count === next.count\n && prev.progress === next.progress;\n});\n\n"],"mappings":"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","ignoreList":[]}
@@ -32,6 +32,7 @@ export interface AgentLoopDeps {
32
32
  teammates: Map<string, {
33
33
  name: string;
34
34
  status: string;
35
+ startTime: number;
35
36
  }>;
36
37
  } | null>>;
37
38
  }