@tulex-cli/tulex-code 0.1.1

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 (3094) hide show
  1. package/README.md +54 -0
  2. package/dist/.last_build +0 -0
  3. package/dist/index.d.ts +7 -0
  4. package/dist/index.js +98 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/package.json +121 -0
  7. package/dist/src/acp-integration/acpAgent.d.ts +59 -0
  8. package/dist/src/acp-integration/acpAgent.js +3646 -0
  9. package/dist/src/acp-integration/acpAgent.js.map +1 -0
  10. package/dist/src/acp-integration/acpAgent.test.d.ts +6 -0
  11. package/dist/src/acp-integration/acpAgent.test.js +3690 -0
  12. package/dist/src/acp-integration/acpAgent.test.js.map +1 -0
  13. package/dist/src/acp-integration/acpAgent.worktree.test.d.ts +16 -0
  14. package/dist/src/acp-integration/acpAgent.worktree.test.js +354 -0
  15. package/dist/src/acp-integration/acpAgent.worktree.test.js.map +1 -0
  16. package/dist/src/acp-integration/authMethods.d.ts +9 -0
  17. package/dist/src/acp-integration/authMethods.js +28 -0
  18. package/dist/src/acp-integration/authMethods.js.map +1 -0
  19. package/dist/src/acp-integration/authMethods.test.d.ts +6 -0
  20. package/dist/src/acp-integration/authMethods.test.js +23 -0
  21. package/dist/src/acp-integration/authMethods.test.js.map +1 -0
  22. package/dist/src/acp-integration/authPreflight.test.d.ts +6 -0
  23. package/dist/src/acp-integration/authPreflight.test.js +54 -0
  24. package/dist/src/acp-integration/authPreflight.test.js.map +1 -0
  25. package/dist/src/acp-integration/errorCodes.d.ts +15 -0
  26. package/dist/src/acp-integration/errorCodes.js +22 -0
  27. package/dist/src/acp-integration/errorCodes.js.map +1 -0
  28. package/dist/src/acp-integration/runtimeOutputDirContext.d.ts +2 -0
  29. package/dist/src/acp-integration/runtimeOutputDirContext.js +5 -0
  30. package/dist/src/acp-integration/runtimeOutputDirContext.js.map +1 -0
  31. package/dist/src/acp-integration/runtimeOutputDirContext.test.d.ts +1 -0
  32. package/dist/src/acp-integration/runtimeOutputDirContext.test.js +29 -0
  33. package/dist/src/acp-integration/runtimeOutputDirContext.test.js.map +1 -0
  34. package/dist/src/acp-integration/service/filesystem.d.ts +17 -0
  35. package/dist/src/acp-integration/service/filesystem.js +73 -0
  36. package/dist/src/acp-integration/service/filesystem.js.map +1 -0
  37. package/dist/src/acp-integration/service/filesystem.test.d.ts +6 -0
  38. package/dist/src/acp-integration/service/filesystem.test.js +85 -0
  39. package/dist/src/acp-integration/service/filesystem.test.js.map +1 -0
  40. package/dist/src/acp-integration/session/HistoryReplayer.d.ts +63 -0
  41. package/dist/src/acp-integration/session/HistoryReplayer.js +222 -0
  42. package/dist/src/acp-integration/session/HistoryReplayer.js.map +1 -0
  43. package/dist/src/acp-integration/session/HistoryReplayer.test.d.ts +6 -0
  44. package/dist/src/acp-integration/session/HistoryReplayer.test.js +405 -0
  45. package/dist/src/acp-integration/session/HistoryReplayer.test.js.map +1 -0
  46. package/dist/src/acp-integration/session/Session.d.ts +150 -0
  47. package/dist/src/acp-integration/session/Session.js +2381 -0
  48. package/dist/src/acp-integration/session/Session.js.map +1 -0
  49. package/dist/src/acp-integration/session/Session.test.d.ts +6 -0
  50. package/dist/src/acp-integration/session/Session.test.js +3845 -0
  51. package/dist/src/acp-integration/session/Session.test.js.map +1 -0
  52. package/dist/src/acp-integration/session/Session.worktree.test.d.ts +18 -0
  53. package/dist/src/acp-integration/session/Session.worktree.test.js +195 -0
  54. package/dist/src/acp-integration/session/Session.worktree.test.js.map +1 -0
  55. package/dist/src/acp-integration/session/SubAgentTracker.d.ts +58 -0
  56. package/dist/src/acp-integration/session/SubAgentTracker.js +208 -0
  57. package/dist/src/acp-integration/session/SubAgentTracker.js.map +1 -0
  58. package/dist/src/acp-integration/session/SubAgentTracker.test.d.ts +6 -0
  59. package/dist/src/acp-integration/session/SubAgentTracker.test.js +612 -0
  60. package/dist/src/acp-integration/session/SubAgentTracker.test.js.map +1 -0
  61. package/dist/src/acp-integration/session/emitters/BaseEmitter.d.ts +34 -0
  62. package/dist/src/acp-integration/session/emitters/BaseEmitter.js +53 -0
  63. package/dist/src/acp-integration/session/emitters/BaseEmitter.js.map +1 -0
  64. package/dist/src/acp-integration/session/emitters/MessageEmitter.d.ts +61 -0
  65. package/dist/src/acp-integration/session/emitters/MessageEmitter.js +124 -0
  66. package/dist/src/acp-integration/session/emitters/MessageEmitter.js.map +1 -0
  67. package/dist/src/acp-integration/session/emitters/MessageEmitter.test.d.ts +6 -0
  68. package/dist/src/acp-integration/session/emitters/MessageEmitter.test.js +202 -0
  69. package/dist/src/acp-integration/session/emitters/MessageEmitter.test.js.map +1 -0
  70. package/dist/src/acp-integration/session/emitters/PlanEmitter.d.ts +39 -0
  71. package/dist/src/acp-integration/session/emitters/PlanEmitter.js +83 -0
  72. package/dist/src/acp-integration/session/emitters/PlanEmitter.js.map +1 -0
  73. package/dist/src/acp-integration/session/emitters/PlanEmitter.test.d.ts +6 -0
  74. package/dist/src/acp-integration/session/emitters/PlanEmitter.test.js +176 -0
  75. package/dist/src/acp-integration/session/emitters/PlanEmitter.test.js.map +1 -0
  76. package/dist/src/acp-integration/session/emitters/ToolCallEmitter.d.ts +82 -0
  77. package/dist/src/acp-integration/session/emitters/ToolCallEmitter.js +284 -0
  78. package/dist/src/acp-integration/session/emitters/ToolCallEmitter.js.map +1 -0
  79. package/dist/src/acp-integration/session/emitters/ToolCallEmitter.test.d.ts +6 -0
  80. package/dist/src/acp-integration/session/emitters/ToolCallEmitter.test.js +607 -0
  81. package/dist/src/acp-integration/session/emitters/ToolCallEmitter.test.js.map +1 -0
  82. package/dist/src/acp-integration/session/emitters/index.d.ts +9 -0
  83. package/dist/src/acp-integration/session/emitters/index.js +10 -0
  84. package/dist/src/acp-integration/session/emitters/index.js.map +1 -0
  85. package/dist/src/acp-integration/session/index.d.ts +24 -0
  86. package/dist/src/acp-integration/session/index.js +16 -0
  87. package/dist/src/acp-integration/session/index.js.map +1 -0
  88. package/dist/src/acp-integration/session/permissionUtils.d.ts +9 -0
  89. package/dist/src/acp-integration/session/permissionUtils.js +165 -0
  90. package/dist/src/acp-integration/session/permissionUtils.js.map +1 -0
  91. package/dist/src/acp-integration/session/permissionUtils.test.d.ts +6 -0
  92. package/dist/src/acp-integration/session/permissionUtils.test.js +83 -0
  93. package/dist/src/acp-integration/session/permissionUtils.test.js.map +1 -0
  94. package/dist/src/acp-integration/session/rewrite/LlmRewriter.d.ts +26 -0
  95. package/dist/src/acp-integration/session/rewrite/LlmRewriter.js +131 -0
  96. package/dist/src/acp-integration/session/rewrite/LlmRewriter.js.map +1 -0
  97. package/dist/src/acp-integration/session/rewrite/LlmRewriter.test.d.ts +6 -0
  98. package/dist/src/acp-integration/session/rewrite/LlmRewriter.test.js +188 -0
  99. package/dist/src/acp-integration/session/rewrite/LlmRewriter.test.js.map +1 -0
  100. package/dist/src/acp-integration/session/rewrite/MessageRewriteMiddleware.d.ts +42 -0
  101. package/dist/src/acp-integration/session/rewrite/MessageRewriteMiddleware.js +159 -0
  102. package/dist/src/acp-integration/session/rewrite/MessageRewriteMiddleware.js.map +1 -0
  103. package/dist/src/acp-integration/session/rewrite/MessageRewriteMiddleware.test.d.ts +6 -0
  104. package/dist/src/acp-integration/session/rewrite/MessageRewriteMiddleware.test.js +255 -0
  105. package/dist/src/acp-integration/session/rewrite/MessageRewriteMiddleware.test.js.map +1 -0
  106. package/dist/src/acp-integration/session/rewrite/README.md +35 -0
  107. package/dist/src/acp-integration/session/rewrite/TurnBuffer.d.ts +25 -0
  108. package/dist/src/acp-integration/session/rewrite/TurnBuffer.js +53 -0
  109. package/dist/src/acp-integration/session/rewrite/TurnBuffer.js.map +1 -0
  110. package/dist/src/acp-integration/session/rewrite/TurnBuffer.test.d.ts +6 -0
  111. package/dist/src/acp-integration/session/rewrite/TurnBuffer.test.js +95 -0
  112. package/dist/src/acp-integration/session/rewrite/TurnBuffer.test.js.map +1 -0
  113. package/dist/src/acp-integration/session/rewrite/config.d.ts +13 -0
  114. package/dist/src/acp-integration/session/rewrite/config.js +19 -0
  115. package/dist/src/acp-integration/session/rewrite/config.js.map +1 -0
  116. package/dist/src/acp-integration/session/rewrite/config.test.d.ts +6 -0
  117. package/dist/src/acp-integration/session/rewrite/config.test.js +72 -0
  118. package/dist/src/acp-integration/session/rewrite/config.test.js.map +1 -0
  119. package/dist/src/acp-integration/session/rewrite/index.d.ts +8 -0
  120. package/dist/src/acp-integration/session/rewrite/index.js +8 -0
  121. package/dist/src/acp-integration/session/rewrite/index.js.map +1 -0
  122. package/dist/src/acp-integration/session/rewrite/types.d.ts +36 -0
  123. package/dist/src/acp-integration/session/rewrite/types.js +7 -0
  124. package/dist/src/acp-integration/session/rewrite/types.js.map +1 -0
  125. package/dist/src/acp-integration/session/types.d.ts +93 -0
  126. package/dist/src/acp-integration/session/types.js +7 -0
  127. package/dist/src/acp-integration/session/types.js.map +1 -0
  128. package/dist/src/commands/auth.d.ts +9 -0
  129. package/dist/src/commands/auth.js +55 -0
  130. package/dist/src/commands/auth.js.map +1 -0
  131. package/dist/src/commands/auth.test.d.ts +6 -0
  132. package/dist/src/commands/auth.test.js +84 -0
  133. package/dist/src/commands/auth.test.js.map +1 -0
  134. package/dist/src/commands/channel/channel-registry.d.ts +4 -0
  135. package/dist/src/commands/channel/channel-registry.js +33 -0
  136. package/dist/src/commands/channel/channel-registry.js.map +1 -0
  137. package/dist/src/commands/channel/config-utils.d.ts +4 -0
  138. package/dist/src/commands/channel/config-utils.js +66 -0
  139. package/dist/src/commands/channel/config-utils.js.map +1 -0
  140. package/dist/src/commands/channel/config-utils.test.d.ts +1 -0
  141. package/dist/src/commands/channel/config-utils.test.js +142 -0
  142. package/dist/src/commands/channel/config-utils.test.js.map +1 -0
  143. package/dist/src/commands/channel/configure.d.ts +4 -0
  144. package/dist/src/commands/channel/configure.js +65 -0
  145. package/dist/src/commands/channel/configure.js.map +1 -0
  146. package/dist/src/commands/channel/pairing.d.ts +8 -0
  147. package/dist/src/commands/channel/pairing.js +49 -0
  148. package/dist/src/commands/channel/pairing.js.map +1 -0
  149. package/dist/src/commands/channel/pidfile.d.ts +25 -0
  150. package/dist/src/commands/channel/pidfile.js +104 -0
  151. package/dist/src/commands/channel/pidfile.js.map +1 -0
  152. package/dist/src/commands/channel/pidfile.test.d.ts +1 -0
  153. package/dist/src/commands/channel/pidfile.test.js +143 -0
  154. package/dist/src/commands/channel/pidfile.test.js.map +1 -0
  155. package/dist/src/commands/channel/start.d.ts +16 -0
  156. package/dist/src/commands/channel/start.js +352 -0
  157. package/dist/src/commands/channel/start.js.map +1 -0
  158. package/dist/src/commands/channel/start.test.d.ts +1 -0
  159. package/dist/src/commands/channel/start.test.js +156 -0
  160. package/dist/src/commands/channel/start.test.js.map +1 -0
  161. package/dist/src/commands/channel/status.d.ts +2 -0
  162. package/dist/src/commands/channel/status.js +58 -0
  163. package/dist/src/commands/channel/status.js.map +1 -0
  164. package/dist/src/commands/channel/stop.d.ts +2 -0
  165. package/dist/src/commands/channel/stop.js +34 -0
  166. package/dist/src/commands/channel/stop.js.map +1 -0
  167. package/dist/src/commands/channel.d.ts +2 -0
  168. package/dist/src/commands/channel.js +29 -0
  169. package/dist/src/commands/channel.js.map +1 -0
  170. package/dist/src/commands/extensions/consent.d.ts +47 -0
  171. package/dist/src/commands/extensions/consent.js +182 -0
  172. package/dist/src/commands/extensions/consent.js.map +1 -0
  173. package/dist/src/commands/extensions/consent.test.d.ts +6 -0
  174. package/dist/src/commands/extensions/consent.test.js +277 -0
  175. package/dist/src/commands/extensions/consent.test.js.map +1 -0
  176. package/dist/src/commands/extensions/disable.d.ts +13 -0
  177. package/dist/src/commands/extensions/disable.js +65 -0
  178. package/dist/src/commands/extensions/disable.js.map +1 -0
  179. package/dist/src/commands/extensions/disable.test.d.ts +6 -0
  180. package/dist/src/commands/extensions/disable.test.js +101 -0
  181. package/dist/src/commands/extensions/disable.test.js.map +1 -0
  182. package/dist/src/commands/extensions/enable.d.ts +13 -0
  183. package/dist/src/commands/extensions/enable.js +70 -0
  184. package/dist/src/commands/extensions/enable.js.map +1 -0
  185. package/dist/src/commands/extensions/enable.test.d.ts +6 -0
  186. package/dist/src/commands/extensions/enable.test.js +93 -0
  187. package/dist/src/commands/extensions/enable.test.js.map +1 -0
  188. package/dist/src/commands/extensions/examples/agent/agents/diary.md +86 -0
  189. package/dist/src/commands/extensions/examples/agent/qwen-extension.json +5 -0
  190. package/dist/src/commands/extensions/examples/commands/commands/fs/grep-code.md +3 -0
  191. package/dist/src/commands/extensions/examples/commands/qwen-extension.json +5 -0
  192. package/dist/src/commands/extensions/examples/context/QWEN.md +8 -0
  193. package/dist/src/commands/extensions/examples/context/qwen-extension.json +5 -0
  194. package/dist/src/commands/extensions/examples/mcp-server/example.ts +60 -0
  195. package/dist/src/commands/extensions/examples/mcp-server/package.json +18 -0
  196. package/dist/src/commands/extensions/examples/mcp-server/qwen-extension.json +12 -0
  197. package/dist/src/commands/extensions/examples/mcp-server/tsconfig.json +13 -0
  198. package/dist/src/commands/extensions/examples/skills/qwen-extension.json +5 -0
  199. package/dist/src/commands/extensions/examples/skills/skills/synonyms/SKILL.md +48 -0
  200. package/dist/src/commands/extensions/install.d.ts +17 -0
  201. package/dist/src/commands/extensions/install.js +105 -0
  202. package/dist/src/commands/extensions/install.js.map +1 -0
  203. package/dist/src/commands/extensions/install.test.d.ts +6 -0
  204. package/dist/src/commands/extensions/install.test.js +164 -0
  205. package/dist/src/commands/extensions/install.test.js.map +1 -0
  206. package/dist/src/commands/extensions/link.d.ts +12 -0
  207. package/dist/src/commands/extensions/link.js +48 -0
  208. package/dist/src/commands/extensions/link.js.map +1 -0
  209. package/dist/src/commands/extensions/link.test.d.ts +6 -0
  210. package/dist/src/commands/extensions/link.test.js +74 -0
  211. package/dist/src/commands/extensions/link.test.js.map +1 -0
  212. package/dist/src/commands/extensions/list.d.ts +8 -0
  213. package/dist/src/commands/extensions/list.js +35 -0
  214. package/dist/src/commands/extensions/list.js.map +1 -0
  215. package/dist/src/commands/extensions/list.test.d.ts +6 -0
  216. package/dist/src/commands/extensions/list.test.js +76 -0
  217. package/dist/src/commands/extensions/list.test.js.map +1 -0
  218. package/dist/src/commands/extensions/new.d.ts +7 -0
  219. package/dist/src/commands/extensions/new.js +95 -0
  220. package/dist/src/commands/extensions/new.js.map +1 -0
  221. package/dist/src/commands/extensions/new.test.d.ts +6 -0
  222. package/dist/src/commands/extensions/new.test.js +59 -0
  223. package/dist/src/commands/extensions/new.test.js.map +1 -0
  224. package/dist/src/commands/extensions/settings.d.ts +7 -0
  225. package/dist/src/commands/extensions/settings.js +115 -0
  226. package/dist/src/commands/extensions/settings.js.map +1 -0
  227. package/dist/src/commands/extensions/settings.test.d.ts +6 -0
  228. package/dist/src/commands/extensions/settings.test.js +251 -0
  229. package/dist/src/commands/extensions/settings.test.js.map +1 -0
  230. package/dist/src/commands/extensions/uninstall.d.ts +12 -0
  231. package/dist/src/commands/extensions/uninstall.js +50 -0
  232. package/dist/src/commands/extensions/uninstall.js.map +1 -0
  233. package/dist/src/commands/extensions/uninstall.test.d.ts +6 -0
  234. package/dist/src/commands/extensions/uninstall.test.js +18 -0
  235. package/dist/src/commands/extensions/uninstall.test.js.map +1 -0
  236. package/dist/src/commands/extensions/update.d.ts +13 -0
  237. package/dist/src/commands/extensions/update.js +102 -0
  238. package/dist/src/commands/extensions/update.js.map +1 -0
  239. package/dist/src/commands/extensions/update.test.d.ts +6 -0
  240. package/dist/src/commands/extensions/update.test.js +185 -0
  241. package/dist/src/commands/extensions/update.test.js.map +1 -0
  242. package/dist/src/commands/extensions/utils.d.ts +8 -0
  243. package/dist/src/commands/extensions/utils.js +79 -0
  244. package/dist/src/commands/extensions/utils.js.map +1 -0
  245. package/dist/src/commands/extensions/utils.test.d.ts +6 -0
  246. package/dist/src/commands/extensions/utils.test.js +147 -0
  247. package/dist/src/commands/extensions/utils.test.js.map +1 -0
  248. package/dist/src/commands/extensions.d.ts +7 -0
  249. package/dist/src/commands/extensions.js +35 -0
  250. package/dist/src/commands/extensions.js.map +1 -0
  251. package/dist/src/commands/extensions.test.d.ts +6 -0
  252. package/dist/src/commands/extensions.test.js +72 -0
  253. package/dist/src/commands/extensions.test.js.map +1 -0
  254. package/dist/src/commands/hooks.d.ts +7 -0
  255. package/dist/src/commands/hooks.js +20 -0
  256. package/dist/src/commands/hooks.js.map +1 -0
  257. package/dist/src/commands/mcp/add.d.ts +7 -0
  258. package/dist/src/commands/mcp/add.js +247 -0
  259. package/dist/src/commands/mcp/add.js.map +1 -0
  260. package/dist/src/commands/mcp/list.d.ts +8 -0
  261. package/dist/src/commands/mcp/list.js +118 -0
  262. package/dist/src/commands/mcp/list.js.map +1 -0
  263. package/dist/src/commands/mcp/reconnect.d.ts +7 -0
  264. package/dist/src/commands/mcp/reconnect.js +154 -0
  265. package/dist/src/commands/mcp/reconnect.js.map +1 -0
  266. package/dist/src/commands/mcp/remove.d.ts +7 -0
  267. package/dist/src/commands/mcp/remove.js +54 -0
  268. package/dist/src/commands/mcp/remove.js.map +1 -0
  269. package/dist/src/commands/mcp.d.ts +7 -0
  270. package/dist/src/commands/mcp.js +25 -0
  271. package/dist/src/commands/mcp.js.map +1 -0
  272. package/dist/src/commands/review/cleanup.d.ts +7 -0
  273. package/dist/src/commands/review/cleanup.js +81 -0
  274. package/dist/src/commands/review/cleanup.js.map +1 -0
  275. package/dist/src/commands/review/deterministic.d.ts +7 -0
  276. package/dist/src/commands/review/deterministic.js +474 -0
  277. package/dist/src/commands/review/deterministic.js.map +1 -0
  278. package/dist/src/commands/review/fetch-pr.d.ts +7 -0
  279. package/dist/src/commands/review/fetch-pr.js +124 -0
  280. package/dist/src/commands/review/fetch-pr.js.map +1 -0
  281. package/dist/src/commands/review/lib/gh.d.ts +34 -0
  282. package/dist/src/commands/review/lib/gh.js +64 -0
  283. package/dist/src/commands/review/lib/gh.js.map +1 -0
  284. package/dist/src/commands/review/lib/git.d.ts +18 -0
  285. package/dist/src/commands/review/lib/git.js +41 -0
  286. package/dist/src/commands/review/lib/git.js.map +1 -0
  287. package/dist/src/commands/review/lib/paths.d.ts +23 -0
  288. package/dist/src/commands/review/lib/paths.js +37 -0
  289. package/dist/src/commands/review/lib/paths.js.map +1 -0
  290. package/dist/src/commands/review/load-rules.d.ts +7 -0
  291. package/dist/src/commands/review/load-rules.js +112 -0
  292. package/dist/src/commands/review/load-rules.js.map +1 -0
  293. package/dist/src/commands/review/pr-context.d.ts +7 -0
  294. package/dist/src/commands/review/pr-context.js +214 -0
  295. package/dist/src/commands/review/pr-context.js.map +1 -0
  296. package/dist/src/commands/review/presubmit.d.ts +7 -0
  297. package/dist/src/commands/review/presubmit.js +190 -0
  298. package/dist/src/commands/review/presubmit.js.map +1 -0
  299. package/dist/src/commands/review.d.ts +7 -0
  300. package/dist/src/commands/review.js +28 -0
  301. package/dist/src/commands/review.js.map +1 -0
  302. package/dist/src/commands/serve.d.ts +21 -0
  303. package/dist/src/commands/serve.js +214 -0
  304. package/dist/src/commands/serve.js.map +1 -0
  305. package/dist/src/commands/sp.d.ts +7 -0
  306. package/dist/src/commands/sp.js +62 -0
  307. package/dist/src/commands/sp.js.map +1 -0
  308. package/dist/src/config/auth.d.ts +10 -0
  309. package/dist/src/config/auth.js +183 -0
  310. package/dist/src/config/auth.js.map +1 -0
  311. package/dist/src/config/auth.test.d.ts +6 -0
  312. package/dist/src/config/auth.test.js +292 -0
  313. package/dist/src/config/auth.test.js.map +1 -0
  314. package/dist/src/config/config.d.ts +144 -0
  315. package/dist/src/config/config.js +1618 -0
  316. package/dist/src/config/config.js.map +1 -0
  317. package/dist/src/config/jsonSchemaArg.test.d.ts +6 -0
  318. package/dist/src/config/jsonSchemaArg.test.js +305 -0
  319. package/dist/src/config/jsonSchemaArg.test.js.map +1 -0
  320. package/dist/src/config/keyBindings.d.ts +89 -0
  321. package/dist/src/config/keyBindings.js +188 -0
  322. package/dist/src/config/keyBindings.js.map +1 -0
  323. package/dist/src/config/keyBindings.test.d.ts +6 -0
  324. package/dist/src/config/keyBindings.test.js +51 -0
  325. package/dist/src/config/keyBindings.test.js.map +1 -0
  326. package/dist/src/config/loadedSettingsAdapter.d.ts +15 -0
  327. package/dist/src/config/loadedSettingsAdapter.js +80 -0
  328. package/dist/src/config/loadedSettingsAdapter.js.map +1 -0
  329. package/dist/src/config/loadedSettingsAdapter.test.d.ts +6 -0
  330. package/dist/src/config/loadedSettingsAdapter.test.js +127 -0
  331. package/dist/src/config/loadedSettingsAdapter.test.js.map +1 -0
  332. package/dist/src/config/migration/index.d.ts +59 -0
  333. package/dist/src/config/migration/index.js +94 -0
  334. package/dist/src/config/migration/index.js.map +1 -0
  335. package/dist/src/config/migration/index.test.d.ts +6 -0
  336. package/dist/src/config/migration/index.test.js +295 -0
  337. package/dist/src/config/migration/index.test.js.map +1 -0
  338. package/dist/src/config/migration/scheduler.d.ts +51 -0
  339. package/dist/src/config/migration/scheduler.js +95 -0
  340. package/dist/src/config/migration/scheduler.js.map +1 -0
  341. package/dist/src/config/migration/scheduler.test.d.ts +6 -0
  342. package/dist/src/config/migration/scheduler.test.js +129 -0
  343. package/dist/src/config/migration/scheduler.test.js.map +1 -0
  344. package/dist/src/config/migration/types.d.ts +53 -0
  345. package/dist/src/config/migration/types.js +7 -0
  346. package/dist/src/config/migration/types.js.map +1 -0
  347. package/dist/src/config/migration/versions/v1-to-v2-shared.d.ts +27 -0
  348. package/dist/src/config/migration/versions/v1-to-v2-shared.js +174 -0
  349. package/dist/src/config/migration/versions/v1-to-v2-shared.js.map +1 -0
  350. package/dist/src/config/migration/versions/v1-to-v2.d.ts +81 -0
  351. package/dist/src/config/migration/versions/v1-to-v2.js +222 -0
  352. package/dist/src/config/migration/versions/v1-to-v2.js.map +1 -0
  353. package/dist/src/config/migration/versions/v1-to-v2.test.d.ts +6 -0
  354. package/dist/src/config/migration/versions/v1-to-v2.test.js +189 -0
  355. package/dist/src/config/migration/versions/v1-to-v2.test.js.map +1 -0
  356. package/dist/src/config/migration/versions/v2-to-v3.d.ts +61 -0
  357. package/dist/src/config/migration/versions/v2-to-v3.js +185 -0
  358. package/dist/src/config/migration/versions/v2-to-v3.js.map +1 -0
  359. package/dist/src/config/migration/versions/v2-to-v3.test.d.ts +6 -0
  360. package/dist/src/config/migration/versions/v2-to-v3.test.js +337 -0
  361. package/dist/src/config/migration/versions/v2-to-v3.test.js.map +1 -0
  362. package/dist/src/config/migration/versions/v3-to-v4.d.ts +34 -0
  363. package/dist/src/config/migration/versions/v3-to-v4.js +126 -0
  364. package/dist/src/config/migration/versions/v3-to-v4.js.map +1 -0
  365. package/dist/src/config/migration/versions/v3-to-v4.test.d.ts +6 -0
  366. package/dist/src/config/migration/versions/v3-to-v4.test.js +164 -0
  367. package/dist/src/config/migration/versions/v3-to-v4.test.js.map +1 -0
  368. package/dist/src/config/modelProvidersScope.d.ts +20 -0
  369. package/dist/src/config/modelProvidersScope.js +39 -0
  370. package/dist/src/config/modelProvidersScope.js.map +1 -0
  371. package/dist/src/config/modelProvidersScope.test.d.ts +6 -0
  372. package/dist/src/config/modelProvidersScope.test.js +66 -0
  373. package/dist/src/config/modelProvidersScope.test.js.map +1 -0
  374. package/dist/src/config/path-freshness.test.d.ts +6 -0
  375. package/dist/src/config/path-freshness.test.js +52 -0
  376. package/dist/src/config/path-freshness.test.js.map +1 -0
  377. package/dist/src/config/sandboxConfig.d.ts +13 -0
  378. package/dist/src/config/sandboxConfig.js +74 -0
  379. package/dist/src/config/sandboxConfig.js.map +1 -0
  380. package/dist/src/config/settings.d.ts +119 -0
  381. package/dist/src/config/settings.js +1015 -0
  382. package/dist/src/config/settings.js.map +1 -0
  383. package/dist/src/config/settingsSchema.d.ts +2207 -0
  384. package/dist/src/config/settingsSchema.js +2246 -0
  385. package/dist/src/config/settingsSchema.js.map +1 -0
  386. package/dist/src/config/settingsSchema.test.d.ts +6 -0
  387. package/dist/src/config/settingsSchema.test.js +232 -0
  388. package/dist/src/config/settingsSchema.test.js.map +1 -0
  389. package/dist/src/config/trustedFolders.d.ts +54 -0
  390. package/dist/src/config/trustedFolders.js +176 -0
  391. package/dist/src/config/trustedFolders.js.map +1 -0
  392. package/dist/src/config/trustedFolders.test.d.ts +6 -0
  393. package/dist/src/config/trustedFolders.test.js +354 -0
  394. package/dist/src/config/trustedFolders.test.js.map +1 -0
  395. package/dist/src/core/auth.d.ts +13 -0
  396. package/dist/src/core/auth.js +34 -0
  397. package/dist/src/core/auth.js.map +1 -0
  398. package/dist/src/core/auth.test.d.ts +6 -0
  399. package/dist/src/core/auth.test.js +47 -0
  400. package/dist/src/core/auth.test.js.map +1 -0
  401. package/dist/src/core/initializer.d.ts +21 -0
  402. package/dist/src/core/initializer.js +42 -0
  403. package/dist/src/core/initializer.js.map +1 -0
  404. package/dist/src/core/initializer.test.d.ts +6 -0
  405. package/dist/src/core/initializer.test.js +123 -0
  406. package/dist/src/core/initializer.test.js.map +1 -0
  407. package/dist/src/core/theme.d.ts +12 -0
  408. package/dist/src/core/theme.js +25 -0
  409. package/dist/src/core/theme.js.map +1 -0
  410. package/dist/src/core/theme.test.d.ts +6 -0
  411. package/dist/src/core/theme.test.js +57 -0
  412. package/dist/src/core/theme.test.js.map +1 -0
  413. package/dist/src/dualOutput/DualOutputBridge.d.ts +84 -0
  414. package/dist/src/dualOutput/DualOutputBridge.js +293 -0
  415. package/dist/src/dualOutput/DualOutputBridge.js.map +1 -0
  416. package/dist/src/dualOutput/DualOutputBridge.test.d.ts +6 -0
  417. package/dist/src/dualOutput/DualOutputBridge.test.js +157 -0
  418. package/dist/src/dualOutput/DualOutputBridge.test.js.map +1 -0
  419. package/dist/src/dualOutput/DualOutputContext.d.ts +19 -0
  420. package/dist/src/dualOutput/DualOutputContext.js +22 -0
  421. package/dist/src/dualOutput/DualOutputContext.js.map +1 -0
  422. package/dist/src/dualOutput/index.d.ts +7 -0
  423. package/dist/src/dualOutput/index.js +8 -0
  424. package/dist/src/dualOutput/index.js.map +1 -0
  425. package/dist/src/export/index.d.ts +6 -0
  426. package/dist/src/export/index.js +7 -0
  427. package/dist/src/export/index.js.map +1 -0
  428. package/dist/src/gemini.d.ts +13 -0
  429. package/dist/src/gemini.js +908 -0
  430. package/dist/src/gemini.js.map +1 -0
  431. package/dist/src/gemini.test.d.ts +6 -0
  432. package/dist/src/gemini.test.js +975 -0
  433. package/dist/src/gemini.test.js.map +1 -0
  434. package/dist/src/generated/git-commit.d.ts +7 -0
  435. package/dist/src/generated/git-commit.js +10 -0
  436. package/dist/src/generated/git-commit.js.map +1 -0
  437. package/dist/src/i18n/index.d.ts +27 -0
  438. package/dist/src/i18n/index.js +213 -0
  439. package/dist/src/i18n/index.js.map +1 -0
  440. package/dist/src/i18n/index.test.d.ts +6 -0
  441. package/dist/src/i18n/index.test.js +103 -0
  442. package/dist/src/i18n/index.test.js.map +1 -0
  443. package/dist/src/i18n/languages.d.ts +43 -0
  444. package/dist/src/i18n/languages.js +138 -0
  445. package/dist/src/i18n/languages.js.map +1 -0
  446. package/dist/src/i18n/locales/ca.js +3951 -0
  447. package/dist/src/i18n/locales/de.js +2018 -0
  448. package/dist/src/i18n/locales/en.js +2161 -0
  449. package/dist/src/i18n/locales/fr.js +2013 -0
  450. package/dist/src/i18n/locales/ja.js +1780 -0
  451. package/dist/src/i18n/locales/pt.js +2005 -0
  452. package/dist/src/i18n/locales/ru.js +1993 -0
  453. package/dist/src/i18n/locales/zh-TW.js +1729 -0
  454. package/dist/src/i18n/locales/zh.js +1929 -0
  455. package/dist/src/i18n/mustTranslateKeys.d.ts +12 -0
  456. package/dist/src/i18n/mustTranslateKeys.js +111 -0
  457. package/dist/src/i18n/mustTranslateKeys.js.map +1 -0
  458. package/dist/src/i18n/mustTranslateKeys.test.d.ts +6 -0
  459. package/dist/src/i18n/mustTranslateKeys.test.js +103 -0
  460. package/dist/src/i18n/mustTranslateKeys.test.js.map +1 -0
  461. package/dist/src/i18n/translationDict.d.ts +9 -0
  462. package/dist/src/i18n/translationDict.js +17 -0
  463. package/dist/src/i18n/translationDict.js.map +1 -0
  464. package/dist/src/nonInteractive/control/ControlContext.d.ts +71 -0
  465. package/dist/src/nonInteractive/control/ControlContext.js +36 -0
  466. package/dist/src/nonInteractive/control/ControlContext.js.map +1 -0
  467. package/dist/src/nonInteractive/control/ControlDispatcher.d.ts +116 -0
  468. package/dist/src/nonInteractive/control/ControlDispatcher.js +290 -0
  469. package/dist/src/nonInteractive/control/ControlDispatcher.js.map +1 -0
  470. package/dist/src/nonInteractive/control/ControlDispatcher.test.d.ts +6 -0
  471. package/dist/src/nonInteractive/control/ControlDispatcher.test.js +614 -0
  472. package/dist/src/nonInteractive/control/ControlDispatcher.test.js.map +1 -0
  473. package/dist/src/nonInteractive/control/ControlService.d.ts +79 -0
  474. package/dist/src/nonInteractive/control/ControlService.js +139 -0
  475. package/dist/src/nonInteractive/control/ControlService.js.map +1 -0
  476. package/dist/src/nonInteractive/control/controllers/baseController.d.ts +53 -0
  477. package/dist/src/nonInteractive/control/controllers/baseController.js +136 -0
  478. package/dist/src/nonInteractive/control/controllers/baseController.js.map +1 -0
  479. package/dist/src/nonInteractive/control/controllers/hookController.d.ts +25 -0
  480. package/dist/src/nonInteractive/control/controllers/hookController.js +40 -0
  481. package/dist/src/nonInteractive/control/controllers/hookController.js.map +1 -0
  482. package/dist/src/nonInteractive/control/controllers/permissionController.d.ts +57 -0
  483. package/dist/src/nonInteractive/control/controllers/permissionController.js +361 -0
  484. package/dist/src/nonInteractive/control/controllers/permissionController.js.map +1 -0
  485. package/dist/src/nonInteractive/control/controllers/permissionController.test.d.ts +6 -0
  486. package/dist/src/nonInteractive/control/controllers/permissionController.test.js +140 -0
  487. package/dist/src/nonInteractive/control/controllers/permissionController.test.js.map +1 -0
  488. package/dist/src/nonInteractive/control/controllers/sdkMcpController.d.ts +54 -0
  489. package/dist/src/nonInteractive/control/controllers/sdkMcpController.js +80 -0
  490. package/dist/src/nonInteractive/control/controllers/sdkMcpController.js.map +1 -0
  491. package/dist/src/nonInteractive/control/controllers/systemController.d.ts +67 -0
  492. package/dist/src/nonInteractive/control/controllers/systemController.js +326 -0
  493. package/dist/src/nonInteractive/control/controllers/systemController.js.map +1 -0
  494. package/dist/src/nonInteractive/control/controllers/systemController.test.d.ts +6 -0
  495. package/dist/src/nonInteractive/control/controllers/systemController.test.js +121 -0
  496. package/dist/src/nonInteractive/control/controllers/systemController.test.js.map +1 -0
  497. package/dist/src/nonInteractive/control/types/serviceAPIs.d.ts +105 -0
  498. package/dist/src/nonInteractive/control/types/serviceAPIs.js +7 -0
  499. package/dist/src/nonInteractive/control/types/serviceAPIs.js.map +1 -0
  500. package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.d.ts +505 -0
  501. package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.js +1041 -0
  502. package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.js.map +1 -0
  503. package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.test.d.ts +6 -0
  504. package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.test.js +1304 -0
  505. package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.test.js.map +1 -0
  506. package/dist/src/nonInteractive/io/JsonOutputAdapter.d.ts +29 -0
  507. package/dist/src/nonInteractive/io/JsonOutputAdapter.js +64 -0
  508. package/dist/src/nonInteractive/io/JsonOutputAdapter.js.map +1 -0
  509. package/dist/src/nonInteractive/io/JsonOutputAdapter.test.d.ts +6 -0
  510. package/dist/src/nonInteractive/io/JsonOutputAdapter.test.js +684 -0
  511. package/dist/src/nonInteractive/io/JsonOutputAdapter.test.js.map +1 -0
  512. package/dist/src/nonInteractive/io/StreamJsonInputReader.d.ts +16 -0
  513. package/dist/src/nonInteractive/io/StreamJsonInputReader.js +54 -0
  514. package/dist/src/nonInteractive/io/StreamJsonInputReader.js.map +1 -0
  515. package/dist/src/nonInteractive/io/StreamJsonInputReader.test.d.ts +6 -0
  516. package/dist/src/nonInteractive/io/StreamJsonInputReader.test.js +178 -0
  517. package/dist/src/nonInteractive/io/StreamJsonInputReader.test.js.map +1 -0
  518. package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.d.ts +84 -0
  519. package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.dualOutput.test.d.ts +6 -0
  520. package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.dualOutput.test.js +118 -0
  521. package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.dualOutput.test.js.map +1 -0
  522. package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.js +227 -0
  523. package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.js.map +1 -0
  524. package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.test.d.ts +6 -0
  525. package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.test.js +1046 -0
  526. package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.test.js.map +1 -0
  527. package/dist/src/nonInteractive/io/index.d.ts +6 -0
  528. package/dist/src/nonInteractive/io/index.js +7 -0
  529. package/dist/src/nonInteractive/io/index.js.map +1 -0
  530. package/dist/src/nonInteractive/session.d.ts +8 -0
  531. package/dist/src/nonInteractive/session.js +664 -0
  532. package/dist/src/nonInteractive/session.js.map +1 -0
  533. package/dist/src/nonInteractive/session.test.d.ts +6 -0
  534. package/dist/src/nonInteractive/session.test.js +680 -0
  535. package/dist/src/nonInteractive/session.test.js.map +1 -0
  536. package/dist/src/nonInteractive/types.d.ts +415 -0
  537. package/dist/src/nonInteractive/types.js +77 -0
  538. package/dist/src/nonInteractive/types.js.map +1 -0
  539. package/dist/src/nonInteractiveCli.d.ts +33 -0
  540. package/dist/src/nonInteractiveCli.js +1058 -0
  541. package/dist/src/nonInteractiveCli.js.map +1 -0
  542. package/dist/src/nonInteractiveCliCommands.d.ts +59 -0
  543. package/dist/src/nonInteractiveCliCommands.js +326 -0
  544. package/dist/src/nonInteractiveCliCommands.js.map +1 -0
  545. package/dist/src/nonInteractiveCliCommands.test.d.ts +6 -0
  546. package/dist/src/nonInteractiveCliCommands.test.js +484 -0
  547. package/dist/src/nonInteractiveCliCommands.test.js.map +1 -0
  548. package/dist/src/patches/is-in-ci.d.ts +7 -0
  549. package/dist/src/patches/is-in-ci.js +15 -0
  550. package/dist/src/patches/is-in-ci.js.map +1 -0
  551. package/dist/src/remoteInput/RemoteInputContext.d.ts +8 -0
  552. package/dist/src/remoteInput/RemoteInputContext.js +9 -0
  553. package/dist/src/remoteInput/RemoteInputContext.js.map +1 -0
  554. package/dist/src/remoteInput/RemoteInputWatcher.d.ts +83 -0
  555. package/dist/src/remoteInput/RemoteInputWatcher.js +201 -0
  556. package/dist/src/remoteInput/RemoteInputWatcher.js.map +1 -0
  557. package/dist/src/remoteInput/RemoteInputWatcher.test.d.ts +6 -0
  558. package/dist/src/remoteInput/RemoteInputWatcher.test.js +100 -0
  559. package/dist/src/remoteInput/RemoteInputWatcher.test.js.map +1 -0
  560. package/dist/src/remoteInput/index.d.ts +7 -0
  561. package/dist/src/remoteInput/index.js +8 -0
  562. package/dist/src/remoteInput/index.js.map +1 -0
  563. package/dist/src/serve/auth/deviceFlow.d.ts +595 -0
  564. package/dist/src/serve/auth/deviceFlow.js +1243 -0
  565. package/dist/src/serve/auth/deviceFlow.js.map +1 -0
  566. package/dist/src/serve/auth/deviceFlow.test.d.ts +6 -0
  567. package/dist/src/serve/auth/deviceFlow.test.js +1314 -0
  568. package/dist/src/serve/auth/deviceFlow.test.js.map +1 -0
  569. package/dist/src/serve/auth/qwenDeviceFlowProvider.d.ts +30 -0
  570. package/dist/src/serve/auth/qwenDeviceFlowProvider.js +331 -0
  571. package/dist/src/serve/auth/qwenDeviceFlowProvider.js.map +1 -0
  572. package/dist/src/serve/auth/qwenDeviceFlowProvider.test.d.ts +6 -0
  573. package/dist/src/serve/auth/qwenDeviceFlowProvider.test.js +301 -0
  574. package/dist/src/serve/auth/qwenDeviceFlowProvider.test.js.map +1 -0
  575. package/dist/src/serve/auth.d.ts +101 -0
  576. package/dist/src/serve/auth.js +216 -0
  577. package/dist/src/serve/auth.js.map +1 -0
  578. package/dist/src/serve/capabilities.d.ts +196 -0
  579. package/dist/src/serve/capabilities.js +227 -0
  580. package/dist/src/serve/capabilities.js.map +1 -0
  581. package/dist/src/serve/daemonStatusProvider.d.ts +14 -0
  582. package/dist/src/serve/daemonStatusProvider.js +252 -0
  583. package/dist/src/serve/daemonStatusProvider.js.map +1 -0
  584. package/dist/src/serve/debugMode.d.ts +27 -0
  585. package/dist/src/serve/debugMode.js +33 -0
  586. package/dist/src/serve/debugMode.js.map +1 -0
  587. package/dist/src/serve/demo.d.ts +11 -0
  588. package/dist/src/serve/demo.js +640 -0
  589. package/dist/src/serve/demo.js.map +1 -0
  590. package/dist/src/serve/envSnapshot.d.ts +28 -0
  591. package/dist/src/serve/envSnapshot.js +199 -0
  592. package/dist/src/serve/envSnapshot.js.map +1 -0
  593. package/dist/src/serve/envSnapshot.test.d.ts +6 -0
  594. package/dist/src/serve/envSnapshot.test.js +181 -0
  595. package/dist/src/serve/envSnapshot.test.js.map +1 -0
  596. package/dist/src/serve/eventBus.d.ts +6 -0
  597. package/dist/src/serve/eventBus.js +15 -0
  598. package/dist/src/serve/eventBus.js.map +1 -0
  599. package/dist/src/serve/fs/audit.d.ts +144 -0
  600. package/dist/src/serve/fs/audit.js +193 -0
  601. package/dist/src/serve/fs/audit.js.map +1 -0
  602. package/dist/src/serve/fs/audit.test.d.ts +6 -0
  603. package/dist/src/serve/fs/audit.test.js +246 -0
  604. package/dist/src/serve/fs/audit.test.js.map +1 -0
  605. package/dist/src/serve/fs/contract.test.d.ts +6 -0
  606. package/dist/src/serve/fs/contract.test.js +211 -0
  607. package/dist/src/serve/fs/contract.test.js.map +1 -0
  608. package/dist/src/serve/fs/errors.d.ts +87 -0
  609. package/dist/src/serve/fs/errors.js +128 -0
  610. package/dist/src/serve/fs/errors.js.map +1 -0
  611. package/dist/src/serve/fs/errors.test.d.ts +6 -0
  612. package/dist/src/serve/fs/errors.test.js +152 -0
  613. package/dist/src/serve/fs/errors.test.js.map +1 -0
  614. package/dist/src/serve/fs/index.d.ts +10 -0
  615. package/dist/src/serve/fs/index.js +11 -0
  616. package/dist/src/serve/fs/index.js.map +1 -0
  617. package/dist/src/serve/fs/paths.d.ts +103 -0
  618. package/dist/src/serve/fs/paths.js +433 -0
  619. package/dist/src/serve/fs/paths.js.map +1 -0
  620. package/dist/src/serve/fs/paths.test.d.ts +6 -0
  621. package/dist/src/serve/fs/paths.test.js +309 -0
  622. package/dist/src/serve/fs/paths.test.js.map +1 -0
  623. package/dist/src/serve/fs/policy.d.ts +142 -0
  624. package/dist/src/serve/fs/policy.js +189 -0
  625. package/dist/src/serve/fs/policy.js.map +1 -0
  626. package/dist/src/serve/fs/policy.test.d.ts +6 -0
  627. package/dist/src/serve/fs/policy.test.js +193 -0
  628. package/dist/src/serve/fs/policy.test.js.map +1 -0
  629. package/dist/src/serve/fs/workspaceFileSystem.d.ts +157 -0
  630. package/dist/src/serve/fs/workspaceFileSystem.js +1377 -0
  631. package/dist/src/serve/fs/workspaceFileSystem.js.map +1 -0
  632. package/dist/src/serve/fs/workspaceFileSystem.test.d.ts +6 -0
  633. package/dist/src/serve/fs/workspaceFileSystem.test.js +880 -0
  634. package/dist/src/serve/fs/workspaceFileSystem.test.js.map +1 -0
  635. package/dist/src/serve/httpAcpBridge.d.ts +80 -0
  636. package/dist/src/serve/httpAcpBridge.js +3559 -0
  637. package/dist/src/serve/httpAcpBridge.js.map +1 -0
  638. package/dist/src/serve/httpAcpBridge.test.d.ts +6 -0
  639. package/dist/src/serve/httpAcpBridge.test.js +4987 -0
  640. package/dist/src/serve/httpAcpBridge.test.js.map +1 -0
  641. package/dist/src/serve/inMemoryChannel.d.ts +6 -0
  642. package/dist/src/serve/inMemoryChannel.js +14 -0
  643. package/dist/src/serve/inMemoryChannel.js.map +1 -0
  644. package/dist/src/serve/index.d.ts +15 -0
  645. package/dist/src/serve/index.js +16 -0
  646. package/dist/src/serve/index.js.map +1 -0
  647. package/dist/src/serve/loopbackBinds.d.ts +18 -0
  648. package/dist/src/serve/loopbackBinds.js +33 -0
  649. package/dist/src/serve/loopbackBinds.js.map +1 -0
  650. package/dist/src/serve/routes/workspaceFileRead.d.ts +90 -0
  651. package/dist/src/serve/routes/workspaceFileRead.js +458 -0
  652. package/dist/src/serve/routes/workspaceFileRead.js.map +1 -0
  653. package/dist/src/serve/routes/workspaceFileRead.test.d.ts +6 -0
  654. package/dist/src/serve/routes/workspaceFileRead.test.js +453 -0
  655. package/dist/src/serve/routes/workspaceFileRead.test.js.map +1 -0
  656. package/dist/src/serve/routes/workspaceFileWrite.d.ts +17 -0
  657. package/dist/src/serve/routes/workspaceFileWrite.js +224 -0
  658. package/dist/src/serve/routes/workspaceFileWrite.js.map +1 -0
  659. package/dist/src/serve/routes/workspaceFileWrite.test.d.ts +6 -0
  660. package/dist/src/serve/routes/workspaceFileWrite.test.js +223 -0
  661. package/dist/src/serve/routes/workspaceFileWrite.test.js.map +1 -0
  662. package/dist/src/serve/runQwenServe.d.ts +67 -0
  663. package/dist/src/serve/runQwenServe.js +616 -0
  664. package/dist/src/serve/runQwenServe.js.map +1 -0
  665. package/dist/src/serve/server.d.ts +125 -0
  666. package/dist/src/serve/server.js +2297 -0
  667. package/dist/src/serve/server.js.map +1 -0
  668. package/dist/src/serve/status.d.ts +6 -0
  669. package/dist/src/serve/status.js +13 -0
  670. package/dist/src/serve/status.js.map +1 -0
  671. package/dist/src/serve/types.d.ts +175 -0
  672. package/dist/src/serve/types.js +10 -0
  673. package/dist/src/serve/types.js.map +1 -0
  674. package/dist/src/serve/workspaceAgents.d.ts +47 -0
  675. package/dist/src/serve/workspaceAgents.js +1171 -0
  676. package/dist/src/serve/workspaceAgents.js.map +1 -0
  677. package/dist/src/serve/workspaceAgents.test.d.ts +6 -0
  678. package/dist/src/serve/workspaceAgents.test.js +823 -0
  679. package/dist/src/serve/workspaceAgents.test.js.map +1 -0
  680. package/dist/src/serve/workspaceMemory.d.ts +60 -0
  681. package/dist/src/serve/workspaceMemory.js +323 -0
  682. package/dist/src/serve/workspaceMemory.js.map +1 -0
  683. package/dist/src/serve/workspaceMemory.test.d.ts +6 -0
  684. package/dist/src/serve/workspaceMemory.test.js +418 -0
  685. package/dist/src/serve/workspaceMemory.test.js.map +1 -0
  686. package/dist/src/services/BuiltinCommandLoader.d.ts +24 -0
  687. package/dist/src/services/BuiltinCommandLoader.js +159 -0
  688. package/dist/src/services/BuiltinCommandLoader.js.map +1 -0
  689. package/dist/src/services/BuiltinCommandLoader.test.d.ts +6 -0
  690. package/dist/src/services/BuiltinCommandLoader.test.js +234 -0
  691. package/dist/src/services/BuiltinCommandLoader.test.js.map +1 -0
  692. package/dist/src/services/BundledSkillLoader.d.ts +17 -0
  693. package/dist/src/services/BundledSkillLoader.js +97 -0
  694. package/dist/src/services/BundledSkillLoader.js.map +1 -0
  695. package/dist/src/services/BundledSkillLoader.test.d.ts +6 -0
  696. package/dist/src/services/BundledSkillLoader.test.js +301 -0
  697. package/dist/src/services/BundledSkillLoader.test.js.map +1 -0
  698. package/dist/src/services/CommandService.d.ts +69 -0
  699. package/dist/src/services/CommandService.js +128 -0
  700. package/dist/src/services/CommandService.js.map +1 -0
  701. package/dist/src/services/CommandService.test.d.ts +6 -0
  702. package/dist/src/services/CommandService.test.js +263 -0
  703. package/dist/src/services/CommandService.test.js.map +1 -0
  704. package/dist/src/services/FileCommandLoader-extension.test.d.ts +6 -0
  705. package/dist/src/services/FileCommandLoader-extension.test.js +279 -0
  706. package/dist/src/services/FileCommandLoader-extension.test.js.map +1 -0
  707. package/dist/src/services/FileCommandLoader-markdown.test.d.ts +6 -0
  708. package/dist/src/services/FileCommandLoader-markdown.test.js +111 -0
  709. package/dist/src/services/FileCommandLoader-markdown.test.js.map +1 -0
  710. package/dist/src/services/FileCommandLoader.d.ts +64 -0
  711. package/dist/src/services/FileCommandLoader.js +259 -0
  712. package/dist/src/services/FileCommandLoader.js.map +1 -0
  713. package/dist/src/services/McpPromptLoader.d.ts +35 -0
  714. package/dist/src/services/McpPromptLoader.js +261 -0
  715. package/dist/src/services/McpPromptLoader.js.map +1 -0
  716. package/dist/src/services/McpPromptLoader.test.d.ts +6 -0
  717. package/dist/src/services/McpPromptLoader.test.js +341 -0
  718. package/dist/src/services/McpPromptLoader.test.js.map +1 -0
  719. package/dist/src/services/SkillCommandLoader.d.ts +23 -0
  720. package/dist/src/services/SkillCommandLoader.js +110 -0
  721. package/dist/src/services/SkillCommandLoader.js.map +1 -0
  722. package/dist/src/services/SkillCommandLoader.test.d.ts +6 -0
  723. package/dist/src/services/SkillCommandLoader.test.js +307 -0
  724. package/dist/src/services/SkillCommandLoader.test.js.map +1 -0
  725. package/dist/src/services/command-factory.d.ts +25 -0
  726. package/dist/src/services/command-factory.js +122 -0
  727. package/dist/src/services/command-factory.js.map +1 -0
  728. package/dist/src/services/command-factory.test.d.ts +6 -0
  729. package/dist/src/services/command-factory.test.js +31 -0
  730. package/dist/src/services/command-factory.test.js.map +1 -0
  731. package/dist/src/services/command-migration-tool.d.ts +39 -0
  732. package/dist/src/services/command-migration-tool.js +135 -0
  733. package/dist/src/services/command-migration-tool.js.map +1 -0
  734. package/dist/src/services/command-migration-tool.test.d.ts +6 -0
  735. package/dist/src/services/command-migration-tool.test.js +175 -0
  736. package/dist/src/services/command-migration-tool.test.js.map +1 -0
  737. package/dist/src/services/commandMetadata.d.ts +21 -0
  738. package/dist/src/services/commandMetadata.js +106 -0
  739. package/dist/src/services/commandMetadata.js.map +1 -0
  740. package/dist/src/services/commandMetadata.test.d.ts +6 -0
  741. package/dist/src/services/commandMetadata.test.js +216 -0
  742. package/dist/src/services/commandMetadata.test.js.map +1 -0
  743. package/dist/src/services/commandUtils.d.ts +36 -0
  744. package/dist/src/services/commandUtils.js +57 -0
  745. package/dist/src/services/commandUtils.js.map +1 -0
  746. package/dist/src/services/commandUtils.test.d.ts +6 -0
  747. package/dist/src/services/commandUtils.test.js +159 -0
  748. package/dist/src/services/commandUtils.test.js.map +1 -0
  749. package/dist/src/services/insight/generators/DataProcessor.d.ts +23 -0
  750. package/dist/src/services/insight/generators/DataProcessor.js +1001 -0
  751. package/dist/src/services/insight/generators/DataProcessor.js.map +1 -0
  752. package/dist/src/services/insight/generators/DataProcessor.test.d.ts +6 -0
  753. package/dist/src/services/insight/generators/DataProcessor.test.js +1210 -0
  754. package/dist/src/services/insight/generators/DataProcessor.test.js.map +1 -0
  755. package/dist/src/services/insight/generators/StaticInsightGenerator.d.ts +16 -0
  756. package/dist/src/services/insight/generators/StaticInsightGenerator.js +63 -0
  757. package/dist/src/services/insight/generators/StaticInsightGenerator.js.map +1 -0
  758. package/dist/src/services/insight/generators/StaticInsightGenerator.test.d.ts +6 -0
  759. package/dist/src/services/insight/generators/StaticInsightGenerator.test.js +60 -0
  760. package/dist/src/services/insight/generators/StaticInsightGenerator.test.js.map +1 -0
  761. package/dist/src/services/insight/generators/TemplateRenderer.d.ts +9 -0
  762. package/dist/src/services/insight/generators/TemplateRenderer.js +49 -0
  763. package/dist/src/services/insight/generators/TemplateRenderer.js.map +1 -0
  764. package/dist/src/services/insight/types/QualitativeInsightTypes.d.ts +74 -0
  765. package/dist/src/services/insight/types/QualitativeInsightTypes.js +2 -0
  766. package/dist/src/services/insight/types/QualitativeInsightTypes.js.map +1 -0
  767. package/dist/src/services/insight/types/StaticInsightTypes.d.ts +59 -0
  768. package/dist/src/services/insight/types/StaticInsightTypes.js +7 -0
  769. package/dist/src/services/insight/types/StaticInsightTypes.js.map +1 -0
  770. package/dist/src/services/markdown-command-parser.d.ts +52 -0
  771. package/dist/src/services/markdown-command-parser.js +60 -0
  772. package/dist/src/services/markdown-command-parser.js.map +1 -0
  773. package/dist/src/services/markdown-command-parser.test.d.ts +6 -0
  774. package/dist/src/services/markdown-command-parser.test.js +146 -0
  775. package/dist/src/services/markdown-command-parser.test.js.map +1 -0
  776. package/dist/src/services/notificationService.d.ts +19 -0
  777. package/dist/src/services/notificationService.js +64 -0
  778. package/dist/src/services/notificationService.js.map +1 -0
  779. package/dist/src/services/notificationService.test.d.ts +6 -0
  780. package/dist/src/services/notificationService.test.js +114 -0
  781. package/dist/src/services/notificationService.test.js.map +1 -0
  782. package/dist/src/services/prompt-processors/argumentProcessor.d.ts +16 -0
  783. package/dist/src/services/prompt-processors/argumentProcessor.js +21 -0
  784. package/dist/src/services/prompt-processors/argumentProcessor.js.map +1 -0
  785. package/dist/src/services/prompt-processors/atFileProcessor.d.ts +12 -0
  786. package/dist/src/services/prompt-processors/atFileProcessor.js +63 -0
  787. package/dist/src/services/prompt-processors/atFileProcessor.js.map +1 -0
  788. package/dist/src/services/prompt-processors/atFileProcessor.test.d.ts +6 -0
  789. package/dist/src/services/prompt-processors/atFileProcessor.test.js +174 -0
  790. package/dist/src/services/prompt-processors/atFileProcessor.test.js.map +1 -0
  791. package/dist/src/services/prompt-processors/injectionParser.d.ts +29 -0
  792. package/dist/src/services/prompt-processors/injectionParser.js +60 -0
  793. package/dist/src/services/prompt-processors/injectionParser.js.map +1 -0
  794. package/dist/src/services/prompt-processors/injectionParser.test.d.ts +6 -0
  795. package/dist/src/services/prompt-processors/injectionParser.test.js +189 -0
  796. package/dist/src/services/prompt-processors/injectionParser.test.js.map +1 -0
  797. package/dist/src/services/prompt-processors/shellProcessor.d.ts +27 -0
  798. package/dist/src/services/prompt-processors/shellProcessor.js +146 -0
  799. package/dist/src/services/prompt-processors/shellProcessor.js.map +1 -0
  800. package/dist/src/services/prompt-processors/types.d.ts +45 -0
  801. package/dist/src/services/prompt-processors/types.js +20 -0
  802. package/dist/src/services/prompt-processors/types.js.map +1 -0
  803. package/dist/src/services/test-commands/example.md +5 -0
  804. package/dist/src/services/tips/index.d.ts +10 -0
  805. package/dist/src/services/tips/index.js +21 -0
  806. package/dist/src/services/tips/index.js.map +1 -0
  807. package/dist/src/services/tips/tipHistory.d.ts +49 -0
  808. package/dist/src/services/tips/tipHistory.js +138 -0
  809. package/dist/src/services/tips/tipHistory.js.map +1 -0
  810. package/dist/src/services/tips/tipHistory.test.d.ts +6 -0
  811. package/dist/src/services/tips/tipHistory.test.js +102 -0
  812. package/dist/src/services/tips/tipHistory.test.js.map +1 -0
  813. package/dist/src/services/tips/tipRegistry.d.ts +32 -0
  814. package/dist/src/services/tips/tipRegistry.js +148 -0
  815. package/dist/src/services/tips/tipRegistry.js.map +1 -0
  816. package/dist/src/services/tips/tipRegistry.test.d.ts +6 -0
  817. package/dist/src/services/tips/tipRegistry.test.js +65 -0
  818. package/dist/src/services/tips/tipRegistry.test.js.map +1 -0
  819. package/dist/src/services/tips/tipScheduler.d.ts +21 -0
  820. package/dist/src/services/tips/tipScheduler.js +38 -0
  821. package/dist/src/services/tips/tipScheduler.js.map +1 -0
  822. package/dist/src/services/tips/tipScheduler.test.d.ts +6 -0
  823. package/dist/src/services/tips/tipScheduler.test.js +126 -0
  824. package/dist/src/services/tips/tipScheduler.test.js.map +1 -0
  825. package/dist/src/services/types.d.ts +22 -0
  826. package/dist/src/services/types.js +7 -0
  827. package/dist/src/services/types.js.map +1 -0
  828. package/dist/src/startup/worktreeStartup.d.ts +112 -0
  829. package/dist/src/startup/worktreeStartup.js +350 -0
  830. package/dist/src/startup/worktreeStartup.js.map +1 -0
  831. package/dist/src/startup/worktreeStartup.test.d.ts +6 -0
  832. package/dist/src/startup/worktreeStartup.test.js +332 -0
  833. package/dist/src/startup/worktreeStartup.test.js.map +1 -0
  834. package/dist/src/test-utils/customMatchers.d.ts +14 -0
  835. package/dist/src/test-utils/customMatchers.js +40 -0
  836. package/dist/src/test-utils/customMatchers.js.map +1 -0
  837. package/dist/src/test-utils/mockCommandContext.d.ts +18 -0
  838. package/dist/src/test-utils/mockCommandContext.js +107 -0
  839. package/dist/src/test-utils/mockCommandContext.js.map +1 -0
  840. package/dist/src/test-utils/mockCommandContext.test.d.ts +6 -0
  841. package/dist/src/test-utils/mockCommandContext.test.js +51 -0
  842. package/dist/src/test-utils/mockCommandContext.test.js.map +1 -0
  843. package/dist/src/test-utils/render.d.ts +14 -0
  844. package/dist/src/test-utils/render.js +15 -0
  845. package/dist/src/test-utils/render.js.map +1 -0
  846. package/dist/src/ui/App.d.ts +6 -0
  847. package/dist/src/ui/App.js +65 -0
  848. package/dist/src/ui/App.js.map +1 -0
  849. package/dist/src/ui/AppContainer.d.ts +24 -0
  850. package/dist/src/ui/AppContainer.js +2853 -0
  851. package/dist/src/ui/AppContainer.js.map +1 -0
  852. package/dist/src/ui/AppContainer.test.d.ts +6 -0
  853. package/dist/src/ui/AppContainer.test.js +2368 -0
  854. package/dist/src/ui/AppContainer.test.js.map +1 -0
  855. package/dist/src/ui/CommandFormatMigrationNudge.d.ts +14 -0
  856. package/dist/src/ui/CommandFormatMigrationNudge.js +44 -0
  857. package/dist/src/ui/CommandFormatMigrationNudge.js.map +1 -0
  858. package/dist/src/ui/FeedbackDialog.d.ts +9 -0
  859. package/dist/src/ui/FeedbackDialog.js +44 -0
  860. package/dist/src/ui/FeedbackDialog.js.map +1 -0
  861. package/dist/src/ui/IdeIntegrationNudge.d.ts +16 -0
  862. package/dist/src/ui/IdeIntegrationNudge.js +53 -0
  863. package/dist/src/ui/IdeIntegrationNudge.js.map +1 -0
  864. package/dist/src/ui/auth/AuthDialog.d.ts +7 -0
  865. package/dist/src/ui/auth/AuthDialog.js +214 -0
  866. package/dist/src/ui/auth/AuthDialog.js.map +1 -0
  867. package/dist/src/ui/auth/AuthDialog.test.d.ts +6 -0
  868. package/dist/src/ui/auth/AuthDialog.test.js +1029 -0
  869. package/dist/src/ui/auth/AuthDialog.test.js.map +1 -0
  870. package/dist/src/ui/auth/AuthInProgress.d.ts +11 -0
  871. package/dist/src/ui/auth/AuthInProgress.js +24 -0
  872. package/dist/src/ui/auth/AuthInProgress.js.map +1 -0
  873. package/dist/src/ui/auth/ProviderSetupSteps.d.ts +11 -0
  874. package/dist/src/ui/auth/ProviderSetupSteps.js +320 -0
  875. package/dist/src/ui/auth/ProviderSetupSteps.js.map +1 -0
  876. package/dist/src/ui/auth/ProviderSetupSteps.test.d.ts +6 -0
  877. package/dist/src/ui/auth/ProviderSetupSteps.test.js +322 -0
  878. package/dist/src/ui/auth/ProviderSetupSteps.test.js.map +1 -0
  879. package/dist/src/ui/auth/useAuth.d.ts +76 -0
  880. package/dist/src/ui/auth/useAuth.js +192 -0
  881. package/dist/src/ui/auth/useAuth.js.map +1 -0
  882. package/dist/src/ui/auth/useAuth.test.d.ts +6 -0
  883. package/dist/src/ui/auth/useAuth.test.js +267 -0
  884. package/dist/src/ui/auth/useAuth.test.js.map +1 -0
  885. package/dist/src/ui/auth/useProviderSetupFlow.d.ts +54 -0
  886. package/dist/src/ui/auth/useProviderSetupFlow.js +380 -0
  887. package/dist/src/ui/auth/useProviderSetupFlow.js.map +1 -0
  888. package/dist/src/ui/colors.d.ts +7 -0
  889. package/dist/src/ui/colors.js +60 -0
  890. package/dist/src/ui/colors.js.map +1 -0
  891. package/dist/src/ui/commands/aboutCommand.d.ts +7 -0
  892. package/dist/src/ui/commands/aboutCommand.js +69 -0
  893. package/dist/src/ui/commands/aboutCommand.js.map +1 -0
  894. package/dist/src/ui/commands/agentsCommand.d.ts +7 -0
  895. package/dist/src/ui/commands/agentsCommand.js +42 -0
  896. package/dist/src/ui/commands/agentsCommand.js.map +1 -0
  897. package/dist/src/ui/commands/approvalModeCommand.d.ts +7 -0
  898. package/dist/src/ui/commands/approvalModeCommand.js +89 -0
  899. package/dist/src/ui/commands/approvalModeCommand.js.map +1 -0
  900. package/dist/src/ui/commands/approvalModeCommand.test.d.ts +6 -0
  901. package/dist/src/ui/commands/approvalModeCommand.test.js +112 -0
  902. package/dist/src/ui/commands/approvalModeCommand.test.js.map +1 -0
  903. package/dist/src/ui/commands/arenaCommand.agentComplete.test.d.ts +6 -0
  904. package/dist/src/ui/commands/arenaCommand.agentComplete.test.js +118 -0
  905. package/dist/src/ui/commands/arenaCommand.agentComplete.test.js.map +1 -0
  906. package/dist/src/ui/commands/arenaCommand.d.ts +7 -0
  907. package/dist/src/ui/commands/arenaCommand.js +519 -0
  908. package/dist/src/ui/commands/arenaCommand.js.map +1 -0
  909. package/dist/src/ui/commands/arenaCommand.test.d.ts +6 -0
  910. package/dist/src/ui/commands/arenaCommand.test.js +352 -0
  911. package/dist/src/ui/commands/arenaCommand.test.js.map +1 -0
  912. package/dist/src/ui/commands/authCommand.d.ts +7 -0
  913. package/dist/src/ui/commands/authCommand.js +31 -0
  914. package/dist/src/ui/commands/authCommand.js.map +1 -0
  915. package/dist/src/ui/commands/branchCommand.d.ts +7 -0
  916. package/dist/src/ui/commands/branchCommand.js +49 -0
  917. package/dist/src/ui/commands/branchCommand.js.map +1 -0
  918. package/dist/src/ui/commands/branchCommand.test.d.ts +6 -0
  919. package/dist/src/ui/commands/branchCommand.test.js +57 -0
  920. package/dist/src/ui/commands/branchCommand.test.js.map +1 -0
  921. package/dist/src/ui/commands/btwCommand.d.ts +7 -0
  922. package/dist/src/ui/commands/btwCommand.js +164 -0
  923. package/dist/src/ui/commands/btwCommand.js.map +1 -0
  924. package/dist/src/ui/commands/btwCommand.test.d.ts +6 -0
  925. package/dist/src/ui/commands/btwCommand.test.js +338 -0
  926. package/dist/src/ui/commands/btwCommand.test.js.map +1 -0
  927. package/dist/src/ui/commands/bugCommand.d.ts +7 -0
  928. package/dist/src/ui/commands/bugCommand.js +54 -0
  929. package/dist/src/ui/commands/bugCommand.js.map +1 -0
  930. package/dist/src/ui/commands/clearCommand.d.ts +7 -0
  931. package/dist/src/ui/commands/clearCommand.js +122 -0
  932. package/dist/src/ui/commands/clearCommand.js.map +1 -0
  933. package/dist/src/ui/commands/compressCommand.d.ts +7 -0
  934. package/dist/src/ui/commands/compressCommand.js +178 -0
  935. package/dist/src/ui/commands/compressCommand.js.map +1 -0
  936. package/dist/src/ui/commands/contextCommand.d.ts +14 -0
  937. package/dist/src/ui/commands/contextCommand.js +443 -0
  938. package/dist/src/ui/commands/contextCommand.js.map +1 -0
  939. package/dist/src/ui/commands/contextCommand.test.d.ts +6 -0
  940. package/dist/src/ui/commands/contextCommand.test.js +184 -0
  941. package/dist/src/ui/commands/contextCommand.test.js.map +1 -0
  942. package/dist/src/ui/commands/copyCommand.d.ts +7 -0
  943. package/dist/src/ui/commands/copyCommand.js +374 -0
  944. package/dist/src/ui/commands/copyCommand.js.map +1 -0
  945. package/dist/src/ui/commands/deleteCommand.d.ts +7 -0
  946. package/dist/src/ui/commands/deleteCommand.js +19 -0
  947. package/dist/src/ui/commands/deleteCommand.js.map +1 -0
  948. package/dist/src/ui/commands/deleteCommand.test.d.ts +6 -0
  949. package/dist/src/ui/commands/deleteCommand.test.js +27 -0
  950. package/dist/src/ui/commands/deleteCommand.test.js.map +1 -0
  951. package/dist/src/ui/commands/diffCommand.d.ts +42 -0
  952. package/dist/src/ui/commands/diffCommand.js +206 -0
  953. package/dist/src/ui/commands/diffCommand.js.map +1 -0
  954. package/dist/src/ui/commands/diffCommand.test.d.ts +6 -0
  955. package/dist/src/ui/commands/diffCommand.test.js +482 -0
  956. package/dist/src/ui/commands/diffCommand.test.js.map +1 -0
  957. package/dist/src/ui/commands/directoryCommand.d.ts +13 -0
  958. package/dist/src/ui/commands/directoryCommand.js +252 -0
  959. package/dist/src/ui/commands/directoryCommand.js.map +1 -0
  960. package/dist/src/ui/commands/docsCommand.d.ts +7 -0
  961. package/dist/src/ui/commands/docsCommand.js +49 -0
  962. package/dist/src/ui/commands/docsCommand.js.map +1 -0
  963. package/dist/src/ui/commands/doctorCommand.d.ts +7 -0
  964. package/dist/src/ui/commands/doctorCommand.js +530 -0
  965. package/dist/src/ui/commands/doctorCommand.js.map +1 -0
  966. package/dist/src/ui/commands/doctorCommand.test.d.ts +6 -0
  967. package/dist/src/ui/commands/doctorCommand.test.js +804 -0
  968. package/dist/src/ui/commands/doctorCommand.test.js.map +1 -0
  969. package/dist/src/ui/commands/dreamCommand.d.ts +7 -0
  970. package/dist/src/ui/commands/dreamCommand.js +42 -0
  971. package/dist/src/ui/commands/dreamCommand.js.map +1 -0
  972. package/dist/src/ui/commands/dreamCommand.test.d.ts +6 -0
  973. package/dist/src/ui/commands/dreamCommand.test.js +39 -0
  974. package/dist/src/ui/commands/dreamCommand.test.js.map +1 -0
  975. package/dist/src/ui/commands/editorCommand.d.ts +7 -0
  976. package/dist/src/ui/commands/editorCommand.js +20 -0
  977. package/dist/src/ui/commands/editorCommand.js.map +1 -0
  978. package/dist/src/ui/commands/exportCommand.d.ts +10 -0
  979. package/dist/src/ui/commands/exportCommand.js +373 -0
  980. package/dist/src/ui/commands/exportCommand.js.map +1 -0
  981. package/dist/src/ui/commands/exportCommand.test.d.ts +6 -0
  982. package/dist/src/ui/commands/exportCommand.test.js +905 -0
  983. package/dist/src/ui/commands/exportCommand.test.js.map +1 -0
  984. package/dist/src/ui/commands/extensionsCommand.d.ts +10 -0
  985. package/dist/src/ui/commands/extensionsCommand.js +185 -0
  986. package/dist/src/ui/commands/extensionsCommand.js.map +1 -0
  987. package/dist/src/ui/commands/forgetCommand.d.ts +7 -0
  988. package/dist/src/ui/commands/forgetCommand.js +45 -0
  989. package/dist/src/ui/commands/forgetCommand.js.map +1 -0
  990. package/dist/src/ui/commands/forkCommand.d.ts +7 -0
  991. package/dist/src/ui/commands/forkCommand.js +163 -0
  992. package/dist/src/ui/commands/forkCommand.js.map +1 -0
  993. package/dist/src/ui/commands/forkCommand.test.d.ts +6 -0
  994. package/dist/src/ui/commands/forkCommand.test.js +229 -0
  995. package/dist/src/ui/commands/forkCommand.test.js.map +1 -0
  996. package/dist/src/ui/commands/goalCommand.d.ts +7 -0
  997. package/dist/src/ui/commands/goalCommand.js +181 -0
  998. package/dist/src/ui/commands/goalCommand.js.map +1 -0
  999. package/dist/src/ui/commands/goalCommand.test.d.ts +6 -0
  1000. package/dist/src/ui/commands/goalCommand.test.js +328 -0
  1001. package/dist/src/ui/commands/goalCommand.test.js.map +1 -0
  1002. package/dist/src/ui/commands/helpCommand.d.ts +7 -0
  1003. package/dist/src/ui/commands/helpCommand.js +21 -0
  1004. package/dist/src/ui/commands/helpCommand.js.map +1 -0
  1005. package/dist/src/ui/commands/hooksCommand.d.ts +7 -0
  1006. package/dist/src/ui/commands/hooksCommand.js +153 -0
  1007. package/dist/src/ui/commands/hooksCommand.js.map +1 -0
  1008. package/dist/src/ui/commands/hooksCommand.test.d.ts +6 -0
  1009. package/dist/src/ui/commands/hooksCommand.test.js +189 -0
  1010. package/dist/src/ui/commands/hooksCommand.test.js.map +1 -0
  1011. package/dist/src/ui/commands/ideCommand.d.ts +7 -0
  1012. package/dist/src/ui/commands/ideCommand.js +256 -0
  1013. package/dist/src/ui/commands/ideCommand.js.map +1 -0
  1014. package/dist/src/ui/commands/initCommand.d.ts +7 -0
  1015. package/dist/src/ui/commands/initCommand.js +119 -0
  1016. package/dist/src/ui/commands/initCommand.js.map +1 -0
  1017. package/dist/src/ui/commands/insightCommand.d.ts +7 -0
  1018. package/dist/src/ui/commands/insightCommand.js +195 -0
  1019. package/dist/src/ui/commands/insightCommand.js.map +1 -0
  1020. package/dist/src/ui/commands/insightCommand.test.d.ts +6 -0
  1021. package/dist/src/ui/commands/insightCommand.test.js +173 -0
  1022. package/dist/src/ui/commands/insightCommand.test.js.map +1 -0
  1023. package/dist/src/ui/commands/languageCommand.d.ts +7 -0
  1024. package/dist/src/ui/commands/languageCommand.js +291 -0
  1025. package/dist/src/ui/commands/languageCommand.js.map +1 -0
  1026. package/dist/src/ui/commands/languageCommand.test.d.ts +6 -0
  1027. package/dist/src/ui/commands/languageCommand.test.js +664 -0
  1028. package/dist/src/ui/commands/languageCommand.test.js.map +1 -0
  1029. package/dist/src/ui/commands/lspCommand.d.ts +7 -0
  1030. package/dist/src/ui/commands/lspCommand.js +62 -0
  1031. package/dist/src/ui/commands/lspCommand.js.map +1 -0
  1032. package/dist/src/ui/commands/lspCommand.test.d.ts +6 -0
  1033. package/dist/src/ui/commands/lspCommand.test.js +175 -0
  1034. package/dist/src/ui/commands/lspCommand.test.js.map +1 -0
  1035. package/dist/src/ui/commands/mcpCommand.d.ts +7 -0
  1036. package/dist/src/ui/commands/mcpCommand.js +21 -0
  1037. package/dist/src/ui/commands/mcpCommand.js.map +1 -0
  1038. package/dist/src/ui/commands/memoryCommand.d.ts +7 -0
  1039. package/dist/src/ui/commands/memoryCommand.js +21 -0
  1040. package/dist/src/ui/commands/memoryCommand.js.map +1 -0
  1041. package/dist/src/ui/commands/modelCommand.d.ts +7 -0
  1042. package/dist/src/ui/commands/modelCommand.js +226 -0
  1043. package/dist/src/ui/commands/modelCommand.js.map +1 -0
  1044. package/dist/src/ui/commands/modelCommand.test.d.ts +6 -0
  1045. package/dist/src/ui/commands/modelCommand.test.js +503 -0
  1046. package/dist/src/ui/commands/modelCommand.test.js.map +1 -0
  1047. package/dist/src/ui/commands/permissionsCommand.d.ts +7 -0
  1048. package/dist/src/ui/commands/permissionsCommand.js +20 -0
  1049. package/dist/src/ui/commands/permissionsCommand.js.map +1 -0
  1050. package/dist/src/ui/commands/permissionsCommand.test.d.ts +6 -0
  1051. package/dist/src/ui/commands/permissionsCommand.test.js +30 -0
  1052. package/dist/src/ui/commands/permissionsCommand.test.js.map +1 -0
  1053. package/dist/src/ui/commands/planCommand.d.ts +7 -0
  1054. package/dist/src/ui/commands/planCommand.js +88 -0
  1055. package/dist/src/ui/commands/planCommand.js.map +1 -0
  1056. package/dist/src/ui/commands/planCommand.test.d.ts +6 -0
  1057. package/dist/src/ui/commands/planCommand.test.js +113 -0
  1058. package/dist/src/ui/commands/planCommand.test.js.map +1 -0
  1059. package/dist/src/ui/commands/quitCommand.d.ts +7 -0
  1060. package/dist/src/ui/commands/quitCommand.js +38 -0
  1061. package/dist/src/ui/commands/quitCommand.js.map +1 -0
  1062. package/dist/src/ui/commands/recapCommand.d.ts +7 -0
  1063. package/dist/src/ui/commands/recapCommand.js +56 -0
  1064. package/dist/src/ui/commands/recapCommand.js.map +1 -0
  1065. package/dist/src/ui/commands/rememberCommand.d.ts +7 -0
  1066. package/dist/src/ui/commands/rememberCommand.js +54 -0
  1067. package/dist/src/ui/commands/rememberCommand.js.map +1 -0
  1068. package/dist/src/ui/commands/renameCommand.d.ts +7 -0
  1069. package/dist/src/ui/commands/renameCommand.js +208 -0
  1070. package/dist/src/ui/commands/renameCommand.js.map +1 -0
  1071. package/dist/src/ui/commands/renameCommand.test.d.ts +6 -0
  1072. package/dist/src/ui/commands/renameCommand.test.js +414 -0
  1073. package/dist/src/ui/commands/renameCommand.test.js.map +1 -0
  1074. package/dist/src/ui/commands/restoreCommand.d.ts +8 -0
  1075. package/dist/src/ui/commands/restoreCommand.js +159 -0
  1076. package/dist/src/ui/commands/restoreCommand.js.map +1 -0
  1077. package/dist/src/ui/commands/resumeCommand.d.ts +7 -0
  1078. package/dist/src/ui/commands/resumeCommand.js +65 -0
  1079. package/dist/src/ui/commands/resumeCommand.js.map +1 -0
  1080. package/dist/src/ui/commands/resumeCommand.test.d.ts +6 -0
  1081. package/dist/src/ui/commands/resumeCommand.test.js +135 -0
  1082. package/dist/src/ui/commands/resumeCommand.test.js.map +1 -0
  1083. package/dist/src/ui/commands/rewindCommand.d.ts +7 -0
  1084. package/dist/src/ui/commands/rewindCommand.js +20 -0
  1085. package/dist/src/ui/commands/rewindCommand.js.map +1 -0
  1086. package/dist/src/ui/commands/settingsCommand.d.ts +7 -0
  1087. package/dist/src/ui/commands/settingsCommand.js +20 -0
  1088. package/dist/src/ui/commands/settingsCommand.js.map +1 -0
  1089. package/dist/src/ui/commands/setupGithubCommand.d.ts +9 -0
  1090. package/dist/src/ui/commands/setupGithubCommand.js +165 -0
  1091. package/dist/src/ui/commands/setupGithubCommand.js.map +1 -0
  1092. package/dist/src/ui/commands/setupGithubCommand.test.d.ts +6 -0
  1093. package/dist/src/ui/commands/setupGithubCommand.test.js +164 -0
  1094. package/dist/src/ui/commands/setupGithubCommand.test.js.map +1 -0
  1095. package/dist/src/ui/commands/skillsCommand.d.ts +7 -0
  1096. package/dist/src/ui/commands/skillsCommand.js +63 -0
  1097. package/dist/src/ui/commands/skillsCommand.js.map +1 -0
  1098. package/dist/src/ui/commands/skillsCommand.test.d.ts +6 -0
  1099. package/dist/src/ui/commands/skillsCommand.test.js +136 -0
  1100. package/dist/src/ui/commands/skillsCommand.test.js.map +1 -0
  1101. package/dist/src/ui/commands/statsCommand.d.ts +7 -0
  1102. package/dist/src/ui/commands/statsCommand.js +130 -0
  1103. package/dist/src/ui/commands/statsCommand.js.map +1 -0
  1104. package/dist/src/ui/commands/statuslineCommand.d.ts +7 -0
  1105. package/dist/src/ui/commands/statuslineCommand.js +33 -0
  1106. package/dist/src/ui/commands/statuslineCommand.js.map +1 -0
  1107. package/dist/src/ui/commands/statuslineCommand.test.d.ts +6 -0
  1108. package/dist/src/ui/commands/statuslineCommand.test.js +54 -0
  1109. package/dist/src/ui/commands/statuslineCommand.test.js.map +1 -0
  1110. package/dist/src/ui/commands/summaryCommand.d.ts +7 -0
  1111. package/dist/src/ui/commands/summaryCommand.js +261 -0
  1112. package/dist/src/ui/commands/summaryCommand.js.map +1 -0
  1113. package/dist/src/ui/commands/tasksCommand.d.ts +7 -0
  1114. package/dist/src/ui/commands/tasksCommand.js +222 -0
  1115. package/dist/src/ui/commands/tasksCommand.js.map +1 -0
  1116. package/dist/src/ui/commands/tasksCommand.test.d.ts +6 -0
  1117. package/dist/src/ui/commands/tasksCommand.test.js +365 -0
  1118. package/dist/src/ui/commands/tasksCommand.test.js.map +1 -0
  1119. package/dist/src/ui/commands/terminalSetupCommand.d.ts +13 -0
  1120. package/dist/src/ui/commands/terminalSetupCommand.js +48 -0
  1121. package/dist/src/ui/commands/terminalSetupCommand.js.map +1 -0
  1122. package/dist/src/ui/commands/themeCommand.d.ts +7 -0
  1123. package/dist/src/ui/commands/themeCommand.js +20 -0
  1124. package/dist/src/ui/commands/themeCommand.js.map +1 -0
  1125. package/dist/src/ui/commands/toolsCommand.d.ts +7 -0
  1126. package/dist/src/ui/commands/toolsCommand.js +45 -0
  1127. package/dist/src/ui/commands/toolsCommand.js.map +1 -0
  1128. package/dist/src/ui/commands/trustCommand.d.ts +7 -0
  1129. package/dist/src/ui/commands/trustCommand.js +20 -0
  1130. package/dist/src/ui/commands/trustCommand.js.map +1 -0
  1131. package/dist/src/ui/commands/trustCommand.test.d.ts +6 -0
  1132. package/dist/src/ui/commands/trustCommand.test.js +30 -0
  1133. package/dist/src/ui/commands/trustCommand.test.js.map +1 -0
  1134. package/dist/src/ui/commands/types.d.ts +298 -0
  1135. package/dist/src/ui/commands/types.js +13 -0
  1136. package/dist/src/ui/commands/types.js.map +1 -0
  1137. package/dist/src/ui/commands/vimCommand.d.ts +7 -0
  1138. package/dist/src/ui/commands/vimCommand.js +27 -0
  1139. package/dist/src/ui/commands/vimCommand.js.map +1 -0
  1140. package/dist/src/ui/components/AboutBox.d.ts +12 -0
  1141. package/dist/src/ui/components/AboutBox.js +10 -0
  1142. package/dist/src/ui/components/AboutBox.js.map +1 -0
  1143. package/dist/src/ui/components/AnsiOutput.d.ts +20 -0
  1144. package/dist/src/ui/components/AnsiOutput.js +27 -0
  1145. package/dist/src/ui/components/AnsiOutput.js.map +1 -0
  1146. package/dist/src/ui/components/AnsiOutput.test.d.ts +6 -0
  1147. package/dist/src/ui/components/AnsiOutput.test.js +134 -0
  1148. package/dist/src/ui/components/AnsiOutput.test.js.map +1 -0
  1149. package/dist/src/ui/components/ApiKeyInput.d.ts +22 -0
  1150. package/dist/src/ui/components/ApiKeyInput.js +35 -0
  1151. package/dist/src/ui/components/ApiKeyInput.js.map +1 -0
  1152. package/dist/src/ui/components/AppHeader.d.ts +10 -0
  1153. package/dist/src/ui/components/AppHeader.js +49 -0
  1154. package/dist/src/ui/components/AppHeader.js.map +1 -0
  1155. package/dist/src/ui/components/AppHeader.test.d.ts +6 -0
  1156. package/dist/src/ui/components/AppHeader.test.js +109 -0
  1157. package/dist/src/ui/components/AppHeader.test.js.map +1 -0
  1158. package/dist/src/ui/components/ApprovalModeDialog.d.ts +21 -0
  1159. package/dist/src/ui/components/ApprovalModeDialog.js +109 -0
  1160. package/dist/src/ui/components/ApprovalModeDialog.js.map +1 -0
  1161. package/dist/src/ui/components/ApprovalModeDialog.test.d.ts +6 -0
  1162. package/dist/src/ui/components/ApprovalModeDialog.test.js +63 -0
  1163. package/dist/src/ui/components/ApprovalModeDialog.test.js.map +1 -0
  1164. package/dist/src/ui/components/AsciiArt.d.ts +1 -0
  1165. package/dist/src/ui/components/AsciiArt.js +54 -0
  1166. package/dist/src/ui/components/AsciiArt.js.map +1 -0
  1167. package/dist/src/ui/components/AutoAcceptIndicator.d.ts +12 -0
  1168. package/dist/src/ui/components/AutoAcceptIndicator.js +37 -0
  1169. package/dist/src/ui/components/AutoAcceptIndicator.js.map +1 -0
  1170. package/dist/src/ui/components/BaseTextInput.d.ts +74 -0
  1171. package/dist/src/ui/components/BaseTextInput.js +144 -0
  1172. package/dist/src/ui/components/BaseTextInput.js.map +1 -0
  1173. package/dist/src/ui/components/BaseTextInput.test.d.ts +6 -0
  1174. package/dist/src/ui/components/BaseTextInput.test.js +78 -0
  1175. package/dist/src/ui/components/BaseTextInput.test.js.map +1 -0
  1176. package/dist/src/ui/components/Composer.d.ts +6 -0
  1177. package/dist/src/ui/components/Composer.js +92 -0
  1178. package/dist/src/ui/components/Composer.js.map +1 -0
  1179. package/dist/src/ui/components/Composer.test.d.ts +6 -0
  1180. package/dist/src/ui/components/Composer.test.js +344 -0
  1181. package/dist/src/ui/components/Composer.test.js.map +1 -0
  1182. package/dist/src/ui/components/ConsentPrompt.d.ts +14 -0
  1183. package/dist/src/ui/components/ConsentPrompt.js +35 -0
  1184. package/dist/src/ui/components/ConsentPrompt.js.map +1 -0
  1185. package/dist/src/ui/components/ConsentPrompt.test.d.ts +6 -0
  1186. package/dist/src/ui/components/ConsentPrompt.test.js +110 -0
  1187. package/dist/src/ui/components/ConsentPrompt.test.js.map +1 -0
  1188. package/dist/src/ui/components/ContextSummaryDisplay.d.ts +20 -0
  1189. package/dist/src/ui/components/ContextSummaryDisplay.js +90 -0
  1190. package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -0
  1191. package/dist/src/ui/components/ContextUsageDisplay.d.ts +10 -0
  1192. package/dist/src/ui/components/ContextUsageDisplay.js +33 -0
  1193. package/dist/src/ui/components/ContextUsageDisplay.js.map +1 -0
  1194. package/dist/src/ui/components/DebugModeNotification.d.ts +9 -0
  1195. package/dist/src/ui/components/DebugModeNotification.js +23 -0
  1196. package/dist/src/ui/components/DebugModeNotification.js.map +1 -0
  1197. package/dist/src/ui/components/DebugProfiler.d.ts +6 -0
  1198. package/dist/src/ui/components/DebugProfiler.js +27 -0
  1199. package/dist/src/ui/components/DebugProfiler.js.map +1 -0
  1200. package/dist/src/ui/components/DialogManager.d.ts +12 -0
  1201. package/dist/src/ui/components/DialogManager.js +247 -0
  1202. package/dist/src/ui/components/DialogManager.js.map +1 -0
  1203. package/dist/src/ui/components/DiffDialog.d.ts +15 -0
  1204. package/dist/src/ui/components/DiffDialog.js +412 -0
  1205. package/dist/src/ui/components/DiffDialog.js.map +1 -0
  1206. package/dist/src/ui/components/EditorSettingsDialog.d.ts +16 -0
  1207. package/dist/src/ui/components/EditorSettingsDialog.js +76 -0
  1208. package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -0
  1209. package/dist/src/ui/components/ExitWarning.d.ts +7 -0
  1210. package/dist/src/ui/components/ExitWarning.js +9 -0
  1211. package/dist/src/ui/components/ExitWarning.js.map +1 -0
  1212. package/dist/src/ui/components/ExternalAuthProgress.d.ts +14 -0
  1213. package/dist/src/ui/components/ExternalAuthProgress.js +14 -0
  1214. package/dist/src/ui/components/ExternalAuthProgress.js.map +1 -0
  1215. package/dist/src/ui/components/ExternalAuthProgress.test.d.ts +6 -0
  1216. package/dist/src/ui/components/ExternalAuthProgress.test.js +20 -0
  1217. package/dist/src/ui/components/ExternalAuthProgress.test.js.map +1 -0
  1218. package/dist/src/ui/components/FolderTrustDialog.d.ts +17 -0
  1219. package/dist/src/ui/components/FolderTrustDialog.js +58 -0
  1220. package/dist/src/ui/components/FolderTrustDialog.js.map +1 -0
  1221. package/dist/src/ui/components/FolderTrustDialog.test.d.ts +6 -0
  1222. package/dist/src/ui/components/FolderTrustDialog.test.js +88 -0
  1223. package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -0
  1224. package/dist/src/ui/components/Footer.d.ts +7 -0
  1225. package/dist/src/ui/components/Footer.js +104 -0
  1226. package/dist/src/ui/components/Footer.js.map +1 -0
  1227. package/dist/src/ui/components/GeminiRespondingSpinner.d.ts +22 -0
  1228. package/dist/src/ui/components/GeminiRespondingSpinner.js +47 -0
  1229. package/dist/src/ui/components/GeminiRespondingSpinner.js.map +1 -0
  1230. package/dist/src/ui/components/GeminiRespondingSpinner.test.d.ts +6 -0
  1231. package/dist/src/ui/components/GeminiRespondingSpinner.test.js +29 -0
  1232. package/dist/src/ui/components/GeminiRespondingSpinner.test.js.map +1 -0
  1233. package/dist/src/ui/components/GoalPill.d.ts +25 -0
  1234. package/dist/src/ui/components/GoalPill.js +77 -0
  1235. package/dist/src/ui/components/GoalPill.js.map +1 -0
  1236. package/dist/src/ui/components/GoalPill.test.d.ts +6 -0
  1237. package/dist/src/ui/components/GoalPill.test.js +56 -0
  1238. package/dist/src/ui/components/GoalPill.test.js.map +1 -0
  1239. package/dist/src/ui/components/Header.d.ts +62 -0
  1240. package/dist/src/ui/components/Header.js +155 -0
  1241. package/dist/src/ui/components/Header.js.map +1 -0
  1242. package/dist/src/ui/components/Header.test.d.ts +6 -0
  1243. package/dist/src/ui/components/Header.test.js +142 -0
  1244. package/dist/src/ui/components/Header.test.js.map +1 -0
  1245. package/dist/src/ui/components/Help.d.ts +18 -0
  1246. package/dist/src/ui/components/Help.js +236 -0
  1247. package/dist/src/ui/components/Help.js.map +1 -0
  1248. package/dist/src/ui/components/Help.test.d.ts +6 -0
  1249. package/dist/src/ui/components/Help.test.js +243 -0
  1250. package/dist/src/ui/components/Help.test.js.map +1 -0
  1251. package/dist/src/ui/components/HistoryItemDisplay.d.ts +39 -0
  1252. package/dist/src/ui/components/HistoryItemDisplay.js +51 -0
  1253. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -0
  1254. package/dist/src/ui/components/HistoryItemDisplay.test.d.ts +6 -0
  1255. package/dist/src/ui/components/HistoryItemDisplay.test.js +197 -0
  1256. package/dist/src/ui/components/HistoryItemDisplay.test.js.map +1 -0
  1257. package/dist/src/ui/components/IdeTrustChangeDialog.d.ts +11 -0
  1258. package/dist/src/ui/components/IdeTrustChangeDialog.js +34 -0
  1259. package/dist/src/ui/components/IdeTrustChangeDialog.js.map +1 -0
  1260. package/dist/src/ui/components/IdeTrustChangeDialog.test.d.ts +6 -0
  1261. package/dist/src/ui/components/IdeTrustChangeDialog.test.js +53 -0
  1262. package/dist/src/ui/components/IdeTrustChangeDialog.test.js.map +1 -0
  1263. package/dist/src/ui/components/InputPrompt.d.ts +63 -0
  1264. package/dist/src/ui/components/InputPrompt.js +1220 -0
  1265. package/dist/src/ui/components/InputPrompt.js.map +1 -0
  1266. package/dist/src/ui/components/KeyboardShortcuts.d.ts +7 -0
  1267. package/dist/src/ui/components/KeyboardShortcuts.js +78 -0
  1268. package/dist/src/ui/components/KeyboardShortcuts.js.map +1 -0
  1269. package/dist/src/ui/components/LoadingIndicator.d.ts +31 -0
  1270. package/dist/src/ui/components/LoadingIndicator.js +46 -0
  1271. package/dist/src/ui/components/LoadingIndicator.js.map +1 -0
  1272. package/dist/src/ui/components/LoadingIndicator.test.d.ts +6 -0
  1273. package/dist/src/ui/components/LoadingIndicator.test.js +246 -0
  1274. package/dist/src/ui/components/LoadingIndicator.test.js.map +1 -0
  1275. package/dist/src/ui/components/LoopDetectionConfirmation.d.ts +13 -0
  1276. package/dist/src/ui/components/LoopDetectionConfirmation.js +37 -0
  1277. package/dist/src/ui/components/LoopDetectionConfirmation.js.map +1 -0
  1278. package/dist/src/ui/components/LoopDetectionConfirmation.test.d.ts +6 -0
  1279. package/dist/src/ui/components/LoopDetectionConfirmation.test.js +28 -0
  1280. package/dist/src/ui/components/LoopDetectionConfirmation.test.js.map +1 -0
  1281. package/dist/src/ui/components/MainContent.d.ts +6 -0
  1282. package/dist/src/ui/components/MainContent.js +437 -0
  1283. package/dist/src/ui/components/MainContent.js.map +1 -0
  1284. package/dist/src/ui/components/MainContent.test.d.ts +6 -0
  1285. package/dist/src/ui/components/MainContent.test.js +621 -0
  1286. package/dist/src/ui/components/MainContent.test.js.map +1 -0
  1287. package/dist/src/ui/components/MemoryDialog.d.ts +10 -0
  1288. package/dist/src/ui/components/MemoryDialog.js +288 -0
  1289. package/dist/src/ui/components/MemoryDialog.js.map +1 -0
  1290. package/dist/src/ui/components/MemoryDialog.test.d.ts +6 -0
  1291. package/dist/src/ui/components/MemoryDialog.test.js +165 -0
  1292. package/dist/src/ui/components/MemoryDialog.test.js.map +1 -0
  1293. package/dist/src/ui/components/MemoryUsageDisplay.d.ts +7 -0
  1294. package/dist/src/ui/components/MemoryUsageDisplay.js +24 -0
  1295. package/dist/src/ui/components/MemoryUsageDisplay.js.map +1 -0
  1296. package/dist/src/ui/components/ModelDialog.d.ts +12 -0
  1297. package/dist/src/ui/components/ModelDialog.js +390 -0
  1298. package/dist/src/ui/components/ModelDialog.js.map +1 -0
  1299. package/dist/src/ui/components/ModelDialog.test.d.ts +6 -0
  1300. package/dist/src/ui/components/ModelDialog.test.js +489 -0
  1301. package/dist/src/ui/components/ModelDialog.test.js.map +1 -0
  1302. package/dist/src/ui/components/ModelStatsDisplay.d.ts +11 -0
  1303. package/dist/src/ui/components/ModelStatsDisplay.js +61 -0
  1304. package/dist/src/ui/components/ModelStatsDisplay.js.map +1 -0
  1305. package/dist/src/ui/components/Notifications.d.ts +6 -0
  1306. package/dist/src/ui/components/Notifications.js +20 -0
  1307. package/dist/src/ui/components/Notifications.js.map +1 -0
  1308. package/dist/src/ui/components/PermissionsDialog.d.ts +11 -0
  1309. package/dist/src/ui/components/PermissionsDialog.js +547 -0
  1310. package/dist/src/ui/components/PermissionsDialog.js.map +1 -0
  1311. package/dist/src/ui/components/PlanSummaryDisplay.d.ts +14 -0
  1312. package/dist/src/ui/components/PlanSummaryDisplay.js +10 -0
  1313. package/dist/src/ui/components/PlanSummaryDisplay.js.map +1 -0
  1314. package/dist/src/ui/components/PluginChoicePrompt.d.ts +18 -0
  1315. package/dist/src/ui/components/PluginChoicePrompt.js +96 -0
  1316. package/dist/src/ui/components/PluginChoicePrompt.js.map +1 -0
  1317. package/dist/src/ui/components/PluginChoicePrompt.test.d.ts +6 -0
  1318. package/dist/src/ui/components/PluginChoicePrompt.test.js +136 -0
  1319. package/dist/src/ui/components/PluginChoicePrompt.test.js.map +1 -0
  1320. package/dist/src/ui/components/PrepareLabel.d.ts +15 -0
  1321. package/dist/src/ui/components/PrepareLabel.js +72 -0
  1322. package/dist/src/ui/components/PrepareLabel.js.map +1 -0
  1323. package/dist/src/ui/components/PrepareLabel.test.d.ts +6 -0
  1324. package/dist/src/ui/components/PrepareLabel.test.js +71 -0
  1325. package/dist/src/ui/components/PrepareLabel.test.js.map +1 -0
  1326. package/dist/src/ui/components/ProviderUpdatePrompt.d.ts +12 -0
  1327. package/dist/src/ui/components/ProviderUpdatePrompt.js +49 -0
  1328. package/dist/src/ui/components/ProviderUpdatePrompt.js.map +1 -0
  1329. package/dist/src/ui/components/QueuedMessageDisplay.d.ts +9 -0
  1330. package/dist/src/ui/components/QueuedMessageDisplay.js +35 -0
  1331. package/dist/src/ui/components/QueuedMessageDisplay.js.map +1 -0
  1332. package/dist/src/ui/components/QueuedMessageDisplay.test.d.ts +6 -0
  1333. package/dist/src/ui/components/QueuedMessageDisplay.test.js +76 -0
  1334. package/dist/src/ui/components/QueuedMessageDisplay.test.js.map +1 -0
  1335. package/dist/src/ui/components/QuittingDisplay.d.ts +6 -0
  1336. package/dist/src/ui/components/QuittingDisplay.js +21 -0
  1337. package/dist/src/ui/components/QuittingDisplay.js.map +1 -0
  1338. package/dist/src/ui/components/QwenOAuthProgress.d.ts +16 -0
  1339. package/dist/src/ui/components/QwenOAuthProgress.js +65 -0
  1340. package/dist/src/ui/components/QwenOAuthProgress.js.map +1 -0
  1341. package/dist/src/ui/components/QwenOAuthProgress.test.d.ts +6 -0
  1342. package/dist/src/ui/components/QwenOAuthProgress.test.js +287 -0
  1343. package/dist/src/ui/components/QwenOAuthProgress.test.js.map +1 -0
  1344. package/dist/src/ui/components/RewindSelector.d.ts +22 -0
  1345. package/dist/src/ui/components/RewindSelector.js +264 -0
  1346. package/dist/src/ui/components/RewindSelector.js.map +1 -0
  1347. package/dist/src/ui/components/RewindSelector.test.d.ts +6 -0
  1348. package/dist/src/ui/components/RewindSelector.test.js +146 -0
  1349. package/dist/src/ui/components/RewindSelector.test.js.map +1 -0
  1350. package/dist/src/ui/components/SessionPicker.d.ts +55 -0
  1351. package/dist/src/ui/components/SessionPicker.js +142 -0
  1352. package/dist/src/ui/components/SessionPicker.js.map +1 -0
  1353. package/dist/src/ui/components/SessionPreview.d.ts +20 -0
  1354. package/dist/src/ui/components/SessionPreview.js +97 -0
  1355. package/dist/src/ui/components/SessionPreview.js.map +1 -0
  1356. package/dist/src/ui/components/SessionPreview.test.d.ts +1 -0
  1357. package/dist/src/ui/components/SessionPreview.test.js +124 -0
  1358. package/dist/src/ui/components/SessionPreview.test.js.map +1 -0
  1359. package/dist/src/ui/components/SessionSummaryDisplay.d.ts +12 -0
  1360. package/dist/src/ui/components/SessionSummaryDisplay.js +17 -0
  1361. package/dist/src/ui/components/SessionSummaryDisplay.js.map +1 -0
  1362. package/dist/src/ui/components/SettingInputPrompt.d.ts +15 -0
  1363. package/dist/src/ui/components/SettingInputPrompt.js +63 -0
  1364. package/dist/src/ui/components/SettingInputPrompt.js.map +1 -0
  1365. package/dist/src/ui/components/SettingInputPrompt.test.d.ts +6 -0
  1366. package/dist/src/ui/components/SettingInputPrompt.test.js +60 -0
  1367. package/dist/src/ui/components/SettingInputPrompt.test.js.map +1 -0
  1368. package/dist/src/ui/components/SettingsCorruptedDialog.d.ts +14 -0
  1369. package/dist/src/ui/components/SettingsCorruptedDialog.js +44 -0
  1370. package/dist/src/ui/components/SettingsCorruptedDialog.js.map +1 -0
  1371. package/dist/src/ui/components/SettingsCorruptedDialog.test.d.ts +6 -0
  1372. package/dist/src/ui/components/SettingsCorruptedDialog.test.js +162 -0
  1373. package/dist/src/ui/components/SettingsCorruptedDialog.test.js.map +1 -0
  1374. package/dist/src/ui/components/SettingsDialog.d.ts +18 -0
  1375. package/dist/src/ui/components/SettingsDialog.js +658 -0
  1376. package/dist/src/ui/components/SettingsDialog.js.map +1 -0
  1377. package/dist/src/ui/components/SettingsDialog.test.d.ts +6 -0
  1378. package/dist/src/ui/components/SettingsDialog.test.js +1127 -0
  1379. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -0
  1380. package/dist/src/ui/components/ShellConfirmationDialog.d.ts +17 -0
  1381. package/dist/src/ui/components/ShellConfirmationDialog.js +75 -0
  1382. package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -0
  1383. package/dist/src/ui/components/ShellConfirmationDialog.test.d.ts +6 -0
  1384. package/dist/src/ui/components/ShellConfirmationDialog.test.js +167 -0
  1385. package/dist/src/ui/components/ShellConfirmationDialog.test.js.map +1 -0
  1386. package/dist/src/ui/components/ShellInputPrompt.d.ts +11 -0
  1387. package/dist/src/ui/components/ShellInputPrompt.js +42 -0
  1388. package/dist/src/ui/components/ShellInputPrompt.js.map +1 -0
  1389. package/dist/src/ui/components/ShellModeIndicator.d.ts +7 -0
  1390. package/dist/src/ui/components/ShellModeIndicator.js +5 -0
  1391. package/dist/src/ui/components/ShellModeIndicator.js.map +1 -0
  1392. package/dist/src/ui/components/ShowMoreLines.d.ts +10 -0
  1393. package/dist/src/ui/components/ShowMoreLines.js +24 -0
  1394. package/dist/src/ui/components/ShowMoreLines.js.map +1 -0
  1395. package/dist/src/ui/components/StandaloneSessionPicker.d.ts +11 -0
  1396. package/dist/src/ui/components/StandaloneSessionPicker.js +105 -0
  1397. package/dist/src/ui/components/StandaloneSessionPicker.js.map +1 -0
  1398. package/dist/src/ui/components/StandaloneSessionPicker.test.d.ts +6 -0
  1399. package/dist/src/ui/components/StandaloneSessionPicker.test.js +667 -0
  1400. package/dist/src/ui/components/StandaloneSessionPicker.test.js.map +1 -0
  1401. package/dist/src/ui/components/StatsActivityTab.d.ts +14 -0
  1402. package/dist/src/ui/components/StatsActivityTab.js +85 -0
  1403. package/dist/src/ui/components/StatsActivityTab.js.map +1 -0
  1404. package/dist/src/ui/components/StatsDialog.d.ts +12 -0
  1405. package/dist/src/ui/components/StatsDialog.js +104 -0
  1406. package/dist/src/ui/components/StatsDialog.js.map +1 -0
  1407. package/dist/src/ui/components/StatsDisplay.d.ts +13 -0
  1408. package/dist/src/ui/components/StatsDisplay.js +52 -0
  1409. package/dist/src/ui/components/StatsDisplay.js.map +1 -0
  1410. package/dist/src/ui/components/StatsEfficiencyTab.d.ts +11 -0
  1411. package/dist/src/ui/components/StatsEfficiencyTab.js +99 -0
  1412. package/dist/src/ui/components/StatsEfficiencyTab.js.map +1 -0
  1413. package/dist/src/ui/components/StatsHeatmapView.d.ts +12 -0
  1414. package/dist/src/ui/components/StatsHeatmapView.js +40 -0
  1415. package/dist/src/ui/components/StatsHeatmapView.js.map +1 -0
  1416. package/dist/src/ui/components/StatsSessionTab.d.ts +7 -0
  1417. package/dist/src/ui/components/StatsSessionTab.js +40 -0
  1418. package/dist/src/ui/components/StatsSessionTab.js.map +1 -0
  1419. package/dist/src/ui/components/StatusLineDialog.d.ts +22 -0
  1420. package/dist/src/ui/components/StatusLineDialog.js +140 -0
  1421. package/dist/src/ui/components/StatusLineDialog.js.map +1 -0
  1422. package/dist/src/ui/components/StatusLineDialog.test.d.ts +6 -0
  1423. package/dist/src/ui/components/StatusLineDialog.test.js +180 -0
  1424. package/dist/src/ui/components/StatusLineDialog.test.js.map +1 -0
  1425. package/dist/src/ui/components/StickyTodoList.d.ts +14 -0
  1426. package/dist/src/ui/components/StickyTodoList.js +45 -0
  1427. package/dist/src/ui/components/StickyTodoList.js.map +1 -0
  1428. package/dist/src/ui/components/StickyTodoList.test.d.ts +6 -0
  1429. package/dist/src/ui/components/StickyTodoList.test.js +128 -0
  1430. package/dist/src/ui/components/StickyTodoList.test.js.map +1 -0
  1431. package/dist/src/ui/components/SuggestionsDisplay.d.ts +47 -0
  1432. package/dist/src/ui/components/SuggestionsDisplay.js +43 -0
  1433. package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -0
  1434. package/dist/src/ui/components/SuggestionsDisplay.test.d.ts +6 -0
  1435. package/dist/src/ui/components/SuggestionsDisplay.test.js +39 -0
  1436. package/dist/src/ui/components/SuggestionsDisplay.test.js.map +1 -0
  1437. package/dist/src/ui/components/ThemeDialog.d.ts +20 -0
  1438. package/dist/src/ui/components/ThemeDialog.js +137 -0
  1439. package/dist/src/ui/components/ThemeDialog.js.map +1 -0
  1440. package/dist/src/ui/components/ThemeDialog.test.d.ts +6 -0
  1441. package/dist/src/ui/components/ThemeDialog.test.js +75 -0
  1442. package/dist/src/ui/components/ThemeDialog.test.js.map +1 -0
  1443. package/dist/src/ui/components/ThinkingDots.d.ts +11 -0
  1444. package/dist/src/ui/components/ThinkingDots.js +47 -0
  1445. package/dist/src/ui/components/ThinkingDots.js.map +1 -0
  1446. package/dist/src/ui/components/ThinkingIndicator.d.ts +7 -0
  1447. package/dist/src/ui/components/ThinkingIndicator.js +13 -0
  1448. package/dist/src/ui/components/ThinkingIndicator.js.map +1 -0
  1449. package/dist/src/ui/components/Tips.d.ts +6 -0
  1450. package/dist/src/ui/components/Tips.js +37 -0
  1451. package/dist/src/ui/components/Tips.js.map +1 -0
  1452. package/dist/src/ui/components/Tips.test.d.ts +6 -0
  1453. package/dist/src/ui/components/Tips.test.js +145 -0
  1454. package/dist/src/ui/components/Tips.test.js.map +1 -0
  1455. package/dist/src/ui/components/TodoDisplay.d.ts +16 -0
  1456. package/dist/src/ui/components/TodoDisplay.js +27 -0
  1457. package/dist/src/ui/components/TodoDisplay.js.map +1 -0
  1458. package/dist/src/ui/components/TodoDisplay.test.d.ts +6 -0
  1459. package/dist/src/ui/components/TodoDisplay.test.js +77 -0
  1460. package/dist/src/ui/components/TodoDisplay.test.js.map +1 -0
  1461. package/dist/src/ui/components/ToolStatsDisplay.d.ts +11 -0
  1462. package/dist/src/ui/components/ToolStatsDisplay.js +42 -0
  1463. package/dist/src/ui/components/ToolStatsDisplay.js.map +1 -0
  1464. package/dist/src/ui/components/TrustDialog.d.ts +13 -0
  1465. package/dist/src/ui/components/TrustDialog.js +48 -0
  1466. package/dist/src/ui/components/TrustDialog.js.map +1 -0
  1467. package/dist/src/ui/components/TrustDialog.test.d.ts +6 -0
  1468. package/dist/src/ui/components/TrustDialog.test.js +154 -0
  1469. package/dist/src/ui/components/TrustDialog.test.js.map +1 -0
  1470. package/dist/src/ui/components/UpdateNotification.d.ts +10 -0
  1471. package/dist/src/ui/components/UpdateNotification.js +10 -0
  1472. package/dist/src/ui/components/UpdateNotification.js.map +1 -0
  1473. package/dist/src/ui/components/WelcomeBackDialog.d.ts +13 -0
  1474. package/dist/src/ui/components/WelcomeBackDialog.js +43 -0
  1475. package/dist/src/ui/components/WelcomeBackDialog.js.map +1 -0
  1476. package/dist/src/ui/components/WorktreeExitDialog.d.ts +26 -0
  1477. package/dist/src/ui/components/WorktreeExitDialog.js +134 -0
  1478. package/dist/src/ui/components/WorktreeExitDialog.js.map +1 -0
  1479. package/dist/src/ui/components/WorktreeExitDialog.test.d.ts +6 -0
  1480. package/dist/src/ui/components/WorktreeExitDialog.test.js +41 -0
  1481. package/dist/src/ui/components/WorktreeExitDialog.test.js.map +1 -0
  1482. package/dist/src/ui/components/agent-view/AgentChatContent.d.ts +27 -0
  1483. package/dist/src/ui/components/agent-view/AgentChatContent.js +150 -0
  1484. package/dist/src/ui/components/agent-view/AgentChatContent.js.map +1 -0
  1485. package/dist/src/ui/components/agent-view/AgentChatView.d.ts +10 -0
  1486. package/dist/src/ui/components/agent-view/AgentChatView.js +24 -0
  1487. package/dist/src/ui/components/agent-view/AgentChatView.js.map +1 -0
  1488. package/dist/src/ui/components/agent-view/AgentComposer.d.ts +10 -0
  1489. package/dist/src/ui/components/agent-view/AgentComposer.js +183 -0
  1490. package/dist/src/ui/components/agent-view/AgentComposer.js.map +1 -0
  1491. package/dist/src/ui/components/agent-view/AgentFooter.d.ts +20 -0
  1492. package/dist/src/ui/components/agent-view/AgentFooter.js +15 -0
  1493. package/dist/src/ui/components/agent-view/AgentFooter.js.map +1 -0
  1494. package/dist/src/ui/components/agent-view/AgentHeader.d.ts +19 -0
  1495. package/dist/src/ui/components/agent-view/AgentHeader.js +13 -0
  1496. package/dist/src/ui/components/agent-view/AgentHeader.js.map +1 -0
  1497. package/dist/src/ui/components/agent-view/AgentTabBar.d.ts +6 -0
  1498. package/dist/src/ui/components/agent-view/AgentTabBar.js +110 -0
  1499. package/dist/src/ui/components/agent-view/AgentTabBar.js.map +1 -0
  1500. package/dist/src/ui/components/agent-view/AgentTabBar.test.d.ts +6 -0
  1501. package/dist/src/ui/components/agent-view/AgentTabBar.test.js +90 -0
  1502. package/dist/src/ui/components/agent-view/AgentTabBar.test.js.map +1 -0
  1503. package/dist/src/ui/components/agent-view/agentHistoryAdapter.d.ts +31 -0
  1504. package/dist/src/ui/components/agent-view/agentHistoryAdapter.js +148 -0
  1505. package/dist/src/ui/components/agent-view/agentHistoryAdapter.js.map +1 -0
  1506. package/dist/src/ui/components/agent-view/agentHistoryAdapter.test.d.ts +6 -0
  1507. package/dist/src/ui/components/agent-view/agentHistoryAdapter.test.js +318 -0
  1508. package/dist/src/ui/components/agent-view/agentHistoryAdapter.test.js.map +1 -0
  1509. package/dist/src/ui/components/agent-view/index.d.ts +11 -0
  1510. package/dist/src/ui/components/agent-view/index.js +12 -0
  1511. package/dist/src/ui/components/agent-view/index.js.map +1 -0
  1512. package/dist/src/ui/components/approvalModeVisuals.d.ts +11 -0
  1513. package/dist/src/ui/components/approvalModeVisuals.js +37 -0
  1514. package/dist/src/ui/components/approvalModeVisuals.js.map +1 -0
  1515. package/dist/src/ui/components/approvalModeVisuals.test.d.ts +6 -0
  1516. package/dist/src/ui/components/approvalModeVisuals.test.js +32 -0
  1517. package/dist/src/ui/components/approvalModeVisuals.test.js.map +1 -0
  1518. package/dist/src/ui/components/arena/ArenaCards.d.ts +21 -0
  1519. package/dist/src/ui/components/arena/ArenaCards.js +99 -0
  1520. package/dist/src/ui/components/arena/ArenaCards.js.map +1 -0
  1521. package/dist/src/ui/components/arena/ArenaCards.test.d.ts +6 -0
  1522. package/dist/src/ui/components/arena/ArenaCards.test.js +128 -0
  1523. package/dist/src/ui/components/arena/ArenaCards.test.js.map +1 -0
  1524. package/dist/src/ui/components/arena/ArenaSelectDialog.d.ts +16 -0
  1525. package/dist/src/ui/components/arena/ArenaSelectDialog.js +213 -0
  1526. package/dist/src/ui/components/arena/ArenaSelectDialog.js.map +1 -0
  1527. package/dist/src/ui/components/arena/ArenaSelectDialog.test.d.ts +6 -0
  1528. package/dist/src/ui/components/arena/ArenaSelectDialog.test.js +149 -0
  1529. package/dist/src/ui/components/arena/ArenaSelectDialog.test.js.map +1 -0
  1530. package/dist/src/ui/components/arena/ArenaStartDialog.d.ts +12 -0
  1531. package/dist/src/ui/components/arena/ArenaStartDialog.js +49 -0
  1532. package/dist/src/ui/components/arena/ArenaStartDialog.js.map +1 -0
  1533. package/dist/src/ui/components/arena/ArenaStatusDialog.d.ts +14 -0
  1534. package/dist/src/ui/components/arena/ArenaStatusDialog.js +111 -0
  1535. package/dist/src/ui/components/arena/ArenaStatusDialog.js.map +1 -0
  1536. package/dist/src/ui/components/arena/ArenaStopDialog.d.ts +15 -0
  1537. package/dist/src/ui/components/arena/ArenaStopDialog.js +113 -0
  1538. package/dist/src/ui/components/arena/ArenaStopDialog.js.map +1 -0
  1539. package/dist/src/ui/components/background-view/BackgroundTasksDialog.d.ts +17 -0
  1540. package/dist/src/ui/components/background-view/BackgroundTasksDialog.js +614 -0
  1541. package/dist/src/ui/components/background-view/BackgroundTasksDialog.js.map +1 -0
  1542. package/dist/src/ui/components/background-view/BackgroundTasksDialog.test.d.ts +6 -0
  1543. package/dist/src/ui/components/background-view/BackgroundTasksDialog.test.js +606 -0
  1544. package/dist/src/ui/components/background-view/BackgroundTasksDialog.test.js.map +1 -0
  1545. package/dist/src/ui/components/background-view/BackgroundTasksPill.d.ts +14 -0
  1546. package/dist/src/ui/components/background-view/BackgroundTasksPill.js +94 -0
  1547. package/dist/src/ui/components/background-view/BackgroundTasksPill.js.map +1 -0
  1548. package/dist/src/ui/components/background-view/BackgroundTasksPill.test.d.ts +6 -0
  1549. package/dist/src/ui/components/background-view/BackgroundTasksPill.test.js +158 -0
  1550. package/dist/src/ui/components/background-view/BackgroundTasksPill.test.js.map +1 -0
  1551. package/dist/src/ui/components/background-view/LiveAgentPanel.d.ts +43 -0
  1552. package/dist/src/ui/components/background-view/LiveAgentPanel.js +361 -0
  1553. package/dist/src/ui/components/background-view/LiveAgentPanel.js.map +1 -0
  1554. package/dist/src/ui/components/background-view/LiveAgentPanel.test.d.ts +6 -0
  1555. package/dist/src/ui/components/background-view/LiveAgentPanel.test.js +595 -0
  1556. package/dist/src/ui/components/background-view/LiveAgentPanel.test.js.map +1 -0
  1557. package/dist/src/ui/components/extensions/ExtensionsManagerDialog.d.ts +12 -0
  1558. package/dist/src/ui/components/extensions/ExtensionsManagerDialog.js +337 -0
  1559. package/dist/src/ui/components/extensions/ExtensionsManagerDialog.js.map +1 -0
  1560. package/dist/src/ui/components/extensions/ExtensionsManagerDialog.test.d.ts +6 -0
  1561. package/dist/src/ui/components/extensions/ExtensionsManagerDialog.test.js +90 -0
  1562. package/dist/src/ui/components/extensions/ExtensionsManagerDialog.test.js.map +1 -0
  1563. package/dist/src/ui/components/extensions/index.d.ts +8 -0
  1564. package/dist/src/ui/components/extensions/index.js +8 -0
  1565. package/dist/src/ui/components/extensions/index.js.map +1 -0
  1566. package/dist/src/ui/components/extensions/steps/ActionSelectionStep.d.ts +15 -0
  1567. package/dist/src/ui/components/extensions/steps/ActionSelectionStep.js +75 -0
  1568. package/dist/src/ui/components/extensions/steps/ActionSelectionStep.js.map +1 -0
  1569. package/dist/src/ui/components/extensions/steps/ActionSelectionStep.test.d.ts +6 -0
  1570. package/dist/src/ui/components/extensions/steps/ActionSelectionStep.test.js +56 -0
  1571. package/dist/src/ui/components/extensions/steps/ActionSelectionStep.test.js.map +1 -0
  1572. package/dist/src/ui/components/extensions/steps/ExtensionDetailStep.d.ts +11 -0
  1573. package/dist/src/ui/components/extensions/steps/ExtensionDetailStep.js +23 -0
  1574. package/dist/src/ui/components/extensions/steps/ExtensionDetailStep.js.map +1 -0
  1575. package/dist/src/ui/components/extensions/steps/ExtensionListStep.d.ts +13 -0
  1576. package/dist/src/ui/components/extensions/steps/ExtensionListStep.js +105 -0
  1577. package/dist/src/ui/components/extensions/steps/ExtensionListStep.js.map +1 -0
  1578. package/dist/src/ui/components/extensions/steps/ExtensionListStep.test.d.ts +6 -0
  1579. package/dist/src/ui/components/extensions/steps/ExtensionListStep.test.js +74 -0
  1580. package/dist/src/ui/components/extensions/steps/ExtensionListStep.test.js.map +1 -0
  1581. package/dist/src/ui/components/extensions/steps/ScopeSelectStep.d.ts +13 -0
  1582. package/dist/src/ui/components/extensions/steps/ScopeSelectStep.js +40 -0
  1583. package/dist/src/ui/components/extensions/steps/ScopeSelectStep.js.map +1 -0
  1584. package/dist/src/ui/components/extensions/steps/UninstallConfirmStep.d.ts +13 -0
  1585. package/dist/src/ui/components/extensions/steps/UninstallConfirmStep.js +38 -0
  1586. package/dist/src/ui/components/extensions/steps/UninstallConfirmStep.js.map +1 -0
  1587. package/dist/src/ui/components/extensions/steps/index.d.ts +10 -0
  1588. package/dist/src/ui/components/extensions/steps/index.js +11 -0
  1589. package/dist/src/ui/components/extensions/steps/index.js.map +1 -0
  1590. package/dist/src/ui/components/extensions/types.d.ts +73 -0
  1591. package/dist/src/ui/components/extensions/types.js +18 -0
  1592. package/dist/src/ui/components/extensions/types.js.map +1 -0
  1593. package/dist/src/ui/components/hooks/HandlerListBody.d.ts +12 -0
  1594. package/dist/src/ui/components/hooks/HandlerListBody.js +54 -0
  1595. package/dist/src/ui/components/hooks/HandlerListBody.js.map +1 -0
  1596. package/dist/src/ui/components/hooks/HandlerListBody.test.d.ts +6 -0
  1597. package/dist/src/ui/components/hooks/HandlerListBody.test.js +175 -0
  1598. package/dist/src/ui/components/hooks/HandlerListBody.test.js.map +1 -0
  1599. package/dist/src/ui/components/hooks/HookConfigDetailStep.d.ts +12 -0
  1600. package/dist/src/ui/components/hooks/HookConfigDetailStep.js +48 -0
  1601. package/dist/src/ui/components/hooks/HookConfigDetailStep.js.map +1 -0
  1602. package/dist/src/ui/components/hooks/HookConfigDetailStep.test.d.ts +6 -0
  1603. package/dist/src/ui/components/hooks/HookConfigDetailStep.test.js +236 -0
  1604. package/dist/src/ui/components/hooks/HookConfigDetailStep.test.js.map +1 -0
  1605. package/dist/src/ui/components/hooks/HookDetailStep.d.ts +12 -0
  1606. package/dist/src/ui/components/hooks/HookDetailStep.js +11 -0
  1607. package/dist/src/ui/components/hooks/HookDetailStep.js.map +1 -0
  1608. package/dist/src/ui/components/hooks/HookDetailStep.test.d.ts +6 -0
  1609. package/dist/src/ui/components/hooks/HookDetailStep.test.js +241 -0
  1610. package/dist/src/ui/components/hooks/HookDetailStep.test.js.map +1 -0
  1611. package/dist/src/ui/components/hooks/HookEventHandlerListStep.d.ts +12 -0
  1612. package/dist/src/ui/components/hooks/HookEventHandlerListStep.js +18 -0
  1613. package/dist/src/ui/components/hooks/HookEventHandlerListStep.js.map +1 -0
  1614. package/dist/src/ui/components/hooks/HookEventHeader.d.ts +13 -0
  1615. package/dist/src/ui/components/hooks/HookEventHeader.js +23 -0
  1616. package/dist/src/ui/components/hooks/HookEventHeader.js.map +1 -0
  1617. package/dist/src/ui/components/hooks/HookEventMatcherListStep.d.ts +12 -0
  1618. package/dist/src/ui/components/hooks/HookEventMatcherListStep.js +28 -0
  1619. package/dist/src/ui/components/hooks/HookEventMatcherListStep.js.map +1 -0
  1620. package/dist/src/ui/components/hooks/HookMatcherDetailStep.d.ts +13 -0
  1621. package/dist/src/ui/components/hooks/HookMatcherDetailStep.js +16 -0
  1622. package/dist/src/ui/components/hooks/HookMatcherDetailStep.js.map +1 -0
  1623. package/dist/src/ui/components/hooks/HookMatcherDetailStep.test.d.ts +6 -0
  1624. package/dist/src/ui/components/hooks/HookMatcherDetailStep.test.js +154 -0
  1625. package/dist/src/ui/components/hooks/HookMatcherDetailStep.test.js.map +1 -0
  1626. package/dist/src/ui/components/hooks/HooksDisabledStep.d.ts +10 -0
  1627. package/dist/src/ui/components/hooks/HooksDisabledStep.js +23 -0
  1628. package/dist/src/ui/components/hooks/HooksDisabledStep.js.map +1 -0
  1629. package/dist/src/ui/components/hooks/HooksDisabledStep.test.d.ts +6 -0
  1630. package/dist/src/ui/components/hooks/HooksDisabledStep.test.js +86 -0
  1631. package/dist/src/ui/components/hooks/HooksDisabledStep.test.js.map +1 -0
  1632. package/dist/src/ui/components/hooks/HooksListStep.d.ts +12 -0
  1633. package/dist/src/ui/components/hooks/HooksListStep.js +32 -0
  1634. package/dist/src/ui/components/hooks/HooksListStep.js.map +1 -0
  1635. package/dist/src/ui/components/hooks/HooksListStep.test.d.ts +6 -0
  1636. package/dist/src/ui/components/hooks/HooksListStep.test.js +144 -0
  1637. package/dist/src/ui/components/hooks/HooksListStep.test.js.map +1 -0
  1638. package/dist/src/ui/components/hooks/HooksManagementDialog.d.ts +7 -0
  1639. package/dist/src/ui/components/hooks/HooksManagementDialog.js +418 -0
  1640. package/dist/src/ui/components/hooks/HooksManagementDialog.js.map +1 -0
  1641. package/dist/src/ui/components/hooks/HooksManagementDialog.test.d.ts +6 -0
  1642. package/dist/src/ui/components/hooks/HooksManagementDialog.test.js +305 -0
  1643. package/dist/src/ui/components/hooks/HooksManagementDialog.test.js.map +1 -0
  1644. package/dist/src/ui/components/hooks/constants.d.ts +26 -0
  1645. package/dist/src/ui/components/hooks/constants.js +227 -0
  1646. package/dist/src/ui/components/hooks/constants.js.map +1 -0
  1647. package/dist/src/ui/components/hooks/constants.test.d.ts +6 -0
  1648. package/dist/src/ui/components/hooks/constants.test.js +317 -0
  1649. package/dist/src/ui/components/hooks/constants.test.js.map +1 -0
  1650. package/dist/src/ui/components/hooks/index.d.ts +12 -0
  1651. package/dist/src/ui/components/hooks/index.js +13 -0
  1652. package/dist/src/ui/components/hooks/index.js.map +1 -0
  1653. package/dist/src/ui/components/hooks/matcherGrouping.d.ts +9 -0
  1654. package/dist/src/ui/components/hooks/matcherGrouping.js +35 -0
  1655. package/dist/src/ui/components/hooks/matcherGrouping.js.map +1 -0
  1656. package/dist/src/ui/components/hooks/matcherGrouping.test.d.ts +6 -0
  1657. package/dist/src/ui/components/hooks/matcherGrouping.test.js +183 -0
  1658. package/dist/src/ui/components/hooks/matcherGrouping.test.js.map +1 -0
  1659. package/dist/src/ui/components/hooks/sourceLabels.d.ts +13 -0
  1660. package/dist/src/ui/components/hooks/sourceLabels.js +35 -0
  1661. package/dist/src/ui/components/hooks/sourceLabels.js.map +1 -0
  1662. package/dist/src/ui/components/hooks/sourceLabels.test.d.ts +6 -0
  1663. package/dist/src/ui/components/hooks/sourceLabels.test.js +81 -0
  1664. package/dist/src/ui/components/hooks/sourceLabels.test.js.map +1 -0
  1665. package/dist/src/ui/components/hooks/types.d.ts +42 -0
  1666. package/dist/src/ui/components/hooks/types.js +13 -0
  1667. package/dist/src/ui/components/hooks/types.js.map +1 -0
  1668. package/dist/src/ui/components/mcp/MCPHealthPill.d.ts +24 -0
  1669. package/dist/src/ui/components/mcp/MCPHealthPill.js +33 -0
  1670. package/dist/src/ui/components/mcp/MCPHealthPill.js.map +1 -0
  1671. package/dist/src/ui/components/mcp/MCPHealthPill.test.d.ts +6 -0
  1672. package/dist/src/ui/components/mcp/MCPHealthPill.test.js +42 -0
  1673. package/dist/src/ui/components/mcp/MCPHealthPill.test.js.map +1 -0
  1674. package/dist/src/ui/components/mcp/MCPManagementDialog.d.ts +7 -0
  1675. package/dist/src/ui/components/mcp/MCPManagementDialog.js +472 -0
  1676. package/dist/src/ui/components/mcp/MCPManagementDialog.js.map +1 -0
  1677. package/dist/src/ui/components/mcp/constants.d.ts +29 -0
  1678. package/dist/src/ui/components/mcp/constants.js +34 -0
  1679. package/dist/src/ui/components/mcp/constants.js.map +1 -0
  1680. package/dist/src/ui/components/mcp/index.d.ts +12 -0
  1681. package/dist/src/ui/components/mcp/index.js +15 -0
  1682. package/dist/src/ui/components/mcp/index.js.map +1 -0
  1683. package/dist/src/ui/components/mcp/steps/AuthenticateStep.d.ts +7 -0
  1684. package/dist/src/ui/components/mcp/steps/AuthenticateStep.js +187 -0
  1685. package/dist/src/ui/components/mcp/steps/AuthenticateStep.js.map +1 -0
  1686. package/dist/src/ui/components/mcp/steps/DisableScopeSelectStep.d.ts +7 -0
  1687. package/dist/src/ui/components/mcp/steps/DisableScopeSelectStep.js +44 -0
  1688. package/dist/src/ui/components/mcp/steps/DisableScopeSelectStep.js.map +1 -0
  1689. package/dist/src/ui/components/mcp/steps/ServerDetailStep.d.ts +7 -0
  1690. package/dist/src/ui/components/mcp/steps/ServerDetailStep.js +108 -0
  1691. package/dist/src/ui/components/mcp/steps/ServerDetailStep.js.map +1 -0
  1692. package/dist/src/ui/components/mcp/steps/ServerListStep.d.ts +7 -0
  1693. package/dist/src/ui/components/mcp/steps/ServerListStep.js +74 -0
  1694. package/dist/src/ui/components/mcp/steps/ServerListStep.js.map +1 -0
  1695. package/dist/src/ui/components/mcp/steps/ServerListStep.test.d.ts +6 -0
  1696. package/dist/src/ui/components/mcp/steps/ServerListStep.test.js +60 -0
  1697. package/dist/src/ui/components/mcp/steps/ServerListStep.test.js.map +1 -0
  1698. package/dist/src/ui/components/mcp/steps/ToolDetailStep.d.ts +7 -0
  1699. package/dist/src/ui/components/mcp/steps/ToolDetailStep.js +49 -0
  1700. package/dist/src/ui/components/mcp/steps/ToolDetailStep.js.map +1 -0
  1701. package/dist/src/ui/components/mcp/steps/ToolListStep.d.ts +7 -0
  1702. package/dist/src/ui/components/mcp/steps/ToolListStep.js +80 -0
  1703. package/dist/src/ui/components/mcp/steps/ToolListStep.js.map +1 -0
  1704. package/dist/src/ui/components/mcp/steps/ToolListStep.test.d.ts +6 -0
  1705. package/dist/src/ui/components/mcp/steps/ToolListStep.test.js +55 -0
  1706. package/dist/src/ui/components/mcp/steps/ToolListStep.test.js.map +1 -0
  1707. package/dist/src/ui/components/mcp/types.d.ts +177 -0
  1708. package/dist/src/ui/components/mcp/types.js +17 -0
  1709. package/dist/src/ui/components/mcp/types.js.map +1 -0
  1710. package/dist/src/ui/components/mcp/utils.d.ts +40 -0
  1711. package/dist/src/ui/components/mcp/utils.js +126 -0
  1712. package/dist/src/ui/components/mcp/utils.js.map +1 -0
  1713. package/dist/src/ui/components/mcp/utils.test.d.ts +6 -0
  1714. package/dist/src/ui/components/mcp/utils.test.js +130 -0
  1715. package/dist/src/ui/components/mcp/utils.test.js.map +1 -0
  1716. package/dist/src/ui/components/messages/AskUserQuestionDialog.d.ts +14 -0
  1717. package/dist/src/ui/components/messages/AskUserQuestionDialog.js +291 -0
  1718. package/dist/src/ui/components/messages/AskUserQuestionDialog.js.map +1 -0
  1719. package/dist/src/ui/components/messages/AskUserQuestionDialog.test.d.ts +6 -0
  1720. package/dist/src/ui/components/messages/AskUserQuestionDialog.test.js +281 -0
  1721. package/dist/src/ui/components/messages/AskUserQuestionDialog.test.js.map +1 -0
  1722. package/dist/src/ui/components/messages/BtwMessage.d.ts +14 -0
  1723. package/dist/src/ui/components/messages/BtwMessage.js +30 -0
  1724. package/dist/src/ui/components/messages/BtwMessage.js.map +1 -0
  1725. package/dist/src/ui/components/messages/BtwMessage.test.d.ts +6 -0
  1726. package/dist/src/ui/components/messages/BtwMessage.test.js +60 -0
  1727. package/dist/src/ui/components/messages/BtwMessage.test.js.map +1 -0
  1728. package/dist/src/ui/components/messages/CompactToolGroupDisplay.d.ts +20 -0
  1729. package/dist/src/ui/components/messages/CompactToolGroupDisplay.js +80 -0
  1730. package/dist/src/ui/components/messages/CompactToolGroupDisplay.js.map +1 -0
  1731. package/dist/src/ui/components/messages/CompactToolGroupDisplay.test.d.ts +6 -0
  1732. package/dist/src/ui/components/messages/CompactToolGroupDisplay.test.js +139 -0
  1733. package/dist/src/ui/components/messages/CompactToolGroupDisplay.test.js.map +1 -0
  1734. package/dist/src/ui/components/messages/CompressionMessage.d.ts +10 -0
  1735. package/dist/src/ui/components/messages/CompressionMessage.js +50 -0
  1736. package/dist/src/ui/components/messages/CompressionMessage.js.map +1 -0
  1737. package/dist/src/ui/components/messages/CompressionMessage.test.d.ts +6 -0
  1738. package/dist/src/ui/components/messages/CompressionMessage.test.js +160 -0
  1739. package/dist/src/ui/components/messages/CompressionMessage.test.js.map +1 -0
  1740. package/dist/src/ui/components/messages/ConversationMessages.d.ts +46 -0
  1741. package/dist/src/ui/components/messages/ConversationMessages.js +32 -0
  1742. package/dist/src/ui/components/messages/ConversationMessages.js.map +1 -0
  1743. package/dist/src/ui/components/messages/DiffRenderer.d.ts +19 -0
  1744. package/dist/src/ui/components/messages/DiffRenderer.js +219 -0
  1745. package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -0
  1746. package/dist/src/ui/components/messages/DiffRenderer.test.d.ts +6 -0
  1747. package/dist/src/ui/components/messages/DiffRenderer.test.js +296 -0
  1748. package/dist/src/ui/components/messages/DiffRenderer.test.js.map +1 -0
  1749. package/dist/src/ui/components/messages/DiffStatsDisplay.d.ts +18 -0
  1750. package/dist/src/ui/components/messages/DiffStatsDisplay.js +50 -0
  1751. package/dist/src/ui/components/messages/DiffStatsDisplay.js.map +1 -0
  1752. package/dist/src/ui/components/messages/DiffStatsDisplay.test.d.ts +6 -0
  1753. package/dist/src/ui/components/messages/DiffStatsDisplay.test.js +165 -0
  1754. package/dist/src/ui/components/messages/DiffStatsDisplay.test.js.map +1 -0
  1755. package/dist/src/ui/components/messages/GoalStatusMessage.d.ts +16 -0
  1756. package/dist/src/ui/components/messages/GoalStatusMessage.js +76 -0
  1757. package/dist/src/ui/components/messages/GoalStatusMessage.js.map +1 -0
  1758. package/dist/src/ui/components/messages/GoalStatusMessage.test.d.ts +6 -0
  1759. package/dist/src/ui/components/messages/GoalStatusMessage.test.js +32 -0
  1760. package/dist/src/ui/components/messages/GoalStatusMessage.test.js.map +1 -0
  1761. package/dist/src/ui/components/messages/InlineParallelAgentsDisplay.d.ts +33 -0
  1762. package/dist/src/ui/components/messages/InlineParallelAgentsDisplay.js +196 -0
  1763. package/dist/src/ui/components/messages/InlineParallelAgentsDisplay.js.map +1 -0
  1764. package/dist/src/ui/components/messages/InlineParallelAgentsDisplay.test.d.ts +6 -0
  1765. package/dist/src/ui/components/messages/InlineParallelAgentsDisplay.test.js +219 -0
  1766. package/dist/src/ui/components/messages/InlineParallelAgentsDisplay.test.js.map +1 -0
  1767. package/dist/src/ui/components/messages/InsightProgressMessage.d.ts +12 -0
  1768. package/dist/src/ui/components/messages/InsightProgressMessage.js +20 -0
  1769. package/dist/src/ui/components/messages/InsightProgressMessage.js.map +1 -0
  1770. package/dist/src/ui/components/messages/MemorySavedMessage.d.ts +18 -0
  1771. package/dist/src/ui/components/messages/MemorySavedMessage.js +15 -0
  1772. package/dist/src/ui/components/messages/MemorySavedMessage.js.map +1 -0
  1773. package/dist/src/ui/components/messages/StatusMessages.d.ts +33 -0
  1774. package/dist/src/ui/components/messages/StatusMessages.js +28 -0
  1775. package/dist/src/ui/components/messages/StatusMessages.js.map +1 -0
  1776. package/dist/src/ui/components/messages/StatusMessages.test.d.ts +6 -0
  1777. package/dist/src/ui/components/messages/StatusMessages.test.js +21 -0
  1778. package/dist/src/ui/components/messages/StatusMessages.test.js.map +1 -0
  1779. package/dist/src/ui/components/messages/SummaryMessage.d.ts +11 -0
  1780. package/dist/src/ui/components/messages/SummaryMessage.js +38 -0
  1781. package/dist/src/ui/components/messages/SummaryMessage.js.map +1 -0
  1782. package/dist/src/ui/components/messages/ToolConfirmationMessage.d.ts +16 -0
  1783. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +352 -0
  1784. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -0
  1785. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.d.ts +6 -0
  1786. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +312 -0
  1787. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -0
  1788. package/dist/src/ui/components/messages/ToolGroupMessage.d.ts +58 -0
  1789. package/dist/src/ui/components/messages/ToolGroupMessage.js +278 -0
  1790. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -0
  1791. package/dist/src/ui/components/messages/ToolGroupMessage.test.d.ts +6 -0
  1792. package/dist/src/ui/components/messages/ToolGroupMessage.test.js +619 -0
  1793. package/dist/src/ui/components/messages/ToolGroupMessage.test.js.map +1 -0
  1794. package/dist/src/ui/components/messages/ToolMessage.d.ts +39 -0
  1795. package/dist/src/ui/components/messages/ToolMessage.js +400 -0
  1796. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -0
  1797. package/dist/src/ui/components/messages/ToolMessage.test.d.ts +6 -0
  1798. package/dist/src/ui/components/messages/ToolMessage.test.js +575 -0
  1799. package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -0
  1800. package/dist/src/ui/components/shared/BaseSelectionList.d.ts +40 -0
  1801. package/dist/src/ui/components/shared/BaseSelectionList.js +75 -0
  1802. package/dist/src/ui/components/shared/BaseSelectionList.js.map +1 -0
  1803. package/dist/src/ui/components/shared/BaseSelectionList.test.d.ts +6 -0
  1804. package/dist/src/ui/components/shared/BaseSelectionList.test.js +376 -0
  1805. package/dist/src/ui/components/shared/BaseSelectionList.test.js.map +1 -0
  1806. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.d.ts +37 -0
  1807. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.js +13 -0
  1808. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.js.map +1 -0
  1809. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.test.d.ts +6 -0
  1810. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.test.js +79 -0
  1811. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.test.js.map +1 -0
  1812. package/dist/src/ui/components/shared/EnumSelector.d.ts +18 -0
  1813. package/dist/src/ui/components/shared/EnumSelector.js +44 -0
  1814. package/dist/src/ui/components/shared/EnumSelector.js.map +1 -0
  1815. package/dist/src/ui/components/shared/EnumSelector.test.d.ts +6 -0
  1816. package/dist/src/ui/components/shared/EnumSelector.test.js +70 -0
  1817. package/dist/src/ui/components/shared/EnumSelector.test.js.map +1 -0
  1818. package/dist/src/ui/components/shared/MaxSizedBox.d.ts +61 -0
  1819. package/dist/src/ui/components/shared/MaxSizedBox.js +453 -0
  1820. package/dist/src/ui/components/shared/MaxSizedBox.js.map +1 -0
  1821. package/dist/src/ui/components/shared/MaxSizedBox.test.d.ts +6 -0
  1822. package/dist/src/ui/components/shared/MaxSizedBox.test.js +154 -0
  1823. package/dist/src/ui/components/shared/MaxSizedBox.test.js.map +1 -0
  1824. package/dist/src/ui/components/shared/MultiSelect.d.ts +30 -0
  1825. package/dist/src/ui/components/shared/MultiSelect.js +94 -0
  1826. package/dist/src/ui/components/shared/MultiSelect.js.map +1 -0
  1827. package/dist/src/ui/components/shared/RadioButtonSelect.d.ts +45 -0
  1828. package/dist/src/ui/components/shared/RadioButtonSelect.js +21 -0
  1829. package/dist/src/ui/components/shared/RadioButtonSelect.js.map +1 -0
  1830. package/dist/src/ui/components/shared/RadioButtonSelect.test.d.ts +6 -0
  1831. package/dist/src/ui/components/shared/RadioButtonSelect.test.js +134 -0
  1832. package/dist/src/ui/components/shared/RadioButtonSelect.test.js.map +1 -0
  1833. package/dist/src/ui/components/shared/ScopeSelector.d.ts +19 -0
  1834. package/dist/src/ui/components/shared/ScopeSelector.js +16 -0
  1835. package/dist/src/ui/components/shared/ScopeSelector.js.map +1 -0
  1836. package/dist/src/ui/components/shared/ScrollableList.d.ts +19 -0
  1837. package/dist/src/ui/components/shared/ScrollableList.js +97 -0
  1838. package/dist/src/ui/components/shared/ScrollableList.js.map +1 -0
  1839. package/dist/src/ui/components/shared/ScrollableList.test.d.ts +6 -0
  1840. package/dist/src/ui/components/shared/ScrollableList.test.js +158 -0
  1841. package/dist/src/ui/components/shared/ScrollableList.test.js.map +1 -0
  1842. package/dist/src/ui/components/shared/StaticRender.d.ts +25 -0
  1843. package/dist/src/ui/components/shared/StaticRender.js +25 -0
  1844. package/dist/src/ui/components/shared/StaticRender.js.map +1 -0
  1845. package/dist/src/ui/components/shared/TextInput.d.ts +25 -0
  1846. package/dist/src/ui/components/shared/TextInput.js +163 -0
  1847. package/dist/src/ui/components/shared/TextInput.js.map +1 -0
  1848. package/dist/src/ui/components/shared/TextInput.test.d.ts +6 -0
  1849. package/dist/src/ui/components/shared/TextInput.test.js +91 -0
  1850. package/dist/src/ui/components/shared/TextInput.test.js.map +1 -0
  1851. package/dist/src/ui/components/shared/ToolElapsedTime.d.ts +30 -0
  1852. package/dist/src/ui/components/shared/ToolElapsedTime.js +43 -0
  1853. package/dist/src/ui/components/shared/ToolElapsedTime.js.map +1 -0
  1854. package/dist/src/ui/components/shared/ToolElapsedTime.test.d.ts +6 -0
  1855. package/dist/src/ui/components/shared/ToolElapsedTime.test.js +63 -0
  1856. package/dist/src/ui/components/shared/ToolElapsedTime.test.js.map +1 -0
  1857. package/dist/src/ui/components/shared/ToolStatusIndicator.d.ts +14 -0
  1858. package/dist/src/ui/components/shared/ToolStatusIndicator.js +13 -0
  1859. package/dist/src/ui/components/shared/ToolStatusIndicator.js.map +1 -0
  1860. package/dist/src/ui/components/shared/VirtualizedList.d.ts +49 -0
  1861. package/dist/src/ui/components/shared/VirtualizedList.js +529 -0
  1862. package/dist/src/ui/components/shared/VirtualizedList.js.map +1 -0
  1863. package/dist/src/ui/components/shared/VirtualizedList.test.d.ts +6 -0
  1864. package/dist/src/ui/components/shared/VirtualizedList.test.js +371 -0
  1865. package/dist/src/ui/components/shared/VirtualizedList.test.js.map +1 -0
  1866. package/dist/src/ui/components/shared/text-buffer-external-editor.test.d.ts +6 -0
  1867. package/dist/src/ui/components/shared/text-buffer-external-editor.test.js +657 -0
  1868. package/dist/src/ui/components/shared/text-buffer-external-editor.test.js.map +1 -0
  1869. package/dist/src/ui/components/shared/text-buffer.d.ts +503 -0
  1870. package/dist/src/ui/components/shared/text-buffer.js +2181 -0
  1871. package/dist/src/ui/components/shared/text-buffer.js.map +1 -0
  1872. package/dist/src/ui/components/shared/vim-buffer-actions.d.ts +74 -0
  1873. package/dist/src/ui/components/shared/vim-buffer-actions.js +612 -0
  1874. package/dist/src/ui/components/shared/vim-buffer-actions.js.map +1 -0
  1875. package/dist/src/ui/components/skills/SkillsManagerDialog.d.ts +44 -0
  1876. package/dist/src/ui/components/skills/SkillsManagerDialog.js +423 -0
  1877. package/dist/src/ui/components/skills/SkillsManagerDialog.js.map +1 -0
  1878. package/dist/src/ui/components/stats-helpers.d.ts +30 -0
  1879. package/dist/src/ui/components/stats-helpers.js +79 -0
  1880. package/dist/src/ui/components/stats-helpers.js.map +1 -0
  1881. package/dist/src/ui/components/subagents/constants.d.ts +23 -0
  1882. package/dist/src/ui/components/subagents/constants.js +67 -0
  1883. package/dist/src/ui/components/subagents/constants.js.map +1 -0
  1884. package/dist/src/ui/components/subagents/create/AgentCreationWizard.d.ts +15 -0
  1885. package/dist/src/ui/components/subagents/create/AgentCreationWizard.js +173 -0
  1886. package/dist/src/ui/components/subagents/create/AgentCreationWizard.js.map +1 -0
  1887. package/dist/src/ui/components/subagents/create/ColorSelector.d.ts +15 -0
  1888. package/dist/src/ui/components/subagents/create/ColorSelector.js +43 -0
  1889. package/dist/src/ui/components/subagents/create/ColorSelector.js.map +1 -0
  1890. package/dist/src/ui/components/subagents/create/CreationSummary.d.ts +10 -0
  1891. package/dist/src/ui/components/subagents/create/CreationSummary.js +176 -0
  1892. package/dist/src/ui/components/subagents/create/CreationSummary.js.map +1 -0
  1893. package/dist/src/ui/components/subagents/create/DescriptionInput.d.ts +10 -0
  1894. package/dist/src/ui/components/subagents/create/DescriptionInput.js +107 -0
  1895. package/dist/src/ui/components/subagents/create/DescriptionInput.js.map +1 -0
  1896. package/dist/src/ui/components/subagents/create/GenerationMethodSelector.d.ts +10 -0
  1897. package/dist/src/ui/components/subagents/create/GenerationMethodSelector.js +39 -0
  1898. package/dist/src/ui/components/subagents/create/GenerationMethodSelector.js.map +1 -0
  1899. package/dist/src/ui/components/subagents/create/LocationSelector.d.ts +10 -0
  1900. package/dist/src/ui/components/subagents/create/LocationSelector.js +39 -0
  1901. package/dist/src/ui/components/subagents/create/LocationSelector.js.map +1 -0
  1902. package/dist/src/ui/components/subagents/create/TextEntryStep.d.ts +26 -0
  1903. package/dist/src/ui/components/subagents/create/TextEntryStep.js +28 -0
  1904. package/dist/src/ui/components/subagents/create/TextEntryStep.js.map +1 -0
  1905. package/dist/src/ui/components/subagents/create/ToolSelector.d.ts +16 -0
  1906. package/dist/src/ui/components/subagents/create/ToolSelector.js +145 -0
  1907. package/dist/src/ui/components/subagents/create/ToolSelector.js.map +1 -0
  1908. package/dist/src/ui/components/subagents/index.d.ts +7 -0
  1909. package/dist/src/ui/components/subagents/index.js +13 -0
  1910. package/dist/src/ui/components/subagents/index.js.map +1 -0
  1911. package/dist/src/ui/components/subagents/manage/ActionSelectionStep.d.ts +13 -0
  1912. package/dist/src/ui/components/subagents/manage/ActionSelectionStep.js +73 -0
  1913. package/dist/src/ui/components/subagents/manage/ActionSelectionStep.js.map +1 -0
  1914. package/dist/src/ui/components/subagents/manage/AgentDeleteStep.d.ts +13 -0
  1915. package/dist/src/ui/components/subagents/manage/AgentDeleteStep.js +38 -0
  1916. package/dist/src/ui/components/subagents/manage/AgentDeleteStep.js.map +1 -0
  1917. package/dist/src/ui/components/subagents/manage/AgentEditStep.d.ts +15 -0
  1918. package/dist/src/ui/components/subagents/manage/AgentEditStep.js +76 -0
  1919. package/dist/src/ui/components/subagents/manage/AgentEditStep.js.map +1 -0
  1920. package/dist/src/ui/components/subagents/manage/AgentSelectionStep.d.ts +12 -0
  1921. package/dist/src/ui/components/subagents/manage/AgentSelectionStep.js +342 -0
  1922. package/dist/src/ui/components/subagents/manage/AgentSelectionStep.js.map +1 -0
  1923. package/dist/src/ui/components/subagents/manage/AgentSelectionStep.test.d.ts +6 -0
  1924. package/dist/src/ui/components/subagents/manage/AgentSelectionStep.test.js +56 -0
  1925. package/dist/src/ui/components/subagents/manage/AgentSelectionStep.test.js.map +1 -0
  1926. package/dist/src/ui/components/subagents/manage/AgentViewerStep.d.ts +11 -0
  1927. package/dist/src/ui/components/subagents/manage/AgentViewerStep.js +20 -0
  1928. package/dist/src/ui/components/subagents/manage/AgentViewerStep.js.map +1 -0
  1929. package/dist/src/ui/components/subagents/manage/AgentsManagerDialog.d.ts +15 -0
  1930. package/dist/src/ui/components/subagents/manage/AgentsManagerDialog.js +214 -0
  1931. package/dist/src/ui/components/subagents/manage/AgentsManagerDialog.js.map +1 -0
  1932. package/dist/src/ui/components/subagents/reducers.d.ts +14 -0
  1933. package/dist/src/ui/components/subagents/reducers.js +162 -0
  1934. package/dist/src/ui/components/subagents/reducers.js.map +1 -0
  1935. package/dist/src/ui/components/subagents/types.d.ts +137 -0
  1936. package/dist/src/ui/components/subagents/types.js +15 -0
  1937. package/dist/src/ui/components/subagents/types.js.map +1 -0
  1938. package/dist/src/ui/components/subagents/utils.d.ts +15 -0
  1939. package/dist/src/ui/components/subagents/utils.js +79 -0
  1940. package/dist/src/ui/components/subagents/utils.js.map +1 -0
  1941. package/dist/src/ui/components/views/ContextUsage.d.ts +23 -0
  1942. package/dist/src/ui/components/views/ContextUsage.js +130 -0
  1943. package/dist/src/ui/components/views/ContextUsage.js.map +1 -0
  1944. package/dist/src/ui/components/views/ContextUsage.test.d.ts +6 -0
  1945. package/dist/src/ui/components/views/ContextUsage.test.js +76 -0
  1946. package/dist/src/ui/components/views/ContextUsage.test.js.map +1 -0
  1947. package/dist/src/ui/components/views/DoctorReport.d.ts +18 -0
  1948. package/dist/src/ui/components/views/DoctorReport.js +45 -0
  1949. package/dist/src/ui/components/views/DoctorReport.js.map +1 -0
  1950. package/dist/src/ui/components/views/ExtensionsList.d.ts +6 -0
  1951. package/dist/src/ui/components/views/ExtensionsList.js +49 -0
  1952. package/dist/src/ui/components/views/ExtensionsList.js.map +1 -0
  1953. package/dist/src/ui/components/views/ExtensionsList.test.d.ts +6 -0
  1954. package/dist/src/ui/components/views/ExtensionsList.test.js +88 -0
  1955. package/dist/src/ui/components/views/ExtensionsList.test.js.map +1 -0
  1956. package/dist/src/ui/components/views/McpStatus.d.ts +27 -0
  1957. package/dist/src/ui/components/views/McpStatus.js +90 -0
  1958. package/dist/src/ui/components/views/McpStatus.js.map +1 -0
  1959. package/dist/src/ui/components/views/McpStatus.test.d.ts +6 -0
  1960. package/dist/src/ui/components/views/McpStatus.test.js +117 -0
  1961. package/dist/src/ui/components/views/McpStatus.test.js.map +1 -0
  1962. package/dist/src/ui/components/views/SkillsList.d.ts +12 -0
  1963. package/dist/src/ui/components/views/SkillsList.js +7 -0
  1964. package/dist/src/ui/components/views/SkillsList.js.map +1 -0
  1965. package/dist/src/ui/components/views/ToolsList.d.ts +14 -0
  1966. package/dist/src/ui/components/views/ToolsList.js +8 -0
  1967. package/dist/src/ui/components/views/ToolsList.js.map +1 -0
  1968. package/dist/src/ui/components/views/ToolsList.test.d.ts +6 -0
  1969. package/dist/src/ui/components/views/ToolsList.test.js +45 -0
  1970. package/dist/src/ui/components/views/ToolsList.test.js.map +1 -0
  1971. package/dist/src/ui/constants.d.ts +18 -0
  1972. package/dist/src/ui/constants.js +23 -0
  1973. package/dist/src/ui/constants.js.map +1 -0
  1974. package/dist/src/ui/contexts/AgentViewContext.d.ts +49 -0
  1975. package/dist/src/ui/contexts/AgentViewContext.js +187 -0
  1976. package/dist/src/ui/contexts/AgentViewContext.js.map +1 -0
  1977. package/dist/src/ui/contexts/AppContext.d.ts +11 -0
  1978. package/dist/src/ui/contexts/AppContext.js +15 -0
  1979. package/dist/src/ui/contexts/AppContext.js.map +1 -0
  1980. package/dist/src/ui/contexts/BackgroundTaskViewContext.d.ts +60 -0
  1981. package/dist/src/ui/contexts/BackgroundTaskViewContext.js +238 -0
  1982. package/dist/src/ui/contexts/BackgroundTaskViewContext.js.map +1 -0
  1983. package/dist/src/ui/contexts/CompactModeContext.d.ts +13 -0
  1984. package/dist/src/ui/contexts/CompactModeContext.js +13 -0
  1985. package/dist/src/ui/contexts/CompactModeContext.js.map +1 -0
  1986. package/dist/src/ui/contexts/ConfigContext.d.ts +9 -0
  1987. package/dist/src/ui/contexts/ConfigContext.js +16 -0
  1988. package/dist/src/ui/contexts/ConfigContext.js.map +1 -0
  1989. package/dist/src/ui/contexts/KeypressContext.d.ts +40 -0
  1990. package/dist/src/ui/contexts/KeypressContext.js +959 -0
  1991. package/dist/src/ui/contexts/KeypressContext.js.map +1 -0
  1992. package/dist/src/ui/contexts/KeypressContext.test.d.ts +6 -0
  1993. package/dist/src/ui/contexts/KeypressContext.test.js +1360 -0
  1994. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -0
  1995. package/dist/src/ui/contexts/OverflowContext.d.ts +19 -0
  1996. package/dist/src/ui/contexts/OverflowContext.js +38 -0
  1997. package/dist/src/ui/contexts/OverflowContext.js.map +1 -0
  1998. package/dist/src/ui/contexts/RenderModeContext.d.ts +14 -0
  1999. package/dist/src/ui/contexts/RenderModeContext.js +15 -0
  2000. package/dist/src/ui/contexts/RenderModeContext.js.map +1 -0
  2001. package/dist/src/ui/contexts/SessionContext.d.ts +47 -0
  2002. package/dist/src/ui/contexts/SessionContext.js +180 -0
  2003. package/dist/src/ui/contexts/SessionContext.js.map +1 -0
  2004. package/dist/src/ui/contexts/SettingsContext.d.ts +9 -0
  2005. package/dist/src/ui/contexts/SettingsContext.js +15 -0
  2006. package/dist/src/ui/contexts/SettingsContext.js.map +1 -0
  2007. package/dist/src/ui/contexts/ShellFocusContext.d.ts +7 -0
  2008. package/dist/src/ui/contexts/ShellFocusContext.js +9 -0
  2009. package/dist/src/ui/contexts/ShellFocusContext.js.map +1 -0
  2010. package/dist/src/ui/contexts/StreamingContext.d.ts +9 -0
  2011. package/dist/src/ui/contexts/StreamingContext.js +15 -0
  2012. package/dist/src/ui/contexts/StreamingContext.js.map +1 -0
  2013. package/dist/src/ui/contexts/TerminalOutputContext.d.ts +12 -0
  2014. package/dist/src/ui/contexts/TerminalOutputContext.js +11 -0
  2015. package/dist/src/ui/contexts/TerminalOutputContext.js.map +1 -0
  2016. package/dist/src/ui/contexts/UIActionsContext.d.ts +91 -0
  2017. package/dist/src/ui/contexts/UIActionsContext.js +22 -0
  2018. package/dist/src/ui/contexts/UIActionsContext.js.map +1 -0
  2019. package/dist/src/ui/contexts/UIStateContext.d.ts +158 -0
  2020. package/dist/src/ui/contexts/UIStateContext.js +20 -0
  2021. package/dist/src/ui/contexts/UIStateContext.js.map +1 -0
  2022. package/dist/src/ui/contexts/VimModeContext.d.ts +31 -0
  2023. package/dist/src/ui/contexts/VimModeContext.js +60 -0
  2024. package/dist/src/ui/contexts/VimModeContext.js.map +1 -0
  2025. package/dist/src/ui/contexts/VimModeContext.test.d.ts +11 -0
  2026. package/dist/src/ui/contexts/VimModeContext.test.js +99 -0
  2027. package/dist/src/ui/contexts/VimModeContext.test.js.map +1 -0
  2028. package/dist/src/ui/daemon/DaemonTuiAdapter.d.ts +101 -0
  2029. package/dist/src/ui/daemon/DaemonTuiAdapter.js +695 -0
  2030. package/dist/src/ui/daemon/DaemonTuiAdapter.js.map +1 -0
  2031. package/dist/src/ui/daemon/DaemonTuiAdapter.test.d.ts +6 -0
  2032. package/dist/src/ui/daemon/DaemonTuiAdapter.test.js +784 -0
  2033. package/dist/src/ui/daemon/DaemonTuiAdapter.test.js.map +1 -0
  2034. package/dist/src/ui/editors/editorSettingsManager.d.ts +19 -0
  2035. package/dist/src/ui/editors/editorSettingsManager.js +48 -0
  2036. package/dist/src/ui/editors/editorSettingsManager.js.map +1 -0
  2037. package/dist/src/ui/hooks/atCommandProcessor.d.ts +33 -0
  2038. package/dist/src/ui/hooks/atCommandProcessor.js +344 -0
  2039. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -0
  2040. package/dist/src/ui/hooks/atCommandProcessor.test.d.ts +6 -0
  2041. package/dist/src/ui/hooks/atCommandProcessor.test.js +871 -0
  2042. package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -0
  2043. package/dist/src/ui/hooks/keyToAnsi.d.ts +15 -0
  2044. package/dist/src/ui/hooks/keyToAnsi.js +67 -0
  2045. package/dist/src/ui/hooks/keyToAnsi.js.map +1 -0
  2046. package/dist/src/ui/hooks/shellCommandProcessor.d.ts +18 -0
  2047. package/dist/src/ui/hooks/shellCommandProcessor.js +287 -0
  2048. package/dist/src/ui/hooks/shellCommandProcessor.js.map +1 -0
  2049. package/dist/src/ui/hooks/shellCommandProcessor.test.d.ts +6 -0
  2050. package/dist/src/ui/hooks/shellCommandProcessor.test.js +509 -0
  2051. package/dist/src/ui/hooks/shellCommandProcessor.test.js.map +1 -0
  2052. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +71 -0
  2053. package/dist/src/ui/hooks/slashCommandProcessor.js +837 -0
  2054. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -0
  2055. package/dist/src/ui/hooks/useAgentStreamingState.d.ts +29 -0
  2056. package/dist/src/ui/hooks/useAgentStreamingState.js +109 -0
  2057. package/dist/src/ui/hooks/useAgentStreamingState.js.map +1 -0
  2058. package/dist/src/ui/hooks/useAgentsManagerDialog.d.ts +11 -0
  2059. package/dist/src/ui/hooks/useAgentsManagerDialog.js +21 -0
  2060. package/dist/src/ui/hooks/useAgentsManagerDialog.js.map +1 -0
  2061. package/dist/src/ui/hooks/useAnimatedScrollbar.d.ts +37 -0
  2062. package/dist/src/ui/hooks/useAnimatedScrollbar.js +44 -0
  2063. package/dist/src/ui/hooks/useAnimatedScrollbar.js.map +1 -0
  2064. package/dist/src/ui/hooks/useAnimatedScrollbar.test.d.ts +6 -0
  2065. package/dist/src/ui/hooks/useAnimatedScrollbar.test.js +74 -0
  2066. package/dist/src/ui/hooks/useAnimatedScrollbar.test.js.map +1 -0
  2067. package/dist/src/ui/hooks/useAnimationFrame.d.ts +25 -0
  2068. package/dist/src/ui/hooks/useAnimationFrame.js +86 -0
  2069. package/dist/src/ui/hooks/useAnimationFrame.js.map +1 -0
  2070. package/dist/src/ui/hooks/useApprovalModeCommand.d.ts +14 -0
  2071. package/dist/src/ui/hooks/useApprovalModeCommand.js +33 -0
  2072. package/dist/src/ui/hooks/useApprovalModeCommand.js.map +1 -0
  2073. package/dist/src/ui/hooks/useArenaCommand.d.ts +13 -0
  2074. package/dist/src/ui/hooks/useArenaCommand.js +21 -0
  2075. package/dist/src/ui/hooks/useArenaCommand.js.map +1 -0
  2076. package/dist/src/ui/hooks/useArenaInProcess.d.ts +14 -0
  2077. package/dist/src/ui/hooks/useArenaInProcess.js +136 -0
  2078. package/dist/src/ui/hooks/useArenaInProcess.js.map +1 -0
  2079. package/dist/src/ui/hooks/useAtCompletion.d.ts +23 -0
  2080. package/dist/src/ui/hooks/useAtCompletion.js +184 -0
  2081. package/dist/src/ui/hooks/useAtCompletion.js.map +1 -0
  2082. package/dist/src/ui/hooks/useAttentionNotifications.d.ts +22 -0
  2083. package/dist/src/ui/hooks/useAttentionNotifications.js +89 -0
  2084. package/dist/src/ui/hooks/useAttentionNotifications.js.map +1 -0
  2085. package/dist/src/ui/hooks/useAttentionNotifications.test.d.ts +6 -0
  2086. package/dist/src/ui/hooks/useAttentionNotifications.test.js +222 -0
  2087. package/dist/src/ui/hooks/useAttentionNotifications.test.js.map +1 -0
  2088. package/dist/src/ui/hooks/useAutoAcceptIndicator.d.ts +32 -0
  2089. package/dist/src/ui/hooks/useAutoAcceptIndicator.js +124 -0
  2090. package/dist/src/ui/hooks/useAutoAcceptIndicator.js.map +1 -0
  2091. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.d.ts +6 -0
  2092. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js +379 -0
  2093. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js.map +1 -0
  2094. package/dist/src/ui/hooks/useAwaySummary.d.ts +35 -0
  2095. package/dist/src/ui/hooks/useAwaySummary.js +141 -0
  2096. package/dist/src/ui/hooks/useAwaySummary.js.map +1 -0
  2097. package/dist/src/ui/hooks/useAwaySummary.test.d.ts +6 -0
  2098. package/dist/src/ui/hooks/useAwaySummary.test.js +103 -0
  2099. package/dist/src/ui/hooks/useAwaySummary.test.js.map +1 -0
  2100. package/dist/src/ui/hooks/useBackgroundTaskView.d.ts +69 -0
  2101. package/dist/src/ui/hooks/useBackgroundTaskView.js +217 -0
  2102. package/dist/src/ui/hooks/useBackgroundTaskView.js.map +1 -0
  2103. package/dist/src/ui/hooks/useBackgroundTaskView.test.d.ts +6 -0
  2104. package/dist/src/ui/hooks/useBackgroundTaskView.test.js +455 -0
  2105. package/dist/src/ui/hooks/useBackgroundTaskView.test.js.map +1 -0
  2106. package/dist/src/ui/hooks/useBatchedScroll.d.ts +14 -0
  2107. package/dist/src/ui/hooks/useBatchedScroll.js +25 -0
  2108. package/dist/src/ui/hooks/useBatchedScroll.js.map +1 -0
  2109. package/dist/src/ui/hooks/useBatchedScroll.test.d.ts +6 -0
  2110. package/dist/src/ui/hooks/useBatchedScroll.test.js +42 -0
  2111. package/dist/src/ui/hooks/useBatchedScroll.test.js.map +1 -0
  2112. package/dist/src/ui/hooks/useBracketedPaste.d.ts +12 -0
  2113. package/dist/src/ui/hooks/useBracketedPaste.js +32 -0
  2114. package/dist/src/ui/hooks/useBracketedPaste.js.map +1 -0
  2115. package/dist/src/ui/hooks/useBranchCommand.d.ts +33 -0
  2116. package/dist/src/ui/hooks/useBranchCommand.js +230 -0
  2117. package/dist/src/ui/hooks/useBranchCommand.js.map +1 -0
  2118. package/dist/src/ui/hooks/useBranchCommand.test.d.ts +6 -0
  2119. package/dist/src/ui/hooks/useBranchCommand.test.js +386 -0
  2120. package/dist/src/ui/hooks/useBranchCommand.test.js.map +1 -0
  2121. package/dist/src/ui/hooks/useCommandCompletion.d.ts +37 -0
  2122. package/dist/src/ui/hooks/useCommandCompletion.js +227 -0
  2123. package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -0
  2124. package/dist/src/ui/hooks/useCommandMigration.d.ts +16 -0
  2125. package/dist/src/ui/hooks/useCommandMigration.js +40 -0
  2126. package/dist/src/ui/hooks/useCommandMigration.js.map +1 -0
  2127. package/dist/src/ui/hooks/useCompletion.d.ts +24 -0
  2128. package/dist/src/ui/hooks/useCompletion.js +88 -0
  2129. package/dist/src/ui/hooks/useCompletion.js.map +1 -0
  2130. package/dist/src/ui/hooks/useConfigInitMessage.d.ts +6 -0
  2131. package/dist/src/ui/hooks/useConfigInitMessage.js +45 -0
  2132. package/dist/src/ui/hooks/useConfigInitMessage.js.map +1 -0
  2133. package/dist/src/ui/hooks/useConfigInitMessage.test.d.ts +6 -0
  2134. package/dist/src/ui/hooks/useConfigInitMessage.test.js +80 -0
  2135. package/dist/src/ui/hooks/useConfigInitMessage.test.js.map +1 -0
  2136. package/dist/src/ui/hooks/useContextualTips.d.ts +19 -0
  2137. package/dist/src/ui/hooks/useContextualTips.js +65 -0
  2138. package/dist/src/ui/hooks/useContextualTips.js.map +1 -0
  2139. package/dist/src/ui/hooks/useDeleteCommand.d.ts +19 -0
  2140. package/dist/src/ui/hooks/useDeleteCommand.js +167 -0
  2141. package/dist/src/ui/hooks/useDeleteCommand.js.map +1 -0
  2142. package/dist/src/ui/hooks/useDeleteCommand.test.d.ts +6 -0
  2143. package/dist/src/ui/hooks/useDeleteCommand.test.js +391 -0
  2144. package/dist/src/ui/hooks/useDeleteCommand.test.js.map +1 -0
  2145. package/dist/src/ui/hooks/useDialogClose.d.ts +48 -0
  2146. package/dist/src/ui/hooks/useDialogClose.js +102 -0
  2147. package/dist/src/ui/hooks/useDialogClose.js.map +1 -0
  2148. package/dist/src/ui/hooks/useDiffData.d.ts +32 -0
  2149. package/dist/src/ui/hooks/useDiffData.js +72 -0
  2150. package/dist/src/ui/hooks/useDiffData.js.map +1 -0
  2151. package/dist/src/ui/hooks/useDoublePress.d.ts +18 -0
  2152. package/dist/src/ui/hooks/useDoublePress.js +47 -0
  2153. package/dist/src/ui/hooks/useDoublePress.js.map +1 -0
  2154. package/dist/src/ui/hooks/useEditorSettings.d.ts +16 -0
  2155. package/dist/src/ui/hooks/useEditorSettings.js +43 -0
  2156. package/dist/src/ui/hooks/useEditorSettings.js.map +1 -0
  2157. package/dist/src/ui/hooks/useEditorSettings.test.d.ts +6 -0
  2158. package/dist/src/ui/hooks/useEditorSettings.test.js +164 -0
  2159. package/dist/src/ui/hooks/useEditorSettings.test.js.map +1 -0
  2160. package/dist/src/ui/hooks/useExportCompletion.d.ts +70 -0
  2161. package/dist/src/ui/hooks/useExportCompletion.js +208 -0
  2162. package/dist/src/ui/hooks/useExportCompletion.js.map +1 -0
  2163. package/dist/src/ui/hooks/useExportCompletion.test.d.ts +6 -0
  2164. package/dist/src/ui/hooks/useExportCompletion.test.js +190 -0
  2165. package/dist/src/ui/hooks/useExportCompletion.test.js.map +1 -0
  2166. package/dist/src/ui/hooks/useExtensionUpdates.d.ts +71 -0
  2167. package/dist/src/ui/hooks/useExtensionUpdates.js +229 -0
  2168. package/dist/src/ui/hooks/useExtensionUpdates.js.map +1 -0
  2169. package/dist/src/ui/hooks/useExtensionUpdates.test.d.ts +6 -0
  2170. package/dist/src/ui/hooks/useExtensionUpdates.test.js +455 -0
  2171. package/dist/src/ui/hooks/useExtensionUpdates.test.js.map +1 -0
  2172. package/dist/src/ui/hooks/useExtensionsManagerDialog.d.ts +12 -0
  2173. package/dist/src/ui/hooks/useExtensionsManagerDialog.js +21 -0
  2174. package/dist/src/ui/hooks/useExtensionsManagerDialog.js.map +1 -0
  2175. package/dist/src/ui/hooks/useFeedbackDialog.d.ts +18 -0
  2176. package/dist/src/ui/hooks/useFeedbackDialog.js +130 -0
  2177. package/dist/src/ui/hooks/useFeedbackDialog.js.map +1 -0
  2178. package/dist/src/ui/hooks/useFocus.d.ts +10 -0
  2179. package/dist/src/ui/hooks/useFocus.js +51 -0
  2180. package/dist/src/ui/hooks/useFocus.js.map +1 -0
  2181. package/dist/src/ui/hooks/useFolderTrust.d.ts +13 -0
  2182. package/dist/src/ui/hooks/useFolderTrust.js +60 -0
  2183. package/dist/src/ui/hooks/useFolderTrust.js.map +1 -0
  2184. package/dist/src/ui/hooks/useFollowupSuggestions.d.ts +53 -0
  2185. package/dist/src/ui/hooks/useFollowupSuggestions.js +89 -0
  2186. package/dist/src/ui/hooks/useFollowupSuggestions.js.map +1 -0
  2187. package/dist/src/ui/hooks/useGeminiStream.d.ts +76 -0
  2188. package/dist/src/ui/hooks/useGeminiStream.js +1899 -0
  2189. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -0
  2190. package/dist/src/ui/hooks/useGitBranchName.d.ts +6 -0
  2191. package/dist/src/ui/hooks/useGitBranchName.js +61 -0
  2192. package/dist/src/ui/hooks/useGitBranchName.js.map +1 -0
  2193. package/dist/src/ui/hooks/useGitBranchName.test.d.ts +6 -0
  2194. package/dist/src/ui/hooks/useGitBranchName.test.js +192 -0
  2195. package/dist/src/ui/hooks/useGitBranchName.test.js.map +1 -0
  2196. package/dist/src/ui/hooks/useHistoryManager.d.ts +24 -0
  2197. package/dist/src/ui/hooks/useHistoryManager.js +183 -0
  2198. package/dist/src/ui/hooks/useHistoryManager.js.map +1 -0
  2199. package/dist/src/ui/hooks/useHistoryManager.test.d.ts +6 -0
  2200. package/dist/src/ui/hooks/useHistoryManager.test.js +495 -0
  2201. package/dist/src/ui/hooks/useHistoryManager.test.js.map +1 -0
  2202. package/dist/src/ui/hooks/useHooksDialog.d.ts +11 -0
  2203. package/dist/src/ui/hooks/useHooksDialog.js +21 -0
  2204. package/dist/src/ui/hooks/useHooksDialog.js.map +1 -0
  2205. package/dist/src/ui/hooks/useIdeTrustListener.d.ts +16 -0
  2206. package/dist/src/ui/hooks/useIdeTrustListener.js +65 -0
  2207. package/dist/src/ui/hooks/useIdeTrustListener.js.map +1 -0
  2208. package/dist/src/ui/hooks/useIdeTrustListener.test.d.ts +6 -0
  2209. package/dist/src/ui/hooks/useIdeTrustListener.test.js +183 -0
  2210. package/dist/src/ui/hooks/useIdeTrustListener.test.js.map +1 -0
  2211. package/dist/src/ui/hooks/useInitializationAuthError.d.ts +22 -0
  2212. package/dist/src/ui/hooks/useInitializationAuthError.js +40 -0
  2213. package/dist/src/ui/hooks/useInitializationAuthError.js.map +1 -0
  2214. package/dist/src/ui/hooks/useInputHistory.d.ts +20 -0
  2215. package/dist/src/ui/hooks/useInputHistory.js +85 -0
  2216. package/dist/src/ui/hooks/useInputHistory.js.map +1 -0
  2217. package/dist/src/ui/hooks/useInputHistory.test.d.ts +6 -0
  2218. package/dist/src/ui/hooks/useInputHistory.test.js +207 -0
  2219. package/dist/src/ui/hooks/useInputHistory.test.js.map +1 -0
  2220. package/dist/src/ui/hooks/useInputHistoryStore.d.ts +19 -0
  2221. package/dist/src/ui/hooks/useInputHistoryStore.js +83 -0
  2222. package/dist/src/ui/hooks/useInputHistoryStore.js.map +1 -0
  2223. package/dist/src/ui/hooks/useInputHistoryStore.test.d.ts +6 -0
  2224. package/dist/src/ui/hooks/useInputHistoryStore.test.js +231 -0
  2225. package/dist/src/ui/hooks/useInputHistoryStore.test.js.map +1 -0
  2226. package/dist/src/ui/hooks/useKeypress.d.ts +17 -0
  2227. package/dist/src/ui/hooks/useKeypress.js +27 -0
  2228. package/dist/src/ui/hooks/useKeypress.js.map +1 -0
  2229. package/dist/src/ui/hooks/useKittyKeyboardProtocol.d.ts +15 -0
  2230. package/dist/src/ui/hooks/useKittyKeyboardProtocol.js +20 -0
  2231. package/dist/src/ui/hooks/useKittyKeyboardProtocol.js.map +1 -0
  2232. package/dist/src/ui/hooks/useLaunchEditor.d.ts +5 -0
  2233. package/dist/src/ui/hooks/useLaunchEditor.js +75 -0
  2234. package/dist/src/ui/hooks/useLaunchEditor.js.map +1 -0
  2235. package/dist/src/ui/hooks/useLoadingIndicator.d.ts +11 -0
  2236. package/dist/src/ui/hooks/useLoadingIndicator.js +50 -0
  2237. package/dist/src/ui/hooks/useLoadingIndicator.js.map +1 -0
  2238. package/dist/src/ui/hooks/useLoadingIndicator.test.d.ts +6 -0
  2239. package/dist/src/ui/hooks/useLoadingIndicator.test.js +172 -0
  2240. package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -0
  2241. package/dist/src/ui/hooks/useLogger.d.ts +11 -0
  2242. package/dist/src/ui/hooks/useLogger.js +32 -0
  2243. package/dist/src/ui/hooks/useLogger.js.map +1 -0
  2244. package/dist/src/ui/hooks/useMCPHealth.d.ts +16 -0
  2245. package/dist/src/ui/hooks/useMCPHealth.js +56 -0
  2246. package/dist/src/ui/hooks/useMCPHealth.js.map +1 -0
  2247. package/dist/src/ui/hooks/useMcpDialog.d.ts +11 -0
  2248. package/dist/src/ui/hooks/useMcpDialog.js +21 -0
  2249. package/dist/src/ui/hooks/useMcpDialog.js.map +1 -0
  2250. package/dist/src/ui/hooks/useMemoryDialog.d.ts +11 -0
  2251. package/dist/src/ui/hooks/useMemoryDialog.js +21 -0
  2252. package/dist/src/ui/hooks/useMemoryDialog.js.map +1 -0
  2253. package/dist/src/ui/hooks/useMemoryMonitor.d.ts +17 -0
  2254. package/dist/src/ui/hooks/useMemoryMonitor.js +83 -0
  2255. package/dist/src/ui/hooks/useMemoryMonitor.js.map +1 -0
  2256. package/dist/src/ui/hooks/useMemoryMonitor.test.d.ts +6 -0
  2257. package/dist/src/ui/hooks/useMemoryMonitor.test.js +153 -0
  2258. package/dist/src/ui/hooks/useMemoryMonitor.test.js.map +1 -0
  2259. package/dist/src/ui/hooks/useMessageQueue.d.ts +18 -0
  2260. package/dist/src/ui/hooks/useMessageQueue.js +67 -0
  2261. package/dist/src/ui/hooks/useMessageQueue.js.map +1 -0
  2262. package/dist/src/ui/hooks/useMessageQueue.test.d.ts +6 -0
  2263. package/dist/src/ui/hooks/useMessageQueue.test.js +219 -0
  2264. package/dist/src/ui/hooks/useMessageQueue.test.js.map +1 -0
  2265. package/dist/src/ui/hooks/useModelCommand.d.ts +15 -0
  2266. package/dist/src/ui/hooks/useModelCommand.js +25 -0
  2267. package/dist/src/ui/hooks/useModelCommand.js.map +1 -0
  2268. package/dist/src/ui/hooks/useModelCommand.test.d.ts +6 -0
  2269. package/dist/src/ui/hooks/useModelCommand.test.js +35 -0
  2270. package/dist/src/ui/hooks/useModelCommand.test.js.map +1 -0
  2271. package/dist/src/ui/hooks/useMouseEvents.d.ts +44 -0
  2272. package/dist/src/ui/hooks/useMouseEvents.js +85 -0
  2273. package/dist/src/ui/hooks/useMouseEvents.js.map +1 -0
  2274. package/dist/src/ui/hooks/usePhraseCycler.d.ts +14 -0
  2275. package/dist/src/ui/hooks/usePhraseCycler.js +70 -0
  2276. package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -0
  2277. package/dist/src/ui/hooks/usePreferredEditor.d.ts +7 -0
  2278. package/dist/src/ui/hooks/usePreferredEditor.js +25 -0
  2279. package/dist/src/ui/hooks/usePreferredEditor.js.map +1 -0
  2280. package/dist/src/ui/hooks/useProviderUpdates.d.ts +33 -0
  2281. package/dist/src/ui/hooks/useProviderUpdates.js +215 -0
  2282. package/dist/src/ui/hooks/useProviderUpdates.js.map +1 -0
  2283. package/dist/src/ui/hooks/useProviderUpdates.test.d.ts +6 -0
  2284. package/dist/src/ui/hooks/useProviderUpdates.test.js +293 -0
  2285. package/dist/src/ui/hooks/useProviderUpdates.test.js.map +1 -0
  2286. package/dist/src/ui/hooks/useQwenAuth.d.ts +20 -0
  2287. package/dist/src/ui/hooks/useQwenAuth.js +74 -0
  2288. package/dist/src/ui/hooks/useQwenAuth.js.map +1 -0
  2289. package/dist/src/ui/hooks/useQwenAuth.test.d.ts +6 -0
  2290. package/dist/src/ui/hooks/useQwenAuth.test.js +266 -0
  2291. package/dist/src/ui/hooks/useQwenAuth.test.js.map +1 -0
  2292. package/dist/src/ui/hooks/useReactToolScheduler.d.ts +33 -0
  2293. package/dist/src/ui/hooks/useReactToolScheduler.js +236 -0
  2294. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -0
  2295. package/dist/src/ui/hooks/useRefreshMemoryCommand.d.ts +6 -0
  2296. package/dist/src/ui/hooks/useRefreshMemoryCommand.js +7 -0
  2297. package/dist/src/ui/hooks/useRefreshMemoryCommand.js.map +1 -0
  2298. package/dist/src/ui/hooks/useResumeCommand.d.ts +31 -0
  2299. package/dist/src/ui/hooks/useResumeCommand.js +114 -0
  2300. package/dist/src/ui/hooks/useResumeCommand.js.map +1 -0
  2301. package/dist/src/ui/hooks/useResumeCommand.test.d.ts +6 -0
  2302. package/dist/src/ui/hooks/useResumeCommand.test.js +349 -0
  2303. package/dist/src/ui/hooks/useResumeCommand.test.js.map +1 -0
  2304. package/dist/src/ui/hooks/useReverseSearchCompletion.d.ts +19 -0
  2305. package/dist/src/ui/hooks/useReverseSearchCompletion.js +103 -0
  2306. package/dist/src/ui/hooks/useReverseSearchCompletion.js.map +1 -0
  2307. package/dist/src/ui/hooks/useReverseSearchCompletion.test.d.ts +6 -0
  2308. package/dist/src/ui/hooks/useReverseSearchCompletion.test.js +163 -0
  2309. package/dist/src/ui/hooks/useReverseSearchCompletion.test.js.map +1 -0
  2310. package/dist/src/ui/hooks/useSelectionList.d.ts +41 -0
  2311. package/dist/src/ui/hooks/useSelectionList.js +276 -0
  2312. package/dist/src/ui/hooks/useSelectionList.js.map +1 -0
  2313. package/dist/src/ui/hooks/useSelectionList.test.d.ts +6 -0
  2314. package/dist/src/ui/hooks/useSelectionList.test.js +782 -0
  2315. package/dist/src/ui/hooks/useSelectionList.test.js.map +1 -0
  2316. package/dist/src/ui/hooks/useSessionPicker.d.ts +95 -0
  2317. package/dist/src/ui/hooks/useSessionPicker.js +383 -0
  2318. package/dist/src/ui/hooks/useSessionPicker.js.map +1 -0
  2319. package/dist/src/ui/hooks/useSessionPicker.test.d.ts +6 -0
  2320. package/dist/src/ui/hooks/useSessionPicker.test.js +94 -0
  2321. package/dist/src/ui/hooks/useSessionPicker.test.js.map +1 -0
  2322. package/dist/src/ui/hooks/useSessionSearchInput.d.ts +69 -0
  2323. package/dist/src/ui/hooks/useSessionSearchInput.js +124 -0
  2324. package/dist/src/ui/hooks/useSessionSearchInput.js.map +1 -0
  2325. package/dist/src/ui/hooks/useSessionSearchInput.test.d.ts +6 -0
  2326. package/dist/src/ui/hooks/useSessionSearchInput.test.js +342 -0
  2327. package/dist/src/ui/hooks/useSessionSearchInput.test.js.map +1 -0
  2328. package/dist/src/ui/hooks/useSettingsCommand.d.ts +10 -0
  2329. package/dist/src/ui/hooks/useSettingsCommand.js +21 -0
  2330. package/dist/src/ui/hooks/useSettingsCommand.js.map +1 -0
  2331. package/dist/src/ui/hooks/useShellHistory.d.ts +14 -0
  2332. package/dist/src/ui/hooks/useShellHistory.js +112 -0
  2333. package/dist/src/ui/hooks/useShellHistory.js.map +1 -0
  2334. package/dist/src/ui/hooks/useShellHistory.test.d.ts +6 -0
  2335. package/dist/src/ui/hooks/useShellHistory.test.js +193 -0
  2336. package/dist/src/ui/hooks/useShellHistory.test.js.map +1 -0
  2337. package/dist/src/ui/hooks/useShowMemoryCommand.d.ts +9 -0
  2338. package/dist/src/ui/hooks/useShowMemoryCommand.js +55 -0
  2339. package/dist/src/ui/hooks/useShowMemoryCommand.js.map +1 -0
  2340. package/dist/src/ui/hooks/useSkillsManagerDialog.d.ts +11 -0
  2341. package/dist/src/ui/hooks/useSkillsManagerDialog.js +21 -0
  2342. package/dist/src/ui/hooks/useSkillsManagerDialog.js.map +1 -0
  2343. package/dist/src/ui/hooks/useSlashCompletion.d.ts +27 -0
  2344. package/dist/src/ui/hooks/useSlashCompletion.integration.test.d.ts +6 -0
  2345. package/dist/src/ui/hooks/useSlashCompletion.integration.test.js +84 -0
  2346. package/dist/src/ui/hooks/useSlashCompletion.integration.test.js.map +1 -0
  2347. package/dist/src/ui/hooks/useSlashCompletion.js +490 -0
  2348. package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -0
  2349. package/dist/src/ui/hooks/useSlashCompletion.test.d.ts +9 -0
  2350. package/dist/src/ui/hooks/useSlashCompletion.test.js +805 -0
  2351. package/dist/src/ui/hooks/useSlashCompletion.test.js.map +1 -0
  2352. package/dist/src/ui/hooks/useStateAndRef.d.ts +7 -0
  2353. package/dist/src/ui/hooks/useStateAndRef.js +26 -0
  2354. package/dist/src/ui/hooks/useStateAndRef.js.map +1 -0
  2355. package/dist/src/ui/hooks/useStatsDialog.d.ts +11 -0
  2356. package/dist/src/ui/hooks/useStatsDialog.js +13 -0
  2357. package/dist/src/ui/hooks/useStatsDialog.js.map +1 -0
  2358. package/dist/src/ui/hooks/useStatusLine.d.ts +84 -0
  2359. package/dist/src/ui/hooks/useStatusLine.js +528 -0
  2360. package/dist/src/ui/hooks/useStatusLine.js.map +1 -0
  2361. package/dist/src/ui/hooks/useStatusLine.test.d.ts +6 -0
  2362. package/dist/src/ui/hooks/useStatusLine.test.js +1039 -0
  2363. package/dist/src/ui/hooks/useStatusLine.test.js.map +1 -0
  2364. package/dist/src/ui/hooks/useSubagentCreateDialog.d.ts +10 -0
  2365. package/dist/src/ui/hooks/useSubagentCreateDialog.js +21 -0
  2366. package/dist/src/ui/hooks/useSubagentCreateDialog.js.map +1 -0
  2367. package/dist/src/ui/hooks/useTerminalNotification.d.ts +32 -0
  2368. package/dist/src/ui/hooks/useTerminalNotification.js +45 -0
  2369. package/dist/src/ui/hooks/useTerminalNotification.js.map +1 -0
  2370. package/dist/src/ui/hooks/useTerminalNotification.test.d.ts +6 -0
  2371. package/dist/src/ui/hooks/useTerminalNotification.test.js +69 -0
  2372. package/dist/src/ui/hooks/useTerminalNotification.test.js.map +1 -0
  2373. package/dist/src/ui/hooks/useTerminalProgress.d.ts +12 -0
  2374. package/dist/src/ui/hooks/useTerminalProgress.js +76 -0
  2375. package/dist/src/ui/hooks/useTerminalProgress.js.map +1 -0
  2376. package/dist/src/ui/hooks/useTerminalSize.d.ts +13 -0
  2377. package/dist/src/ui/hooks/useTerminalSize.js +30 -0
  2378. package/dist/src/ui/hooks/useTerminalSize.js.map +1 -0
  2379. package/dist/src/ui/hooks/useThemeCommand.d.ts +15 -0
  2380. package/dist/src/ui/hooks/useThemeCommand.js +85 -0
  2381. package/dist/src/ui/hooks/useThemeCommand.js.map +1 -0
  2382. package/dist/src/ui/hooks/useThemeCommand.test.d.ts +6 -0
  2383. package/dist/src/ui/hooks/useThemeCommand.test.js +42 -0
  2384. package/dist/src/ui/hooks/useThemeCommand.test.js.map +1 -0
  2385. package/dist/src/ui/hooks/useTimer.d.ts +12 -0
  2386. package/dist/src/ui/hooks/useTimer.js +58 -0
  2387. package/dist/src/ui/hooks/useTimer.js.map +1 -0
  2388. package/dist/src/ui/hooks/useTimer.test.d.ts +6 -0
  2389. package/dist/src/ui/hooks/useTimer.test.js +90 -0
  2390. package/dist/src/ui/hooks/useTimer.test.js.map +1 -0
  2391. package/dist/src/ui/hooks/useTomlMigration.d.ts +1 -0
  2392. package/dist/src/ui/hooks/useTomlMigration.js +2 -0
  2393. package/dist/src/ui/hooks/useTomlMigration.js.map +1 -0
  2394. package/dist/src/ui/hooks/useToolScheduler.test.d.ts +6 -0
  2395. package/dist/src/ui/hooks/useToolScheduler.test.js +624 -0
  2396. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -0
  2397. package/dist/src/ui/hooks/useTrustModify.d.ts +17 -0
  2398. package/dist/src/ui/hooks/useTrustModify.js +78 -0
  2399. package/dist/src/ui/hooks/useTrustModify.js.map +1 -0
  2400. package/dist/src/ui/hooks/useTrustModify.test.d.ts +6 -0
  2401. package/dist/src/ui/hooks/useTrustModify.test.js +182 -0
  2402. package/dist/src/ui/hooks/useTrustModify.test.js.map +1 -0
  2403. package/dist/src/ui/hooks/useTurnDiffs.d.ts +34 -0
  2404. package/dist/src/ui/hooks/useTurnDiffs.js +130 -0
  2405. package/dist/src/ui/hooks/useTurnDiffs.js.map +1 -0
  2406. package/dist/src/ui/hooks/useTurnDiffs.test.d.ts +6 -0
  2407. package/dist/src/ui/hooks/useTurnDiffs.test.js +164 -0
  2408. package/dist/src/ui/hooks/useTurnDiffs.test.js.map +1 -0
  2409. package/dist/src/ui/hooks/useWelcomeBack.d.ts +23 -0
  2410. package/dist/src/ui/hooks/useWelcomeBack.js +99 -0
  2411. package/dist/src/ui/hooks/useWelcomeBack.js.map +1 -0
  2412. package/dist/src/ui/hooks/useWelcomeBack.test.d.ts +6 -0
  2413. package/dist/src/ui/hooks/useWelcomeBack.test.js +94 -0
  2414. package/dist/src/ui/hooks/useWelcomeBack.test.js.map +1 -0
  2415. package/dist/src/ui/hooks/useWorktreeSession.d.ts +26 -0
  2416. package/dist/src/ui/hooks/useWorktreeSession.js +92 -0
  2417. package/dist/src/ui/hooks/useWorktreeSession.js.map +1 -0
  2418. package/dist/src/ui/hooks/useWorktreeSession.test.d.ts +6 -0
  2419. package/dist/src/ui/hooks/useWorktreeSession.test.js +84 -0
  2420. package/dist/src/ui/hooks/useWorktreeSession.test.js.map +1 -0
  2421. package/dist/src/ui/hooks/vim.d.ts +13 -0
  2422. package/dist/src/ui/hooks/vim.js +1637 -0
  2423. package/dist/src/ui/hooks/vim.js.map +1 -0
  2424. package/dist/src/ui/hooks/vim.test.d.ts +6 -0
  2425. package/dist/src/ui/hooks/vim.test.js +1975 -0
  2426. package/dist/src/ui/hooks/vim.test.js.map +1 -0
  2427. package/dist/src/ui/keyMatchers.d.ts +27 -0
  2428. package/dist/src/ui/keyMatchers.js +71 -0
  2429. package/dist/src/ui/keyMatchers.js.map +1 -0
  2430. package/dist/src/ui/keyMatchers.test.d.ts +6 -0
  2431. package/dist/src/ui/keyMatchers.test.js +421 -0
  2432. package/dist/src/ui/keyMatchers.test.js.map +1 -0
  2433. package/dist/src/ui/layouts/DefaultAppLayout.d.ts +7 -0
  2434. package/dist/src/ui/layouts/DefaultAppLayout.js +49 -0
  2435. package/dist/src/ui/layouts/DefaultAppLayout.js.map +1 -0
  2436. package/dist/src/ui/layouts/DefaultAppLayout.test.d.ts +6 -0
  2437. package/dist/src/ui/layouts/DefaultAppLayout.test.js +185 -0
  2438. package/dist/src/ui/layouts/DefaultAppLayout.test.js.map +1 -0
  2439. package/dist/src/ui/layouts/ScreenReaderAppLayout.d.ts +7 -0
  2440. package/dist/src/ui/layouts/ScreenReaderAppLayout.js +27 -0
  2441. package/dist/src/ui/layouts/ScreenReaderAppLayout.js.map +1 -0
  2442. package/dist/src/ui/layouts/ScreenReaderAppLayout.test.d.ts +6 -0
  2443. package/dist/src/ui/layouts/ScreenReaderAppLayout.test.js +135 -0
  2444. package/dist/src/ui/layouts/ScreenReaderAppLayout.test.js.map +1 -0
  2445. package/dist/src/ui/models/availableModels.d.ts +30 -0
  2446. package/dist/src/ui/models/availableModels.js +103 -0
  2447. package/dist/src/ui/models/availableModels.js.map +1 -0
  2448. package/dist/src/ui/models/availableModels.test.d.ts +6 -0
  2449. package/dist/src/ui/models/availableModels.test.js +142 -0
  2450. package/dist/src/ui/models/availableModels.test.js.map +1 -0
  2451. package/dist/src/ui/noninteractive/nonInteractiveUi.d.ts +12 -0
  2452. package/dist/src/ui/noninteractive/nonInteractiveUi.js +33 -0
  2453. package/dist/src/ui/noninteractive/nonInteractiveUi.js.map +1 -0
  2454. package/dist/src/ui/semantic-colors.d.ts +7 -0
  2455. package/dist/src/ui/semantic-colors.js +24 -0
  2456. package/dist/src/ui/semantic-colors.js.map +1 -0
  2457. package/dist/src/ui/state/extensions.d.ts +43 -0
  2458. package/dist/src/ui/state/extensions.js +63 -0
  2459. package/dist/src/ui/state/extensions.js.map +1 -0
  2460. package/dist/src/ui/statusLinePresets.d.ts +79 -0
  2461. package/dist/src/ui/statusLinePresets.js +310 -0
  2462. package/dist/src/ui/statusLinePresets.js.map +1 -0
  2463. package/dist/src/ui/statusLinePresets.test.d.ts +6 -0
  2464. package/dist/src/ui/statusLinePresets.test.js +221 -0
  2465. package/dist/src/ui/statusLinePresets.test.js.map +1 -0
  2466. package/dist/src/ui/textConstants.d.ts +9 -0
  2467. package/dist/src/ui/textConstants.js +10 -0
  2468. package/dist/src/ui/textConstants.js.map +1 -0
  2469. package/dist/src/ui/themes/ansi-light.d.ts +7 -0
  2470. package/dist/src/ui/themes/ansi-light.js +144 -0
  2471. package/dist/src/ui/themes/ansi-light.js.map +1 -0
  2472. package/dist/src/ui/themes/ansi.d.ts +7 -0
  2473. package/dist/src/ui/themes/ansi.js +154 -0
  2474. package/dist/src/ui/themes/ansi.js.map +1 -0
  2475. package/dist/src/ui/themes/atom-one-dark.d.ts +7 -0
  2476. package/dist/src/ui/themes/atom-one-dark.js +140 -0
  2477. package/dist/src/ui/themes/atom-one-dark.js.map +1 -0
  2478. package/dist/src/ui/themes/ayu-light.d.ts +7 -0
  2479. package/dist/src/ui/themes/ayu-light.js +132 -0
  2480. package/dist/src/ui/themes/ayu-light.js.map +1 -0
  2481. package/dist/src/ui/themes/ayu.d.ts +7 -0
  2482. package/dist/src/ui/themes/ayu.js +106 -0
  2483. package/dist/src/ui/themes/ayu.js.map +1 -0
  2484. package/dist/src/ui/themes/color-utils.d.ts +21 -0
  2485. package/dist/src/ui/themes/color-utils.js +223 -0
  2486. package/dist/src/ui/themes/color-utils.js.map +1 -0
  2487. package/dist/src/ui/themes/color-utils.test.d.ts +6 -0
  2488. package/dist/src/ui/themes/color-utils.test.js +197 -0
  2489. package/dist/src/ui/themes/color-utils.test.js.map +1 -0
  2490. package/dist/src/ui/themes/default-light.d.ts +7 -0
  2491. package/dist/src/ui/themes/default-light.js +100 -0
  2492. package/dist/src/ui/themes/default-light.js.map +1 -0
  2493. package/dist/src/ui/themes/default.d.ts +7 -0
  2494. package/dist/src/ui/themes/default.js +143 -0
  2495. package/dist/src/ui/themes/default.js.map +1 -0
  2496. package/dist/src/ui/themes/detect-terminal-theme.d.ts +75 -0
  2497. package/dist/src/ui/themes/detect-terminal-theme.js +228 -0
  2498. package/dist/src/ui/themes/detect-terminal-theme.js.map +1 -0
  2499. package/dist/src/ui/themes/detect-terminal-theme.test.d.ts +6 -0
  2500. package/dist/src/ui/themes/detect-terminal-theme.test.js +269 -0
  2501. package/dist/src/ui/themes/detect-terminal-theme.test.js.map +1 -0
  2502. package/dist/src/ui/themes/dracula.d.ts +7 -0
  2503. package/dist/src/ui/themes/dracula.js +117 -0
  2504. package/dist/src/ui/themes/dracula.js.map +1 -0
  2505. package/dist/src/ui/themes/github-dark.d.ts +7 -0
  2506. package/dist/src/ui/themes/github-dark.js +140 -0
  2507. package/dist/src/ui/themes/github-dark.js.map +1 -0
  2508. package/dist/src/ui/themes/github-light.d.ts +7 -0
  2509. package/dist/src/ui/themes/github-light.js +142 -0
  2510. package/dist/src/ui/themes/github-light.js.map +1 -0
  2511. package/dist/src/ui/themes/googlecode.d.ts +7 -0
  2512. package/dist/src/ui/themes/googlecode.js +139 -0
  2513. package/dist/src/ui/themes/googlecode.js.map +1 -0
  2514. package/dist/src/ui/themes/no-color.d.ts +7 -0
  2515. package/dist/src/ui/themes/no-color.js +120 -0
  2516. package/dist/src/ui/themes/no-color.js.map +1 -0
  2517. package/dist/src/ui/themes/qwen-dark.d.ts +7 -0
  2518. package/dist/src/ui/themes/qwen-dark.js +107 -0
  2519. package/dist/src/ui/themes/qwen-dark.js.map +1 -0
  2520. package/dist/src/ui/themes/qwen-light.d.ts +7 -0
  2521. package/dist/src/ui/themes/qwen-light.js +133 -0
  2522. package/dist/src/ui/themes/qwen-light.js.map +1 -0
  2523. package/dist/src/ui/themes/semantic-tokens.d.ts +40 -0
  2524. package/dist/src/ui/themes/semantic-tokens.js +103 -0
  2525. package/dist/src/ui/themes/semantic-tokens.js.map +1 -0
  2526. package/dist/src/ui/themes/shades-of-purple.d.ts +11 -0
  2527. package/dist/src/ui/themes/shades-of-purple.js +306 -0
  2528. package/dist/src/ui/themes/shades-of-purple.js.map +1 -0
  2529. package/dist/src/ui/themes/theme-manager.d.ts +91 -0
  2530. package/dist/src/ui/themes/theme-manager.js +311 -0
  2531. package/dist/src/ui/themes/theme-manager.js.map +1 -0
  2532. package/dist/src/ui/themes/theme-manager.test.d.ts +6 -0
  2533. package/dist/src/ui/themes/theme-manager.test.js +188 -0
  2534. package/dist/src/ui/themes/theme-manager.test.js.map +1 -0
  2535. package/dist/src/ui/themes/theme.d.ts +137 -0
  2536. package/dist/src/ui/themes/theme.js +393 -0
  2537. package/dist/src/ui/themes/theme.js.map +1 -0
  2538. package/dist/src/ui/themes/xcode.d.ts +7 -0
  2539. package/dist/src/ui/themes/xcode.js +147 -0
  2540. package/dist/src/ui/themes/xcode.js.map +1 -0
  2541. package/dist/src/ui/types.d.ts +620 -0
  2542. package/dist/src/ui/types.js +77 -0
  2543. package/dist/src/ui/types.js.map +1 -0
  2544. package/dist/src/ui/utils/CodeColorizer.d.ts +18 -0
  2545. package/dist/src/ui/utils/CodeColorizer.js +155 -0
  2546. package/dist/src/ui/utils/CodeColorizer.js.map +1 -0
  2547. package/dist/src/ui/utils/InlineMarkdownRenderer.d.ts +18 -0
  2548. package/dist/src/ui/utils/InlineMarkdownRenderer.js +173 -0
  2549. package/dist/src/ui/utils/InlineMarkdownRenderer.js.map +1 -0
  2550. package/dist/src/ui/utils/InlineMarkdownRenderer.test.d.ts +6 -0
  2551. package/dist/src/ui/utils/InlineMarkdownRenderer.test.js +303 -0
  2552. package/dist/src/ui/utils/InlineMarkdownRenderer.test.js.map +1 -0
  2553. package/dist/src/ui/utils/MarkdownDisplay.d.ts +25 -0
  2554. package/dist/src/ui/utils/MarkdownDisplay.js +420 -0
  2555. package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -0
  2556. package/dist/src/ui/utils/MarkdownDisplay.test.d.ts +6 -0
  2557. package/dist/src/ui/utils/MarkdownDisplay.test.js +702 -0
  2558. package/dist/src/ui/utils/MarkdownDisplay.test.js.map +1 -0
  2559. package/dist/src/ui/utils/MermaidDiagram.d.ts +15 -0
  2560. package/dist/src/ui/utils/MermaidDiagram.js +88 -0
  2561. package/dist/src/ui/utils/MermaidDiagram.js.map +1 -0
  2562. package/dist/src/ui/utils/MermaidDiagram.test.d.ts +6 -0
  2563. package/dist/src/ui/utils/MermaidDiagram.test.js +90 -0
  2564. package/dist/src/ui/utils/MermaidDiagram.test.js.map +1 -0
  2565. package/dist/src/ui/utils/TableRenderer.d.ts +30 -0
  2566. package/dist/src/ui/utils/TableRenderer.js +563 -0
  2567. package/dist/src/ui/utils/TableRenderer.js.map +1 -0
  2568. package/dist/src/ui/utils/TableRenderer.test.d.ts +6 -0
  2569. package/dist/src/ui/utils/TableRenderer.test.js +568 -0
  2570. package/dist/src/ui/utils/TableRenderer.test.js.map +1 -0
  2571. package/dist/src/ui/utils/approvalModeDisplay.d.ts +8 -0
  2572. package/dist/src/ui/utils/approvalModeDisplay.js +34 -0
  2573. package/dist/src/ui/utils/approvalModeDisplay.js.map +1 -0
  2574. package/dist/src/ui/utils/approvalModeDisplay.test.d.ts +6 -0
  2575. package/dist/src/ui/utils/approvalModeDisplay.test.js +35 -0
  2576. package/dist/src/ui/utils/approvalModeDisplay.test.js.map +1 -0
  2577. package/dist/src/ui/utils/asciiCharts.d.ts +44 -0
  2578. package/dist/src/ui/utils/asciiCharts.js +307 -0
  2579. package/dist/src/ui/utils/asciiCharts.js.map +1 -0
  2580. package/dist/src/ui/utils/asciiCharts.test.d.ts +6 -0
  2581. package/dist/src/ui/utils/asciiCharts.test.js +208 -0
  2582. package/dist/src/ui/utils/asciiCharts.test.js.map +1 -0
  2583. package/dist/src/ui/utils/backgroundWorkUtils.d.ts +8 -0
  2584. package/dist/src/ui/utils/backgroundWorkUtils.js +16 -0
  2585. package/dist/src/ui/utils/backgroundWorkUtils.js.map +1 -0
  2586. package/dist/src/ui/utils/backgroundWorkUtils.test.d.ts +6 -0
  2587. package/dist/src/ui/utils/backgroundWorkUtils.test.js +85 -0
  2588. package/dist/src/ui/utils/backgroundWorkUtils.test.js.map +1 -0
  2589. package/dist/src/ui/utils/clipboardUtils.d.ts +28 -0
  2590. package/dist/src/ui/utils/clipboardUtils.js +522 -0
  2591. package/dist/src/ui/utils/clipboardUtils.js.map +1 -0
  2592. package/dist/src/ui/utils/clipboardUtils.test.d.ts +6 -0
  2593. package/dist/src/ui/utils/clipboardUtils.test.js +465 -0
  2594. package/dist/src/ui/utils/clipboardUtils.test.js.map +1 -0
  2595. package/dist/src/ui/utils/commandUtils.d.ts +112 -0
  2596. package/dist/src/ui/utils/commandUtils.js +285 -0
  2597. package/dist/src/ui/utils/commandUtils.js.map +1 -0
  2598. package/dist/src/ui/utils/commandUtils.test.d.ts +6 -0
  2599. package/dist/src/ui/utils/commandUtils.test.js +560 -0
  2600. package/dist/src/ui/utils/commandUtils.test.js.map +1 -0
  2601. package/dist/src/ui/utils/computeStats.d.ts +10 -0
  2602. package/dist/src/ui/utils/computeStats.js +57 -0
  2603. package/dist/src/ui/utils/computeStats.js.map +1 -0
  2604. package/dist/src/ui/utils/customBanner.d.ts +35 -0
  2605. package/dist/src/ui/utils/customBanner.js +361 -0
  2606. package/dist/src/ui/utils/customBanner.js.map +1 -0
  2607. package/dist/src/ui/utils/customBanner.test.d.ts +6 -0
  2608. package/dist/src/ui/utils/customBanner.test.js +439 -0
  2609. package/dist/src/ui/utils/customBanner.test.js.map +1 -0
  2610. package/dist/src/ui/utils/displayUtils.d.ts +25 -0
  2611. package/dist/src/ui/utils/displayUtils.js +46 -0
  2612. package/dist/src/ui/utils/displayUtils.js.map +1 -0
  2613. package/dist/src/ui/utils/displayUtils.test.d.ts +6 -0
  2614. package/dist/src/ui/utils/displayUtils.test.js +61 -0
  2615. package/dist/src/ui/utils/displayUtils.test.js.map +1 -0
  2616. package/dist/src/ui/utils/export/collect.d.ts +16 -0
  2617. package/dist/src/ui/utils/export/collect.js +509 -0
  2618. package/dist/src/ui/utils/export/collect.js.map +1 -0
  2619. package/dist/src/ui/utils/export/collect.test.d.ts +6 -0
  2620. package/dist/src/ui/utils/export/collect.test.js +80 -0
  2621. package/dist/src/ui/utils/export/collect.test.js.map +1 -0
  2622. package/dist/src/ui/utils/export/formatters/html.d.ts +23 -0
  2623. package/dist/src/ui/utils/export/formatters/html.js +65 -0
  2624. package/dist/src/ui/utils/export/formatters/html.js.map +1 -0
  2625. package/dist/src/ui/utils/export/formatters/json.d.ts +11 -0
  2626. package/dist/src/ui/utils/export/formatters/json.js +13 -0
  2627. package/dist/src/ui/utils/export/formatters/json.js.map +1 -0
  2628. package/dist/src/ui/utils/export/formatters/jsonl.d.ts +11 -0
  2629. package/dist/src/ui/utils/export/formatters/jsonl.js +69 -0
  2630. package/dist/src/ui/utils/export/formatters/jsonl.js.map +1 -0
  2631. package/dist/src/ui/utils/export/formatters/markdown.d.ts +10 -0
  2632. package/dist/src/ui/utils/export/formatters/markdown.js +254 -0
  2633. package/dist/src/ui/utils/export/formatters/markdown.js.map +1 -0
  2634. package/dist/src/ui/utils/export/index.d.ts +13 -0
  2635. package/dist/src/ui/utils/export/index.js +13 -0
  2636. package/dist/src/ui/utils/export/index.js.map +1 -0
  2637. package/dist/src/ui/utils/export/normalize.d.ts +12 -0
  2638. package/dist/src/ui/utils/export/normalize.js +279 -0
  2639. package/dist/src/ui/utils/export/normalize.js.map +1 -0
  2640. package/dist/src/ui/utils/export/normalize.test.d.ts +6 -0
  2641. package/dist/src/ui/utils/export/normalize.test.js +62 -0
  2642. package/dist/src/ui/utils/export/normalize.test.js.map +1 -0
  2643. package/dist/src/ui/utils/export/types.d.ts +93 -0
  2644. package/dist/src/ui/utils/export/types.js +7 -0
  2645. package/dist/src/ui/utils/export/types.js.map +1 -0
  2646. package/dist/src/ui/utils/export/utils.d.ts +9 -0
  2647. package/dist/src/ui/utils/export/utils.js +13 -0
  2648. package/dist/src/ui/utils/export/utils.js.map +1 -0
  2649. package/dist/src/ui/utils/formatters.d.ts +28 -0
  2650. package/dist/src/ui/utils/formatters.js +100 -0
  2651. package/dist/src/ui/utils/formatters.js.map +1 -0
  2652. package/dist/src/ui/utils/formatters.test.d.ts +6 -0
  2653. package/dist/src/ui/utils/formatters.test.js +141 -0
  2654. package/dist/src/ui/utils/formatters.test.js.map +1 -0
  2655. package/dist/src/ui/utils/gradientUtils.d.ts +6 -0
  2656. package/dist/src/ui/utils/gradientUtils.js +11 -0
  2657. package/dist/src/ui/utils/gradientUtils.js.map +1 -0
  2658. package/dist/src/ui/utils/highlight.d.ts +12 -0
  2659. package/dist/src/ui/utils/highlight.js +90 -0
  2660. package/dist/src/ui/utils/highlight.js.map +1 -0
  2661. package/dist/src/ui/utils/highlight.test.d.ts +6 -0
  2662. package/dist/src/ui/utils/highlight.test.js +173 -0
  2663. package/dist/src/ui/utils/highlight.test.js.map +1 -0
  2664. package/dist/src/ui/utils/historyMapping.d.ts +44 -0
  2665. package/dist/src/ui/utils/historyMapping.js +110 -0
  2666. package/dist/src/ui/utils/historyMapping.js.map +1 -0
  2667. package/dist/src/ui/utils/historyMapping.test.d.ts +6 -0
  2668. package/dist/src/ui/utils/historyMapping.test.js +376 -0
  2669. package/dist/src/ui/utils/historyMapping.test.js.map +1 -0
  2670. package/dist/src/ui/utils/historyUtils.d.ts +34 -0
  2671. package/dist/src/ui/utils/historyUtils.js +117 -0
  2672. package/dist/src/ui/utils/historyUtils.js.map +1 -0
  2673. package/dist/src/ui/utils/historyUtils.test.d.ts +6 -0
  2674. package/dist/src/ui/utils/historyUtils.test.js +107 -0
  2675. package/dist/src/ui/utils/historyUtils.test.js.map +1 -0
  2676. package/dist/src/ui/utils/isNarrowWidth.d.ts +6 -0
  2677. package/dist/src/ui/utils/isNarrowWidth.js +9 -0
  2678. package/dist/src/ui/utils/isNarrowWidth.js.map +1 -0
  2679. package/dist/src/ui/utils/kittyProtocolDetector.d.ts +19 -0
  2680. package/dist/src/ui/utils/kittyProtocolDetector.js +115 -0
  2681. package/dist/src/ui/utils/kittyProtocolDetector.js.map +1 -0
  2682. package/dist/src/ui/utils/latexRenderer.d.ts +6 -0
  2683. package/dist/src/ui/utils/latexRenderer.js +187 -0
  2684. package/dist/src/ui/utils/latexRenderer.js.map +1 -0
  2685. package/dist/src/ui/utils/latexRenderer.test.d.ts +6 -0
  2686. package/dist/src/ui/utils/latexRenderer.test.js +27 -0
  2687. package/dist/src/ui/utils/latexRenderer.test.js.map +1 -0
  2688. package/dist/src/ui/utils/layoutUtils.d.ts +32 -0
  2689. package/dist/src/ui/utils/layoutUtils.js +46 -0
  2690. package/dist/src/ui/utils/layoutUtils.js.map +1 -0
  2691. package/dist/src/ui/utils/layoutUtils.test.d.ts +6 -0
  2692. package/dist/src/ui/utils/layoutUtils.test.js +30 -0
  2693. package/dist/src/ui/utils/layoutUtils.test.js.map +1 -0
  2694. package/dist/src/ui/utils/lowlightLoader.d.ts +43 -0
  2695. package/dist/src/ui/utils/lowlightLoader.js +88 -0
  2696. package/dist/src/ui/utils/lowlightLoader.js.map +1 -0
  2697. package/dist/src/ui/utils/lowlightLoader.test.d.ts +6 -0
  2698. package/dist/src/ui/utils/lowlightLoader.test.js +120 -0
  2699. package/dist/src/ui/utils/lowlightLoader.test.js.map +1 -0
  2700. package/dist/src/ui/utils/markdownUtilities.d.ts +6 -0
  2701. package/dist/src/ui/utils/markdownUtilities.js +110 -0
  2702. package/dist/src/ui/utils/markdownUtilities.js.map +1 -0
  2703. package/dist/src/ui/utils/markdownUtilities.test.d.ts +6 -0
  2704. package/dist/src/ui/utils/markdownUtilities.test.js +42 -0
  2705. package/dist/src/ui/utils/markdownUtilities.test.js.map +1 -0
  2706. package/dist/src/ui/utils/mergeCompactToolGroups.d.ts +62 -0
  2707. package/dist/src/ui/utils/mergeCompactToolGroups.js +212 -0
  2708. package/dist/src/ui/utils/mergeCompactToolGroups.js.map +1 -0
  2709. package/dist/src/ui/utils/mergeCompactToolGroups.test.d.ts +6 -0
  2710. package/dist/src/ui/utils/mergeCompactToolGroups.test.js +473 -0
  2711. package/dist/src/ui/utils/mergeCompactToolGroups.test.js.map +1 -0
  2712. package/dist/src/ui/utils/mermaidImageRenderer.d.ts +54 -0
  2713. package/dist/src/ui/utils/mermaidImageRenderer.js +955 -0
  2714. package/dist/src/ui/utils/mermaidImageRenderer.js.map +1 -0
  2715. package/dist/src/ui/utils/mermaidImageRenderer.test.d.ts +6 -0
  2716. package/dist/src/ui/utils/mermaidImageRenderer.test.js +528 -0
  2717. package/dist/src/ui/utils/mermaidImageRenderer.test.js.map +1 -0
  2718. package/dist/src/ui/utils/mermaidVisualRenderer.d.ts +12 -0
  2719. package/dist/src/ui/utils/mermaidVisualRenderer.js +1097 -0
  2720. package/dist/src/ui/utils/mermaidVisualRenderer.js.map +1 -0
  2721. package/dist/src/ui/utils/mermaidVisualRenderer.test.d.ts +6 -0
  2722. package/dist/src/ui/utils/mermaidVisualRenderer.test.js +69 -0
  2723. package/dist/src/ui/utils/mermaidVisualRenderer.test.js.map +1 -0
  2724. package/dist/src/ui/utils/modelsBySource.d.ts +47 -0
  2725. package/dist/src/ui/utils/modelsBySource.js +89 -0
  2726. package/dist/src/ui/utils/modelsBySource.js.map +1 -0
  2727. package/dist/src/ui/utils/modelsBySource.test.d.ts +6 -0
  2728. package/dist/src/ui/utils/modelsBySource.test.js +111 -0
  2729. package/dist/src/ui/utils/modelsBySource.test.js.map +1 -0
  2730. package/dist/src/ui/utils/mouse.d.ts +39 -0
  2731. package/dist/src/ui/utils/mouse.js +169 -0
  2732. package/dist/src/ui/utils/mouse.js.map +1 -0
  2733. package/dist/src/ui/utils/mouse.test.d.ts +6 -0
  2734. package/dist/src/ui/utils/mouse.test.js +117 -0
  2735. package/dist/src/ui/utils/mouse.test.js.map +1 -0
  2736. package/dist/src/ui/utils/osc8.d.ts +124 -0
  2737. package/dist/src/ui/utils/osc8.js +463 -0
  2738. package/dist/src/ui/utils/osc8.js.map +1 -0
  2739. package/dist/src/ui/utils/osc8.test.d.ts +6 -0
  2740. package/dist/src/ui/utils/osc8.test.js +494 -0
  2741. package/dist/src/ui/utils/osc8.test.js.map +1 -0
  2742. package/dist/src/ui/utils/platformConstants.d.ts +75 -0
  2743. package/dist/src/ui/utils/platformConstants.js +78 -0
  2744. package/dist/src/ui/utils/platformConstants.js.map +1 -0
  2745. package/dist/src/ui/utils/restoreGoal.d.ts +47 -0
  2746. package/dist/src/ui/utils/restoreGoal.js +124 -0
  2747. package/dist/src/ui/utils/restoreGoal.js.map +1 -0
  2748. package/dist/src/ui/utils/restoreGoal.test.d.ts +6 -0
  2749. package/dist/src/ui/utils/restoreGoal.test.js +220 -0
  2750. package/dist/src/ui/utils/restoreGoal.test.js.map +1 -0
  2751. package/dist/src/ui/utils/resumeHistoryUtils.d.ts +22 -0
  2752. package/dist/src/ui/utils/resumeHistoryUtils.js +410 -0
  2753. package/dist/src/ui/utils/resumeHistoryUtils.js.map +1 -0
  2754. package/dist/src/ui/utils/resumeHistoryUtils.test.d.ts +6 -0
  2755. package/dist/src/ui/utils/resumeHistoryUtils.test.js +378 -0
  2756. package/dist/src/ui/utils/resumeHistoryUtils.test.js.map +1 -0
  2757. package/dist/src/ui/utils/sessionPickerUtils.d.ts +35 -0
  2758. package/dist/src/ui/utils/sessionPickerUtils.js +69 -0
  2759. package/dist/src/ui/utils/sessionPickerUtils.js.map +1 -0
  2760. package/dist/src/ui/utils/sessionPickerUtils.test.d.ts +6 -0
  2761. package/dist/src/ui/utils/sessionPickerUtils.test.js +79 -0
  2762. package/dist/src/ui/utils/sessionPickerUtils.test.js.map +1 -0
  2763. package/dist/src/ui/utils/statsDataService.d.ts +49 -0
  2764. package/dist/src/ui/utils/statsDataService.js +221 -0
  2765. package/dist/src/ui/utils/statsDataService.js.map +1 -0
  2766. package/dist/src/ui/utils/statsDataService.test.d.ts +6 -0
  2767. package/dist/src/ui/utils/statsDataService.test.js +406 -0
  2768. package/dist/src/ui/utils/statsDataService.test.js.map +1 -0
  2769. package/dist/src/ui/utils/synchronizedOutput.d.ts +16 -0
  2770. package/dist/src/ui/utils/synchronizedOutput.js +88 -0
  2771. package/dist/src/ui/utils/synchronizedOutput.js.map +1 -0
  2772. package/dist/src/ui/utils/synchronizedOutput.test.d.ts +6 -0
  2773. package/dist/src/ui/utils/synchronizedOutput.test.js +154 -0
  2774. package/dist/src/ui/utils/synchronizedOutput.test.js.map +1 -0
  2775. package/dist/src/ui/utils/terminalRedrawOptimizer.d.ts +21 -0
  2776. package/dist/src/ui/utils/terminalRedrawOptimizer.js +108 -0
  2777. package/dist/src/ui/utils/terminalRedrawOptimizer.js.map +1 -0
  2778. package/dist/src/ui/utils/terminalRedrawOptimizer.test.d.ts +6 -0
  2779. package/dist/src/ui/utils/terminalRedrawOptimizer.test.js +85 -0
  2780. package/dist/src/ui/utils/terminalRedrawOptimizer.test.js.map +1 -0
  2781. package/dist/src/ui/utils/terminalSetup.d.ts +30 -0
  2782. package/dist/src/ui/utils/terminalSetup.js +310 -0
  2783. package/dist/src/ui/utils/terminalSetup.js.map +1 -0
  2784. package/dist/src/ui/utils/textUtils.d.ts +86 -0
  2785. package/dist/src/ui/utils/textUtils.js +360 -0
  2786. package/dist/src/ui/utils/textUtils.js.map +1 -0
  2787. package/dist/src/ui/utils/textUtils.test.d.ts +6 -0
  2788. package/dist/src/ui/utils/textUtils.test.js +269 -0
  2789. package/dist/src/ui/utils/textUtils.test.js.map +1 -0
  2790. package/dist/src/ui/utils/todoSnapshot.d.ts +13 -0
  2791. package/dist/src/ui/utils/todoSnapshot.js +133 -0
  2792. package/dist/src/ui/utils/todoSnapshot.js.map +1 -0
  2793. package/dist/src/ui/utils/todoSnapshot.test.d.ts +6 -0
  2794. package/dist/src/ui/utils/todoSnapshot.test.js +281 -0
  2795. package/dist/src/ui/utils/todoSnapshot.test.js.map +1 -0
  2796. package/dist/src/ui/utils/updateCheck.d.ts +12 -0
  2797. package/dist/src/ui/utils/updateCheck.js +80 -0
  2798. package/dist/src/ui/utils/updateCheck.js.map +1 -0
  2799. package/dist/src/ui/utils/updateCheck.test.d.ts +6 -0
  2800. package/dist/src/ui/utils/updateCheck.test.js +145 -0
  2801. package/dist/src/ui/utils/updateCheck.test.js.map +1 -0
  2802. package/dist/src/utils/acpModelUtils.d.ts +39 -0
  2803. package/dist/src/utils/acpModelUtils.js +61 -0
  2804. package/dist/src/utils/acpModelUtils.js.map +1 -0
  2805. package/dist/src/utils/acpModelUtils.test.d.ts +6 -0
  2806. package/dist/src/utils/acpModelUtils.test.js +31 -0
  2807. package/dist/src/utils/acpModelUtils.test.js.map +1 -0
  2808. package/dist/src/utils/apiPreconnect.d.ts +22 -0
  2809. package/dist/src/utils/apiPreconnect.js +188 -0
  2810. package/dist/src/utils/apiPreconnect.js.map +1 -0
  2811. package/dist/src/utils/apiPreconnect.test.d.ts +6 -0
  2812. package/dist/src/utils/apiPreconnect.test.js +252 -0
  2813. package/dist/src/utils/apiPreconnect.test.js.map +1 -0
  2814. package/dist/src/utils/checks.d.ts +19 -0
  2815. package/dist/src/utils/checks.js +24 -0
  2816. package/dist/src/utils/checks.js.map +1 -0
  2817. package/dist/src/utils/cleanup.d.ts +23 -0
  2818. package/dist/src/utils/cleanup.js +96 -0
  2819. package/dist/src/utils/cleanup.js.map +1 -0
  2820. package/dist/src/utils/commands.d.ts +20 -0
  2821. package/dist/src/utils/commands.js +53 -0
  2822. package/dist/src/utils/commands.js.map +1 -0
  2823. package/dist/src/utils/commands.test.d.ts +6 -0
  2824. package/dist/src/utils/commands.test.js +115 -0
  2825. package/dist/src/utils/commands.test.js.map +1 -0
  2826. package/dist/src/utils/commentJson.d.ts +25 -0
  2827. package/dist/src/utils/commentJson.js +113 -0
  2828. package/dist/src/utils/commentJson.js.map +1 -0
  2829. package/dist/src/utils/commentJson.test.d.ts +6 -0
  2830. package/dist/src/utils/commentJson.test.js +385 -0
  2831. package/dist/src/utils/commentJson.test.js.map +1 -0
  2832. package/dist/src/utils/costCalculator.d.ts +14 -0
  2833. package/dist/src/utils/costCalculator.js +19 -0
  2834. package/dist/src/utils/costCalculator.js.map +1 -0
  2835. package/dist/src/utils/costCalculator.test.d.ts +6 -0
  2836. package/dist/src/utils/costCalculator.test.js +177 -0
  2837. package/dist/src/utils/costCalculator.test.js.map +1 -0
  2838. package/dist/src/utils/cpuProfiler.d.ts +63 -0
  2839. package/dist/src/utils/cpuProfiler.js +341 -0
  2840. package/dist/src/utils/cpuProfiler.js.map +1 -0
  2841. package/dist/src/utils/cpuProfiler.test.d.ts +6 -0
  2842. package/dist/src/utils/cpuProfiler.test.js +293 -0
  2843. package/dist/src/utils/cpuProfiler.test.js.map +1 -0
  2844. package/dist/src/utils/deepMerge.d.ts +9 -0
  2845. package/dist/src/utils/deepMerge.js +58 -0
  2846. package/dist/src/utils/deepMerge.js.map +1 -0
  2847. package/dist/src/utils/deepMerge.test.d.ts +6 -0
  2848. package/dist/src/utils/deepMerge.test.js +143 -0
  2849. package/dist/src/utils/deepMerge.test.js.map +1 -0
  2850. package/dist/src/utils/dialogScopeUtils.d.ts +28 -0
  2851. package/dist/src/utils/dialogScopeUtils.js +51 -0
  2852. package/dist/src/utils/dialogScopeUtils.js.map +1 -0
  2853. package/dist/src/utils/doctorChecks.d.ts +11 -0
  2854. package/dist/src/utils/doctorChecks.js +351 -0
  2855. package/dist/src/utils/doctorChecks.js.map +1 -0
  2856. package/dist/src/utils/doctorChecks.test.d.ts +6 -0
  2857. package/dist/src/utils/doctorChecks.test.js +280 -0
  2858. package/dist/src/utils/doctorChecks.test.js.map +1 -0
  2859. package/dist/src/utils/earlyInputCapture.d.ts +33 -0
  2860. package/dist/src/utils/earlyInputCapture.js +311 -0
  2861. package/dist/src/utils/earlyInputCapture.js.map +1 -0
  2862. package/dist/src/utils/earlyInputCapture.test.d.ts +6 -0
  2863. package/dist/src/utils/earlyInputCapture.test.js +274 -0
  2864. package/dist/src/utils/earlyInputCapture.test.js.map +1 -0
  2865. package/dist/src/utils/envVarResolver.d.ts +39 -0
  2866. package/dist/src/utils/envVarResolver.js +100 -0
  2867. package/dist/src/utils/envVarResolver.js.map +1 -0
  2868. package/dist/src/utils/envVarResolver.test.d.ts +6 -0
  2869. package/dist/src/utils/envVarResolver.test.js +221 -0
  2870. package/dist/src/utils/envVarResolver.test.js.map +1 -0
  2871. package/dist/src/utils/errors.d.ts +76 -0
  2872. package/dist/src/utils/errors.js +237 -0
  2873. package/dist/src/utils/errors.js.map +1 -0
  2874. package/dist/src/utils/errors.test.d.ts +6 -0
  2875. package/dist/src/utils/errors.test.js +536 -0
  2876. package/dist/src/utils/errors.test.js.map +1 -0
  2877. package/dist/src/utils/events.d.ts +13 -0
  2878. package/dist/src/utils/events.js +15 -0
  2879. package/dist/src/utils/events.js.map +1 -0
  2880. package/dist/src/utils/gitUtils.d.ts +30 -0
  2881. package/dist/src/utils/gitUtils.js +108 -0
  2882. package/dist/src/utils/gitUtils.js.map +1 -0
  2883. package/dist/src/utils/gitUtils.test.d.ts +6 -0
  2884. package/dist/src/utils/gitUtils.test.js +172 -0
  2885. package/dist/src/utils/gitUtils.test.js.map +1 -0
  2886. package/dist/src/utils/handleAutoUpdate.d.ts +16 -0
  2887. package/dist/src/utils/handleAutoUpdate.js +144 -0
  2888. package/dist/src/utils/handleAutoUpdate.js.map +1 -0
  2889. package/dist/src/utils/headlessSafetyWarnings.d.ts +21 -0
  2890. package/dist/src/utils/headlessSafetyWarnings.js +45 -0
  2891. package/dist/src/utils/headlessSafetyWarnings.js.map +1 -0
  2892. package/dist/src/utils/headlessSafetyWarnings.test.d.ts +6 -0
  2893. package/dist/src/utils/headlessSafetyWarnings.test.js +66 -0
  2894. package/dist/src/utils/headlessSafetyWarnings.test.js.map +1 -0
  2895. package/dist/src/utils/housekeeping/cleanup.d.ts +15 -0
  2896. package/dist/src/utils/housekeeping/cleanup.js +69 -0
  2897. package/dist/src/utils/housekeeping/cleanup.js.map +1 -0
  2898. package/dist/src/utils/housekeeping/cleanup.test.d.ts +6 -0
  2899. package/dist/src/utils/housekeeping/cleanup.test.js +166 -0
  2900. package/dist/src/utils/housekeeping/cleanup.test.js.map +1 -0
  2901. package/dist/src/utils/housekeeping/lastInteractionAt.d.ts +9 -0
  2902. package/dist/src/utils/housekeeping/lastInteractionAt.js +22 -0
  2903. package/dist/src/utils/housekeeping/lastInteractionAt.js.map +1 -0
  2904. package/dist/src/utils/housekeeping/scheduler.d.ts +17 -0
  2905. package/dist/src/utils/housekeeping/scheduler.js +130 -0
  2906. package/dist/src/utils/housekeeping/scheduler.js.map +1 -0
  2907. package/dist/src/utils/housekeeping/scheduler.test.d.ts +6 -0
  2908. package/dist/src/utils/housekeeping/scheduler.test.js +190 -0
  2909. package/dist/src/utils/housekeeping/scheduler.test.js.map +1 -0
  2910. package/dist/src/utils/housekeeping/throttledOnce.d.ts +13 -0
  2911. package/dist/src/utils/housekeeping/throttledOnce.js +110 -0
  2912. package/dist/src/utils/housekeeping/throttledOnce.js.map +1 -0
  2913. package/dist/src/utils/housekeeping/throttledOnce.test.d.ts +6 -0
  2914. package/dist/src/utils/housekeeping/throttledOnce.test.js +94 -0
  2915. package/dist/src/utils/housekeeping/throttledOnce.test.js.map +1 -0
  2916. package/dist/src/utils/installationInfo.d.ts +26 -0
  2917. package/dist/src/utils/installationInfo.js +266 -0
  2918. package/dist/src/utils/installationInfo.js.map +1 -0
  2919. package/dist/src/utils/installationInfo.test.d.ts +6 -0
  2920. package/dist/src/utils/installationInfo.test.js +466 -0
  2921. package/dist/src/utils/installationInfo.test.js.map +1 -0
  2922. package/dist/src/utils/languageUtils.d.ts +40 -0
  2923. package/dist/src/utils/languageUtils.js +163 -0
  2924. package/dist/src/utils/languageUtils.js.map +1 -0
  2925. package/dist/src/utils/languageUtils.test.d.ts +6 -0
  2926. package/dist/src/utils/languageUtils.test.js +341 -0
  2927. package/dist/src/utils/languageUtils.test.js.map +1 -0
  2928. package/dist/src/utils/math.d.ts +13 -0
  2929. package/dist/src/utils/math.js +14 -0
  2930. package/dist/src/utils/math.js.map +1 -0
  2931. package/dist/src/utils/memoryDiagnostics.d.ts +65 -0
  2932. package/dist/src/utils/memoryDiagnostics.js +365 -0
  2933. package/dist/src/utils/memoryDiagnostics.js.map +1 -0
  2934. package/dist/src/utils/memoryDiagnostics.test.d.ts +6 -0
  2935. package/dist/src/utils/memoryDiagnostics.test.js +641 -0
  2936. package/dist/src/utils/memoryDiagnostics.test.js.map +1 -0
  2937. package/dist/src/utils/modelConfigUtils.d.ts +55 -0
  2938. package/dist/src/utils/modelConfigUtils.js +186 -0
  2939. package/dist/src/utils/modelConfigUtils.js.map +1 -0
  2940. package/dist/src/utils/modelConfigUtils.test.d.ts +6 -0
  2941. package/dist/src/utils/modelConfigUtils.test.js +1247 -0
  2942. package/dist/src/utils/modelConfigUtils.test.js.map +1 -0
  2943. package/dist/src/utils/nonInteractiveHelpers.d.ts +101 -0
  2944. package/dist/src/utils/nonInteractiveHelpers.js +479 -0
  2945. package/dist/src/utils/nonInteractiveHelpers.js.map +1 -0
  2946. package/dist/src/utils/nonInteractiveHelpers.test.d.ts +6 -0
  2947. package/dist/src/utils/nonInteractiveHelpers.test.js +1038 -0
  2948. package/dist/src/utils/nonInteractiveHelpers.test.js.map +1 -0
  2949. package/dist/src/utils/osc.d.ts +91 -0
  2950. package/dist/src/utils/osc.js +162 -0
  2951. package/dist/src/utils/osc.js.map +1 -0
  2952. package/dist/src/utils/osc.test.d.ts +6 -0
  2953. package/dist/src/utils/osc.test.js +217 -0
  2954. package/dist/src/utils/osc.test.js.map +1 -0
  2955. package/dist/src/utils/package.d.ts +12 -0
  2956. package/dist/src/utils/package.js +24 -0
  2957. package/dist/src/utils/package.js.map +1 -0
  2958. package/dist/src/utils/processUtils.d.ts +13 -0
  2959. package/dist/src/utils/processUtils.js +18 -0
  2960. package/dist/src/utils/processUtils.js.map +1 -0
  2961. package/dist/src/utils/processUtils.test.d.ts +6 -0
  2962. package/dist/src/utils/processUtils.test.js +20 -0
  2963. package/dist/src/utils/processUtils.test.js.map +1 -0
  2964. package/dist/src/utils/readStdin.d.ts +6 -0
  2965. package/dist/src/utils/readStdin.js +60 -0
  2966. package/dist/src/utils/readStdin.js.map +1 -0
  2967. package/dist/src/utils/readStdin.test.d.ts +6 -0
  2968. package/dist/src/utils/readStdin.test.js +88 -0
  2969. package/dist/src/utils/readStdin.test.js.map +1 -0
  2970. package/dist/src/utils/relaunch.d.ts +9 -0
  2971. package/dist/src/utils/relaunch.js +68 -0
  2972. package/dist/src/utils/relaunch.js.map +1 -0
  2973. package/dist/src/utils/relaunch.test.d.ts +6 -0
  2974. package/dist/src/utils/relaunch.test.js +291 -0
  2975. package/dist/src/utils/relaunch.test.js.map +1 -0
  2976. package/dist/src/utils/resolvePath.d.ts +6 -0
  2977. package/dist/src/utils/resolvePath.js +21 -0
  2978. package/dist/src/utils/resolvePath.js.map +1 -0
  2979. package/dist/src/utils/runBudget.d.ts +116 -0
  2980. package/dist/src/utils/runBudget.js +235 -0
  2981. package/dist/src/utils/runBudget.js.map +1 -0
  2982. package/dist/src/utils/runBudget.test.d.ts +6 -0
  2983. package/dist/src/utils/runBudget.test.js +187 -0
  2984. package/dist/src/utils/runBudget.test.js.map +1 -0
  2985. package/dist/src/utils/sandbox-macos-permissive-closed.sb +33 -0
  2986. package/dist/src/utils/sandbox-macos-permissive-open.sb +28 -0
  2987. package/dist/src/utils/sandbox-macos-permissive-proxied.sb +38 -0
  2988. package/dist/src/utils/sandbox-macos-restrictive-closed.sb +94 -0
  2989. package/dist/src/utils/sandbox-macos-restrictive-open.sb +97 -0
  2990. package/dist/src/utils/sandbox-macos-restrictive-proxied.sb +99 -0
  2991. package/dist/src/utils/sandbox.d.ts +7 -0
  2992. package/dist/src/utils/sandbox.js +788 -0
  2993. package/dist/src/utils/sandbox.js.map +1 -0
  2994. package/dist/src/utils/sessionPaths.d.ts +19 -0
  2995. package/dist/src/utils/sessionPaths.js +141 -0
  2996. package/dist/src/utils/sessionPaths.js.map +1 -0
  2997. package/dist/src/utils/sessionPaths.test.d.ts +6 -0
  2998. package/dist/src/utils/sessionPaths.test.js +249 -0
  2999. package/dist/src/utils/sessionPaths.test.js.map +1 -0
  3000. package/dist/src/utils/settingsUtils.d.ts +167 -0
  3001. package/dist/src/utils/settingsUtils.js +532 -0
  3002. package/dist/src/utils/settingsUtils.js.map +1 -0
  3003. package/dist/src/utils/settingsUtils.test.d.ts +6 -0
  3004. package/dist/src/utils/settingsUtils.test.js +849 -0
  3005. package/dist/src/utils/settingsUtils.test.js.map +1 -0
  3006. package/dist/src/utils/spawnWrapper.d.ts +7 -0
  3007. package/dist/src/utils/spawnWrapper.js +8 -0
  3008. package/dist/src/utils/spawnWrapper.js.map +1 -0
  3009. package/dist/src/utils/standalone-update-verify.d.ts +12 -0
  3010. package/dist/src/utils/standalone-update-verify.js +43 -0
  3011. package/dist/src/utils/standalone-update-verify.js.map +1 -0
  3012. package/dist/src/utils/standalone-update-verify.test.d.ts +6 -0
  3013. package/dist/src/utils/standalone-update-verify.test.js +27 -0
  3014. package/dist/src/utils/standalone-update-verify.test.js.map +1 -0
  3015. package/dist/src/utils/standalone-update.d.ts +27 -0
  3016. package/dist/src/utils/standalone-update.js +714 -0
  3017. package/dist/src/utils/standalone-update.js.map +1 -0
  3018. package/dist/src/utils/standalone-update.test.d.ts +6 -0
  3019. package/dist/src/utils/standalone-update.test.js +301 -0
  3020. package/dist/src/utils/standalone-update.test.js.map +1 -0
  3021. package/dist/src/utils/startupProfiler.d.ts +90 -0
  3022. package/dist/src/utils/startupProfiler.js +267 -0
  3023. package/dist/src/utils/startupProfiler.js.map +1 -0
  3024. package/dist/src/utils/startupProfiler.test.d.ts +1 -0
  3025. package/dist/src/utils/startupProfiler.test.js +293 -0
  3026. package/dist/src/utils/startupProfiler.test.js.map +1 -0
  3027. package/dist/src/utils/startupWarnings.d.ts +6 -0
  3028. package/dist/src/utils/startupWarnings.js +40 -0
  3029. package/dist/src/utils/startupWarnings.js.map +1 -0
  3030. package/dist/src/utils/stdioHelpers.d.ts +31 -0
  3031. package/dist/src/utils/stdioHelpers.js +38 -0
  3032. package/dist/src/utils/stdioHelpers.js.map +1 -0
  3033. package/dist/src/utils/systemInfo.d.ts +78 -0
  3034. package/dist/src/utils/systemInfo.js +208 -0
  3035. package/dist/src/utils/systemInfo.js.map +1 -0
  3036. package/dist/src/utils/systemInfo.test.d.ts +6 -0
  3037. package/dist/src/utils/systemInfo.test.js +380 -0
  3038. package/dist/src/utils/systemInfo.test.js.map +1 -0
  3039. package/dist/src/utils/systemInfoFields.d.ts +18 -0
  3040. package/dist/src/utils/systemInfoFields.js +102 -0
  3041. package/dist/src/utils/systemInfoFields.js.map +1 -0
  3042. package/dist/src/utils/systemInfoFields.test.d.ts +6 -0
  3043. package/dist/src/utils/systemInfoFields.test.js +74 -0
  3044. package/dist/src/utils/systemInfoFields.test.js.map +1 -0
  3045. package/dist/src/utils/terminalSequence.d.ts +21 -0
  3046. package/dist/src/utils/terminalSequence.js +124 -0
  3047. package/dist/src/utils/terminalSequence.js.map +1 -0
  3048. package/dist/src/utils/terminalSequence.test.d.ts +6 -0
  3049. package/dist/src/utils/terminalSequence.test.js +132 -0
  3050. package/dist/src/utils/terminalSequence.test.js.map +1 -0
  3051. package/dist/src/utils/truncatedDiffPreview.d.ts +6 -0
  3052. package/dist/src/utils/truncatedDiffPreview.js +18 -0
  3053. package/dist/src/utils/truncatedDiffPreview.js.map +1 -0
  3054. package/dist/src/utils/updateEventEmitter.d.ts +11 -0
  3055. package/dist/src/utils/updateEventEmitter.js +12 -0
  3056. package/dist/src/utils/updateEventEmitter.js.map +1 -0
  3057. package/dist/src/utils/userPromptExpansionHook.d.ts +9 -0
  3058. package/dist/src/utils/userPromptExpansionHook.js +30 -0
  3059. package/dist/src/utils/userPromptExpansionHook.js.map +1 -0
  3060. package/dist/src/utils/userPromptExpansionHook.test.d.ts +6 -0
  3061. package/dist/src/utils/userPromptExpansionHook.test.js +69 -0
  3062. package/dist/src/utils/userPromptExpansionHook.test.js.map +1 -0
  3063. package/dist/src/utils/userStartupWarnings.d.ts +12 -0
  3064. package/dist/src/utils/userStartupWarnings.js +74 -0
  3065. package/dist/src/utils/userStartupWarnings.js.map +1 -0
  3066. package/dist/src/utils/userStartupWarnings.test.d.ts +6 -0
  3067. package/dist/src/utils/userStartupWarnings.test.js +88 -0
  3068. package/dist/src/utils/userStartupWarnings.test.js.map +1 -0
  3069. package/dist/src/utils/version.d.ts +6 -0
  3070. package/dist/src/utils/version.js +11 -0
  3071. package/dist/src/utils/version.js.map +1 -0
  3072. package/dist/src/utils/warningHandler.d.ts +29 -0
  3073. package/dist/src/utils/warningHandler.js +100 -0
  3074. package/dist/src/utils/warningHandler.js.map +1 -0
  3075. package/dist/src/utils/warningHandler.test.d.ts +6 -0
  3076. package/dist/src/utils/warningHandler.test.js +185 -0
  3077. package/dist/src/utils/warningHandler.test.js.map +1 -0
  3078. package/dist/src/utils/windowTitle.d.ts +12 -0
  3079. package/dist/src/utils/windowTitle.js +19 -0
  3080. package/dist/src/utils/windowTitle.js.map +1 -0
  3081. package/dist/src/utils/windowTitle.test.d.ts +6 -0
  3082. package/dist/src/utils/windowTitle.test.js +49 -0
  3083. package/dist/src/utils/windowTitle.test.js.map +1 -0
  3084. package/dist/src/utils/writeWithBackup.d.ts +49 -0
  3085. package/dist/src/utils/writeWithBackup.js +136 -0
  3086. package/dist/src/utils/writeWithBackup.js.map +1 -0
  3087. package/dist/src/utils/writeWithBackup.test.d.ts +6 -0
  3088. package/dist/src/utils/writeWithBackup.test.js +177 -0
  3089. package/dist/src/utils/writeWithBackup.test.js.map +1 -0
  3090. package/dist/src/validateNonInterActiveAuth.d.ts +8 -0
  3091. package/dist/src/validateNonInterActiveAuth.js +66 -0
  3092. package/dist/src/validateNonInterActiveAuth.js.map +1 -0
  3093. package/dist/tsconfig.tsbuildinfo +1 -0
  3094. package/package.json +121 -0
@@ -0,0 +1,1899 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { useState, useRef, useCallback, useEffect, useMemo, useLayoutEffect, } from 'react';
7
+ import { GeminiEventType as ServerGeminiEventType, SendMessageType, createDebugLogger, ToolNames, getErrorMessage, isNodeError, MessageSenderType, logUserPrompt, logUserRetry, UnauthorizedError, UserPromptEvent, UserRetryEvent, logConversationFinishedEvent, ConversationFinishedEvent, ApprovalMode, parseAndFormatApiError, promptIdContext, ToolConfirmationOutcome, logApiCancel, ApiCancelEvent, isSupportedImageMimeType, getUnsupportedImageFormatWarning, generateToolUseSummary, getActiveGoal, activeGoalEquals, setActiveGoal, clearActiveGoal, } from '@tulex-cli/tulex-cli-core';
8
+ import { FinishReason } from '@google/genai';
9
+ import { StreamingState, MessageType, ToolCallStatus } from '../types.js';
10
+ import { isAtCommand, isBtwCommand, isSlashCommand, } from '../utils/commandUtils.js';
11
+ import { useShellCommandProcessor } from './shellCommandProcessor.js';
12
+ import { handleAtCommand } from './atCommandProcessor.js';
13
+ import { findLastSafeSplitPoint } from '../utils/markdownUtilities.js';
14
+ import { useStateAndRef } from './useStateAndRef.js';
15
+ import { useReactToolScheduler, mapToDisplay as mapTrackedToolCallsToDisplay, } from './useReactToolScheduler.js';
16
+ import { promises as fs } from 'node:fs';
17
+ import path from 'node:path';
18
+ import { useSessionStats } from '../contexts/SessionContext.js';
19
+ import { t } from '../../i18n/index.js';
20
+ import { useDualOutput } from '../../dualOutput/DualOutputContext.js';
21
+ import process from 'node:process';
22
+ const debugLogger = createDebugLogger('GEMINI_STREAM');
23
+ /**
24
+ * Pull the assistant's most recent visible text from the UI history. Used as
25
+ * an intent prefix for tool-use summary generation so the summarizer knows
26
+ * what the user was trying to accomplish.
27
+ */
28
+ function extractLastAssistantText(history) {
29
+ for (let i = history.length - 1; i >= 0; i--) {
30
+ const item = history[i];
31
+ if ((item.type === 'gemini' || item.type === 'gemini_content') &&
32
+ typeof item.text === 'string' &&
33
+ item.text.trim().length > 0) {
34
+ return item.text;
35
+ }
36
+ }
37
+ return undefined;
38
+ }
39
+ function stripLeadingBlankLines(text) {
40
+ return text.replace(/^(?:[ \t]*\r?\n)+/, '');
41
+ }
42
+ /**
43
+ * Flatten `functionResponse` parts into a compact string for the summarizer.
44
+ * The summarizer itself truncates to 300 chars per field, so we just join
45
+ * whatever is available without re-serializing.
46
+ */
47
+ function extractToolResultText(parts) {
48
+ if (!parts)
49
+ return '';
50
+ const list = Array.isArray(parts) ? parts : [parts];
51
+ const chunks = [];
52
+ for (const part of list) {
53
+ if ('functionResponse' in part && part.functionResponse) {
54
+ const response = part.functionResponse
55
+ .response;
56
+ if (response !== undefined)
57
+ chunks.push(response);
58
+ }
59
+ else if ('text' in part && typeof part.text === 'string') {
60
+ chunks.push(part.text);
61
+ }
62
+ }
63
+ if (chunks.length === 0)
64
+ return '';
65
+ if (chunks.length === 1)
66
+ return chunks[0];
67
+ return chunks;
68
+ }
69
+ /**
70
+ * Classify API error to StopFailureErrorType
71
+ * @internal Exported for testing purposes
72
+ */
73
+ export function classifyApiError(error) {
74
+ const status = error.status;
75
+ const message = error.message?.toLowerCase() ?? '';
76
+ if (status === 429 || message.includes('rate limit')) {
77
+ return 'rate_limit';
78
+ }
79
+ if (status === 401 || message.includes('unauthorized')) {
80
+ return 'authentication_failed';
81
+ }
82
+ if (status === 402 ||
83
+ status === 403 ||
84
+ message.includes('billing') ||
85
+ message.includes('quota')) {
86
+ return 'billing_error';
87
+ }
88
+ if (status === 400 || message.includes('invalid')) {
89
+ return 'invalid_request';
90
+ }
91
+ if (status !== undefined && status >= 500) {
92
+ return 'server_error';
93
+ }
94
+ if (message.includes('max_tokens') || message.includes('token limit')) {
95
+ return 'max_output_tokens';
96
+ }
97
+ return 'unknown';
98
+ }
99
+ /**
100
+ * Checks if image parts have supported formats and returns unsupported ones
101
+ */
102
+ function checkImageFormatsSupport(parts) {
103
+ const unsupportedMimeTypes = [];
104
+ let hasImages = false;
105
+ if (typeof parts === 'string') {
106
+ return {
107
+ hasImages: false,
108
+ hasUnsupportedFormats: false,
109
+ unsupportedMimeTypes: [],
110
+ };
111
+ }
112
+ const partsArray = Array.isArray(parts) ? parts : [parts];
113
+ for (const part of partsArray) {
114
+ if (typeof part === 'string')
115
+ continue;
116
+ let mimeType;
117
+ // Check inlineData
118
+ if ('inlineData' in part &&
119
+ part.inlineData?.mimeType?.startsWith('image/')) {
120
+ hasImages = true;
121
+ mimeType = part.inlineData.mimeType;
122
+ }
123
+ // Check fileData
124
+ if ('fileData' in part && part.fileData?.mimeType?.startsWith('image/')) {
125
+ hasImages = true;
126
+ mimeType = part.fileData.mimeType;
127
+ }
128
+ // Check if the mime type is supported
129
+ if (mimeType && !isSupportedImageMimeType(mimeType)) {
130
+ unsupportedMimeTypes.push(mimeType);
131
+ }
132
+ }
133
+ return {
134
+ hasImages,
135
+ hasUnsupportedFormats: unsupportedMimeTypes.length > 0,
136
+ unsupportedMimeTypes,
137
+ };
138
+ }
139
+ var StreamProcessingStatus;
140
+ (function (StreamProcessingStatus) {
141
+ StreamProcessingStatus[StreamProcessingStatus["Completed"] = 0] = "Completed";
142
+ StreamProcessingStatus[StreamProcessingStatus["UserCancelled"] = 1] = "UserCancelled";
143
+ StreamProcessingStatus[StreamProcessingStatus["Error"] = 2] = "Error";
144
+ })(StreamProcessingStatus || (StreamProcessingStatus = {}));
145
+ const EDIT_TOOL_NAMES = new Set([
146
+ ToolNames.EDIT,
147
+ 'replace', // legacy alias, may still arrive from older providers
148
+ ToolNames.WRITE_FILE,
149
+ ToolNames.NOTEBOOK_EDIT,
150
+ ]);
151
+ const STREAM_UPDATE_THROTTLE_MS = 60;
152
+ function showCitations(settings) {
153
+ const enabled = settings?.merged?.ui?.showCitations;
154
+ if (enabled !== undefined) {
155
+ return enabled;
156
+ }
157
+ return true;
158
+ }
159
+ /**
160
+ * Manages the Gemini stream, including user input, command processing,
161
+ * API interaction, and tool call lifecycle.
162
+ */
163
+ export const useGeminiStream = (geminiClient, history, addItem, config, settings, onDebugMessage, handleSlashCommand, shellModeActive, getPreferredEditor, onAuthError, performMemoryRefresh, modelSwitchedFromQuotaError, setModelSwitchedFromQuotaError, onEditorClose, onCancelSubmit, setShellInputFocused, terminalWidth, terminalHeight, midTurnDrainRef, logger) => {
164
+ const [initError, setInitError] = useState(null);
165
+ const abortControllerRef = useRef(null);
166
+ const flushBufferedStreamEventsRef = useRef(new Set());
167
+ const turnCancelledRef = useRef(false);
168
+ const isSubmittingQueryRef = useRef(false);
169
+ const lastPromptRef = useRef(null);
170
+ // Records the USER history item that THIS turn's prepareQueryForGemini
171
+ // added (if any). Reset to null at the start of every turn (including
172
+ // Retry, which bypasses prepareQueryForGemini). Cron / Notification /
173
+ // slash submit_prompt paths don't add a user item, so this stays null
174
+ // on those turns. The cancel handler uses this to verify that the
175
+ // candidate `lastUserItem` it's about to rewind actually came from the
176
+ // cancelled turn — without the guard, an older user item with
177
+ // only-synthetic trailing could be wrongly truncated when a non-USER
178
+ // turn is cancelled.
179
+ //
180
+ // Identity is carried as `{ id, text }` (not just text) because
181
+ // `useHistoryManager.addItem` skips consecutive-duplicate user
182
+ // messages while still returning a freshly-generated id — text alone
183
+ // would let the auto-restore guard wrongly match an older USER row
184
+ // when the user re-submits the same prompt.
185
+ const lastTurnUserItemRef = useRef(null);
186
+ // Set to true the first time a content event lands this turn — even
187
+ // during the pre-cancel flush. AppContainer's auto-restore guard
188
+ // can't otherwise see content that was just addItem'd inside flush
189
+ // (React history hasn't re-rendered) and would wrongly truncate the
190
+ // committed text alongside the cancelled prompt. Reset at turn start
191
+ // alongside lastTurnUserItemRef.
192
+ const turnSawContentEventRef = useRef(false);
193
+ const lastPromptErroredRef = useRef(false);
194
+ const dualOutput = useDualOutput();
195
+ const [isResponding, setIsResponding] = useState(false);
196
+ const [thought, setThought] = useState(null);
197
+ // Hold the latest history in a ref so handleCompletedTools can read it
198
+ // without depending on `history` (which would recreate the tool scheduler
199
+ // every render). Use useLayoutEffect instead of writing during render —
200
+ // writing refs in the render phase is unsafe under React's concurrent
201
+ // rendering (a bailed-out render could leave the ref with a dropped value).
202
+ const historyRef = useRef(history);
203
+ useLayoutEffect(() => {
204
+ historyRef.current = history;
205
+ }, [history]);
206
+ // In-flight tool-use-summary aborters. Each batch gets its own AbortController
207
+ // because the captured turn controller is replaced when submitQuery starts
208
+ // the next turn, and the summary call outlives the current turn (that's the
209
+ // whole point — it overlaps with the next turn's streaming). cancelOngoingRequest
210
+ // aborts all in-flight summaries so Ctrl+C during the next turn also kills
211
+ // this turn's stale summary work.
212
+ const summaryAbortRefsRef = useRef(new Set());
213
+ const [pendingHistoryItem, pendingHistoryItemRef, setPendingHistoryItem] = useStateAndRef(null);
214
+ const [pendingRetryErrorItem, pendingRetryErrorItemRef, setPendingRetryErrorItem,] = useStateAndRef(null);
215
+ const [pendingRetryCountdownItem, pendingRetryCountdownItemRef, setPendingRetryCountdownItem,] = useStateAndRef(null);
216
+ const retryCountdownTimerRef = useRef(null);
217
+ const processedMemoryToolsRef = useRef(new Set());
218
+ const submitPromptOnCompleteRef = useRef(null);
219
+ const modelOverrideRef = useRef(undefined);
220
+ // --- Real-time token display ---
221
+ // Accumulates output character count across the whole turn (not per API call).
222
+ // Uses a ref to avoid re-renders on every text_delta.
223
+ const streamingResponseLengthRef = useRef(0);
224
+ // Tracks whether we are receiving content (↓) or waiting for API (↑).
225
+ const [isReceivingContent, setIsReceivingContent] = useState(false);
226
+ const { startNewPrompt, getPromptCount, stats: sessionStates, } = useSessionStats();
227
+ const storage = config.storage;
228
+ const [toolCalls, scheduleToolCalls, markToolsAsSubmitted] = useReactToolScheduler(async (completedToolCallsFromScheduler) => {
229
+ // This onComplete is called when ALL scheduled tools for a given batch are done.
230
+ if (completedToolCallsFromScheduler.length > 0) {
231
+ const projectRoot = config.getProjectRoot();
232
+ // Add the final state of these tools to the history for display.
233
+ const toolGroupDisplay = mapTrackedToolCallsToDisplay(completedToolCallsFromScheduler, projectRoot);
234
+ addItem(toolGroupDisplay, Date.now());
235
+ // Handle tool response submission immediately when tools complete
236
+ await handleCompletedTools(completedToolCallsFromScheduler);
237
+ }
238
+ }, config, getPreferredEditor, onEditorClose);
239
+ const pendingToolCallGroupDisplay = useMemo(() => toolCalls.length
240
+ ? mapTrackedToolCallsToDisplay(toolCalls, config.getProjectRoot())
241
+ : undefined, [toolCalls, config]);
242
+ const activeToolPtyId = useMemo(() => {
243
+ const executingShellTool = toolCalls?.find((tc) => tc.status === 'executing' && tc.request.name === 'run_shell_command');
244
+ if (executingShellTool) {
245
+ return executingShellTool.pid;
246
+ }
247
+ return undefined;
248
+ }, [toolCalls]);
249
+ const loopDetectedRef = useRef(false);
250
+ const [loopDetectionConfirmationRequest, setLoopDetectionConfirmationRequest,] = useState(null);
251
+ const stopRetryCountdownTimer = useCallback(() => {
252
+ if (retryCountdownTimerRef.current) {
253
+ clearInterval(retryCountdownTimerRef.current);
254
+ retryCountdownTimerRef.current = null;
255
+ }
256
+ }, []);
257
+ /**
258
+ * Clears the retry countdown timer and pending retry items.
259
+ */
260
+ const clearRetryCountdown = useCallback(() => {
261
+ stopRetryCountdownTimer();
262
+ skipRetryDelayRef.current = null;
263
+ setPendingRetryErrorItem(null);
264
+ setPendingRetryCountdownItem(null);
265
+ }, [
266
+ setPendingRetryErrorItem,
267
+ setPendingRetryCountdownItem,
268
+ stopRetryCountdownTimer,
269
+ ]);
270
+ // Holds the skipDelay callback from the current rate-limit RetryInfo.
271
+ // Managed symmetrically: set in startRetryCountdown, cleared in clearRetryCountdown.
272
+ const skipRetryDelayRef = useRef(null);
273
+ const startRetryCountdown = useCallback((retryInfo) => {
274
+ stopRetryCountdownTimer();
275
+ skipRetryDelayRef.current = retryInfo.skipDelay;
276
+ const startTime = Date.now();
277
+ const { message, attempt, maxRetries, delayMs } = retryInfo;
278
+ const retryReasonText = message ?? t('Rate limit exceeded. Please wait and try again.');
279
+ // Countdown line updates every second (dim/secondary color)
280
+ const updateCountdown = () => {
281
+ const elapsedMs = Date.now() - startTime;
282
+ const remainingMs = Math.max(0, delayMs - elapsedMs);
283
+ const remainingSec = Math.ceil(remainingMs / 1000);
284
+ // Update error item with hint containing countdown info (short format)
285
+ const hintText = `Retrying in ${remainingSec}s… (attempt ${attempt}/${maxRetries})`;
286
+ setPendingRetryErrorItem({
287
+ type: MessageType.ERROR,
288
+ text: retryReasonText,
289
+ hint: hintText,
290
+ });
291
+ setPendingRetryCountdownItem({
292
+ type: 'retry_countdown',
293
+ text: t('Retrying in {{seconds}} seconds… (attempt {{attempt}}/{{maxRetries}})', {
294
+ seconds: String(remainingSec),
295
+ attempt: String(attempt),
296
+ maxRetries: String(maxRetries),
297
+ }),
298
+ });
299
+ if (remainingMs <= 0) {
300
+ stopRetryCountdownTimer();
301
+ }
302
+ };
303
+ updateCountdown();
304
+ retryCountdownTimerRef.current = setInterval(updateCountdown, 1000);
305
+ }, [
306
+ setPendingRetryErrorItem,
307
+ setPendingRetryCountdownItem,
308
+ stopRetryCountdownTimer,
309
+ ]);
310
+ useEffect(() => () => stopRetryCountdownTimer(), [stopRetryCountdownTimer]);
311
+ const onExec = useCallback(async (done) => {
312
+ setIsResponding(true);
313
+ await done;
314
+ setIsResponding(false);
315
+ }, []);
316
+ const { handleShellCommand, activeShellPtyId } = useShellCommandProcessor(addItem, setPendingHistoryItem, onExec, onDebugMessage, config, geminiClient, setShellInputFocused, terminalWidth, terminalHeight);
317
+ const activePtyId = activeShellPtyId || activeToolPtyId;
318
+ useEffect(() => {
319
+ if (!activePtyId) {
320
+ setShellInputFocused(false);
321
+ }
322
+ }, [activePtyId, setShellInputFocused]);
323
+ const streamingState = useMemo(() => {
324
+ if (toolCalls.some((tc) => tc.status === 'awaiting_approval')) {
325
+ return StreamingState.WaitingForConfirmation;
326
+ }
327
+ // Check if any executing subagent task has a pending confirmation
328
+ if (toolCalls.some((tc) => {
329
+ if (tc.status !== 'executing')
330
+ return false;
331
+ const liveOutput = tc.liveOutput;
332
+ return (typeof liveOutput === 'object' &&
333
+ liveOutput !== null &&
334
+ 'type' in liveOutput &&
335
+ liveOutput.type === 'task_execution' &&
336
+ 'pendingConfirmation' in liveOutput &&
337
+ liveOutput.pendingConfirmation != null);
338
+ })) {
339
+ return StreamingState.WaitingForConfirmation;
340
+ }
341
+ if (isResponding ||
342
+ toolCalls.some((tc) => tc.status === 'executing' ||
343
+ tc.status === 'scheduled' ||
344
+ tc.status === 'validating' ||
345
+ ((tc.status === 'success' ||
346
+ tc.status === 'error' ||
347
+ tc.status === 'cancelled') &&
348
+ !tc
349
+ .responseSubmittedToGemini))) {
350
+ return StreamingState.Responding;
351
+ }
352
+ return StreamingState.Idle;
353
+ }, [isResponding, toolCalls]);
354
+ useEffect(() => {
355
+ if (config.getApprovalMode() === ApprovalMode.YOLO &&
356
+ streamingState === StreamingState.Idle) {
357
+ const lastUserMessageIndex = history.findLastIndex((item) => item.type === MessageType.USER);
358
+ const turnCount = lastUserMessageIndex === -1 ? 0 : history.length - lastUserMessageIndex;
359
+ if (turnCount > 0) {
360
+ logConversationFinishedEvent(config, new ConversationFinishedEvent(config.getApprovalMode(), turnCount));
361
+ }
362
+ }
363
+ }, [streamingState, config, history]);
364
+ const cancelOngoingRequest = useCallback(() => {
365
+ if (streamingState !== StreamingState.Responding) {
366
+ return;
367
+ }
368
+ if (turnCancelledRef.current) {
369
+ return;
370
+ }
371
+ // Flush throttled stream chunks FIRST so anything sitting in the
372
+ // per-turn bufferedEvents lands on `pendingHistoryItemRef.current`
373
+ // before we snapshot. Snapshotting before flush would miss content
374
+ // events that arrived inside the throttle window
375
+ // (STREAM_UPDATE_THROTTLE_MS), making AppContainer's auto-restore
376
+ // wrongly conclude the model produced nothing — and the subsequent
377
+ // addItem(pendingHistoryItemRef.current) below would commit content
378
+ // that auto-restore then truncates away.
379
+ for (const flushBufferedStreamEvents of flushBufferedStreamEventsRef.current) {
380
+ flushBufferedStreamEvents();
381
+ }
382
+ // Snapshot AFTER flush, BEFORE any addItem / setPendingHistoryItem(null)
383
+ // mutate the ref. This is what `onCancelSubmit` consumers (auto-restore
384
+ // in AppContainer) need to decide whether the model produced meaningful
385
+ // in-flight content — reading the React-state copy at the consumer
386
+ // would race with stream chunks that haven't re-rendered yet.
387
+ const pendingItemAtCancel = pendingHistoryItemRef.current;
388
+ turnCancelledRef.current = true;
389
+ isSubmittingQueryRef.current = false;
390
+ abortControllerRef.current?.abort();
391
+ // Cancel any in-flight tool-use-summary generations so their Promise.then
392
+ // doesn't addItem a stale label after the user cancelled.
393
+ for (const ac of summaryAbortRefsRef.current) {
394
+ ac.abort();
395
+ }
396
+ summaryAbortRefsRef.current.clear();
397
+ // Report cancellation to arena status reporter (if in arena mode).
398
+ // This is needed because cancellation during tool execution won't
399
+ // flow through sendMessageStream where the inline reportCancelled()
400
+ // lives — tools get cancelled and handleCompletedTools returns early.
401
+ config.getArenaAgentClient()?.reportCancelled();
402
+ // Log API cancellation
403
+ const prompt_id = config.getSessionId() + '########' + getPromptCount();
404
+ const cancellationEvent = new ApiCancelEvent(config.getModel(), prompt_id, config.getContentGeneratorConfig()?.authType);
405
+ logApiCancel(config, cancellationEvent);
406
+ if (pendingHistoryItemRef.current) {
407
+ addItem(pendingHistoryItemRef.current, Date.now());
408
+ }
409
+ addItem({
410
+ type: MessageType.INFO,
411
+ text: 'Request cancelled.',
412
+ }, Date.now());
413
+ setPendingHistoryItem(null);
414
+ clearRetryCountdown();
415
+ // Wrap the consumer callback so a throw in AppContainer's cancel
416
+ // handler can't strand the stream in `Responding` (which would lock
417
+ // the UI — Esc would no-op, the user would have to restart). State
418
+ // resets always run.
419
+ //
420
+ // Coupling note: AppContainer's auto-restore guard reads
421
+ // `historyRef.current` which does NOT yet contain the INFO/pending
422
+ // items we just enqueued via addItem above (React batches updates).
423
+ // That guard's correctness depends on the items added here staying
424
+ // synthetic (info/error/etc.) so the trailing-only-synthetic check
425
+ // returns the same answer with or without them. If you ever add a
426
+ // non-synthetic item here (e.g., a meaningful assistant block),
427
+ // either move the auto-restore check to read functional setState
428
+ // or revisit isSyntheticHistoryItem.
429
+ try {
430
+ onCancelSubmit({
431
+ pendingItem: pendingItemAtCancel,
432
+ lastTurnUserItem: lastTurnUserItemRef.current,
433
+ turnProducedMeaningfulContent: turnSawContentEventRef.current,
434
+ });
435
+ }
436
+ finally {
437
+ setIsResponding(false);
438
+ setShellInputFocused(false);
439
+ }
440
+ }, [
441
+ streamingState,
442
+ addItem,
443
+ setPendingHistoryItem,
444
+ onCancelSubmit,
445
+ pendingHistoryItemRef,
446
+ setShellInputFocused,
447
+ clearRetryCountdown,
448
+ config,
449
+ getPromptCount,
450
+ ]);
451
+ const prepareQueryForGemini = useCallback(async (query, userMessageTimestamp, abortSignal, prompt_id, submitType) => {
452
+ if (turnCancelledRef.current) {
453
+ return { queryToSend: null, shouldProceed: false };
454
+ }
455
+ if (typeof query === 'string' && query.trim().length === 0) {
456
+ return { queryToSend: null, shouldProceed: false };
457
+ }
458
+ // Reset at turn start. Only the user-typed-text path below assigns
459
+ // this — paths that don't add a USER history item (Cron /
460
+ // Notification / slash submit_prompt) leave it null so cancel
461
+ // never wrongly targets an older user item.
462
+ lastTurnUserItemRef.current = null;
463
+ let localQueryToSendToGemini = null;
464
+ if (typeof query === 'string') {
465
+ const trimmedQuery = query.trim();
466
+ // Notification messages (e.g. background agent completions) are
467
+ // pre-processed by the notification drain loop which already
468
+ // added the display item to history. Just pass the model text
469
+ // through to the API. Cron prompts still go through the normal
470
+ // slash/@-command/shell preprocessing path below.
471
+ if (submitType === SendMessageType.Notification) {
472
+ onDebugMessage(`Received notification (${trimmedQuery.length} chars)`);
473
+ return { queryToSend: trimmedQuery, shouldProceed: true };
474
+ }
475
+ onDebugMessage(`Received user query (${trimmedQuery.length} chars)`);
476
+ await logger?.logMessage(MessageSenderType.USER, trimmedQuery);
477
+ // Handle UI-only commands first
478
+ const slashCommandResult = isSlashCommand(trimmedQuery)
479
+ ? await handleSlashCommand(trimmedQuery)
480
+ : false;
481
+ if (slashCommandResult) {
482
+ switch (slashCommandResult.type) {
483
+ case 'schedule_tool': {
484
+ const { toolName, toolArgs } = slashCommandResult;
485
+ const toolCallRequest = {
486
+ callId: `${toolName}-${Date.now()}-${Math.random().toString(16).slice(2)}`,
487
+ name: toolName,
488
+ args: toolArgs,
489
+ isClientInitiated: true,
490
+ prompt_id,
491
+ };
492
+ scheduleToolCalls([toolCallRequest], abortSignal);
493
+ return { queryToSend: null, shouldProceed: false };
494
+ }
495
+ case 'submit_prompt': {
496
+ localQueryToSendToGemini = slashCommandResult.content;
497
+ submitPromptOnCompleteRef.current =
498
+ slashCommandResult.onComplete ?? null;
499
+ return {
500
+ queryToSend: localQueryToSendToGemini,
501
+ shouldProceed: true,
502
+ };
503
+ }
504
+ case 'handled': {
505
+ return { queryToSend: null, shouldProceed: false };
506
+ }
507
+ default: {
508
+ const unreachable = slashCommandResult;
509
+ throw new Error(`Unhandled slash command result type: ${unreachable}`);
510
+ }
511
+ }
512
+ }
513
+ if (shellModeActive && handleShellCommand(trimmedQuery, abortSignal)) {
514
+ return { queryToSend: null, shouldProceed: false };
515
+ }
516
+ localQueryToSendToGemini = trimmedQuery;
517
+ // Cron prompts are already rendered as a `● Cron: …` notification by
518
+ // the queue drain, so skip the user-message history item to avoid
519
+ // a duplicate `> …` line. Preprocessing (@/slash/shell) still runs.
520
+ if (submitType !== SendMessageType.Cron) {
521
+ const insertedId = addItem({
522
+ type: MessageType.USER,
523
+ text: trimmedQuery,
524
+ promptId: prompt_id,
525
+ }, userMessageTimestamp);
526
+ // Capture id+text so the cancel handler can verify identity,
527
+ // not just text. `addItem` returns a fresh id even when it
528
+ // skipped insertion (consecutive-duplicate user); the older
529
+ // matching USER in history carries a DIFFERENT id, so the
530
+ // mismatch makes auto-restore bail correctly in that case.
531
+ lastTurnUserItemRef.current = {
532
+ id: insertedId,
533
+ text: trimmedQuery,
534
+ };
535
+ }
536
+ // Handle @-commands (which might involve tool calls)
537
+ if (isAtCommand(trimmedQuery)) {
538
+ const atCommandResult = await handleAtCommand({
539
+ query: trimmedQuery,
540
+ config,
541
+ onDebugMessage,
542
+ messageId: userMessageTimestamp,
543
+ signal: abortSignal,
544
+ addItem,
545
+ });
546
+ if (!atCommandResult.shouldProceed) {
547
+ return { queryToSend: null, shouldProceed: false };
548
+ }
549
+ localQueryToSendToGemini = atCommandResult.processedQuery;
550
+ }
551
+ }
552
+ else {
553
+ // It's a function response (PartListUnion that isn't a string)
554
+ localQueryToSendToGemini = query;
555
+ }
556
+ if (localQueryToSendToGemini === null) {
557
+ onDebugMessage('Query processing resulted in null, not sending to Gemini.');
558
+ return { queryToSend: null, shouldProceed: false };
559
+ }
560
+ return { queryToSend: localQueryToSendToGemini, shouldProceed: true };
561
+ }, [
562
+ config,
563
+ addItem,
564
+ onDebugMessage,
565
+ handleShellCommand,
566
+ handleSlashCommand,
567
+ logger,
568
+ shellModeActive,
569
+ scheduleToolCalls,
570
+ ]);
571
+ // --- Stream Event Handlers ---
572
+ const handleContentEvent = useCallback((eventValue, currentGeminiMessageBuffer, userMessageTimestamp) => {
573
+ if (turnCancelledRef.current) {
574
+ // Prevents additional output after a user initiated cancel.
575
+ return '';
576
+ }
577
+ // Track output chars for real-time token estimation & mark as receiving.
578
+ streamingResponseLengthRef.current += eventValue.length;
579
+ setIsReceivingContent(true);
580
+ // Pin "this turn produced meaningful content" so the cancel
581
+ // handler's snapshot reflects content events even when they land
582
+ // during the pre-cancel flush (their addItem hasn't re-rendered
583
+ // React history by the time AppContainer's guard runs).
584
+ turnSawContentEventRef.current = true;
585
+ let newGeminiMessageBuffer = currentGeminiMessageBuffer + eventValue;
586
+ if (pendingHistoryItemRef.current?.type !== 'gemini' &&
587
+ pendingHistoryItemRef.current?.type !== 'gemini_content') {
588
+ if (newGeminiMessageBuffer.trim().length === 0) {
589
+ return newGeminiMessageBuffer;
590
+ }
591
+ if (pendingHistoryItemRef.current) {
592
+ addItem(pendingHistoryItemRef.current, userMessageTimestamp);
593
+ }
594
+ setPendingHistoryItem({ type: 'gemini', text: '' });
595
+ newGeminiMessageBuffer = stripLeadingBlankLines(newGeminiMessageBuffer);
596
+ }
597
+ // Split large messages for better rendering performance. Ideally,
598
+ // we should maximize the amount of output sent to <Static />.
599
+ const splitPoint = findLastSafeSplitPoint(newGeminiMessageBuffer);
600
+ if (splitPoint === newGeminiMessageBuffer.length) {
601
+ // Update the existing message with accumulated content
602
+ setPendingHistoryItem((item) => ({
603
+ type: item?.type,
604
+ text: newGeminiMessageBuffer,
605
+ }));
606
+ }
607
+ else {
608
+ // This indicates that we need to split up this Gemini Message.
609
+ // Splitting a message is primarily a performance consideration. There is a
610
+ // <Static> component at the root of App.tsx which takes care of rendering
611
+ // content statically or dynamically. Everything but the last message is
612
+ // treated as static in order to prevent re-rendering an entire message history
613
+ // multiple times per-second (as streaming occurs). Prior to this change you'd
614
+ // see heavy flickering of the terminal. This ensures that larger messages get
615
+ // broken up so that there are more "statically" rendered.
616
+ const beforeText = newGeminiMessageBuffer.substring(0, splitPoint);
617
+ const afterText = newGeminiMessageBuffer.substring(splitPoint);
618
+ addItem({
619
+ type: pendingHistoryItemRef.current?.type,
620
+ text: beforeText,
621
+ }, userMessageTimestamp);
622
+ setPendingHistoryItem({ type: 'gemini_content', text: afterText });
623
+ newGeminiMessageBuffer = afterText;
624
+ }
625
+ return newGeminiMessageBuffer;
626
+ }, [addItem, pendingHistoryItemRef, setPendingHistoryItem]);
627
+ const mergeThought = useCallback((incoming) => {
628
+ setThought((prev) => {
629
+ if (!prev) {
630
+ if (debugLogger.isEnabled()) {
631
+ debugLogger.debug(`[THOUGHT_MERGE] New thought: ` +
632
+ `subjectLength=${incoming.subject?.length ?? 0}, ` +
633
+ `description length=${incoming.description?.length ?? 0}`);
634
+ }
635
+ return incoming;
636
+ }
637
+ const subject = incoming.subject || prev.subject;
638
+ const description = `${prev.description ?? ''}${incoming.description ?? ''}`;
639
+ if (debugLogger.isEnabled()) {
640
+ debugLogger.debug(`[THOUGHT_MERGE] Accumulating thought: ` +
641
+ `prev length=${prev.description?.length ?? 0}, ` +
642
+ `incoming length=${incoming.description?.length ?? 0}, ` +
643
+ `total length=${description.length}`);
644
+ }
645
+ return { subject, description };
646
+ });
647
+ }, [setThought]);
648
+ const handleThoughtEvent = useCallback((eventValue, currentThoughtBuffer, userMessageTimestamp) => {
649
+ if (turnCancelledRef.current) {
650
+ return '';
651
+ }
652
+ // Extract the description text from the thought summary
653
+ const thoughtText = eventValue.description ?? '';
654
+ if (!thoughtText) {
655
+ return currentThoughtBuffer;
656
+ }
657
+ let newThoughtBuffer = currentThoughtBuffer + thoughtText;
658
+ if (debugLogger.isEnabled()) {
659
+ debugLogger.debug(`[THOUGHT_BUFFER] Buffer growing: ` +
660
+ `current=${currentThoughtBuffer.length}, ` +
661
+ `incoming=${thoughtText.length}, ` +
662
+ `total=${newThoughtBuffer.length}`);
663
+ }
664
+ const pendingType = pendingHistoryItemRef.current?.type;
665
+ const isPendingThought = pendingType === 'gemini_thought' ||
666
+ pendingType === 'gemini_thought_content';
667
+ let thoughtToMerge = eventValue;
668
+ // If we're not already showing a thought, start a new one
669
+ if (!isPendingThought) {
670
+ if (newThoughtBuffer.trim().length === 0) {
671
+ return newThoughtBuffer;
672
+ }
673
+ // If there's a pending non-thought item, finalize it first
674
+ if (pendingHistoryItemRef.current) {
675
+ addItem(pendingHistoryItemRef.current, userMessageTimestamp);
676
+ }
677
+ newThoughtBuffer = stripLeadingBlankLines(newThoughtBuffer);
678
+ thoughtToMerge = {
679
+ ...eventValue,
680
+ description: newThoughtBuffer,
681
+ };
682
+ setPendingHistoryItem({ type: 'gemini_thought', text: '' });
683
+ }
684
+ // Split large thought messages for better rendering performance (same rationale
685
+ // as regular content streaming). This helps avoid terminal flicker caused by
686
+ // constantly re-rendering an ever-growing "pending" block.
687
+ const splitPoint = findLastSafeSplitPoint(newThoughtBuffer);
688
+ const nextPendingType = isPendingThought && pendingType === 'gemini_thought_content'
689
+ ? 'gemini_thought_content'
690
+ : 'gemini_thought';
691
+ if (splitPoint === newThoughtBuffer.length) {
692
+ // Update the existing thought message with accumulated content
693
+ setPendingHistoryItem({
694
+ type: nextPendingType,
695
+ text: newThoughtBuffer,
696
+ });
697
+ }
698
+ else {
699
+ const beforeText = newThoughtBuffer.substring(0, splitPoint);
700
+ const afterText = newThoughtBuffer.substring(splitPoint);
701
+ addItem({
702
+ type: nextPendingType,
703
+ text: beforeText,
704
+ }, userMessageTimestamp);
705
+ setPendingHistoryItem({
706
+ type: 'gemini_thought_content',
707
+ text: afterText,
708
+ });
709
+ newThoughtBuffer = afterText;
710
+ }
711
+ // Also update the thought state for the loading indicator
712
+ mergeThought(thoughtToMerge);
713
+ return newThoughtBuffer;
714
+ }, [addItem, pendingHistoryItemRef, setPendingHistoryItem, mergeThought]);
715
+ const handleUserCancelledEvent = useCallback((userMessageTimestamp) => {
716
+ if (turnCancelledRef.current) {
717
+ return;
718
+ }
719
+ lastPromptErroredRef.current = false;
720
+ if (pendingHistoryItemRef.current) {
721
+ if (pendingHistoryItemRef.current.type === 'tool_group') {
722
+ const updatedTools = pendingHistoryItemRef.current.tools.map((tool) => tool.status === ToolCallStatus.Pending ||
723
+ tool.status === ToolCallStatus.Confirming ||
724
+ tool.status === ToolCallStatus.Executing
725
+ ? { ...tool, status: ToolCallStatus.Canceled }
726
+ : tool);
727
+ const pendingItem = {
728
+ ...pendingHistoryItemRef.current,
729
+ tools: updatedTools,
730
+ };
731
+ addItem(pendingItem, userMessageTimestamp);
732
+ }
733
+ else {
734
+ addItem(pendingHistoryItemRef.current, userMessageTimestamp);
735
+ }
736
+ setPendingHistoryItem(null);
737
+ }
738
+ addItem({ type: MessageType.INFO, text: 'User cancelled the request.' }, userMessageTimestamp);
739
+ clearRetryCountdown();
740
+ setIsResponding(false);
741
+ setThought(null); // Reset thought when user cancels
742
+ }, [
743
+ addItem,
744
+ pendingHistoryItemRef,
745
+ setPendingHistoryItem,
746
+ setThought,
747
+ clearRetryCountdown,
748
+ ]);
749
+ const handleErrorEvent = useCallback((eventValue, userMessageTimestamp) => {
750
+ lastPromptErroredRef.current = true;
751
+ if (pendingHistoryItemRef.current) {
752
+ addItem(pendingHistoryItemRef.current, userMessageTimestamp);
753
+ setPendingHistoryItem(null);
754
+ }
755
+ // Only show Ctrl+Y hint if not already showing an auto-retry countdown
756
+ // (auto-retry countdown is shown when retryCountdownTimerRef is active)
757
+ const isShowingAutoRetry = retryCountdownTimerRef.current !== null;
758
+ clearRetryCountdown();
759
+ const formattedErrorText = parseAndFormatApiError(eventValue.error, config.getContentGeneratorConfig()?.authType);
760
+ if (!isShowingAutoRetry) {
761
+ const retryHint = t('Press Ctrl+Y to retry');
762
+ // Store error with hint as a pending item (not in history).
763
+ // This allows the hint to be removed when the user retries with Ctrl+Y,
764
+ // since pending items are in the dynamic rendering area (not <Static>).
765
+ setPendingRetryErrorItem({
766
+ type: 'error',
767
+ text: formattedErrorText,
768
+ hint: retryHint,
769
+ });
770
+ }
771
+ setThought(null); // Reset thought when there's an error
772
+ // Fire StopFailure hook (fire-and-forget, replaces Stop event for API errors)
773
+ const errorType = classifyApiError(eventValue.error);
774
+ config
775
+ .getHookSystem()
776
+ ?.fireStopFailureEvent(errorType, eventValue.error.message, formattedErrorText)
777
+ .catch((err) => {
778
+ debugLogger.warn(`StopFailure hook failed: ${err}`);
779
+ });
780
+ }, [
781
+ addItem,
782
+ pendingHistoryItemRef,
783
+ setPendingHistoryItem,
784
+ setPendingRetryErrorItem,
785
+ config,
786
+ setThought,
787
+ clearRetryCountdown,
788
+ ]);
789
+ const handleCitationEvent = useCallback((text, userMessageTimestamp) => {
790
+ if (!showCitations(settings)) {
791
+ return;
792
+ }
793
+ if (pendingHistoryItemRef.current) {
794
+ addItem(pendingHistoryItemRef.current, userMessageTimestamp);
795
+ setPendingHistoryItem(null);
796
+ }
797
+ addItem({ type: MessageType.INFO, text }, userMessageTimestamp);
798
+ }, [addItem, pendingHistoryItemRef, setPendingHistoryItem, settings]);
799
+ const handleFinishedEvent = useCallback((event, userMessageTimestamp) => {
800
+ const finishReason = event.value.reason;
801
+ if (!finishReason) {
802
+ return;
803
+ }
804
+ const finishReasonMessages = {
805
+ [FinishReason.FINISH_REASON_UNSPECIFIED]: undefined,
806
+ [FinishReason.STOP]: undefined,
807
+ [FinishReason.MAX_TOKENS]: 'Response truncated due to token limits.',
808
+ [FinishReason.SAFETY]: 'Response stopped due to safety reasons.',
809
+ [FinishReason.RECITATION]: 'Response stopped due to recitation policy.',
810
+ [FinishReason.LANGUAGE]: 'Response stopped due to unsupported language.',
811
+ [FinishReason.BLOCKLIST]: 'Response stopped due to forbidden terms.',
812
+ [FinishReason.PROHIBITED_CONTENT]: 'Response stopped due to prohibited content.',
813
+ [FinishReason.SPII]: 'Response stopped due to sensitive personally identifiable information.',
814
+ [FinishReason.OTHER]: 'Response stopped for other reasons.',
815
+ [FinishReason.MALFORMED_FUNCTION_CALL]: 'Response stopped due to malformed function call.',
816
+ [FinishReason.IMAGE_SAFETY]: 'Response stopped due to image safety violations.',
817
+ [FinishReason.IMAGE_PROHIBITED_CONTENT]: 'Response stopped due to image prohibited content.',
818
+ [FinishReason.IMAGE_RECITATION]: 'Response stopped due to image recitation policy.',
819
+ [FinishReason.IMAGE_OTHER]: 'Response stopped due to other image-related reasons.',
820
+ [FinishReason.NO_IMAGE]: 'Response stopped due to no image.',
821
+ [FinishReason.UNEXPECTED_TOOL_CALL]: 'Response stopped due to unexpected tool call.',
822
+ };
823
+ const message = finishReasonMessages[finishReason];
824
+ if (message) {
825
+ addItem({
826
+ type: 'info',
827
+ text: `⚠️ ${message}`,
828
+ }, userMessageTimestamp);
829
+ }
830
+ // Only clear auto-retry countdown errors (those with active timer)
831
+ if (retryCountdownTimerRef.current) {
832
+ clearRetryCountdown();
833
+ }
834
+ }, [addItem, clearRetryCountdown]);
835
+ const handleChatCompressionEvent = useCallback((eventValue, userMessageTimestamp) => {
836
+ if (pendingHistoryItemRef.current) {
837
+ addItem(pendingHistoryItemRef.current, userMessageTimestamp);
838
+ setPendingHistoryItem(null);
839
+ }
840
+ const reasonClause = eventValue?.triggerReason === 'image_overflow'
841
+ ? `accumulated enough tool screenshots to trigger compaction for ${config.getModel()}`
842
+ : `approached the input token limit for ${config.getModel()}`;
843
+ return addItem({
844
+ type: 'info',
845
+ text: `IMPORTANT: This conversation ${reasonClause}. ` +
846
+ `A compressed context will be sent for future messages (compressed from: ` +
847
+ `${eventValue?.originalTokenCount ?? 'unknown'} to ` +
848
+ `${eventValue?.newTokenCount ?? 'unknown'} tokens).`,
849
+ }, Date.now());
850
+ }, [addItem, config, pendingHistoryItemRef, setPendingHistoryItem]);
851
+ const handleMaxSessionTurnsEvent = useCallback(() => addItem({
852
+ type: 'info',
853
+ text: `The session has reached the maximum number of turns: ${config.getMaxSessionTurns()}. ` +
854
+ `Please update this limit in your setting.json file.`,
855
+ }, Date.now()), [addItem, config]);
856
+ const handleSessionTokenLimitExceededEvent = useCallback((value) => addItem({
857
+ type: 'error',
858
+ text: `🚫 Session token limit exceeded: ${value.currentTokens.toLocaleString()} tokens > ${value.limit.toLocaleString()} limit.\n\n` +
859
+ `💡 Solutions:\n` +
860
+ ` • Start a new session: Use /clear command\n` +
861
+ ` • Increase limit: Add "sessionTokenLimit": (e.g., 128000) to your settings.json\n` +
862
+ ` • Compress history: Use /compress command to compress history`,
863
+ }, Date.now()), [addItem]);
864
+ const handleLoopDetectionConfirmation = useCallback((result) => {
865
+ setLoopDetectionConfirmationRequest(null);
866
+ if (result.userSelection === 'disable') {
867
+ config.getGeminiClient().getLoopDetectionService().disableForSession();
868
+ addItem({
869
+ type: 'info',
870
+ text: `Loop detection has been disabled for this session. Please try your request again.`,
871
+ }, Date.now());
872
+ }
873
+ else {
874
+ addItem({
875
+ type: 'info',
876
+ text: `A potential loop was detected. This can happen due to repetitive tool calls or other model behavior. The request has been halted.`,
877
+ }, Date.now());
878
+ }
879
+ }, [config, addItem]);
880
+ const handleLoopDetectedEvent = useCallback(() => {
881
+ // Show the confirmation dialog to choose whether to disable loop detection
882
+ setLoopDetectionConfirmationRequest({
883
+ onComplete: handleLoopDetectionConfirmation,
884
+ });
885
+ }, [handleLoopDetectionConfirmation]);
886
+ const handleUserPromptSubmitBlockedEvent = useCallback((value, userMessageTimestamp) => {
887
+ if (pendingHistoryItemRef.current) {
888
+ addItem(pendingHistoryItemRef.current, userMessageTimestamp);
889
+ setPendingHistoryItem(null);
890
+ }
891
+ addItem({
892
+ type: 'user_prompt_submit_blocked',
893
+ reason: value.reason,
894
+ originalPrompt: value.originalPrompt,
895
+ }, userMessageTimestamp);
896
+ }, [addItem, pendingHistoryItemRef, setPendingHistoryItem]);
897
+ const handleStopHookLoopEvent = useCallback((value, userMessageTimestamp) => {
898
+ if (pendingHistoryItemRef.current) {
899
+ addItem(pendingHistoryItemRef.current, userMessageTimestamp);
900
+ setPendingHistoryItem(null);
901
+ }
902
+ // When the active loop is driven by `/goal`, replace the generic
903
+ // "Ran N stop hooks" chip with a goal-aware `goal_status`
904
+ // `kind:'checking'` item. A not-met judge is the expected outcome of a
905
+ // continuation, not a hook failure.
906
+ const activeGoal = getActiveGoal(config.getSessionId());
907
+ if (activeGoal && activeGoal.condition) {
908
+ addItem({
909
+ type: MessageType.GOAL_STATUS,
910
+ kind: 'checking',
911
+ condition: activeGoal.condition,
912
+ iterations: value.iterationCount,
913
+ lastReason: activeGoal.lastReason ?? value.reasons[value.reasons.length - 1],
914
+ }, userMessageTimestamp);
915
+ return;
916
+ }
917
+ addItem({
918
+ type: 'stop_hook_loop',
919
+ iterationCount: value.iterationCount,
920
+ reasons: value.reasons,
921
+ stopHookCount: value.stopHookCount,
922
+ }, userMessageTimestamp);
923
+ }, [addItem, config, pendingHistoryItemRef, setPendingHistoryItem]);
924
+ const handleActiveGoalEvent = useCallback((activeGoal) => {
925
+ const sessionId = config.getSessionId();
926
+ const currentActiveGoal = getActiveGoal(sessionId);
927
+ if (activeGoal) {
928
+ if (activeGoalEquals(currentActiveGoal, activeGoal)) {
929
+ return;
930
+ }
931
+ setActiveGoal(sessionId, activeGoal);
932
+ return;
933
+ }
934
+ if (!currentActiveGoal) {
935
+ return;
936
+ }
937
+ clearActiveGoal(sessionId);
938
+ }, [config]);
939
+ const processGeminiStreamEvents = useCallback(async (stream, userMessageTimestamp, signal) => {
940
+ let geminiMessageBuffer = '';
941
+ let thoughtBuffer = '';
942
+ const toolCallRequests = [];
943
+ const bufferedEvents = [];
944
+ let flushTimer = null;
945
+ const discardBufferedStreamEvents = () => {
946
+ if (flushTimer) {
947
+ clearTimeout(flushTimer);
948
+ flushTimer = null;
949
+ }
950
+ bufferedEvents.length = 0;
951
+ };
952
+ const flushBufferedStreamEvents = () => {
953
+ if (flushTimer) {
954
+ clearTimeout(flushTimer);
955
+ flushTimer = null;
956
+ }
957
+ if (bufferedEvents.length === 0) {
958
+ return;
959
+ }
960
+ while (bufferedEvents.length > 0) {
961
+ const nextEvent = bufferedEvents.shift();
962
+ if (nextEvent.kind === 'content') {
963
+ let mergedContent = nextEvent.value;
964
+ while (bufferedEvents[0]?.kind === 'content') {
965
+ const queuedContent = bufferedEvents.shift();
966
+ if (queuedContent?.kind !== 'content') {
967
+ break;
968
+ }
969
+ mergedContent += queuedContent.value;
970
+ }
971
+ geminiMessageBuffer = handleContentEvent(mergedContent, geminiMessageBuffer, userMessageTimestamp);
972
+ continue;
973
+ }
974
+ let mergedThought = nextEvent.value;
975
+ while (bufferedEvents[0]?.kind === 'thought') {
976
+ const queuedThought = bufferedEvents.shift();
977
+ if (queuedThought?.kind !== 'thought') {
978
+ break;
979
+ }
980
+ mergedThought = {
981
+ subject: queuedThought.value.subject || mergedThought.subject,
982
+ description: `${mergedThought.description ?? ''}${queuedThought.value.description ?? ''}`,
983
+ };
984
+ }
985
+ thoughtBuffer = handleThoughtEvent(mergedThought, thoughtBuffer, userMessageTimestamp);
986
+ }
987
+ };
988
+ const scheduleBufferedStreamFlush = () => {
989
+ if (flushTimer) {
990
+ return;
991
+ }
992
+ flushTimer = setTimeout(() => {
993
+ flushBufferedStreamEvents();
994
+ }, STREAM_UPDATE_THROTTLE_MS);
995
+ };
996
+ flushBufferedStreamEventsRef.current.add(flushBufferedStreamEvents);
997
+ dualOutput?.startAssistantMessage();
998
+ try {
999
+ for await (const event of stream) {
1000
+ dualOutput?.processEvent(event);
1001
+ switch (event.type) {
1002
+ case ServerGeminiEventType.Thought:
1003
+ // Subject-only chunks are discrete status updates for the
1004
+ // loading indicator and render immediately. Anything carrying
1005
+ // streamed text (with or without a subject) goes through the
1006
+ // throttled buffer so it batches with adjacent reasoning
1007
+ // chunks; the flush merger preserves the subject.
1008
+ if (event.value.subject && !event.value.description) {
1009
+ flushBufferedStreamEvents();
1010
+ setThought(event.value);
1011
+ }
1012
+ else {
1013
+ bufferedEvents.push({ kind: 'thought', value: event.value });
1014
+ scheduleBufferedStreamFlush();
1015
+ }
1016
+ break;
1017
+ case ServerGeminiEventType.Content:
1018
+ bufferedEvents.push({ kind: 'content', value: event.value });
1019
+ scheduleBufferedStreamFlush();
1020
+ break;
1021
+ case ServerGeminiEventType.ToolCallRequest:
1022
+ flushBufferedStreamEvents();
1023
+ toolCallRequests.push(event.value);
1024
+ // Count tool call args JSON toward token estimation.
1025
+ try {
1026
+ const argsJson = JSON.stringify(event.value.args);
1027
+ streamingResponseLengthRef.current += argsJson.length;
1028
+ }
1029
+ catch {
1030
+ // Best-effort — don't block on serialization errors
1031
+ }
1032
+ break;
1033
+ case ServerGeminiEventType.UserCancelled:
1034
+ flushBufferedStreamEvents();
1035
+ handleUserCancelledEvent(userMessageTimestamp);
1036
+ break;
1037
+ case ServerGeminiEventType.Error:
1038
+ flushBufferedStreamEvents();
1039
+ handleErrorEvent(event.value, userMessageTimestamp);
1040
+ break;
1041
+ case ServerGeminiEventType.ChatCompressed:
1042
+ flushBufferedStreamEvents();
1043
+ handleChatCompressionEvent(event.value, userMessageTimestamp);
1044
+ break;
1045
+ case ServerGeminiEventType.ToolCallConfirmation:
1046
+ case ServerGeminiEventType.ToolCallResponse:
1047
+ flushBufferedStreamEvents();
1048
+ break;
1049
+ case ServerGeminiEventType.MaxSessionTurns:
1050
+ flushBufferedStreamEvents();
1051
+ handleMaxSessionTurnsEvent();
1052
+ break;
1053
+ case ServerGeminiEventType.SessionTokenLimitExceeded:
1054
+ flushBufferedStreamEvents();
1055
+ handleSessionTokenLimitExceededEvent(event.value);
1056
+ break;
1057
+ case ServerGeminiEventType.Finished:
1058
+ flushBufferedStreamEvents();
1059
+ handleFinishedEvent(event, userMessageTimestamp);
1060
+ // Seal off this turn's UI state before the parent re-enters
1061
+ // sendMessageStream for a continuation (Stop-hook block at
1062
+ // client.ts:1378 or next-speaker auto-continue at 1444). Both
1063
+ // paths yield* a fresh Turn through this same stream processor,
1064
+ // so without this seal the next turn's first content/thought
1065
+ // chunk appends to this turn's pending item — visible in the UI
1066
+ // as "t" → "te" → "tes" cumulative rendering even though each
1067
+ // turn is persisted as a clean, separate assistant message.
1068
+ if (pendingHistoryItemRef.current) {
1069
+ addItem(pendingHistoryItemRef.current, userMessageTimestamp);
1070
+ setPendingHistoryItem(null);
1071
+ }
1072
+ geminiMessageBuffer = '';
1073
+ thoughtBuffer = '';
1074
+ break;
1075
+ case ServerGeminiEventType.Citation:
1076
+ flushBufferedStreamEvents();
1077
+ handleCitationEvent(event.value, userMessageTimestamp);
1078
+ break;
1079
+ case ServerGeminiEventType.LoopDetected:
1080
+ flushBufferedStreamEvents();
1081
+ // handle later because we want to move pending history to history
1082
+ // before we add loop detected message to history
1083
+ loopDetectedRef.current = true;
1084
+ break;
1085
+ case ServerGeminiEventType.Retry:
1086
+ // On fresh restart (escalation / rate-limit / invalid stream),
1087
+ // clear pending content and buffers to discard the failed attempt.
1088
+ // On continuation (recovery), keep the pending gemini item AND
1089
+ // buffers so the model's continuation text appends to them —
1090
+ // otherwise handleContentEvent would see a null pending item,
1091
+ // create a fresh one, and reset the buffer to just the new chunk,
1092
+ // losing the partial text we meant to preserve.
1093
+ if (!event.isContinuation) {
1094
+ discardBufferedStreamEvents();
1095
+ if (pendingHistoryItemRef.current) {
1096
+ setPendingHistoryItem(null);
1097
+ }
1098
+ geminiMessageBuffer = '';
1099
+ thoughtBuffer = '';
1100
+ }
1101
+ else {
1102
+ flushBufferedStreamEvents();
1103
+ }
1104
+ // Always discard tool call requests from the truncated/failed
1105
+ // attempt to prevent duplicate execution after escalation or
1106
+ // recovery. The recovery path now skips turns that already
1107
+ // contain a functionCall (see geminiChat.ts), so this only
1108
+ // clears stale requests from pre-RETRY accumulation.
1109
+ toolCallRequests.length = 0;
1110
+ // Show retry info if available (rate-limit / throttling errors)
1111
+ if (event.retryInfo) {
1112
+ startRetryCountdown(event.retryInfo);
1113
+ }
1114
+ else {
1115
+ // The retry attempt is starting now, so any prior retry UI is stale.
1116
+ clearRetryCountdown();
1117
+ }
1118
+ break;
1119
+ case ServerGeminiEventType.HookSystemMessage:
1120
+ flushBufferedStreamEvents();
1121
+ // Display system message from Stop hooks with "Stop says:" prefix
1122
+ // First commit any pending AI response to ensure correct ordering
1123
+ if (pendingHistoryItemRef.current) {
1124
+ addItem(pendingHistoryItemRef.current, userMessageTimestamp);
1125
+ setPendingHistoryItem(null);
1126
+ }
1127
+ addItem({
1128
+ type: 'stop_hook_system_message',
1129
+ message: event.value,
1130
+ }, userMessageTimestamp);
1131
+ break;
1132
+ case ServerGeminiEventType.UserPromptSubmitBlocked:
1133
+ flushBufferedStreamEvents();
1134
+ handleUserPromptSubmitBlockedEvent(event.value, userMessageTimestamp);
1135
+ break;
1136
+ case ServerGeminiEventType.StopHookLoop:
1137
+ flushBufferedStreamEvents();
1138
+ handleStopHookLoopEvent(event.value, userMessageTimestamp);
1139
+ break;
1140
+ case ServerGeminiEventType.ActiveGoal:
1141
+ handleActiveGoalEvent(event.value);
1142
+ break;
1143
+ default: {
1144
+ // enforces exhaustive switch-case
1145
+ const unreachable = event;
1146
+ return unreachable;
1147
+ }
1148
+ }
1149
+ }
1150
+ }
1151
+ finally {
1152
+ flushBufferedStreamEvents();
1153
+ discardBufferedStreamEvents();
1154
+ flushBufferedStreamEventsRef.current.delete(flushBufferedStreamEvents);
1155
+ }
1156
+ dualOutput?.finalizeAssistantMessage();
1157
+ if (toolCallRequests.length > 0) {
1158
+ scheduleToolCalls(toolCallRequests, signal);
1159
+ }
1160
+ return StreamProcessingStatus.Completed;
1161
+ }, [
1162
+ handleContentEvent,
1163
+ handleThoughtEvent,
1164
+ handleUserCancelledEvent,
1165
+ handleErrorEvent,
1166
+ scheduleToolCalls,
1167
+ handleChatCompressionEvent,
1168
+ handleFinishedEvent,
1169
+ handleMaxSessionTurnsEvent,
1170
+ handleSessionTokenLimitExceededEvent,
1171
+ handleCitationEvent,
1172
+ startRetryCountdown,
1173
+ clearRetryCountdown,
1174
+ setThought,
1175
+ pendingHistoryItemRef,
1176
+ setPendingHistoryItem,
1177
+ handleUserPromptSubmitBlockedEvent,
1178
+ handleStopHookLoopEvent,
1179
+ handleActiveGoalEvent,
1180
+ addItem,
1181
+ dualOutput,
1182
+ ]);
1183
+ const submitQuery = useCallback(async (query, submitType = SendMessageType.UserQuery, prompt_id, metadata) => {
1184
+ const allowConcurrentBtwDuringResponse = submitType === SendMessageType.UserQuery &&
1185
+ streamingState === StreamingState.Responding &&
1186
+ typeof query === 'string' &&
1187
+ isBtwCommand(query);
1188
+ // Prevent concurrent executions of submitQuery, but allow continuations
1189
+ // which are part of the same logical flow (tool responses)
1190
+ if (isSubmittingQueryRef.current &&
1191
+ submitType !== SendMessageType.ToolResult &&
1192
+ !allowConcurrentBtwDuringResponse) {
1193
+ return;
1194
+ }
1195
+ if ((streamingState === StreamingState.Responding ||
1196
+ streamingState === StreamingState.WaitingForConfirmation) &&
1197
+ submitType !== SendMessageType.ToolResult &&
1198
+ !allowConcurrentBtwDuringResponse)
1199
+ return;
1200
+ // Set the flag to indicate we're now executing
1201
+ isSubmittingQueryRef.current = true;
1202
+ // Reset turn-local ownership trackers at the very top of every
1203
+ // top-level submit (UserQuery, Retry, Cron, Notification, etc.).
1204
+ // `prepareQueryForGemini` also resets `lastTurnUserItemRef`, but
1205
+ // Retry skips that path — without this earlier reset, a stale
1206
+ // ownership snapshot from the prior UserQuery would survive into
1207
+ // the retry's cancel info and let auto-restore wrongly truncate
1208
+ // the original prompt.
1209
+ //
1210
+ // ToolResult continuations and same-turn btw concurrencies keep
1211
+ // the trackers untouched — they're piggybacking on an in-flight
1212
+ // turn that already owns its own snapshot.
1213
+ if (submitType !== SendMessageType.ToolResult &&
1214
+ !allowConcurrentBtwDuringResponse) {
1215
+ lastTurnUserItemRef.current = null;
1216
+ turnSawContentEventRef.current = false;
1217
+ }
1218
+ const userMessageTimestamp = Date.now();
1219
+ // Reset quota error flag when starting a new query (not a continuation)
1220
+ if (submitType !== SendMessageType.ToolResult &&
1221
+ !allowConcurrentBtwDuringResponse) {
1222
+ setModelSwitchedFromQuotaError(false);
1223
+ // Clear model override for new user turns, but preserve it on retry
1224
+ // so the same skill-selected model is used again.
1225
+ if (submitType !== SendMessageType.Retry) {
1226
+ modelOverrideRef.current = undefined;
1227
+ }
1228
+ // Commit any pending retry error to history (without hint) since the
1229
+ // user is starting a new conversation turn.
1230
+ // Clear both countdown-based errors AND static errors (those without
1231
+ // an active countdown timer, e.g. "Press Ctrl+Y to retry").
1232
+ if (pendingRetryCountdownItemRef.current ||
1233
+ pendingRetryErrorItemRef.current) {
1234
+ const pendingError = pendingRetryErrorItemRef.current;
1235
+ if (pendingError && pendingError.type === 'error') {
1236
+ const { hint: _hint, ...errorWithoutHint } = pendingError;
1237
+ addItem(errorWithoutHint, userMessageTimestamp);
1238
+ }
1239
+ clearRetryCountdown();
1240
+ }
1241
+ }
1242
+ const abortController = new AbortController();
1243
+ const abortSignal = abortController.signal;
1244
+ // Keep the main stream's cancellation state intact while /btw is handled
1245
+ // in parallel. The side-question can use its own local abort signal.
1246
+ if (!allowConcurrentBtwDuringResponse) {
1247
+ abortControllerRef.current = abortController;
1248
+ turnCancelledRef.current = false;
1249
+ }
1250
+ if (!prompt_id) {
1251
+ prompt_id = config.getSessionId() + '########' + getPromptCount();
1252
+ }
1253
+ return promptIdContext.run(prompt_id, async () => {
1254
+ const { queryToSend, shouldProceed } = submitType === SendMessageType.Retry
1255
+ ? { queryToSend: query, shouldProceed: true }
1256
+ : await prepareQueryForGemini(query, userMessageTimestamp, abortSignal, prompt_id, submitType);
1257
+ if (!shouldProceed || queryToSend === null) {
1258
+ isSubmittingQueryRef.current = false;
1259
+ return;
1260
+ }
1261
+ // Check image format support for non-continuations
1262
+ if (submitType === SendMessageType.UserQuery ||
1263
+ submitType === SendMessageType.Cron) {
1264
+ const formatCheck = checkImageFormatsSupport(queryToSend);
1265
+ if (formatCheck.hasUnsupportedFormats) {
1266
+ addItem({
1267
+ type: MessageType.INFO,
1268
+ text: getUnsupportedImageFormatWarning(),
1269
+ }, userMessageTimestamp);
1270
+ }
1271
+ }
1272
+ const finalQueryToSend = queryToSend;
1273
+ lastPromptRef.current = finalQueryToSend;
1274
+ lastPromptErroredRef.current = false;
1275
+ if (submitType === SendMessageType.UserQuery ||
1276
+ submitType === SendMessageType.Cron) {
1277
+ // trigger new prompt event for session stats in CLI
1278
+ startNewPrompt();
1279
+ // log user prompt event for telemetry, only text prompts for now
1280
+ if (typeof queryToSend === 'string') {
1281
+ logUserPrompt(config, new UserPromptEvent(queryToSend.length, prompt_id, config.getContentGeneratorConfig()?.authType, queryToSend));
1282
+ }
1283
+ // Reset thought when starting a new prompt
1284
+ setThought(null);
1285
+ }
1286
+ if (submitType === SendMessageType.Retry) {
1287
+ logUserRetry(config, new UserRetryEvent(prompt_id));
1288
+ }
1289
+ setIsResponding(true);
1290
+ setInitError(null);
1291
+ // Entering "requesting" phase — no content yet for this API call.
1292
+ setIsReceivingContent(false);
1293
+ // Reset char counter only on new user queries; tool-result continuations
1294
+ // keep accumulating so the token count only goes up within a turn.
1295
+ if (submitType !== SendMessageType.ToolResult) {
1296
+ streamingResponseLengthRef.current = 0;
1297
+ }
1298
+ try {
1299
+ // Emit user message to dual output sidecar (if enabled).
1300
+ // Skip for tool-result submissions — those are emitted separately
1301
+ // when the tool completes.
1302
+ if (dualOutput && submitType !== SendMessageType.ToolResult) {
1303
+ const rawParts = typeof finalQueryToSend === 'string'
1304
+ ? [finalQueryToSend]
1305
+ : Array.isArray(finalQueryToSend)
1306
+ ? finalQueryToSend
1307
+ : [finalQueryToSend];
1308
+ const userParts = rawParts.map((p) => typeof p === 'string' ? { text: p } : p);
1309
+ dualOutput.emitUserMessage(userParts);
1310
+ }
1311
+ const stream = geminiClient.sendMessageStream(finalQueryToSend, abortSignal, prompt_id, {
1312
+ type: submitType,
1313
+ notificationDisplayText: metadata?.notificationDisplayText,
1314
+ modelOverride: modelOverrideRef.current,
1315
+ });
1316
+ const processingStatus = await processGeminiStreamEvents(stream, userMessageTimestamp, abortSignal);
1317
+ if (processingStatus === StreamProcessingStatus.UserCancelled) {
1318
+ submitPromptOnCompleteRef.current = null;
1319
+ isSubmittingQueryRef.current = false;
1320
+ return;
1321
+ }
1322
+ if (pendingHistoryItemRef.current) {
1323
+ addItem(pendingHistoryItemRef.current, userMessageTimestamp);
1324
+ setPendingHistoryItem(null);
1325
+ }
1326
+ // Only clear auto-retry countdown errors (those with an active timer).
1327
+ // Do NOT clear static error+hint from handleErrorEvent — those should
1328
+ // remain visible until the user presses Ctrl+Y to retry or starts
1329
+ // a new conversation turn (cleared in submitQuery).
1330
+ if (retryCountdownTimerRef.current) {
1331
+ clearRetryCountdown();
1332
+ }
1333
+ if (loopDetectedRef.current) {
1334
+ loopDetectedRef.current = false;
1335
+ handleLoopDetectedEvent();
1336
+ }
1337
+ // If the turn was initiated by a submit_prompt with an onComplete
1338
+ // callback (e.g. /dream recording lastDreamAt), fire it now.
1339
+ const onComplete = submitPromptOnCompleteRef.current;
1340
+ if (onComplete) {
1341
+ submitPromptOnCompleteRef.current = null;
1342
+ void onComplete().catch((err) => {
1343
+ debugLogger.error('onComplete callback failed:', err);
1344
+ });
1345
+ }
1346
+ // After the turn completes, wire up notifications for any background
1347
+ // dream / extraction tasks that were kicked off by the client.
1348
+ if (geminiClient) {
1349
+ const memoryTaskPromises = geminiClient.consumePendingMemoryTaskPromises();
1350
+ for (const p of memoryTaskPromises) {
1351
+ void p.then((count) => {
1352
+ if (count > 0) {
1353
+ addItem({
1354
+ type: 'memory_saved',
1355
+ writtenCount: count,
1356
+ verb: 'Updated',
1357
+ }, Date.now());
1358
+ }
1359
+ });
1360
+ }
1361
+ }
1362
+ }
1363
+ catch (error) {
1364
+ if (error instanceof UnauthorizedError) {
1365
+ onAuthError('Session expired or is unauthorized.');
1366
+ }
1367
+ else if (!isNodeError(error) || error.name !== 'AbortError') {
1368
+ lastPromptErroredRef.current = true;
1369
+ const retryHint = t('Press Ctrl+Y to retry');
1370
+ // Store error with hint as a pending item (same as handleErrorEvent)
1371
+ setPendingRetryErrorItem({
1372
+ type: 'error',
1373
+ text: parseAndFormatApiError(getErrorMessage(error) || 'Unknown error', config.getContentGeneratorConfig()?.authType),
1374
+ hint: retryHint,
1375
+ });
1376
+ }
1377
+ }
1378
+ finally {
1379
+ submitPromptOnCompleteRef.current = null;
1380
+ setIsResponding(false);
1381
+ isSubmittingQueryRef.current = false;
1382
+ }
1383
+ });
1384
+ }, [
1385
+ streamingState,
1386
+ setModelSwitchedFromQuotaError,
1387
+ prepareQueryForGemini,
1388
+ processGeminiStreamEvents,
1389
+ pendingHistoryItemRef,
1390
+ addItem,
1391
+ setPendingHistoryItem,
1392
+ setInitError,
1393
+ geminiClient,
1394
+ onAuthError,
1395
+ config,
1396
+ startNewPrompt,
1397
+ getPromptCount,
1398
+ handleLoopDetectedEvent,
1399
+ clearRetryCountdown,
1400
+ pendingRetryCountdownItemRef,
1401
+ pendingRetryErrorItemRef,
1402
+ setPendingRetryErrorItem,
1403
+ dualOutput,
1404
+ ]);
1405
+ /**
1406
+ * Retries the last failed prompt when the user presses Ctrl+Y.
1407
+ *
1408
+ * Activation conditions for Ctrl+Y shortcut:
1409
+ * 1. ✅ The last request must have failed (lastPromptErroredRef.current === true)
1410
+ * 2. ✅ Current streaming state must NOT be "Responding" (avoid interrupting ongoing stream)
1411
+ * 3. ✅ Current streaming state must NOT be "WaitingForConfirmation" (avoid conflicting with tool confirmation flow)
1412
+ * 4. ✅ There must be a stored lastPrompt in lastPromptRef.current
1413
+ *
1414
+ * When conditions are not met:
1415
+ * - If streaming is active (Responding/WaitingForConfirmation): silently return without action
1416
+ * - If no failed request exists: display "No failed request to retry." info message
1417
+ *
1418
+ * When conditions are met:
1419
+ * - Clears any pending auto-retry countdown to avoid duplicate retries
1420
+ * - Re-submits the last query with isRetry: true, reusing the same prompt_id
1421
+ *
1422
+ * This function is exposed via UIActionsContext and triggered by InputPrompt
1423
+ * when the user presses Ctrl+Y (bound to Command.RETRY_LAST in keyBindings.ts).
1424
+ */
1425
+ const retryLastPrompt = useCallback(async () => {
1426
+ // During a rate-limit retry countdown, skip the delay so the generator
1427
+ // retries immediately — no abort/re-submit needed.
1428
+ if (skipRetryDelayRef.current) {
1429
+ skipRetryDelayRef.current();
1430
+ skipRetryDelayRef.current = null;
1431
+ clearRetryCountdown();
1432
+ return;
1433
+ }
1434
+ if (streamingState === StreamingState.Responding ||
1435
+ streamingState === StreamingState.WaitingForConfirmation) {
1436
+ return;
1437
+ }
1438
+ const lastPrompt = lastPromptRef.current;
1439
+ if (!lastPrompt || !lastPromptErroredRef.current) {
1440
+ addItem({
1441
+ type: MessageType.INFO,
1442
+ text: t('No failed request to retry.'),
1443
+ }, Date.now());
1444
+ return;
1445
+ }
1446
+ clearRetryCountdown();
1447
+ await submitQuery(lastPrompt, SendMessageType.Retry);
1448
+ }, [streamingState, addItem, clearRetryCountdown, submitQuery]);
1449
+ const handleApprovalModeChange = useCallback(async (newApprovalMode) => {
1450
+ // Auto-approve pending tool calls when switching to auto-approval modes
1451
+ if (newApprovalMode === ApprovalMode.YOLO ||
1452
+ newApprovalMode === ApprovalMode.AUTO_EDIT) {
1453
+ let awaitingApprovalCalls = toolCalls.filter((call) => call.status === 'awaiting_approval');
1454
+ // For AUTO_EDIT mode, only approve edit tools (edit/replace, write_file, notebook_edit)
1455
+ if (newApprovalMode === ApprovalMode.AUTO_EDIT) {
1456
+ awaitingApprovalCalls = awaitingApprovalCalls.filter((call) => EDIT_TOOL_NAMES.has(call.request.name));
1457
+ }
1458
+ // Process pending tool calls sequentially to reduce UI chaos
1459
+ for (const call of awaitingApprovalCalls) {
1460
+ if (call.confirmationDetails?.onConfirm) {
1461
+ try {
1462
+ await call.confirmationDetails.onConfirm(ToolConfirmationOutcome.ProceedOnce);
1463
+ }
1464
+ catch (error) {
1465
+ debugLogger.error(`Failed to auto-approve tool call ${call.request.callId}:`, error);
1466
+ }
1467
+ }
1468
+ }
1469
+ }
1470
+ }, [toolCalls]);
1471
+ const handleCompletedTools = useCallback(async (completedToolCallsFromScheduler) => {
1472
+ const completedAndReadyToSubmitTools = completedToolCallsFromScheduler.filter((tc) => {
1473
+ const isTerminalState = tc.status === 'success' ||
1474
+ tc.status === 'error' ||
1475
+ tc.status === 'cancelled';
1476
+ if (isTerminalState) {
1477
+ const completedOrCancelledCall = tc;
1478
+ return (completedOrCancelledCall.response?.responseParts !== undefined);
1479
+ }
1480
+ return false;
1481
+ });
1482
+ // History-based dedup MUST run before the `isResponding` early-return.
1483
+ // If a synthetic `functionResponse` for this callId is already in
1484
+ // chat.history (planted on session-load by
1485
+ // `client.repairOrphanedToolUseTurnsInHistory` or on every
1486
+ // `chat.sendMessageStream` push by the inline repair pass), the
1487
+ // in-flight scheduler result must be marked submitted NOW —
1488
+ // `useReactToolScheduler.allToolCallsCompleteHandler` is single-shot
1489
+ // per batch, so a later isResponding=true early-return would leave
1490
+ // the tool stuck in `completed-but-not-submitted` forever (Race A
1491
+ // surfaced in PR #4176 review). The real result is dropped on the
1492
+ // wire — same trade-off upstream Claude Code makes when its
1493
+ // `StreamingToolExecutor.discard()` follows a
1494
+ // `yieldMissingToolResultBlocks` synthesis (`query.ts:733` + `:984`).
1495
+ // Walk raw history WITHOUT cloning — `geminiClient.getHistory()`
1496
+ // returns `structuredClone(this.history)`, which on long sessions
1497
+ // (200+ entries with sizable tool outputs) costs several ms on
1498
+ // the React UI thread and visibly stalls streaming when the
1499
+ // dedup pass runs on every tool-completion batch.
1500
+ // `getHistoryFunctionResponseIds` walks history in place and
1501
+ // returns only the id Set this dispatcher needs. The
1502
+ // GeminiClient implementation is mandatory — production and
1503
+ // test mocks both expose it. Skip the dedup pass entirely if
1504
+ // the client is missing (only happens in unit tests that
1505
+ // construct a hook without a client).
1506
+ const historyCallIdsWithResponse = geminiClient
1507
+ ? geminiClient.getHistoryFunctionResponseIds()
1508
+ : new Set();
1509
+ const dedupedTools = completedAndReadyToSubmitTools.filter((tc) => historyCallIdsWithResponse.has(tc.request.callId));
1510
+ const dedupedCallIds = dedupedTools.map((tc) => tc.request.callId);
1511
+ if (dedupedCallIds.length > 0) {
1512
+ debugLogger.warn(`[REPAIR] Dropping ${dedupedCallIds.length} late tool result(s) ` +
1513
+ `whose callId already has a functionResponse in history: ` +
1514
+ `${dedupedCallIds.join(', ')}`);
1515
+ // Even though the wire-side submission is dropped, the tool DID
1516
+ // run locally — `toolCallCount` and `skillsModifiedInSession`
1517
+ // must reflect that. Without this, deduped skill-write tools
1518
+ // (e.g. write_file under a project SKILLS path) would silently
1519
+ // skip the `skillsModifiedInSession` flip that gates the
1520
+ // skills-reload prompt at end-of-turn. Mirrors the
1521
+ // `recordCompletedToolCall` loop below over `geminiTools` —
1522
+ // filter to the same shape (non-client-initiated) so client
1523
+ // tools (which the original loop also skipped) stay skipped.
1524
+ //
1525
+ // Cancelled tools are also skipped: `dedupedTools` includes
1526
+ // anything in a terminal state (success | error | cancelled),
1527
+ // but cancelled means the tool never actually ran end-to-end —
1528
+ // the `allToolsCancelled` branch below would have surfaced
1529
+ // them via `addHistory + reportCancelled` rather than the
1530
+ // completed-call metric, and the metric should match. Without
1531
+ // this filter, a deduped + cancelled tool would inflate
1532
+ // `toolCallCount` for a call that never produced a result
1533
+ // (and could also flip `skillsModifiedInSession` for a
1534
+ // never-executed skill-write).
1535
+ for (const tc of dedupedTools) {
1536
+ if (tc.request.isClientInitiated)
1537
+ continue;
1538
+ if (tc.status === 'cancelled')
1539
+ continue;
1540
+ geminiClient?.recordCompletedToolCall(tc.request.name, tc.request.args);
1541
+ }
1542
+ markToolsAsSubmitted(dedupedCallIds);
1543
+ }
1544
+ if (isResponding) {
1545
+ return;
1546
+ }
1547
+ // Finalize any client-initiated tools as soon as they are done.
1548
+ // Skip ones whose callId already lives in chat history with a
1549
+ // matching `functionResponse` — the dedup block above already
1550
+ // called `markToolsAsSubmitted` for those, and re-dispatching
1551
+ // the same callIds here would queue an extra React render.
1552
+ const clientTools = completedAndReadyToSubmitTools.filter((t) => t.request.isClientInitiated &&
1553
+ !historyCallIdsWithResponse.has(t.request.callId));
1554
+ if (clientTools.length > 0) {
1555
+ markToolsAsSubmitted(clientTools.map((t) => t.request.callId));
1556
+ }
1557
+ // Identify new, successful save_memory calls that we haven't processed yet.
1558
+ const newSuccessfulMemorySaves = completedAndReadyToSubmitTools.filter((t) => t.request.name === 'save_memory' &&
1559
+ t.status === 'success' &&
1560
+ !processedMemoryToolsRef.current.has(t.request.callId));
1561
+ if (newSuccessfulMemorySaves.length > 0) {
1562
+ // Perform the refresh only if there are new ones.
1563
+ void performMemoryRefresh();
1564
+ // Mark them as processed so we don't do this again on the next render.
1565
+ newSuccessfulMemorySaves.forEach((t) => processedMemoryToolsRef.current.add(t.request.callId));
1566
+ }
1567
+ const geminiTools = completedAndReadyToSubmitTools.filter((t) => !t.request.isClientInitiated &&
1568
+ !historyCallIdsWithResponse.has(t.request.callId));
1569
+ for (const toolCall of geminiTools) {
1570
+ geminiClient?.recordCompletedToolCall(toolCall.request.name, toolCall.request.args);
1571
+ }
1572
+ if (geminiTools.length === 0) {
1573
+ return;
1574
+ }
1575
+ // If all the tools were cancelled, don't submit a response to Gemini.
1576
+ const allToolsCancelled = geminiTools.every((tc) => tc.status === 'cancelled');
1577
+ if (allToolsCancelled) {
1578
+ if (geminiClient) {
1579
+ // We need to manually add the function responses to the history
1580
+ // so the model knows the tools were cancelled.
1581
+ const combinedParts = geminiTools.flatMap((toolCall) => toolCall.response.responseParts);
1582
+ geminiClient.addHistory({
1583
+ role: 'user',
1584
+ parts: combinedParts,
1585
+ });
1586
+ // Report cancellation to arena (safety net — cancelOngoingRequest
1587
+ config.getArenaAgentClient()?.reportCancelled();
1588
+ }
1589
+ const callIdsToMarkAsSubmitted = geminiTools.map((toolCall) => toolCall.request.callId);
1590
+ markToolsAsSubmitted(callIdsToMarkAsSubmitted);
1591
+ return;
1592
+ }
1593
+ const responsesToSend = geminiTools.flatMap((toolCall) => toolCall.response.responseParts);
1594
+ const callIdsToMarkAsSubmitted = geminiTools.map((toolCall) => toolCall.request.callId);
1595
+ const prompt_ids = geminiTools.map((toolCall) => toolCall.request.prompt_id);
1596
+ // Persist model override from skill tool results (last one wins).
1597
+ // Uses `in` so that undefined (from inherit/no-model skills) clears a
1598
+ // prior override, while non-skill tools (field absent) leave it intact.
1599
+ for (const toolCall of geminiTools) {
1600
+ if ('modelOverride' in toolCall.response) {
1601
+ modelOverrideRef.current = toolCall.response.modelOverride;
1602
+ }
1603
+ }
1604
+ // Emit tool results to dual output sidecar (if enabled)
1605
+ if (dualOutput) {
1606
+ for (const toolCall of geminiTools) {
1607
+ dualOutput.emitToolResult(toolCall.request, toolCall.response);
1608
+ }
1609
+ }
1610
+ markToolsAsSubmitted(callIdsToMarkAsSubmitted);
1611
+ // Fire tool-use summary generation in parallel with the next API call.
1612
+ // The fast-model latency is hidden behind the main-model streaming.
1613
+ // Fire-and-forget: failures are silent and never block the turn.
1614
+ // Subagent exclusion is implicit — useGeminiStream only drives the
1615
+ // main session; subagents run through agents/runtime/ with their own loop.
1616
+ if (config.getEmitToolUseSummaries()) {
1617
+ // Only summarize successful tools. Error/cancelled entries push
1618
+ // "Cancelled by user" / retry-loop warnings into the summarizer
1619
+ // prompt and produce plausibly-worded but misleading labels (the
1620
+ // fast model happily synthesizes "Attempted to read files" from a
1621
+ // batch that was mostly failures). cleanSummary can reject output
1622
+ // prefixes but not prevent this kind of polluted-input hallucination.
1623
+ const successfulTools = geminiTools.filter((tc) => tc.status === 'success');
1624
+ if (successfulTools.length > 0) {
1625
+ const toolInfoForSummary = successfulTools.map((tc) => ({
1626
+ name: tc.request.name,
1627
+ input: tc.request.args,
1628
+ output: extractToolResultText(tc.response.responseParts),
1629
+ }));
1630
+ const toolUseIds = successfulTools.map((tc) => tc.request.callId);
1631
+ const lastAssistantText = extractLastAssistantText(historyRef.current);
1632
+ // Dedicated AbortController for this batch. Scoping it to the
1633
+ // current turn via abortControllerRef.current would be wrong —
1634
+ // submitQuery() below allocates a new controller for the next
1635
+ // turn, so the captured signal becomes stale the moment the
1636
+ // next turn starts. Instead, check the live abort state at
1637
+ // resolve time (which covers both Ctrl+C on the next turn and
1638
+ // mid-flight cancellation of this batch via turnCancelledRef).
1639
+ const summaryAbort = new AbortController();
1640
+ summaryAbortRefsRef.current.add(summaryAbort);
1641
+ // Capture the first callId so we can locate "our" tool_group at
1642
+ // resolve time. If a newer tool_group has been added since we
1643
+ // fired (i.e., the conversation moved on), we drop the summary
1644
+ // rather than wedging the `● <label>` line between later items.
1645
+ const anchorCallId = toolUseIds[0];
1646
+ void generateToolUseSummary({
1647
+ config,
1648
+ tools: toolInfoForSummary,
1649
+ signal: summaryAbort.signal,
1650
+ lastAssistantText,
1651
+ })
1652
+ .then((summary) => {
1653
+ summaryAbortRefsRef.current.delete(summaryAbort);
1654
+ const cancelled = turnCancelledRef.current ||
1655
+ abortControllerRef.current?.signal.aborted ||
1656
+ summaryAbort.signal.aborted;
1657
+ if (!summary || cancelled)
1658
+ return;
1659
+ // Stale-summary check: only append if our tool_group is still
1660
+ // the latest one in history. If a newer batch landed while
1661
+ // the fast-model call was in flight, the conversation has
1662
+ // moved past this batch and dropping in a `● <label>` line
1663
+ // now would land it after later content (full mode) or
1664
+ // attribute it to the wrong group (compact mode).
1665
+ const currentHistory = historyRef.current;
1666
+ const ourIdx = currentHistory.findIndex((h) => h.type === 'tool_group' &&
1667
+ h.tools.some((t) => t.callId === anchorCallId));
1668
+ if (ourIdx < 0)
1669
+ return;
1670
+ const laterToolGroupExists = currentHistory
1671
+ .slice(ourIdx + 1)
1672
+ .some((h) => h.type === 'tool_group');
1673
+ if (laterToolGroupExists)
1674
+ return;
1675
+ if (summary && !cancelled) {
1676
+ addItem({
1677
+ type: 'tool_use_summary',
1678
+ summary,
1679
+ precedingToolUseIds: toolUseIds,
1680
+ }, Date.now());
1681
+ }
1682
+ })
1683
+ .catch(() => {
1684
+ summaryAbortRefsRef.current.delete(summaryAbort);
1685
+ });
1686
+ }
1687
+ }
1688
+ // Don't continue if model was switched due to quota error
1689
+ if (modelSwitchedFromQuotaError) {
1690
+ return;
1691
+ }
1692
+ // Mid-turn queue drain: inject queued user messages alongside tool
1693
+ // results so the model sees them in the next API call.
1694
+ // Skip if the turn was cancelled — messages stay in queue for next turn.
1695
+ const drained = turnCancelledRef.current || abortControllerRef.current?.signal.aborted
1696
+ ? []
1697
+ : (midTurnDrainRef?.current?.() ?? []);
1698
+ if (drained.length > 0) {
1699
+ for (const msg of drained) {
1700
+ const midTurnUserMessage = {
1701
+ text: `\n[User message received during tool execution]: ${msg}`,
1702
+ };
1703
+ responsesToSend.push(midTurnUserMessage);
1704
+ config
1705
+ .getChatRecordingService()
1706
+ ?.recordMidTurnUserMessage(midTurnUserMessage, msg);
1707
+ addItem({ type: MessageType.NOTIFICATION, text: msg }, Date.now());
1708
+ }
1709
+ }
1710
+ submitQuery(responsesToSend, SendMessageType.ToolResult, prompt_ids[0]);
1711
+ }, [
1712
+ isResponding,
1713
+ submitQuery,
1714
+ markToolsAsSubmitted,
1715
+ geminiClient,
1716
+ performMemoryRefresh,
1717
+ modelSwitchedFromQuotaError,
1718
+ config,
1719
+ midTurnDrainRef,
1720
+ addItem,
1721
+ dualOutput,
1722
+ ]);
1723
+ const pendingHistoryItems = useMemo(() => [
1724
+ pendingHistoryItem,
1725
+ pendingRetryErrorItem,
1726
+ pendingRetryCountdownItem,
1727
+ pendingToolCallGroupDisplay,
1728
+ ].filter((i) => i !== undefined && i !== null), [
1729
+ pendingHistoryItem,
1730
+ pendingRetryErrorItem,
1731
+ pendingRetryCountdownItem,
1732
+ pendingToolCallGroupDisplay,
1733
+ ]);
1734
+ useEffect(() => {
1735
+ const saveRestorableToolCalls = async () => {
1736
+ if (!config.getFileCheckpointingEnabled()) {
1737
+ return;
1738
+ }
1739
+ const restorableToolCalls = toolCalls.filter((toolCall) => EDIT_TOOL_NAMES.has(toolCall.request.name) &&
1740
+ toolCall.status === 'awaiting_approval' &&
1741
+ !toolCall.request.isClientInitiated);
1742
+ if (restorableToolCalls.length > 0) {
1743
+ const checkpointDir = storage.getProjectTempCheckpointsDir();
1744
+ if (!checkpointDir) {
1745
+ return;
1746
+ }
1747
+ try {
1748
+ await fs.mkdir(checkpointDir, { recursive: true });
1749
+ }
1750
+ catch (error) {
1751
+ if (!isNodeError(error) || error.code !== 'EEXIST') {
1752
+ onDebugMessage(`Failed to create checkpoint directory: ${getErrorMessage(error)}`);
1753
+ return;
1754
+ }
1755
+ }
1756
+ for (const toolCall of restorableToolCalls) {
1757
+ const filePath = (toolCall.request.args['file_path'] ??
1758
+ toolCall.request.args['notebook_path']);
1759
+ if (!filePath) {
1760
+ onDebugMessage(`Skipping restorable tool call due to missing file_path: ${toolCall.request.name}`);
1761
+ continue;
1762
+ }
1763
+ try {
1764
+ const promptId = toolCall.request.prompt_id;
1765
+ const timestamp = new Date()
1766
+ .toISOString()
1767
+ .replace(/:/g, '-')
1768
+ .replace(/\./g, '_');
1769
+ const toolName = toolCall.request.name;
1770
+ const fileName = path.basename(filePath);
1771
+ const toolCallWithSnapshotFileName = `${timestamp}-${fileName}-${toolName}.json`;
1772
+ const clientHistory = geminiClient?.getHistoryShallow();
1773
+ const toolCallWithSnapshotFilePath = path.join(checkpointDir, toolCallWithSnapshotFileName);
1774
+ await fs.writeFile(toolCallWithSnapshotFilePath, JSON.stringify({
1775
+ history,
1776
+ clientHistory,
1777
+ toolCall: {
1778
+ name: toolCall.request.name,
1779
+ args: toolCall.request.args,
1780
+ },
1781
+ promptId,
1782
+ filePath,
1783
+ }, null, 2));
1784
+ }
1785
+ catch (error) {
1786
+ onDebugMessage(`Failed to create checkpoint for ${filePath}: ${getErrorMessage(error)}. This may indicate a problem with file system permissions.`);
1787
+ }
1788
+ }
1789
+ }
1790
+ };
1791
+ saveRestorableToolCalls();
1792
+ }, [toolCalls, config, onDebugMessage, history, geminiClient, storage]);
1793
+ // ─── Unified notification queue (cron + background agents) ──────
1794
+ const notificationQueueRef = useRef([]);
1795
+ const [notificationTrigger, setNotificationTrigger] = useState(0);
1796
+ const notificationQueueSessionIdRef = useRef(sessionStates.sessionId);
1797
+ useEffect(() => {
1798
+ if (notificationQueueSessionIdRef.current === sessionStates.sessionId) {
1799
+ return;
1800
+ }
1801
+ notificationQueueSessionIdRef.current = sessionStates.sessionId;
1802
+ notificationQueueRef.current = [];
1803
+ }, [sessionStates.sessionId]);
1804
+ // Start the cron scheduler on mount, stop on unmount.
1805
+ // Cron fires enqueue onto the shared notification queue.
1806
+ useEffect(() => {
1807
+ if (!config.isCronEnabled())
1808
+ return;
1809
+ const scheduler = config.getCronScheduler();
1810
+ scheduler.start((job) => {
1811
+ const label = job.prompt.slice(0, 40);
1812
+ notificationQueueRef.current.push({
1813
+ displayText: `Cron: ${label}`,
1814
+ modelText: job.prompt,
1815
+ sendMessageType: SendMessageType.Cron,
1816
+ });
1817
+ setNotificationTrigger((n) => n + 1);
1818
+ });
1819
+ return () => {
1820
+ const summary = scheduler.getExitSummary();
1821
+ scheduler.stop();
1822
+ if (summary) {
1823
+ process.stderr.write(summary + '\n');
1824
+ }
1825
+ };
1826
+ }, [config]);
1827
+ // Register background agent notification callback onto the shared queue.
1828
+ useEffect(() => {
1829
+ const registry = config.getBackgroundTaskRegistry();
1830
+ registry.setNotificationCallback((displayText, modelText) => {
1831
+ notificationQueueRef.current.push({
1832
+ displayText,
1833
+ modelText,
1834
+ sendMessageType: SendMessageType.Notification,
1835
+ });
1836
+ setNotificationTrigger((n) => n + 1);
1837
+ });
1838
+ return () => {
1839
+ registry.setNotificationCallback(undefined);
1840
+ };
1841
+ }, [config]);
1842
+ // Register background shell terminal notification callback onto the shared queue.
1843
+ useEffect(() => {
1844
+ const registry = config.getBackgroundShellRegistry();
1845
+ registry.setNotificationCallback((displayText, modelText) => {
1846
+ notificationQueueRef.current.push({
1847
+ displayText,
1848
+ modelText,
1849
+ sendMessageType: SendMessageType.Notification,
1850
+ });
1851
+ setNotificationTrigger((n) => n + 1);
1852
+ });
1853
+ return () => {
1854
+ registry.setNotificationCallback(undefined);
1855
+ };
1856
+ }, [config]);
1857
+ // Register monitor notification callback onto the shared queue.
1858
+ useEffect(() => {
1859
+ const registry = config.getMonitorRegistry();
1860
+ registry.setNotificationCallback((displayText, modelText) => {
1861
+ notificationQueueRef.current.push({
1862
+ displayText,
1863
+ modelText,
1864
+ sendMessageType: SendMessageType.Notification,
1865
+ });
1866
+ setNotificationTrigger((n) => n + 1);
1867
+ });
1868
+ return () => {
1869
+ registry.setNotificationCallback(undefined);
1870
+ };
1871
+ }, [config]);
1872
+ // When idle, drain the unified queue one item at a time.
1873
+ useEffect(() => {
1874
+ if (streamingState === StreamingState.Idle &&
1875
+ notificationQueueRef.current.length > 0) {
1876
+ const item = notificationQueueRef.current.shift();
1877
+ addItem({ type: 'notification', text: item.displayText }, Date.now());
1878
+ submitQuery(item.modelText, item.sendMessageType, undefined, {
1879
+ notificationDisplayText: item.displayText,
1880
+ });
1881
+ }
1882
+ }, [streamingState, submitQuery, notificationTrigger, addItem]);
1883
+ return {
1884
+ streamingState,
1885
+ submitQuery,
1886
+ initError,
1887
+ pendingHistoryItems,
1888
+ thought,
1889
+ cancelOngoingRequest,
1890
+ retryLastPrompt,
1891
+ pendingToolCalls: toolCalls,
1892
+ handleApprovalModeChange,
1893
+ activePtyId,
1894
+ loopDetectionConfirmationRequest,
1895
+ streamingResponseLengthRef,
1896
+ isReceivingContent,
1897
+ };
1898
+ };
1899
+ //# sourceMappingURL=useGeminiStream.js.map