@umsai/ums-code 0.0.11-post6 → 0.0.14-v1

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 (632) hide show
  1. package/dist/package.json +5 -5
  2. package/dist/src/acp/acp.d.ts +208 -0
  3. package/dist/src/{zed-integration → acp}/acp.js +44 -76
  4. package/dist/src/acp/acp.js.map +1 -0
  5. package/dist/src/acp/acpPeer.d.ts +8 -0
  6. package/dist/src/acp/acpPeer.js +537 -0
  7. package/dist/src/acp/acpPeer.js.map +1 -0
  8. package/dist/src/config/auth.js +11 -12
  9. package/dist/src/config/auth.js.map +1 -1
  10. package/dist/src/config/config.d.ts +3 -3
  11. package/dist/src/config/config.js +86 -164
  12. package/dist/src/config/config.js.map +1 -1
  13. package/dist/src/config/extension.d.ts +1 -2
  14. package/dist/src/config/extension.js +4 -9
  15. package/dist/src/config/extension.js.map +1 -1
  16. package/dist/src/config/sandboxConfig.js +3 -3
  17. package/dist/src/config/sandboxConfig.js.map +1 -1
  18. package/dist/src/config/settings.d.ts +64 -3
  19. package/dist/src/config/settings.js +38 -58
  20. package/dist/src/config/settings.js.map +1 -1
  21. package/dist/src/gemini.js +41 -37
  22. package/dist/src/gemini.js.map +1 -1
  23. package/dist/src/generated/git-commit.d.ts +1 -2
  24. package/dist/src/generated/git-commit.js +1 -2
  25. package/dist/src/generated/git-commit.js.map +1 -1
  26. package/dist/src/nonInteractiveCli.js +8 -3
  27. package/dist/src/nonInteractiveCli.js.map +1 -1
  28. package/dist/src/services/BuiltinCommandLoader.d.ts +1 -0
  29. package/dist/src/services/BuiltinCommandLoader.js +4 -11
  30. package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
  31. package/dist/src/services/FileCommandLoader.js +8 -10
  32. package/dist/src/services/FileCommandLoader.js.map +1 -1
  33. package/dist/src/services/McpPromptLoader.js +3 -3
  34. package/dist/src/services/McpPromptLoader.js.map +1 -1
  35. package/dist/src/services/prompt-processors/argumentProcessor.d.ts +7 -2
  36. package/dist/src/services/prompt-processors/argumentProcessor.js +10 -2
  37. package/dist/src/services/prompt-processors/argumentProcessor.js.map +1 -1
  38. package/dist/src/services/prompt-processors/shellProcessor.d.ts +13 -16
  39. package/dist/src/services/prompt-processors/shellProcessor.js +40 -125
  40. package/dist/src/services/prompt-processors/shellProcessor.js.map +1 -1
  41. package/dist/src/services/prompt-processors/types.d.ts +0 -2
  42. package/dist/src/services/prompt-processors/types.js +0 -2
  43. package/dist/src/services/prompt-processors/types.js.map +1 -1
  44. package/dist/src/ui/App.js +46 -224
  45. package/dist/src/ui/App.js.map +1 -1
  46. package/dist/src/ui/commands/aboutCommand.js +5 -9
  47. package/dist/src/ui/commands/aboutCommand.js.map +1 -1
  48. package/dist/src/ui/commands/bugCommand.js +5 -13
  49. package/dist/src/ui/commands/bugCommand.js.map +1 -1
  50. package/dist/src/ui/commands/chatCommand.js +6 -23
  51. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  52. package/dist/src/ui/commands/clearCommand.js +1 -0
  53. package/dist/src/ui/commands/clearCommand.js.map +1 -1
  54. package/dist/src/ui/commands/directoryCommand.js +21 -18
  55. package/dist/src/ui/commands/directoryCommand.js.map +1 -1
  56. package/dist/src/ui/commands/docsCommand.js +1 -1
  57. package/dist/src/ui/commands/docsCommand.js.map +1 -1
  58. package/dist/src/ui/commands/ideCommand.js +18 -90
  59. package/dist/src/ui/commands/ideCommand.js.map +1 -1
  60. package/dist/src/ui/commands/initCommand.d.ts +1 -1
  61. package/dist/src/ui/commands/initCommand.js +7 -17
  62. package/dist/src/ui/commands/initCommand.js.map +1 -1
  63. package/dist/src/ui/commands/mcpCommand.js +7 -11
  64. package/dist/src/ui/commands/mcpCommand.js.map +1 -1
  65. package/dist/src/ui/commands/memoryCommand.js +6 -139
  66. package/dist/src/ui/commands/memoryCommand.js.map +1 -1
  67. package/dist/src/ui/commands/quitCommand.d.ts +0 -1
  68. package/dist/src/ui/commands/quitCommand.js +0 -25
  69. package/dist/src/ui/commands/quitCommand.js.map +1 -1
  70. package/dist/src/ui/commands/setupGithubCommand.d.ts +0 -2
  71. package/dist/src/ui/commands/setupGithubCommand.js +26 -132
  72. package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
  73. package/dist/src/ui/commands/toolsCommand.js +2 -2
  74. package/dist/src/ui/commands/toolsCommand.js.map +1 -1
  75. package/dist/src/ui/commands/types.d.ts +3 -19
  76. package/dist/src/ui/commands/types.js.map +1 -1
  77. package/dist/src/ui/commands/ums/umsInitCommand.js +21 -55
  78. package/dist/src/ui/commands/ums/umsInitCommand.js.map +1 -1
  79. package/dist/src/ui/components/AboutBox.d.ts +0 -1
  80. package/dist/src/ui/components/AboutBox.js +1 -1
  81. package/dist/src/ui/components/AboutBox.js.map +1 -1
  82. package/dist/src/ui/components/AsciiArt.d.ts +0 -1
  83. package/dist/src/ui/components/AsciiArt.js +0 -8
  84. package/dist/src/ui/components/AsciiArt.js.map +1 -1
  85. package/dist/src/ui/components/AuthDialog.d.ts +1 -1
  86. package/dist/src/ui/components/AuthDialog.js +15 -17
  87. package/dist/src/ui/components/AuthDialog.js.map +1 -1
  88. package/dist/src/ui/components/AuthInProgress.js +5 -6
  89. package/dist/src/ui/components/AuthInProgress.js.map +1 -1
  90. package/dist/src/ui/components/ContextSummaryDisplay.js +25 -22
  91. package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -1
  92. package/dist/src/ui/components/DebugProfiler.js +4 -5
  93. package/dist/src/ui/components/DebugProfiler.js.map +1 -1
  94. package/dist/src/ui/components/EditorSettingsDialog.js +5 -6
  95. package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -1
  96. package/dist/src/ui/components/Footer.d.ts +0 -1
  97. package/dist/src/ui/components/Footer.js +6 -16
  98. package/dist/src/ui/components/Footer.js.map +1 -1
  99. package/dist/src/ui/components/Header.d.ts +1 -0
  100. package/dist/src/ui/components/Header.js +5 -13
  101. package/dist/src/ui/components/Header.js.map +1 -1
  102. package/dist/src/ui/components/Help.js +1 -1
  103. package/dist/src/ui/components/Help.js.map +1 -1
  104. package/dist/src/ui/components/HistoryItemDisplay.js +1 -2
  105. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  106. package/dist/src/ui/components/IDEContextDetailDisplay.d.ts +12 -0
  107. package/dist/src/ui/components/IDEContextDetailDisplay.js +12 -0
  108. package/dist/src/ui/components/IDEContextDetailDisplay.js.map +1 -0
  109. package/dist/src/ui/components/InputPrompt.d.ts +0 -1
  110. package/dist/src/ui/components/InputPrompt.js +35 -98
  111. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  112. package/dist/src/ui/components/LoadingIndicator.js +5 -10
  113. package/dist/src/ui/components/LoadingIndicator.js.map +1 -1
  114. package/dist/src/ui/components/ShellConfirmationDialog.js +5 -7
  115. package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -1
  116. package/dist/src/ui/components/StatsDisplay.js +7 -8
  117. package/dist/src/ui/components/StatsDisplay.js.map +1 -1
  118. package/dist/src/ui/components/SuggestionsDisplay.js +1 -1
  119. package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -1
  120. package/dist/src/ui/components/ThemeDialog.js +20 -10
  121. package/dist/src/ui/components/ThemeDialog.js.map +1 -1
  122. package/dist/src/ui/components/messages/DiffRenderer.js +1 -10
  123. package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -1
  124. package/dist/src/ui/components/messages/InfoMessage.js +1 -6
  125. package/dist/src/ui/components/messages/InfoMessage.js.map +1 -1
  126. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +14 -36
  127. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  128. package/dist/src/ui/components/messages/ToolGroupMessage.js +1 -1
  129. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
  130. package/dist/src/ui/components/messages/ToolMessage.js +10 -75
  131. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  132. package/dist/src/ui/components/shared/MaxSizedBox.js +1 -1
  133. package/dist/src/ui/components/shared/MaxSizedBox.js.map +1 -1
  134. package/dist/src/ui/components/shared/RadioButtonSelect.js +9 -11
  135. package/dist/src/ui/components/shared/RadioButtonSelect.js.map +1 -1
  136. package/dist/src/ui/components/shared/text-buffer.d.ts +4 -17
  137. package/dist/src/ui/components/shared/text-buffer.js +80 -262
  138. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  139. package/dist/src/ui/components/shared/vim-buffer-actions.js +152 -139
  140. package/dist/src/ui/components/shared/vim-buffer-actions.js.map +1 -1
  141. package/dist/src/ui/components/ums/UMSKeyPrompt.js +3 -3
  142. package/dist/src/ui/components/ums/UMSKeyPrompt.js.map +1 -1
  143. package/dist/src/ui/contexts/SessionContext.d.ts +1 -3
  144. package/dist/src/ui/contexts/SessionContext.js +11 -3
  145. package/dist/src/ui/contexts/SessionContext.js.map +1 -1
  146. package/dist/src/ui/hooks/atCommandProcessor.js +16 -17
  147. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  148. package/dist/src/ui/hooks/shellCommandProcessor.js +13 -8
  149. package/dist/src/ui/hooks/shellCommandProcessor.js.map +1 -1
  150. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +2 -9
  151. package/dist/src/ui/hooks/slashCommandProcessor.js +62 -234
  152. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  153. package/dist/src/ui/hooks/useAtCompletion.js +3 -4
  154. package/dist/src/ui/hooks/useAtCompletion.js.map +1 -1
  155. package/dist/src/ui/hooks/useAuthCommand.js +1 -1
  156. package/dist/src/ui/hooks/useAutoAcceptIndicator.js +6 -6
  157. package/dist/src/ui/hooks/useAutoAcceptIndicator.js.map +1 -1
  158. package/dist/src/ui/hooks/useFocus.d.ts +0 -4
  159. package/dist/src/ui/hooks/useFocus.js +4 -4
  160. package/dist/src/ui/hooks/useFocus.js.map +1 -1
  161. package/dist/src/ui/hooks/useGeminiStream.d.ts +3 -4
  162. package/dist/src/ui/hooks/useGeminiStream.js +33 -50
  163. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  164. package/dist/src/ui/hooks/useKeypress.d.ts +16 -4
  165. package/dist/src/ui/hooks/useKeypress.js +140 -8
  166. package/dist/src/ui/hooks/useKeypress.js.map +1 -1
  167. package/dist/src/ui/hooks/usePhraseCycler.js +2 -2
  168. package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
  169. package/dist/src/ui/hooks/usePrivacySettings.js +2 -6
  170. package/dist/src/ui/hooks/usePrivacySettings.js.map +1 -1
  171. package/dist/src/ui/hooks/useReactToolScheduler.d.ts +1 -1
  172. package/dist/src/ui/hooks/useReactToolScheduler.js +15 -15
  173. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  174. package/dist/src/ui/hooks/useThemeCommand.js +1 -1
  175. package/dist/src/ui/hooks/useThemeCommand.js.map +1 -1
  176. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js +4 -5
  177. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js.map +1 -1
  178. package/dist/src/ui/privacy/CloudPaidPrivacyNotice.js +4 -5
  179. package/dist/src/ui/privacy/CloudPaidPrivacyNotice.js.map +1 -1
  180. package/dist/src/ui/privacy/GeminiPrivacyNotice.js +4 -5
  181. package/dist/src/ui/privacy/GeminiPrivacyNotice.js.map +1 -1
  182. package/dist/src/ui/themes/ansi-light.js +1 -2
  183. package/dist/src/ui/themes/ansi-light.js.map +1 -1
  184. package/dist/src/ui/themes/ansi.js +1 -2
  185. package/dist/src/ui/themes/ansi.js.map +1 -1
  186. package/dist/src/ui/themes/atom-one-dark.js +1 -2
  187. package/dist/src/ui/themes/atom-one-dark.js.map +1 -1
  188. package/dist/src/ui/themes/ayu-light.js +1 -2
  189. package/dist/src/ui/themes/ayu-light.js.map +1 -1
  190. package/dist/src/ui/themes/ayu.js +1 -2
  191. package/dist/src/ui/themes/ayu.js.map +1 -1
  192. package/dist/src/ui/themes/default-light.js +1 -2
  193. package/dist/src/ui/themes/default-light.js.map +1 -1
  194. package/dist/src/ui/themes/default.js +1 -2
  195. package/dist/src/ui/themes/default.js.map +1 -1
  196. package/dist/src/ui/themes/dracula.js +1 -2
  197. package/dist/src/ui/themes/dracula.js.map +1 -1
  198. package/dist/src/ui/themes/github-dark.js +1 -2
  199. package/dist/src/ui/themes/github-dark.js.map +1 -1
  200. package/dist/src/ui/themes/github-light.js +1 -2
  201. package/dist/src/ui/themes/github-light.js.map +1 -1
  202. package/dist/src/ui/themes/googlecode.js +1 -2
  203. package/dist/src/ui/themes/googlecode.js.map +1 -1
  204. package/dist/src/ui/themes/no-color.js +1 -30
  205. package/dist/src/ui/themes/no-color.js.map +1 -1
  206. package/dist/src/ui/themes/qwen-dark.js +1 -2
  207. package/dist/src/ui/themes/qwen-dark.js.map +1 -1
  208. package/dist/src/ui/themes/qwen-light.js +1 -2
  209. package/dist/src/ui/themes/qwen-light.js.map +1 -1
  210. package/dist/src/ui/themes/shades-of-purple.js +1 -2
  211. package/dist/src/ui/themes/shades-of-purple.js.map +1 -1
  212. package/dist/src/ui/themes/theme-manager.d.ts +0 -6
  213. package/dist/src/ui/themes/theme-manager.js +1 -8
  214. package/dist/src/ui/themes/theme-manager.js.map +1 -1
  215. package/dist/src/ui/themes/theme.d.ts +2 -45
  216. package/dist/src/ui/themes/theme.js +107 -92
  217. package/dist/src/ui/themes/theme.js.map +1 -1
  218. package/dist/src/ui/themes/xcode.js +1 -2
  219. package/dist/src/ui/themes/xcode.js.map +1 -1
  220. package/dist/src/ui/types.d.ts +4 -30
  221. package/dist/src/ui/types.js +0 -2
  222. package/dist/src/ui/types.js.map +1 -1
  223. package/dist/src/ui/utils/CodeColorizer.d.ts +1 -2
  224. package/dist/src/ui/utils/CodeColorizer.js +4 -5
  225. package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
  226. package/dist/src/ui/utils/ConsolePatcher.d.ts +0 -1
  227. package/dist/src/ui/utils/ConsolePatcher.js +0 -3
  228. package/dist/src/ui/utils/ConsolePatcher.js.map +1 -1
  229. package/dist/src/ui/utils/InlineMarkdownRenderer.js +1 -8
  230. package/dist/src/ui/utils/InlineMarkdownRenderer.js.map +1 -1
  231. package/dist/src/ui/utils/MarkdownDisplay.js +2 -4
  232. package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
  233. package/dist/src/ui/utils/commandUtils.d.ts +0 -1
  234. package/dist/src/ui/utils/commandUtils.js +1 -22
  235. package/dist/src/ui/utils/commandUtils.js.map +1 -1
  236. package/dist/src/ui/utils/computeStats.js +1 -3
  237. package/dist/src/ui/utils/computeStats.js.map +1 -1
  238. package/dist/src/ui/utils/errorParsing.d.ts +7 -0
  239. package/dist/src/ui/utils/errorParsing.js +90 -0
  240. package/dist/src/ui/utils/errorParsing.js.map +1 -0
  241. package/dist/src/ui/utils/updateCheck.d.ts +1 -1
  242. package/dist/src/ui/utils/updateCheck.js +10 -4
  243. package/dist/src/ui/utils/updateCheck.js.map +1 -1
  244. package/dist/src/utils/cleanup.d.ts +2 -2
  245. package/dist/src/utils/cleanup.js +2 -2
  246. package/dist/src/utils/cleanup.js.map +1 -1
  247. package/dist/src/utils/gitUtils.d.ts +1 -21
  248. package/dist/src/utils/gitUtils.js +3 -68
  249. package/dist/src/utils/gitUtils.js.map +1 -1
  250. package/dist/src/utils/installationInfo.js +5 -5
  251. package/dist/src/utils/installationInfo.js.map +1 -1
  252. package/dist/src/utils/readStdin.js +0 -10
  253. package/dist/src/utils/readStdin.js.map +1 -1
  254. package/dist/src/utils/sandbox.js +434 -457
  255. package/dist/src/utils/sandbox.js.map +1 -1
  256. package/dist/src/utils/version.js +1 -1
  257. package/dist/src/utils/version.js.map +1 -1
  258. package/dist/src/validateNonInterActiveAuth.js +7 -4
  259. package/dist/src/validateNonInterActiveAuth.js.map +1 -1
  260. package/dist/tsconfig.tsbuildinfo +1 -1
  261. package/package.json +6 -6
  262. package/dist/src/commands/mcp/add.d.ts +0 -7
  263. package/dist/src/commands/mcp/add.js +0 -166
  264. package/dist/src/commands/mcp/add.js.map +0 -1
  265. package/dist/src/commands/mcp/list.d.ts +0 -8
  266. package/dist/src/commands/mcp/list.js +0 -110
  267. package/dist/src/commands/mcp/list.js.map +0 -1
  268. package/dist/src/commands/mcp/remove.d.ts +0 -7
  269. package/dist/src/commands/mcp/remove.js +0 -44
  270. package/dist/src/commands/mcp/remove.js.map +0 -1
  271. package/dist/src/commands/mcp.d.ts +0 -7
  272. package/dist/src/commands/mcp.js +0 -23
  273. package/dist/src/commands/mcp.js.map +0 -1
  274. package/dist/src/config/auth.test.d.ts +0 -6
  275. package/dist/src/config/auth.test.js +0 -57
  276. package/dist/src/config/auth.test.js.map +0 -1
  277. package/dist/src/config/keyBindings.d.ts +0 -66
  278. package/dist/src/config/keyBindings.js +0 -141
  279. package/dist/src/config/keyBindings.js.map +0 -1
  280. package/dist/src/config/keyBindings.test.d.ts +0 -6
  281. package/dist/src/config/keyBindings.test.js +0 -51
  282. package/dist/src/config/keyBindings.test.js.map +0 -1
  283. package/dist/src/config/settingsSchema.d.ts +0 -613
  284. package/dist/src/config/settingsSchema.js +0 -586
  285. package/dist/src/config/settingsSchema.js.map +0 -1
  286. package/dist/src/config/settingsSchema.test.d.ts +0 -6
  287. package/dist/src/config/settingsSchema.test.js +0 -196
  288. package/dist/src/config/settingsSchema.test.js.map +0 -1
  289. package/dist/src/config/trustedFolders.d.ts +0 -37
  290. package/dist/src/config/trustedFolders.js +0 -118
  291. package/dist/src/config/trustedFolders.js.map +0 -1
  292. package/dist/src/config/trustedFolders.test.d.ts +0 -6
  293. package/dist/src/config/trustedFolders.test.js +0 -160
  294. package/dist/src/config/trustedFolders.test.js.map +0 -1
  295. package/dist/src/gemini.test.d.ts +0 -6
  296. package/dist/src/gemini.test.js +0 -193
  297. package/dist/src/gemini.test.js.map +0 -1
  298. package/dist/src/services/BuiltinCommandLoader.test.d.ts +0 -6
  299. package/dist/src/services/BuiltinCommandLoader.test.js +0 -111
  300. package/dist/src/services/BuiltinCommandLoader.test.js.map +0 -1
  301. package/dist/src/services/CommandService.test.d.ts +0 -6
  302. package/dist/src/services/CommandService.test.js +0 -232
  303. package/dist/src/services/CommandService.test.js.map +0 -1
  304. package/dist/src/test-utils/customMatchers.d.ts +0 -14
  305. package/dist/src/test-utils/customMatchers.js +0 -46
  306. package/dist/src/test-utils/customMatchers.js.map +0 -1
  307. package/dist/src/test-utils/mockCommandContext.d.ts +0 -18
  308. package/dist/src/test-utils/mockCommandContext.js +0 -87
  309. package/dist/src/test-utils/mockCommandContext.js.map +0 -1
  310. package/dist/src/test-utils/mockCommandContext.test.d.ts +0 -6
  311. package/dist/src/test-utils/mockCommandContext.test.js +0 -51
  312. package/dist/src/test-utils/mockCommandContext.test.js.map +0 -1
  313. package/dist/src/test-utils/render.d.ts +0 -8
  314. package/dist/src/test-utils/render.js +0 -10
  315. package/dist/src/test-utils/render.js.map +0 -1
  316. package/dist/src/ui/IdeIntegrationNudge.d.ts +0 -16
  317. package/dist/src/ui/IdeIntegrationNudge.js +0 -52
  318. package/dist/src/ui/IdeIntegrationNudge.js.map +0 -1
  319. package/dist/src/ui/commands/agentsCommand.d.ts +0 -7
  320. package/dist/src/ui/commands/agentsCommand.js +0 -32
  321. package/dist/src/ui/commands/agentsCommand.js.map +0 -1
  322. package/dist/src/ui/commands/settingsCommand.d.ts +0 -7
  323. package/dist/src/ui/commands/settingsCommand.js +0 -16
  324. package/dist/src/ui/commands/settingsCommand.js.map +0 -1
  325. package/dist/src/ui/commands/setupGithubCommand.test.d.ts +0 -6
  326. package/dist/src/ui/commands/setupGithubCommand.test.js +0 -167
  327. package/dist/src/ui/commands/setupGithubCommand.test.js.map +0 -1
  328. package/dist/src/ui/commands/summaryCommand.d.ts +0 -7
  329. package/dist/src/ui/commands/summaryCommand.js +0 -149
  330. package/dist/src/ui/commands/summaryCommand.js.map +0 -1
  331. package/dist/src/ui/commands/terminalSetupCommand.d.ts +0 -13
  332. package/dist/src/ui/commands/terminalSetupCommand.js +0 -41
  333. package/dist/src/ui/commands/terminalSetupCommand.js.map +0 -1
  334. package/dist/src/ui/components/AuthDialog.test.d.ts +0 -6
  335. package/dist/src/ui/components/AuthDialog.test.js +0 -220
  336. package/dist/src/ui/components/AuthDialog.test.js.map +0 -1
  337. package/dist/src/ui/components/ContextUsageDisplay.d.ts +0 -9
  338. package/dist/src/ui/components/ContextUsageDisplay.js +0 -14
  339. package/dist/src/ui/components/ContextUsageDisplay.js.map +0 -1
  340. package/dist/src/ui/components/FolderTrustDialog.d.ts +0 -16
  341. package/dist/src/ui/components/FolderTrustDialog.js +0 -39
  342. package/dist/src/ui/components/FolderTrustDialog.js.map +0 -1
  343. package/dist/src/ui/components/FolderTrustDialog.test.d.ts +0 -6
  344. package/dist/src/ui/components/FolderTrustDialog.test.js +0 -26
  345. package/dist/src/ui/components/FolderTrustDialog.test.js.map +0 -1
  346. package/dist/src/ui/components/Header.test.d.ts +0 -6
  347. package/dist/src/ui/components/Header.test.js +0 -37
  348. package/dist/src/ui/components/Header.test.js.map +0 -1
  349. package/dist/src/ui/components/HistoryItemDisplay.test.d.ts +0 -6
  350. package/dist/src/ui/components/HistoryItemDisplay.test.js +0 -91
  351. package/dist/src/ui/components/HistoryItemDisplay.test.js.map +0 -1
  352. package/dist/src/ui/components/LoadingIndicator.test.d.ts +0 -6
  353. package/dist/src/ui/components/LoadingIndicator.test.js +0 -190
  354. package/dist/src/ui/components/LoadingIndicator.test.js.map +0 -1
  355. package/dist/src/ui/components/OpenAIKeyPrompt.test.d.ts +0 -6
  356. package/dist/src/ui/components/OpenAIKeyPrompt.test.js +0 -44
  357. package/dist/src/ui/components/OpenAIKeyPrompt.test.js.map +0 -1
  358. package/dist/src/ui/components/QuitConfirmationDialog.d.ts +0 -17
  359. package/dist/src/ui/components/QuitConfirmationDialog.js +0 -44
  360. package/dist/src/ui/components/QuitConfirmationDialog.js.map +0 -1
  361. package/dist/src/ui/components/QwenOAuthProgress.test.d.ts +0 -6
  362. package/dist/src/ui/components/QwenOAuthProgress.test.js +0 -292
  363. package/dist/src/ui/components/QwenOAuthProgress.test.js.map +0 -1
  364. package/dist/src/ui/components/SettingsDialog.d.ts +0 -14
  365. package/dist/src/ui/components/SettingsDialog.js +0 -519
  366. package/dist/src/ui/components/SettingsDialog.js.map +0 -1
  367. package/dist/src/ui/components/SettingsDialog.test.d.ts +0 -6
  368. package/dist/src/ui/components/SettingsDialog.test.js +0 -568
  369. package/dist/src/ui/components/SettingsDialog.test.js.map +0 -1
  370. package/dist/src/ui/components/ShellConfirmationDialog.test.d.ts +0 -6
  371. package/dist/src/ui/components/ShellConfirmationDialog.test.js +0 -40
  372. package/dist/src/ui/components/ShellConfirmationDialog.test.js.map +0 -1
  373. package/dist/src/ui/components/TodoDisplay.d.ts +0 -16
  374. package/dist/src/ui/components/TodoDisplay.js +0 -27
  375. package/dist/src/ui/components/TodoDisplay.js.map +0 -1
  376. package/dist/src/ui/components/TodoDisplay.test.d.ts +0 -6
  377. package/dist/src/ui/components/TodoDisplay.test.js +0 -77
  378. package/dist/src/ui/components/TodoDisplay.test.js.map +0 -1
  379. package/dist/src/ui/components/WelcomeBackDialog.d.ts +0 -13
  380. package/dist/src/ui/components/WelcomeBackDialog.js +0 -31
  381. package/dist/src/ui/components/WelcomeBackDialog.js.map +0 -1
  382. package/dist/src/ui/components/messages/DiffRenderer.test.d.ts +0 -6
  383. package/dist/src/ui/components/messages/DiffRenderer.test.js +0 -239
  384. package/dist/src/ui/components/messages/DiffRenderer.test.js.map +0 -1
  385. package/dist/src/ui/components/messages/SummaryMessage.d.ts +0 -11
  386. package/dist/src/ui/components/messages/SummaryMessage.js +0 -35
  387. package/dist/src/ui/components/messages/SummaryMessage.js.map +0 -1
  388. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.d.ts +0 -6
  389. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +0 -37
  390. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +0 -1
  391. package/dist/src/ui/components/messages/ToolMessage.test.d.ts +0 -6
  392. package/dist/src/ui/components/messages/ToolMessage.test.js +0 -146
  393. package/dist/src/ui/components/messages/ToolMessage.test.js.map +0 -1
  394. package/dist/src/ui/components/shared/MaxSizedBox.test.d.ts +0 -6
  395. package/dist/src/ui/components/shared/MaxSizedBox.test.js +0 -154
  396. package/dist/src/ui/components/shared/MaxSizedBox.test.js.map +0 -1
  397. package/dist/src/ui/components/shared/RadioButtonSelect.test.d.ts +0 -6
  398. package/dist/src/ui/components/shared/RadioButtonSelect.test.js +0 -111
  399. package/dist/src/ui/components/shared/RadioButtonSelect.test.js.map +0 -1
  400. package/dist/src/ui/components/shared/TextInput.d.ts +0 -16
  401. package/dist/src/ui/components/shared/TextInput.js +0 -127
  402. package/dist/src/ui/components/shared/TextInput.js.map +0 -1
  403. package/dist/src/ui/components/subagents/constants.d.ts +0 -23
  404. package/dist/src/ui/components/subagents/constants.js +0 -67
  405. package/dist/src/ui/components/subagents/constants.js.map +0 -1
  406. package/dist/src/ui/components/subagents/create/AgentCreationWizard.d.ts +0 -15
  407. package/dist/src/ui/components/subagents/create/AgentCreationWizard.js +0 -171
  408. package/dist/src/ui/components/subagents/create/AgentCreationWizard.js.map +0 -1
  409. package/dist/src/ui/components/subagents/create/ColorSelector.d.ts +0 -15
  410. package/dist/src/ui/components/subagents/create/ColorSelector.js +0 -41
  411. package/dist/src/ui/components/subagents/create/ColorSelector.js.map +0 -1
  412. package/dist/src/ui/components/subagents/create/CreationSummary.d.ts +0 -10
  413. package/dist/src/ui/components/subagents/create/CreationSummary.js +0 -163
  414. package/dist/src/ui/components/subagents/create/CreationSummary.js.map +0 -1
  415. package/dist/src/ui/components/subagents/create/DescriptionInput.d.ts +0 -10
  416. package/dist/src/ui/components/subagents/create/DescriptionInput.js +0 -105
  417. package/dist/src/ui/components/subagents/create/DescriptionInput.js.map +0 -1
  418. package/dist/src/ui/components/subagents/create/GenerationMethodSelector.d.ts +0 -10
  419. package/dist/src/ui/components/subagents/create/GenerationMethodSelector.js +0 -33
  420. package/dist/src/ui/components/subagents/create/GenerationMethodSelector.js.map +0 -1
  421. package/dist/src/ui/components/subagents/create/LocationSelector.d.ts +0 -10
  422. package/dist/src/ui/components/subagents/create/LocationSelector.js +0 -33
  423. package/dist/src/ui/components/subagents/create/LocationSelector.js.map +0 -1
  424. package/dist/src/ui/components/subagents/create/TextEntryStep.d.ts +0 -26
  425. package/dist/src/ui/components/subagents/create/TextEntryStep.js +0 -28
  426. package/dist/src/ui/components/subagents/create/TextEntryStep.js.map +0 -1
  427. package/dist/src/ui/components/subagents/create/ToolSelector.d.ts +0 -16
  428. package/dist/src/ui/components/subagents/create/ToolSelector.js +0 -143
  429. package/dist/src/ui/components/subagents/create/ToolSelector.js.map +0 -1
  430. package/dist/src/ui/components/subagents/index.d.ts +0 -8
  431. package/dist/src/ui/components/subagents/index.js +0 -12
  432. package/dist/src/ui/components/subagents/index.js.map +0 -1
  433. package/dist/src/ui/components/subagents/manage/ActionSelectionStep.d.ts +0 -13
  434. package/dist/src/ui/components/subagents/manage/ActionSelectionStep.js +0 -45
  435. package/dist/src/ui/components/subagents/manage/ActionSelectionStep.js.map +0 -1
  436. package/dist/src/ui/components/subagents/manage/AgentDeleteStep.d.ts +0 -13
  437. package/dist/src/ui/components/subagents/manage/AgentDeleteStep.js +0 -32
  438. package/dist/src/ui/components/subagents/manage/AgentDeleteStep.js.map +0 -1
  439. package/dist/src/ui/components/subagents/manage/AgentEditStep.d.ts +0 -15
  440. package/dist/src/ui/components/subagents/manage/AgentEditStep.js +0 -62
  441. package/dist/src/ui/components/subagents/manage/AgentEditStep.js.map +0 -1
  442. package/dist/src/ui/components/subagents/manage/AgentSelectionStep.d.ts +0 -12
  443. package/dist/src/ui/components/subagents/manage/AgentSelectionStep.js +0 -224
  444. package/dist/src/ui/components/subagents/manage/AgentSelectionStep.js.map +0 -1
  445. package/dist/src/ui/components/subagents/manage/AgentViewerStep.d.ts +0 -11
  446. package/dist/src/ui/components/subagents/manage/AgentViewerStep.js +0 -18
  447. package/dist/src/ui/components/subagents/manage/AgentViewerStep.js.map +0 -1
  448. package/dist/src/ui/components/subagents/manage/AgentsManagerDialog.d.ts +0 -15
  449. package/dist/src/ui/components/subagents/manage/AgentsManagerDialog.js +0 -220
  450. package/dist/src/ui/components/subagents/manage/AgentsManagerDialog.js.map +0 -1
  451. package/dist/src/ui/components/subagents/reducers.d.ts +0 -14
  452. package/dist/src/ui/components/subagents/reducers.js +0 -161
  453. package/dist/src/ui/components/subagents/reducers.js.map +0 -1
  454. package/dist/src/ui/components/subagents/runtime/AgentExecutionDisplay.d.ts +0 -19
  455. package/dist/src/ui/components/subagents/runtime/AgentExecutionDisplay.js +0 -184
  456. package/dist/src/ui/components/subagents/runtime/AgentExecutionDisplay.js.map +0 -1
  457. package/dist/src/ui/components/subagents/types.d.ts +0 -137
  458. package/dist/src/ui/components/subagents/types.js +0 -15
  459. package/dist/src/ui/components/subagents/types.js.map +0 -1
  460. package/dist/src/ui/components/subagents/utils.d.ts +0 -15
  461. package/dist/src/ui/components/subagents/utils.js +0 -79
  462. package/dist/src/ui/components/subagents/utils.js.map +0 -1
  463. package/dist/src/ui/contexts/KeypressContext.d.ts +0 -31
  464. package/dist/src/ui/contexts/KeypressContext.js +0 -388
  465. package/dist/src/ui/contexts/KeypressContext.js.map +0 -1
  466. package/dist/src/ui/contexts/KeypressContext.test.d.ts +0 -6
  467. package/dist/src/ui/contexts/KeypressContext.test.js +0 -754
  468. package/dist/src/ui/contexts/KeypressContext.test.js.map +0 -1
  469. package/dist/src/ui/contexts/SettingsContext.d.ts +0 -9
  470. package/dist/src/ui/contexts/SettingsContext.js +0 -15
  471. package/dist/src/ui/contexts/SettingsContext.js.map +0 -1
  472. package/dist/src/ui/hooks/atCommandProcessor.test.d.ts +0 -6
  473. package/dist/src/ui/hooks/atCommandProcessor.test.js +0 -824
  474. package/dist/src/ui/hooks/atCommandProcessor.test.js.map +0 -1
  475. package/dist/src/ui/hooks/shellCommandProcessor.test.d.ts +0 -6
  476. package/dist/src/ui/hooks/shellCommandProcessor.test.js +0 -328
  477. package/dist/src/ui/hooks/shellCommandProcessor.test.js.map +0 -1
  478. package/dist/src/ui/hooks/useAgentsManagerDialog.d.ts +0 -11
  479. package/dist/src/ui/hooks/useAgentsManagerDialog.js +0 -21
  480. package/dist/src/ui/hooks/useAgentsManagerDialog.js.map +0 -1
  481. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.d.ts +0 -6
  482. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js +0 -191
  483. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js.map +0 -1
  484. package/dist/src/ui/hooks/useDialogClose.d.ts +0 -34
  485. package/dist/src/ui/hooks/useDialogClose.js +0 -62
  486. package/dist/src/ui/hooks/useDialogClose.js.map +0 -1
  487. package/dist/src/ui/hooks/useEditorSettings.test.d.ts +0 -6
  488. package/dist/src/ui/hooks/useEditorSettings.test.js +0 -164
  489. package/dist/src/ui/hooks/useEditorSettings.test.js.map +0 -1
  490. package/dist/src/ui/hooks/useFolderTrust.d.ts +0 -12
  491. package/dist/src/ui/hooks/useFolderTrust.js +0 -55
  492. package/dist/src/ui/hooks/useFolderTrust.js.map +0 -1
  493. package/dist/src/ui/hooks/useGitBranchName.test.d.ts +0 -6
  494. package/dist/src/ui/hooks/useGitBranchName.test.js +0 -239
  495. package/dist/src/ui/hooks/useGitBranchName.test.js.map +0 -1
  496. package/dist/src/ui/hooks/useHistoryManager.test.d.ts +0 -6
  497. package/dist/src/ui/hooks/useHistoryManager.test.js +0 -171
  498. package/dist/src/ui/hooks/useHistoryManager.test.js.map +0 -1
  499. package/dist/src/ui/hooks/useInputHistory.test.d.ts +0 -6
  500. package/dist/src/ui/hooks/useInputHistory.test.js +0 -207
  501. package/dist/src/ui/hooks/useInputHistory.test.js.map +0 -1
  502. package/dist/src/ui/hooks/useKittyKeyboardProtocol.d.ts +0 -15
  503. package/dist/src/ui/hooks/useKittyKeyboardProtocol.js +0 -20
  504. package/dist/src/ui/hooks/useKittyKeyboardProtocol.js.map +0 -1
  505. package/dist/src/ui/hooks/useLaunchEditor.d.ts +0 -10
  506. package/dist/src/ui/hooks/useLaunchEditor.js +0 -70
  507. package/dist/src/ui/hooks/useLaunchEditor.js.map +0 -1
  508. package/dist/src/ui/hooks/useLoadingIndicator.test.d.ts +0 -6
  509. package/dist/src/ui/hooks/useLoadingIndicator.test.js +0 -91
  510. package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +0 -1
  511. package/dist/src/ui/hooks/useMessageQueue.d.ts +0 -22
  512. package/dist/src/ui/hooks/useMessageQueue.js +0 -49
  513. package/dist/src/ui/hooks/useMessageQueue.js.map +0 -1
  514. package/dist/src/ui/hooks/useMessageQueue.test.d.ts +0 -6
  515. package/dist/src/ui/hooks/useMessageQueue.test.js +0 -158
  516. package/dist/src/ui/hooks/useMessageQueue.test.js.map +0 -1
  517. package/dist/src/ui/hooks/usePrivacySettings.test.d.ts +0 -6
  518. package/dist/src/ui/hooks/usePrivacySettings.test.js +0 -154
  519. package/dist/src/ui/hooks/usePrivacySettings.test.js.map +0 -1
  520. package/dist/src/ui/hooks/useQuitConfirmation.d.ts +0 -14
  521. package/dist/src/ui/hooks/useQuitConfirmation.js +0 -36
  522. package/dist/src/ui/hooks/useQuitConfirmation.js.map +0 -1
  523. package/dist/src/ui/hooks/useQwenAuth.test.d.ts +0 -6
  524. package/dist/src/ui/hooks/useQwenAuth.test.js +0 -288
  525. package/dist/src/ui/hooks/useQwenAuth.test.js.map +0 -1
  526. package/dist/src/ui/hooks/useReverseSearchCompletion.test.d.ts +0 -6
  527. package/dist/src/ui/hooks/useReverseSearchCompletion.test.js +0 -163
  528. package/dist/src/ui/hooks/useReverseSearchCompletion.test.js.map +0 -1
  529. package/dist/src/ui/hooks/useSettingsCommand.d.ts +0 -10
  530. package/dist/src/ui/hooks/useSettingsCommand.js +0 -21
  531. package/dist/src/ui/hooks/useSettingsCommand.js.map +0 -1
  532. package/dist/src/ui/hooks/useShellHistory.test.d.ts +0 -6
  533. package/dist/src/ui/hooks/useShellHistory.test.js +0 -162
  534. package/dist/src/ui/hooks/useShellHistory.test.js.map +0 -1
  535. package/dist/src/ui/hooks/useSlashCompletion.test.d.ts +0 -6
  536. package/dist/src/ui/hooks/useSlashCompletion.test.js +0 -272
  537. package/dist/src/ui/hooks/useSlashCompletion.test.js.map +0 -1
  538. package/dist/src/ui/hooks/useSubagentCreateDialog.d.ts +0 -10
  539. package/dist/src/ui/hooks/useSubagentCreateDialog.js +0 -21
  540. package/dist/src/ui/hooks/useSubagentCreateDialog.js.map +0 -1
  541. package/dist/src/ui/hooks/useTimer.test.d.ts +0 -6
  542. package/dist/src/ui/hooks/useTimer.test.js +0 -90
  543. package/dist/src/ui/hooks/useTimer.test.js.map +0 -1
  544. package/dist/src/ui/hooks/useToolScheduler.test.d.ts +0 -6
  545. package/dist/src/ui/hooks/useToolScheduler.test.js +0 -846
  546. package/dist/src/ui/hooks/useToolScheduler.test.js.map +0 -1
  547. package/dist/src/ui/hooks/useWelcomeBack.d.ts +0 -23
  548. package/dist/src/ui/hooks/useWelcomeBack.js +0 -78
  549. package/dist/src/ui/hooks/useWelcomeBack.js.map +0 -1
  550. package/dist/src/ui/keyMatchers.d.ts +0 -26
  551. package/dist/src/ui/keyMatchers.js +0 -68
  552. package/dist/src/ui/keyMatchers.js.map +0 -1
  553. package/dist/src/ui/keyMatchers.test.d.ts +0 -6
  554. package/dist/src/ui/keyMatchers.test.js +0 -276
  555. package/dist/src/ui/keyMatchers.test.js.map +0 -1
  556. package/dist/src/ui/semantic-colors.d.ts +0 -7
  557. package/dist/src/ui/semantic-colors.js +0 -24
  558. package/dist/src/ui/semantic-colors.js.map +0 -1
  559. package/dist/src/ui/themes/color-utils.test.d.ts +0 -6
  560. package/dist/src/ui/themes/color-utils.test.js +0 -197
  561. package/dist/src/ui/themes/color-utils.test.js.map +0 -1
  562. package/dist/src/ui/themes/semantic-tokens.d.ts +0 -37
  563. package/dist/src/ui/themes/semantic-tokens.js +0 -94
  564. package/dist/src/ui/themes/semantic-tokens.js.map +0 -1
  565. package/dist/src/ui/themes/theme-manager.test.d.ts +0 -6
  566. package/dist/src/ui/themes/theme-manager.test.js +0 -83
  567. package/dist/src/ui/themes/theme-manager.test.js.map +0 -1
  568. package/dist/src/ui/utils/MarkdownDisplay.test.d.ts +0 -6
  569. package/dist/src/ui/utils/MarkdownDisplay.test.js +0 -151
  570. package/dist/src/ui/utils/MarkdownDisplay.test.js.map +0 -1
  571. package/dist/src/ui/utils/clipboardUtils.test.d.ts +0 -6
  572. package/dist/src/ui/utils/clipboardUtils.test.js +0 -65
  573. package/dist/src/ui/utils/clipboardUtils.test.js.map +0 -1
  574. package/dist/src/ui/utils/commandUtils.test.d.ts +0 -6
  575. package/dist/src/ui/utils/commandUtils.test.js +0 -294
  576. package/dist/src/ui/utils/commandUtils.test.js.map +0 -1
  577. package/dist/src/ui/utils/displayUtils.test.d.ts +0 -6
  578. package/dist/src/ui/utils/displayUtils.test.js +0 -42
  579. package/dist/src/ui/utils/displayUtils.test.js.map +0 -1
  580. package/dist/src/ui/utils/formatters.test.d.ts +0 -6
  581. package/dist/src/ui/utils/formatters.test.js +0 -56
  582. package/dist/src/ui/utils/formatters.test.js.map +0 -1
  583. package/dist/src/ui/utils/isNarrowWidth.d.ts +0 -6
  584. package/dist/src/ui/utils/isNarrowWidth.js +0 -9
  585. package/dist/src/ui/utils/isNarrowWidth.js.map +0 -1
  586. package/dist/src/ui/utils/kittyProtocolDetector.d.ts +0 -13
  587. package/dist/src/ui/utils/kittyProtocolDetector.js +0 -88
  588. package/dist/src/ui/utils/kittyProtocolDetector.js.map +0 -1
  589. package/dist/src/ui/utils/markdownUtilities.test.d.ts +0 -6
  590. package/dist/src/ui/utils/markdownUtilities.test.js +0 -42
  591. package/dist/src/ui/utils/markdownUtilities.test.js.map +0 -1
  592. package/dist/src/ui/utils/platformConstants.d.ts +0 -45
  593. package/dist/src/ui/utils/platformConstants.js +0 -46
  594. package/dist/src/ui/utils/platformConstants.js.map +0 -1
  595. package/dist/src/ui/utils/terminalSetup.d.ts +0 -30
  596. package/dist/src/ui/utils/terminalSetup.js +0 -281
  597. package/dist/src/ui/utils/terminalSetup.js.map +0 -1
  598. package/dist/src/ui/utils/updateCheck.test.d.ts +0 -6
  599. package/dist/src/ui/utils/updateCheck.test.js +0 -145
  600. package/dist/src/ui/utils/updateCheck.test.js.map +0 -1
  601. package/dist/src/utils/checks.d.ts +0 -19
  602. package/dist/src/utils/checks.js +0 -24
  603. package/dist/src/utils/checks.js.map +0 -1
  604. package/dist/src/utils/dialogScopeUtils.d.ts +0 -31
  605. package/dist/src/utils/dialogScopeUtils.js +0 -48
  606. package/dist/src/utils/dialogScopeUtils.js.map +0 -1
  607. package/dist/src/utils/gitUtils.test.d.ts +0 -6
  608. package/dist/src/utils/gitUtils.test.js +0 -113
  609. package/dist/src/utils/gitUtils.test.js.map +0 -1
  610. package/dist/src/utils/installationInfo.test.d.ts +0 -6
  611. package/dist/src/utils/installationInfo.test.js +0 -242
  612. package/dist/src/utils/installationInfo.test.js.map +0 -1
  613. package/dist/src/utils/settingsUtils.d.ts +0 -134
  614. package/dist/src/utils/settingsUtils.js +0 -336
  615. package/dist/src/utils/settingsUtils.js.map +0 -1
  616. package/dist/src/utils/settingsUtils.test.d.ts +0 -6
  617. package/dist/src/utils/settingsUtils.test.js +0 -514
  618. package/dist/src/utils/settingsUtils.test.js.map +0 -1
  619. package/dist/src/utils/userStartupWarnings.test.d.ts +0 -6
  620. package/dist/src/utils/userStartupWarnings.test.js +0 -67
  621. package/dist/src/utils/userStartupWarnings.test.js.map +0 -1
  622. package/dist/src/zed-integration/acp.d.ts +0 -63
  623. package/dist/src/zed-integration/acp.js.map +0 -1
  624. package/dist/src/zed-integration/fileSystemService.d.ts +0 -19
  625. package/dist/src/zed-integration/fileSystemService.js +0 -43
  626. package/dist/src/zed-integration/fileSystemService.js.map +0 -1
  627. package/dist/src/zed-integration/schema.d.ts +0 -11782
  628. package/dist/src/zed-integration/schema.js +0 -311
  629. package/dist/src/zed-integration/schema.js.map +0 -1
  630. package/dist/src/zed-integration/zedIntegration.d.ts +0 -10
  631. package/dist/src/zed-integration/zedIntegration.js +0 -765
  632. package/dist/src/zed-integration/zedIntegration.js.map +0 -1
@@ -1,765 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2025 Google LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- import { AuthType, clearCachedCredentialFile, logToolCall, convertToFunctionResponse, getErrorMessage, getErrorStatus, isNodeError, isWithinRoot, MCPServerConfig, ToolConfirmationOutcome, DiscoveredMCPTool, } from '@umsai/ums-code-core';
7
- import { AcpFileSystemService } from './fileSystemService.js';
8
- import * as fs from 'fs/promises';
9
- import { Readable, Writable } from 'node:stream';
10
- import * as path from 'path';
11
- import { z } from 'zod';
12
- import { SettingScope } from '../config/settings.js';
13
- import * as acp from './acp.js';
14
- import { randomUUID } from 'crypto';
15
- import { loadCliConfig } from '../config/config.js';
16
- export async function runZedIntegration(config, settings, extensions, argv) {
17
- const stdout = Writable.toWeb(process.stdout);
18
- const stdin = Readable.toWeb(process.stdin);
19
- // Stdout is used to send messages to the client, so console.log/console.info
20
- // messages to stderr so that they don't interfere with ACP.
21
- console.log = console.error;
22
- console.info = console.error;
23
- console.debug = console.error;
24
- new acp.AgentSideConnection((client) => new GeminiAgent(config, settings, extensions, argv, client), stdout, stdin);
25
- }
26
- class GeminiAgent {
27
- config;
28
- settings;
29
- extensions;
30
- argv;
31
- client;
32
- sessions = new Map();
33
- clientCapabilities;
34
- constructor(config, settings, extensions, argv, client) {
35
- this.config = config;
36
- this.settings = settings;
37
- this.extensions = extensions;
38
- this.argv = argv;
39
- this.client = client;
40
- }
41
- async initialize(args) {
42
- this.clientCapabilities = args.clientCapabilities;
43
- const authMethods = [
44
- {
45
- id: AuthType.LOGIN_WITH_GOOGLE,
46
- name: 'Log in with Google',
47
- description: null,
48
- },
49
- {
50
- id: AuthType.USE_GEMINI,
51
- name: 'Use Gemini API key',
52
- description: 'Requires setting the `GEMINI_API_KEY` environment variable',
53
- },
54
- {
55
- id: AuthType.USE_VERTEX_AI,
56
- name: 'Vertex AI',
57
- description: null,
58
- },
59
- ];
60
- return {
61
- protocolVersion: acp.PROTOCOL_VERSION,
62
- authMethods,
63
- agentCapabilities: {
64
- loadSession: false,
65
- promptCapabilities: {
66
- image: true,
67
- audio: true,
68
- embeddedContext: true,
69
- },
70
- },
71
- };
72
- }
73
- async authenticate({ methodId }) {
74
- const method = z.nativeEnum(AuthType).parse(methodId);
75
- await clearCachedCredentialFile();
76
- await this.config.refreshAuth(method);
77
- this.settings.setValue(SettingScope.User, 'selectedAuthType', method);
78
- }
79
- async newSession({ cwd, mcpServers, }) {
80
- const sessionId = randomUUID();
81
- const config = await this.newSessionConfig(sessionId, cwd, mcpServers);
82
- let isAuthenticated = false;
83
- if (this.settings.merged.selectedAuthType) {
84
- try {
85
- await config.refreshAuth(this.settings.merged.selectedAuthType);
86
- isAuthenticated = true;
87
- }
88
- catch (e) {
89
- console.error(`Authentication failed: ${e}`);
90
- }
91
- }
92
- if (!isAuthenticated) {
93
- throw acp.RequestError.authRequired();
94
- }
95
- if (this.clientCapabilities?.fs) {
96
- const acpFileSystemService = new AcpFileSystemService(this.client, sessionId, this.clientCapabilities.fs, config.getFileSystemService());
97
- config.setFileSystemService(acpFileSystemService);
98
- }
99
- const geminiClient = config.getGeminiClient();
100
- const chat = await geminiClient.startChat();
101
- const session = new Session(sessionId, chat, config, this.client);
102
- this.sessions.set(sessionId, session);
103
- return {
104
- sessionId,
105
- };
106
- }
107
- async newSessionConfig(sessionId, cwd, mcpServers) {
108
- const mergedMcpServers = { ...this.settings.merged.mcpServers };
109
- for (const { command, args, env: rawEnv, name } of mcpServers) {
110
- const env = {};
111
- for (const { name: envName, value } of rawEnv) {
112
- env[envName] = value;
113
- }
114
- mergedMcpServers[name] = new MCPServerConfig(command, args, env, cwd);
115
- }
116
- const settings = { ...this.settings.merged, mcpServers: mergedMcpServers };
117
- const config = await loadCliConfig(settings, this.extensions, sessionId, this.argv, cwd);
118
- await config.initialize();
119
- return config;
120
- }
121
- async cancel(params) {
122
- const session = this.sessions.get(params.sessionId);
123
- if (!session) {
124
- throw new Error(`Session not found: ${params.sessionId}`);
125
- }
126
- await session.cancelPendingPrompt();
127
- }
128
- async prompt(params) {
129
- const session = this.sessions.get(params.sessionId);
130
- if (!session) {
131
- throw new Error(`Session not found: ${params.sessionId}`);
132
- }
133
- return session.prompt(params);
134
- }
135
- }
136
- class Session {
137
- id;
138
- chat;
139
- config;
140
- client;
141
- pendingPrompt = null;
142
- constructor(id, chat, config, client) {
143
- this.id = id;
144
- this.chat = chat;
145
- this.config = config;
146
- this.client = client;
147
- }
148
- async cancelPendingPrompt() {
149
- if (!this.pendingPrompt) {
150
- throw new Error('Not currently generating');
151
- }
152
- this.pendingPrompt.abort();
153
- this.pendingPrompt = null;
154
- }
155
- async prompt(params) {
156
- this.pendingPrompt?.abort();
157
- const pendingSend = new AbortController();
158
- this.pendingPrompt = pendingSend;
159
- const promptId = Math.random().toString(16).slice(2);
160
- const chat = this.chat;
161
- const parts = await this.#resolvePrompt(params.prompt, pendingSend.signal);
162
- let nextMessage = { role: 'user', parts };
163
- while (nextMessage !== null) {
164
- if (pendingSend.signal.aborted) {
165
- chat.addHistory(nextMessage);
166
- return { stopReason: 'cancelled' };
167
- }
168
- const functionCalls = [];
169
- try {
170
- const responseStream = await chat.sendMessageStream({
171
- message: nextMessage?.parts ?? [],
172
- config: {
173
- abortSignal: pendingSend.signal,
174
- },
175
- }, promptId);
176
- nextMessage = null;
177
- for await (const resp of responseStream) {
178
- if (pendingSend.signal.aborted) {
179
- return { stopReason: 'cancelled' };
180
- }
181
- if (resp.candidates && resp.candidates.length > 0) {
182
- const candidate = resp.candidates[0];
183
- for (const part of candidate.content?.parts ?? []) {
184
- if (!part.text) {
185
- continue;
186
- }
187
- const content = {
188
- type: 'text',
189
- text: part.text,
190
- };
191
- this.sendUpdate({
192
- sessionUpdate: part.thought
193
- ? 'agent_thought_chunk'
194
- : 'agent_message_chunk',
195
- content,
196
- });
197
- }
198
- }
199
- if (resp.functionCalls) {
200
- functionCalls.push(...resp.functionCalls);
201
- }
202
- }
203
- }
204
- catch (error) {
205
- if (getErrorStatus(error) === 429) {
206
- throw new acp.RequestError(429, 'Rate limit exceeded. Try again later.');
207
- }
208
- throw error;
209
- }
210
- if (functionCalls.length > 0) {
211
- const toolResponseParts = [];
212
- for (const fc of functionCalls) {
213
- const response = await this.runTool(pendingSend.signal, promptId, fc);
214
- const parts = Array.isArray(response) ? response : [response];
215
- for (const part of parts) {
216
- if (typeof part === 'string') {
217
- toolResponseParts.push({ text: part });
218
- }
219
- else if (part) {
220
- toolResponseParts.push(part);
221
- }
222
- }
223
- }
224
- nextMessage = { role: 'user', parts: toolResponseParts };
225
- }
226
- }
227
- return { stopReason: 'end_turn' };
228
- }
229
- async sendUpdate(update) {
230
- const params = {
231
- sessionId: this.id,
232
- update,
233
- };
234
- await this.client.sessionUpdate(params);
235
- }
236
- async runTool(abortSignal, promptId, fc) {
237
- const callId = fc.id ?? `${fc.name}-${Date.now()}`;
238
- const args = (fc.args ?? {});
239
- const startTime = Date.now();
240
- const errorResponse = (error) => {
241
- const durationMs = Date.now() - startTime;
242
- logToolCall(this.config, {
243
- 'event.name': 'tool_call',
244
- 'event.timestamp': new Date().toISOString(),
245
- prompt_id: promptId,
246
- function_name: fc.name ?? '',
247
- function_args: args,
248
- duration_ms: durationMs,
249
- success: false,
250
- error: error.message,
251
- tool_type: typeof tool !== 'undefined' && tool instanceof DiscoveredMCPTool
252
- ? 'mcp'
253
- : 'native',
254
- });
255
- return [
256
- {
257
- functionResponse: {
258
- id: callId,
259
- name: fc.name ?? '',
260
- response: { error: error.message },
261
- },
262
- },
263
- ];
264
- };
265
- if (!fc.name) {
266
- return errorResponse(new Error('Missing function name'));
267
- }
268
- const toolRegistry = this.config.getToolRegistry();
269
- const tool = toolRegistry.getTool(fc.name);
270
- if (!tool) {
271
- return errorResponse(new Error(`Tool "${fc.name}" not found in registry.`));
272
- }
273
- try {
274
- const invocation = tool.build(args);
275
- const confirmationDetails = await invocation.shouldConfirmExecute(abortSignal);
276
- if (confirmationDetails) {
277
- const content = [];
278
- if (confirmationDetails.type === 'edit') {
279
- content.push({
280
- type: 'diff',
281
- path: confirmationDetails.fileName,
282
- oldText: confirmationDetails.originalContent,
283
- newText: confirmationDetails.newContent,
284
- });
285
- }
286
- const params = {
287
- sessionId: this.id,
288
- options: toPermissionOptions(confirmationDetails),
289
- toolCall: {
290
- toolCallId: callId,
291
- status: 'pending',
292
- title: invocation.getDescription(),
293
- content,
294
- locations: invocation.toolLocations(),
295
- kind: tool.kind,
296
- },
297
- };
298
- const output = await this.client.requestPermission(params);
299
- const outcome = output.outcome.outcome === 'cancelled'
300
- ? ToolConfirmationOutcome.Cancel
301
- : z
302
- .nativeEnum(ToolConfirmationOutcome)
303
- .parse(output.outcome.optionId);
304
- await confirmationDetails.onConfirm(outcome);
305
- switch (outcome) {
306
- case ToolConfirmationOutcome.Cancel:
307
- return errorResponse(new Error(`Tool "${fc.name}" was canceled by the user.`));
308
- case ToolConfirmationOutcome.ProceedOnce:
309
- case ToolConfirmationOutcome.ProceedAlways:
310
- case ToolConfirmationOutcome.ProceedAlwaysServer:
311
- case ToolConfirmationOutcome.ProceedAlwaysTool:
312
- case ToolConfirmationOutcome.ModifyWithEditor:
313
- break;
314
- default: {
315
- const resultOutcome = outcome;
316
- throw new Error(`Unexpected: ${resultOutcome}`);
317
- }
318
- }
319
- }
320
- else {
321
- await this.sendUpdate({
322
- sessionUpdate: 'tool_call',
323
- toolCallId: callId,
324
- status: 'in_progress',
325
- title: invocation.getDescription(),
326
- content: [],
327
- locations: invocation.toolLocations(),
328
- kind: tool.kind,
329
- });
330
- }
331
- const toolResult = await invocation.execute(abortSignal);
332
- const content = toToolCallContent(toolResult);
333
- await this.sendUpdate({
334
- sessionUpdate: 'tool_call_update',
335
- toolCallId: callId,
336
- status: 'completed',
337
- content: content ? [content] : [],
338
- });
339
- const durationMs = Date.now() - startTime;
340
- logToolCall(this.config, {
341
- 'event.name': 'tool_call',
342
- 'event.timestamp': new Date().toISOString(),
343
- function_name: fc.name,
344
- function_args: args,
345
- duration_ms: durationMs,
346
- success: true,
347
- prompt_id: promptId,
348
- tool_type: typeof tool !== 'undefined' && tool instanceof DiscoveredMCPTool
349
- ? 'mcp'
350
- : 'native',
351
- });
352
- return convertToFunctionResponse(fc.name, callId, toolResult.llmContent);
353
- }
354
- catch (e) {
355
- const error = e instanceof Error ? e : new Error(String(e));
356
- await this.sendUpdate({
357
- sessionUpdate: 'tool_call_update',
358
- toolCallId: callId,
359
- status: 'failed',
360
- content: [
361
- { type: 'content', content: { type: 'text', text: error.message } },
362
- ],
363
- });
364
- return errorResponse(error);
365
- }
366
- }
367
- async #resolvePrompt(message, abortSignal) {
368
- const FILE_URI_SCHEME = 'file://';
369
- const embeddedContext = [];
370
- const parts = message.map((part) => {
371
- switch (part.type) {
372
- case 'text':
373
- return { text: part.text };
374
- case 'image':
375
- case 'audio':
376
- return {
377
- inlineData: {
378
- mimeType: part.mimeType,
379
- data: part.data,
380
- },
381
- };
382
- case 'resource_link': {
383
- if (part.uri.startsWith(FILE_URI_SCHEME)) {
384
- return {
385
- fileData: {
386
- mimeData: part.mimeType,
387
- name: part.name,
388
- fileUri: part.uri.slice(FILE_URI_SCHEME.length),
389
- },
390
- };
391
- }
392
- else {
393
- return { text: `@${part.uri}` };
394
- }
395
- }
396
- case 'resource': {
397
- embeddedContext.push(part.resource);
398
- return { text: `@${part.resource.uri}` };
399
- }
400
- default: {
401
- const unreachable = part;
402
- throw new Error(`Unexpected chunk type: '${unreachable}'`);
403
- }
404
- }
405
- });
406
- const atPathCommandParts = parts.filter((part) => 'fileData' in part);
407
- if (atPathCommandParts.length === 0 && embeddedContext.length === 0) {
408
- return parts;
409
- }
410
- const atPathToResolvedSpecMap = new Map();
411
- // Get centralized file discovery service
412
- const fileDiscovery = this.config.getFileService();
413
- const respectGitIgnore = this.config.getFileFilteringRespectGitIgnore();
414
- const pathSpecsToRead = [];
415
- const contentLabelsForDisplay = [];
416
- const ignoredPaths = [];
417
- const toolRegistry = this.config.getToolRegistry();
418
- const readManyFilesTool = toolRegistry.getTool('read_many_files');
419
- const globTool = toolRegistry.getTool('glob');
420
- if (!readManyFilesTool) {
421
- throw new Error('Error: read_many_files tool not found.');
422
- }
423
- for (const atPathPart of atPathCommandParts) {
424
- const pathName = atPathPart.fileData.fileUri;
425
- // Check if path should be ignored by git
426
- if (fileDiscovery.shouldGitIgnoreFile(pathName)) {
427
- ignoredPaths.push(pathName);
428
- const reason = respectGitIgnore
429
- ? 'git-ignored and will be skipped'
430
- : 'ignored by custom patterns';
431
- console.warn(`Path ${pathName} is ${reason}.`);
432
- continue;
433
- }
434
- let currentPathSpec = pathName;
435
- let resolvedSuccessfully = false;
436
- try {
437
- const absolutePath = path.resolve(this.config.getTargetDir(), pathName);
438
- if (isWithinRoot(absolutePath, this.config.getTargetDir())) {
439
- const stats = await fs.stat(absolutePath);
440
- if (stats.isDirectory()) {
441
- currentPathSpec = pathName.endsWith('/')
442
- ? `${pathName}**`
443
- : `${pathName}/**`;
444
- this.debug(`Path ${pathName} resolved to directory, using glob: ${currentPathSpec}`);
445
- }
446
- else {
447
- this.debug(`Path ${pathName} resolved to file: ${currentPathSpec}`);
448
- }
449
- resolvedSuccessfully = true;
450
- }
451
- else {
452
- this.debug(`Path ${pathName} is outside the project directory. Skipping.`);
453
- }
454
- }
455
- catch (error) {
456
- if (isNodeError(error) && error.code === 'ENOENT') {
457
- if (this.config.getEnableRecursiveFileSearch() && globTool) {
458
- this.debug(`Path ${pathName} not found directly, attempting glob search.`);
459
- try {
460
- const globResult = await globTool.buildAndExecute({
461
- pattern: `**/*${pathName}*`,
462
- path: this.config.getTargetDir(),
463
- }, abortSignal);
464
- if (globResult.llmContent &&
465
- typeof globResult.llmContent === 'string' &&
466
- !globResult.llmContent.startsWith('No files found') &&
467
- !globResult.llmContent.startsWith('Error:')) {
468
- const lines = globResult.llmContent.split('\n');
469
- if (lines.length > 1 && lines[1]) {
470
- const firstMatchAbsolute = lines[1].trim();
471
- currentPathSpec = path.relative(this.config.getTargetDir(), firstMatchAbsolute);
472
- this.debug(`Glob search for ${pathName} found ${firstMatchAbsolute}, using relative path: ${currentPathSpec}`);
473
- resolvedSuccessfully = true;
474
- }
475
- else {
476
- this.debug(`Glob search for '**/*${pathName}*' did not return a usable path. Path ${pathName} will be skipped.`);
477
- }
478
- }
479
- else {
480
- this.debug(`Glob search for '**/*${pathName}*' found no files or an error. Path ${pathName} will be skipped.`);
481
- }
482
- }
483
- catch (globError) {
484
- console.error(`Error during glob search for ${pathName}: ${getErrorMessage(globError)}`);
485
- }
486
- }
487
- else {
488
- this.debug(`Glob tool not found. Path ${pathName} will be skipped.`);
489
- }
490
- }
491
- else {
492
- console.error(`Error stating path ${pathName}. Path ${pathName} will be skipped.`);
493
- }
494
- }
495
- if (resolvedSuccessfully) {
496
- pathSpecsToRead.push(currentPathSpec);
497
- atPathToResolvedSpecMap.set(pathName, currentPathSpec);
498
- contentLabelsForDisplay.push(pathName);
499
- }
500
- }
501
- // Construct the initial part of the query for the LLM
502
- let initialQueryText = '';
503
- for (let i = 0; i < parts.length; i++) {
504
- const chunk = parts[i];
505
- if ('text' in chunk) {
506
- initialQueryText += chunk.text;
507
- }
508
- else {
509
- // type === 'atPath'
510
- const resolvedSpec = chunk.fileData && atPathToResolvedSpecMap.get(chunk.fileData.fileUri);
511
- if (i > 0 &&
512
- initialQueryText.length > 0 &&
513
- !initialQueryText.endsWith(' ') &&
514
- resolvedSpec) {
515
- // Add space if previous part was text and didn't end with space, or if previous was @path
516
- const prevPart = parts[i - 1];
517
- if ('text' in prevPart ||
518
- ('fileData' in prevPart &&
519
- atPathToResolvedSpecMap.has(prevPart.fileData.fileUri))) {
520
- initialQueryText += ' ';
521
- }
522
- }
523
- if (resolvedSpec) {
524
- initialQueryText += `@${resolvedSpec}`;
525
- }
526
- else {
527
- // If not resolved for reading (e.g. lone @ or invalid path that was skipped),
528
- // add the original @-string back, ensuring spacing if it's not the first element.
529
- if (i > 0 &&
530
- initialQueryText.length > 0 &&
531
- !initialQueryText.endsWith(' ') &&
532
- !chunk.fileData?.fileUri.startsWith(' ')) {
533
- initialQueryText += ' ';
534
- }
535
- if (chunk.fileData?.fileUri) {
536
- initialQueryText += `@${chunk.fileData.fileUri}`;
537
- }
538
- }
539
- }
540
- }
541
- initialQueryText = initialQueryText.trim();
542
- // Inform user about ignored paths
543
- if (ignoredPaths.length > 0) {
544
- const ignoreType = respectGitIgnore ? 'git-ignored' : 'custom-ignored';
545
- this.debug(`Ignored ${ignoredPaths.length} ${ignoreType} files: ${ignoredPaths.join(', ')}`);
546
- }
547
- const processedQueryParts = [{ text: initialQueryText }];
548
- if (pathSpecsToRead.length === 0 && embeddedContext.length === 0) {
549
- // Fallback for lone "@" or completely invalid @-commands resulting in empty initialQueryText
550
- console.warn('No valid file paths found in @ commands to read.');
551
- return [{ text: initialQueryText }];
552
- }
553
- if (pathSpecsToRead.length > 0) {
554
- const toolArgs = {
555
- paths: pathSpecsToRead,
556
- respectGitIgnore, // Use configuration setting
557
- };
558
- const callId = `${readManyFilesTool.name}-${Date.now()}`;
559
- try {
560
- const invocation = readManyFilesTool.build(toolArgs);
561
- await this.sendUpdate({
562
- sessionUpdate: 'tool_call',
563
- toolCallId: callId,
564
- status: 'in_progress',
565
- title: invocation.getDescription(),
566
- content: [],
567
- locations: invocation.toolLocations(),
568
- kind: readManyFilesTool.kind,
569
- });
570
- const result = await invocation.execute(abortSignal);
571
- const content = toToolCallContent(result) || {
572
- type: 'content',
573
- content: {
574
- type: 'text',
575
- text: `Successfully read: ${contentLabelsForDisplay.join(', ')}`,
576
- },
577
- };
578
- await this.sendUpdate({
579
- sessionUpdate: 'tool_call_update',
580
- toolCallId: callId,
581
- status: 'completed',
582
- content: content ? [content] : [],
583
- });
584
- if (Array.isArray(result.llmContent)) {
585
- const fileContentRegex = /^--- (.*?) ---\n\n([\s\S]*?)\n\n$/;
586
- processedQueryParts.push({
587
- text: '\n--- Content from referenced files ---',
588
- });
589
- for (const part of result.llmContent) {
590
- if (typeof part === 'string') {
591
- const match = fileContentRegex.exec(part);
592
- if (match) {
593
- const filePathSpecInContent = match[1]; // This is a resolved pathSpec
594
- const fileActualContent = match[2].trim();
595
- processedQueryParts.push({
596
- text: `\nContent from @${filePathSpecInContent}:\n`,
597
- });
598
- processedQueryParts.push({ text: fileActualContent });
599
- }
600
- else {
601
- processedQueryParts.push({ text: part });
602
- }
603
- }
604
- else {
605
- // part is a Part object.
606
- processedQueryParts.push(part);
607
- }
608
- }
609
- }
610
- else {
611
- console.warn('read_many_files tool returned no content or empty content.');
612
- }
613
- }
614
- catch (error) {
615
- await this.sendUpdate({
616
- sessionUpdate: 'tool_call_update',
617
- toolCallId: callId,
618
- status: 'failed',
619
- content: [
620
- {
621
- type: 'content',
622
- content: {
623
- type: 'text',
624
- text: `Error reading files (${contentLabelsForDisplay.join(', ')}): ${getErrorMessage(error)}`,
625
- },
626
- },
627
- ],
628
- });
629
- throw error;
630
- }
631
- }
632
- if (embeddedContext.length > 0) {
633
- processedQueryParts.push({
634
- text: '\n--- Content from referenced context ---',
635
- });
636
- for (const contextPart of embeddedContext) {
637
- processedQueryParts.push({
638
- text: `\nContent from @${contextPart.uri}:\n`,
639
- });
640
- if ('text' in contextPart) {
641
- processedQueryParts.push({
642
- text: contextPart.text,
643
- });
644
- }
645
- else {
646
- processedQueryParts.push({
647
- inlineData: {
648
- mimeType: contextPart.mimeType ?? 'application/octet-stream',
649
- data: contextPart.blob,
650
- },
651
- });
652
- }
653
- }
654
- }
655
- return processedQueryParts;
656
- }
657
- debug(msg) {
658
- if (this.config.getDebugMode()) {
659
- console.warn(msg);
660
- }
661
- }
662
- }
663
- function toToolCallContent(toolResult) {
664
- if (toolResult.error?.message) {
665
- throw new Error(toolResult.error.message);
666
- }
667
- if (toolResult.returnDisplay) {
668
- if (typeof toolResult.returnDisplay === 'string') {
669
- return {
670
- type: 'content',
671
- content: { type: 'text', text: toolResult.returnDisplay },
672
- };
673
- }
674
- else if ('type' in toolResult.returnDisplay &&
675
- toolResult.returnDisplay.type === 'todo_list') {
676
- // Handle TodoResultDisplay - convert to text representation
677
- const todoText = toolResult.returnDisplay.todos
678
- .map((todo) => {
679
- const statusIcon = {
680
- pending: '○',
681
- in_progress: '◐',
682
- completed: '●',
683
- }[todo.status];
684
- return `${statusIcon} ${todo.content}`;
685
- })
686
- .join('\n');
687
- return {
688
- type: 'content',
689
- content: { type: 'text', text: todoText },
690
- };
691
- }
692
- else if ('fileDiff' in toolResult.returnDisplay) {
693
- // Handle FileDiff
694
- return {
695
- type: 'diff',
696
- path: toolResult.returnDisplay.fileName,
697
- oldText: toolResult.returnDisplay.originalContent,
698
- newText: toolResult.returnDisplay.newContent,
699
- };
700
- }
701
- }
702
- return null;
703
- }
704
- const basicPermissionOptions = [
705
- {
706
- optionId: ToolConfirmationOutcome.ProceedOnce,
707
- name: 'Allow',
708
- kind: 'allow_once',
709
- },
710
- {
711
- optionId: ToolConfirmationOutcome.Cancel,
712
- name: 'Reject',
713
- kind: 'reject_once',
714
- },
715
- ];
716
- function toPermissionOptions(confirmation) {
717
- switch (confirmation.type) {
718
- case 'edit':
719
- return [
720
- {
721
- optionId: ToolConfirmationOutcome.ProceedAlways,
722
- name: 'Allow All Edits',
723
- kind: 'allow_always',
724
- },
725
- ...basicPermissionOptions,
726
- ];
727
- case 'exec':
728
- return [
729
- {
730
- optionId: ToolConfirmationOutcome.ProceedAlways,
731
- name: `Always Allow ${confirmation.rootCommand}`,
732
- kind: 'allow_always',
733
- },
734
- ...basicPermissionOptions,
735
- ];
736
- case 'mcp':
737
- return [
738
- {
739
- optionId: ToolConfirmationOutcome.ProceedAlwaysServer,
740
- name: `Always Allow ${confirmation.serverName}`,
741
- kind: 'allow_always',
742
- },
743
- {
744
- optionId: ToolConfirmationOutcome.ProceedAlwaysTool,
745
- name: `Always Allow ${confirmation.toolName}`,
746
- kind: 'allow_always',
747
- },
748
- ...basicPermissionOptions,
749
- ];
750
- case 'info':
751
- return [
752
- {
753
- optionId: ToolConfirmationOutcome.ProceedAlways,
754
- name: `Always Allow`,
755
- kind: 'allow_always',
756
- },
757
- ...basicPermissionOptions,
758
- ];
759
- default: {
760
- const unreachable = confirmation;
761
- throw new Error(`Unexpected: ${unreachable}`);
762
- }
763
- }
764
- }
765
- //# sourceMappingURL=zedIntegration.js.map