@machina.ai/cell-cli 1.20.2-rc1 → 1.22.5-rc1

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 (406) hide show
  1. package/dist/package.json +3 -3
  2. package/dist/src/commands/extensions/disable.js.map +1 -1
  3. package/dist/src/commands/extensions/disable.test.js.map +1 -1
  4. package/dist/src/commands/extensions/enable.js.map +1 -1
  5. package/dist/src/commands/extensions/enable.test.js.map +1 -1
  6. package/dist/src/commands/extensions/examples/mcp-server/example.test.js +1 -1
  7. package/dist/src/commands/extensions/examples/mcp-server/example.test.js.map +1 -1
  8. package/dist/src/commands/extensions/examples/mcp-server/example.test.ts +4 -12
  9. package/dist/src/commands/extensions/link.test.js.map +1 -1
  10. package/dist/src/commands/extensions/list.test.js +0 -1
  11. package/dist/src/commands/extensions/list.test.js.map +1 -1
  12. package/dist/src/commands/extensions/settings.d.ts +7 -0
  13. package/dist/src/commands/extensions/settings.js +111 -0
  14. package/dist/src/commands/extensions/settings.js.map +1 -0
  15. package/dist/src/commands/extensions/uninstall.js.map +1 -1
  16. package/dist/src/commands/extensions/uninstall.test.js.map +1 -1
  17. package/dist/src/commands/extensions/update.test.js.map +1 -1
  18. package/dist/src/commands/extensions/utils.d.ts +13 -0
  19. package/dist/src/commands/extensions/utils.js +29 -0
  20. package/dist/src/commands/extensions/utils.js.map +1 -0
  21. package/dist/src/commands/extensions.js +2 -0
  22. package/dist/src/commands/extensions.js.map +1 -1
  23. package/dist/src/commands/hooks/migrate.d.ts +11 -0
  24. package/dist/src/commands/hooks/migrate.js +206 -0
  25. package/dist/src/commands/hooks/migrate.js.map +1 -0
  26. package/dist/src/commands/hooks/migrate.test.js +389 -0
  27. package/dist/src/commands/hooks/migrate.test.js.map +1 -0
  28. package/dist/src/commands/hooks.d.ts +7 -0
  29. package/dist/src/commands/hooks.js +22 -0
  30. package/dist/src/commands/hooks.js.map +1 -0
  31. package/dist/src/commands/mcp/add.js +4 -2
  32. package/dist/src/commands/mcp/add.js.map +1 -1
  33. package/dist/src/commands/mcp/add.test.js +23 -1
  34. package/dist/src/commands/mcp/add.test.js.map +1 -1
  35. package/dist/src/config/config.js +12 -5
  36. package/dist/src/config/config.js.map +1 -1
  37. package/dist/src/config/config.test.js +9 -11
  38. package/dist/src/config/config.test.js.map +1 -1
  39. package/dist/src/config/extension-manager.d.ts +1 -0
  40. package/dist/src/config/extension-manager.js +51 -9
  41. package/dist/src/config/extension-manager.js.map +1 -1
  42. package/dist/src/config/extension.test.js +87 -4
  43. package/dist/src/config/extension.test.js.map +1 -1
  44. package/dist/src/config/extensions/consent.d.ts +1 -1
  45. package/dist/src/config/extensions/consent.js +7 -4
  46. package/dist/src/config/extensions/consent.js.map +1 -1
  47. package/dist/src/config/extensions/consent.test.js +17 -7
  48. package/dist/src/config/extensions/consent.test.js.map +1 -1
  49. package/dist/src/config/extensions/extensionSettings.d.ts +6 -0
  50. package/dist/src/config/extensions/extensionSettings.js +87 -17
  51. package/dist/src/config/extensions/extensionSettings.js.map +1 -1
  52. package/dist/src/config/extensions/extensionSettings.test.js +189 -54
  53. package/dist/src/config/extensions/extensionSettings.test.js.map +1 -1
  54. package/dist/src/config/extensions/github.d.ts +4 -1
  55. package/dist/src/config/extensions/github.js +33 -7
  56. package/dist/src/config/extensions/github.js.map +1 -1
  57. package/dist/src/config/extensions/github.test.js +188 -0
  58. package/dist/src/config/extensions/github.test.js.map +1 -1
  59. package/dist/src/config/extensions/github_fetch.js.map +1 -1
  60. package/dist/src/config/settings-validation.d.ts +23 -0
  61. package/dist/src/config/settings-validation.js +249 -0
  62. package/dist/src/config/settings-validation.js.map +1 -0
  63. package/dist/src/{utils/version.d.ts → config/settings-validation.test.d.ts} +1 -1
  64. package/dist/src/config/settings-validation.test.js +322 -0
  65. package/dist/src/config/settings-validation.test.js.map +1 -0
  66. package/dist/src/config/settings.js +30 -2
  67. package/dist/src/config/settings.js.map +1 -1
  68. package/dist/src/config/settings.test.js +27 -4
  69. package/dist/src/config/settings.test.js.map +1 -1
  70. package/dist/src/config/settingsSchema.d.ts +178 -5
  71. package/dist/src/config/settingsSchema.js +216 -4
  72. package/dist/src/config/settingsSchema.js.map +1 -1
  73. package/dist/src/config/settingsSchema.test.js +10 -0
  74. package/dist/src/config/settingsSchema.test.js.map +1 -1
  75. package/dist/src/config/settings_repro.test.d.ts +6 -0
  76. package/dist/src/config/settings_repro.test.js +162 -0
  77. package/dist/src/config/settings_repro.test.js.map +1 -0
  78. package/dist/src/gemini.js +38 -4
  79. package/dist/src/gemini.js.map +1 -1
  80. package/dist/src/gemini.test.js +14 -5
  81. package/dist/src/gemini.test.js.map +1 -1
  82. package/dist/src/gemini_cleanup.test.js +1 -0
  83. package/dist/src/gemini_cleanup.test.js.map +1 -1
  84. package/dist/src/generated/git-commit.d.ts +2 -2
  85. package/dist/src/generated/git-commit.js +2 -2
  86. package/dist/src/nonInteractiveCli.js +6 -9
  87. package/dist/src/nonInteractiveCli.js.map +1 -1
  88. package/dist/src/nonInteractiveCli.test.js +20 -10
  89. package/dist/src/nonInteractiveCli.test.js.map +1 -1
  90. package/dist/src/services/BuiltinCommandLoader.js +2 -0
  91. package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
  92. package/dist/src/services/BuiltinCommandLoader.test.js +4 -0
  93. package/dist/src/services/BuiltinCommandLoader.test.js.map +1 -1
  94. package/dist/src/services/FeedbackService.js.map +1 -1
  95. package/dist/src/services/FileCommandLoader.test.js.map +1 -1
  96. package/dist/src/services/McpPromptLoader.js +1 -0
  97. package/dist/src/services/McpPromptLoader.js.map +1 -1
  98. package/dist/src/services/McpPromptLoader.test.js +40 -0
  99. package/dist/src/services/McpPromptLoader.test.js.map +1 -1
  100. package/dist/src/test-utils/render.js +1 -0
  101. package/dist/src/test-utils/render.js.map +1 -1
  102. package/dist/src/ui/AppContainer.js +59 -34
  103. package/dist/src/ui/AppContainer.js.map +1 -1
  104. package/dist/src/ui/AppContainer.test.js +175 -28
  105. package/dist/src/ui/AppContainer.test.js.map +1 -1
  106. package/dist/src/ui/auth/ApiAuthDialog.js +36 -3
  107. package/dist/src/ui/auth/ApiAuthDialog.js.map +1 -1
  108. package/dist/src/ui/auth/ApiAuthDialog.test.js +26 -2
  109. package/dist/src/ui/auth/ApiAuthDialog.test.js.map +1 -1
  110. package/dist/src/ui/auth/AuthDialog.js +3 -2
  111. package/dist/src/ui/auth/AuthDialog.js.map +1 -1
  112. package/dist/src/ui/auth/AuthDialog.test.js +2 -2
  113. package/dist/src/ui/auth/AuthDialog.test.js.map +1 -1
  114. package/dist/src/ui/auth/useAuth.js +9 -4
  115. package/dist/src/ui/auth/useAuth.js.map +1 -1
  116. package/dist/src/ui/auth/useAuth.test.js +2 -2
  117. package/dist/src/ui/auth/useAuth.test.js.map +1 -1
  118. package/dist/src/ui/commands/aboutCommand.js +2 -3
  119. package/dist/src/ui/commands/aboutCommand.js.map +1 -1
  120. package/dist/src/ui/commands/aboutCommand.test.js +3 -6
  121. package/dist/src/ui/commands/aboutCommand.test.js.map +1 -1
  122. package/dist/src/ui/commands/bugCommand.js +2 -3
  123. package/dist/src/ui/commands/bugCommand.js.map +1 -1
  124. package/dist/src/ui/commands/bugCommand.test.js +3 -3
  125. package/dist/src/ui/commands/bugCommand.test.js.map +1 -1
  126. package/dist/src/ui/commands/chatCommand.js +4 -4
  127. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  128. package/dist/src/ui/commands/chatCommand.test.js +16 -16
  129. package/dist/src/ui/commands/chatCommand.test.js.map +1 -1
  130. package/dist/src/ui/commands/clearCommand.js +18 -1
  131. package/dist/src/ui/commands/clearCommand.js.map +1 -1
  132. package/dist/src/ui/commands/clearCommand.test.js +2 -0
  133. package/dist/src/ui/commands/clearCommand.test.js.map +1 -1
  134. package/dist/src/ui/commands/directoryCommand.test.js +2 -0
  135. package/dist/src/ui/commands/directoryCommand.test.js.map +1 -1
  136. package/dist/src/ui/commands/extensionsCommand.js +1 -0
  137. package/dist/src/ui/commands/extensionsCommand.js.map +1 -1
  138. package/dist/src/ui/commands/hooksCommand.d.ts +7 -0
  139. package/dist/src/ui/commands/hooksCommand.js +207 -0
  140. package/dist/src/ui/commands/hooksCommand.js.map +1 -0
  141. package/dist/src/ui/commands/hooksCommand.test.d.ts +6 -0
  142. package/dist/src/ui/commands/hooksCommand.test.js +396 -0
  143. package/dist/src/ui/commands/hooksCommand.test.js.map +1 -0
  144. package/dist/src/ui/commands/ideCommand.test.js.map +1 -1
  145. package/dist/src/ui/commands/initCommand.js +10 -50
  146. package/dist/src/ui/commands/initCommand.js.map +1 -1
  147. package/dist/src/ui/commands/initCommand.test.js.map +1 -1
  148. package/dist/src/ui/commands/mcpCommand.js +27 -9
  149. package/dist/src/ui/commands/mcpCommand.js.map +1 -1
  150. package/dist/src/ui/commands/mcpCommand.test.js +29 -0
  151. package/dist/src/ui/commands/mcpCommand.test.js.map +1 -1
  152. package/dist/src/ui/commands/modelCommand.js +10 -5
  153. package/dist/src/ui/commands/modelCommand.js.map +1 -1
  154. package/dist/src/ui/commands/modelCommand.test.js +12 -1
  155. package/dist/src/ui/commands/modelCommand.test.js.map +1 -1
  156. package/dist/src/ui/commands/restoreCommand.d.ts +1 -1
  157. package/dist/src/ui/commands/restoreCommand.js +38 -33
  158. package/dist/src/ui/commands/restoreCommand.js.map +1 -1
  159. package/dist/src/ui/commands/restoreCommand.test.js +6 -6
  160. package/dist/src/ui/commands/restoreCommand.test.js.map +1 -1
  161. package/dist/src/ui/commands/setupGithubCommand.test.js.map +1 -1
  162. package/dist/src/ui/commands/statsCommand.js +2 -6
  163. package/dist/src/ui/commands/statsCommand.js.map +1 -1
  164. package/dist/src/ui/commands/statsCommand.test.js +17 -0
  165. package/dist/src/ui/commands/statsCommand.test.js.map +1 -1
  166. package/dist/src/ui/commands/terminalSetupCommand.js +1 -0
  167. package/dist/src/ui/commands/terminalSetupCommand.js.map +1 -1
  168. package/dist/src/ui/commands/types.d.ts +2 -37
  169. package/dist/src/ui/commands/types.js.map +1 -1
  170. package/dist/src/ui/components/AnsiOutput.js +1 -1
  171. package/dist/src/ui/components/AnsiOutput.js.map +1 -1
  172. package/dist/src/ui/components/AppHeader.test.js +8 -0
  173. package/dist/src/ui/components/AppHeader.test.js.map +1 -1
  174. package/dist/src/ui/components/AsciiArt.d.ts +6 -6
  175. package/dist/src/ui/components/AsciiArt.js +6 -6
  176. package/dist/src/ui/components/DetailedMessagesDisplay.js +3 -3
  177. package/dist/src/ui/components/DetailedMessagesDisplay.js.map +1 -1
  178. package/dist/src/ui/components/DetailedMessagesDisplay.test.js +2 -12
  179. package/dist/src/ui/components/DetailedMessagesDisplay.test.js.map +1 -1
  180. package/dist/src/ui/components/DialogManager.js +1 -1
  181. package/dist/src/ui/components/DialogManager.js.map +1 -1
  182. package/dist/src/ui/components/EditorSettingsDialog.test.js +7 -0
  183. package/dist/src/ui/components/EditorSettingsDialog.test.js.map +1 -1
  184. package/dist/src/ui/components/FolderTrustDialog.js +1 -0
  185. package/dist/src/ui/components/FolderTrustDialog.js.map +1 -1
  186. package/dist/src/ui/components/Footer.js +2 -2
  187. package/dist/src/ui/components/Footer.js.map +1 -1
  188. package/dist/src/ui/components/GeminiRespondingSpinner.test.js +3 -0
  189. package/dist/src/ui/components/GeminiRespondingSpinner.test.js.map +1 -1
  190. package/dist/src/ui/components/Header.js +3 -1
  191. package/dist/src/ui/components/Header.js.map +1 -1
  192. package/dist/src/ui/components/Header.test.js +3 -1
  193. package/dist/src/ui/components/Header.test.js.map +1 -1
  194. package/dist/src/ui/components/HistoryItemDisplay.js +2 -1
  195. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  196. package/dist/src/ui/components/IdeTrustChangeDialog.js +1 -0
  197. package/dist/src/ui/components/IdeTrustChangeDialog.js.map +1 -1
  198. package/dist/src/ui/components/InputPrompt.js +23 -2
  199. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  200. package/dist/src/ui/components/InputPrompt.test.js +135 -0
  201. package/dist/src/ui/components/InputPrompt.test.js.map +1 -1
  202. package/dist/src/ui/components/ModelDialog.js +116 -39
  203. package/dist/src/ui/components/ModelDialog.js.map +1 -1
  204. package/dist/src/ui/components/ModelDialog.test.js +157 -148
  205. package/dist/src/ui/components/ModelDialog.test.js.map +1 -1
  206. package/dist/src/ui/components/ModelStatsDisplay.js +3 -3
  207. package/dist/src/ui/components/ModelStatsDisplay.js.map +1 -1
  208. package/dist/src/ui/components/ModelStatsDisplay.test.js +9 -2
  209. package/dist/src/ui/components/ModelStatsDisplay.test.js.map +1 -1
  210. package/dist/src/ui/components/MultiFolderTrustDialog.js +1 -0
  211. package/dist/src/ui/components/MultiFolderTrustDialog.js.map +1 -1
  212. package/dist/src/ui/components/Notifications.js +2 -0
  213. package/dist/src/ui/components/Notifications.js.map +1 -1
  214. package/dist/src/ui/components/PermissionsModifyTrustDialog.js +1 -0
  215. package/dist/src/ui/components/PermissionsModifyTrustDialog.js.map +1 -1
  216. package/dist/src/ui/components/ProQuotaDialog.js +14 -12
  217. package/dist/src/ui/components/ProQuotaDialog.js.map +1 -1
  218. package/dist/src/ui/components/ProQuotaDialog.test.js +20 -21
  219. package/dist/src/ui/components/ProQuotaDialog.test.js.map +1 -1
  220. package/dist/src/ui/components/QuittingDisplay.test.js.map +1 -1
  221. package/dist/src/ui/components/SessionBrowser.js +2 -0
  222. package/dist/src/ui/components/SessionBrowser.js.map +1 -1
  223. package/dist/src/ui/components/SessionSummaryDisplay.test.js +1 -0
  224. package/dist/src/ui/components/SessionSummaryDisplay.test.js.map +1 -1
  225. package/dist/src/ui/components/SettingsDialog.js +135 -66
  226. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  227. package/dist/src/ui/components/SettingsDialog.test.js +98 -10
  228. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
  229. package/dist/src/ui/components/ShellConfirmationDialog.js +4 -4
  230. package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -1
  231. package/dist/src/ui/components/ShellConfirmationDialog.test.js +4 -4
  232. package/dist/src/ui/components/ShellConfirmationDialog.test.js.map +1 -1
  233. package/dist/src/ui/components/StatsDisplay.d.ts +1 -1
  234. package/dist/src/ui/components/StatsDisplay.js +66 -21
  235. package/dist/src/ui/components/StatsDisplay.js.map +1 -1
  236. package/dist/src/ui/components/StatsDisplay.test.js +44 -7
  237. package/dist/src/ui/components/StatsDisplay.test.js.map +1 -1
  238. package/dist/src/ui/components/ToolStatsDisplay.js.map +1 -1
  239. package/dist/src/ui/components/messages/Todo.js.map +1 -1
  240. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +54 -19
  241. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  242. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +40 -4
  243. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -1
  244. package/dist/src/ui/components/messages/ToolGroupMessage.test.js +45 -1
  245. package/dist/src/ui/components/messages/ToolGroupMessage.test.js.map +1 -1
  246. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.d.ts +1 -1
  247. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.js +1 -1
  248. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.js.map +1 -1
  249. package/dist/src/ui/components/shared/VirtualizedList.js.map +1 -1
  250. package/dist/src/ui/components/shared/text-buffer.js +46 -39
  251. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  252. package/dist/src/ui/components/shared/text-buffer.test.js +100 -0
  253. package/dist/src/ui/components/shared/text-buffer.test.js.map +1 -1
  254. package/dist/src/ui/components/views/HooksList.d.ts +22 -0
  255. package/dist/src/ui/components/views/HooksList.js +23 -0
  256. package/dist/src/ui/components/views/HooksList.js.map +1 -0
  257. package/dist/src/ui/components/views/McpStatus.d.ts +2 -1
  258. package/dist/src/ui/components/views/McpStatus.js +13 -3
  259. package/dist/src/ui/components/views/McpStatus.js.map +1 -1
  260. package/dist/src/ui/components/views/McpStatus.test.js +13 -0
  261. package/dist/src/ui/components/views/McpStatus.test.js.map +1 -1
  262. package/dist/src/ui/constants/tips.js +0 -1
  263. package/dist/src/ui/constants/tips.js.map +1 -1
  264. package/dist/src/ui/contexts/KeypressContext.test.js +6 -0
  265. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
  266. package/dist/src/ui/contexts/SessionContext.d.ts +1 -0
  267. package/dist/src/ui/contexts/SessionContext.js +2 -1
  268. package/dist/src/ui/contexts/SessionContext.js.map +1 -1
  269. package/dist/src/ui/contexts/SessionContext.test.js +3 -0
  270. package/dist/src/ui/contexts/SessionContext.test.js.map +1 -1
  271. package/dist/src/ui/hooks/atCommandProcessor.d.ts +7 -6
  272. package/dist/src/ui/hooks/atCommandProcessor.js +141 -28
  273. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  274. package/dist/src/ui/hooks/atCommandProcessor.test.js +124 -32
  275. package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -1
  276. package/dist/src/ui/hooks/shellCommandProcessor.js +2 -0
  277. package/dist/src/ui/hooks/shellCommandProcessor.js.map +1 -1
  278. package/dist/src/ui/hooks/slashCommandProcessor.js +3 -0
  279. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  280. package/dist/src/ui/hooks/useAtCompletion.js +52 -2
  281. package/dist/src/ui/hooks/useAtCompletion.js.map +1 -1
  282. package/dist/src/ui/hooks/useAtCompletion.test.js +21 -0
  283. package/dist/src/ui/hooks/useAtCompletion.test.js.map +1 -1
  284. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js +1 -1
  285. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js.map +1 -1
  286. package/dist/src/ui/hooks/useCommandCompletion.d.ts +2 -0
  287. package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -1
  288. package/dist/src/ui/hooks/useExtensionUpdates.js +2 -0
  289. package/dist/src/ui/hooks/useExtensionUpdates.js.map +1 -1
  290. package/dist/src/ui/hooks/useGeminiStream.js +19 -56
  291. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  292. package/dist/src/ui/hooks/useGeminiStream.test.js +4 -0
  293. package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
  294. package/dist/src/ui/hooks/useGitBranchName.js +3 -0
  295. package/dist/src/ui/hooks/useGitBranchName.js.map +1 -1
  296. package/dist/src/ui/hooks/useIdeTrustListener.js +2 -0
  297. package/dist/src/ui/hooks/useIdeTrustListener.js.map +1 -1
  298. package/dist/src/ui/hooks/useIncludeDirsTrust.js +2 -0
  299. package/dist/src/ui/hooks/useIncludeDirsTrust.js.map +1 -1
  300. package/dist/src/ui/hooks/useIncludeDirsTrust.test.js.map +1 -1
  301. package/dist/src/ui/hooks/useLoadingIndicator.test.js +1 -0
  302. package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -1
  303. package/dist/src/ui/hooks/usePrivacySettings.js +5 -16
  304. package/dist/src/ui/hooks/usePrivacySettings.js.map +1 -1
  305. package/dist/src/ui/hooks/usePrivacySettings.test.js +3 -9
  306. package/dist/src/ui/hooks/usePrivacySettings.test.js.map +1 -1
  307. package/dist/src/ui/hooks/usePromptCompletion.js +1 -0
  308. package/dist/src/ui/hooks/usePromptCompletion.js.map +1 -1
  309. package/dist/src/ui/hooks/useQuotaAndFallback.js +20 -21
  310. package/dist/src/ui/hooks/useQuotaAndFallback.js.map +1 -1
  311. package/dist/src/ui/hooks/useQuotaAndFallback.test.js +7 -7
  312. package/dist/src/ui/hooks/useQuotaAndFallback.test.js.map +1 -1
  313. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  314. package/dist/src/ui/hooks/useSelectionList.js.map +1 -1
  315. package/dist/src/ui/hooks/useSelectionList.test.js +2 -0
  316. package/dist/src/ui/hooks/useSelectionList.test.js.map +1 -1
  317. package/dist/src/ui/hooks/useSessionResume.js +1 -0
  318. package/dist/src/ui/hooks/useSessionResume.js.map +1 -1
  319. package/dist/src/ui/hooks/useShellHistory.js +2 -0
  320. package/dist/src/ui/hooks/useShellHistory.js.map +1 -1
  321. package/dist/src/ui/hooks/useSlashCompletion.d.ts +2 -0
  322. package/dist/src/ui/hooks/useSlashCompletion.js +3 -0
  323. package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -1
  324. package/dist/src/ui/hooks/useSnowfall.d.ts +6 -0
  325. package/dist/src/ui/hooks/useSnowfall.js +126 -0
  326. package/dist/src/ui/hooks/useSnowfall.js.map +1 -0
  327. package/dist/src/ui/hooks/useSnowfall.test.d.ts +6 -0
  328. package/dist/src/ui/hooks/useSnowfall.test.js +88 -0
  329. package/dist/src/ui/hooks/useSnowfall.test.js.map +1 -0
  330. package/dist/src/ui/hooks/useToolScheduler.test.js +14 -4
  331. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  332. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js +1 -0
  333. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js.map +1 -1
  334. package/dist/src/ui/types.d.ts +26 -2
  335. package/dist/src/ui/types.js +1 -0
  336. package/dist/src/ui/types.js.map +1 -1
  337. package/dist/src/ui/utils/clipboardUtils.d.ts +25 -0
  338. package/dist/src/ui/utils/clipboardUtils.js +98 -12
  339. package/dist/src/ui/utils/clipboardUtils.js.map +1 -1
  340. package/dist/src/ui/utils/clipboardUtils.test.js +123 -1
  341. package/dist/src/ui/utils/clipboardUtils.test.js.map +1 -1
  342. package/dist/src/ui/utils/commandUtils.d.ts +1 -1
  343. package/dist/src/ui/utils/commandUtils.js +108 -1
  344. package/dist/src/ui/utils/commandUtils.js.map +1 -1
  345. package/dist/src/ui/utils/commandUtils.test.js +163 -6
  346. package/dist/src/ui/utils/commandUtils.test.js.map +1 -1
  347. package/dist/src/ui/utils/computeStats.js +2 -0
  348. package/dist/src/ui/utils/computeStats.js.map +1 -1
  349. package/dist/src/ui/utils/computeStats.test.js +9 -0
  350. package/dist/src/ui/utils/computeStats.test.js.map +1 -1
  351. package/dist/src/ui/utils/highlight.js +5 -1
  352. package/dist/src/ui/utils/highlight.js.map +1 -1
  353. package/dist/src/ui/utils/terminalSetup.test.js +5 -0
  354. package/dist/src/ui/utils/terminalSetup.test.js.map +1 -1
  355. package/dist/src/utils/cleanup.d.ts +6 -0
  356. package/dist/src/utils/cleanup.js +19 -1
  357. package/dist/src/utils/cleanup.js.map +1 -1
  358. package/dist/src/utils/deepMerge.js +7 -2
  359. package/dist/src/utils/deepMerge.js.map +1 -1
  360. package/dist/src/utils/deepMerge.test.js +58 -0
  361. package/dist/src/utils/deepMerge.test.js.map +1 -1
  362. package/dist/src/utils/envVarResolver.js.map +1 -1
  363. package/dist/src/utils/envVarResolver.test.js.map +1 -1
  364. package/dist/src/utils/errors.js +4 -4
  365. package/dist/src/utils/errors.js.map +1 -1
  366. package/dist/src/utils/errors.test.js +20 -2
  367. package/dist/src/utils/errors.test.js.map +1 -1
  368. package/dist/src/utils/handleAutoUpdate.d.ts +1 -1
  369. package/dist/src/utils/handleAutoUpdate.js +7 -10
  370. package/dist/src/utils/handleAutoUpdate.js.map +1 -1
  371. package/dist/src/utils/handleAutoUpdate.test.js +12 -10
  372. package/dist/src/utils/handleAutoUpdate.test.js.map +1 -1
  373. package/dist/src/utils/installationInfo.js +1 -1
  374. package/dist/src/utils/installationInfo.js.map +1 -1
  375. package/dist/src/utils/installationInfo.test.js +1 -1
  376. package/dist/src/utils/installationInfo.test.js.map +1 -1
  377. package/dist/src/utils/sandboxUtils.js +3 -2
  378. package/dist/src/utils/sandboxUtils.js.map +1 -1
  379. package/dist/src/utils/sandboxUtils.test.js +3 -0
  380. package/dist/src/utils/sandboxUtils.test.js.map +1 -1
  381. package/dist/src/utils/sessionUtils.d.ts +2 -0
  382. package/dist/src/utils/sessionUtils.js +5 -1
  383. package/dist/src/utils/sessionUtils.js.map +1 -1
  384. package/dist/src/utils/sessions.js +6 -4
  385. package/dist/src/utils/sessions.js.map +1 -1
  386. package/dist/src/utils/sessions.test.js +26 -0
  387. package/dist/src/utils/sessions.test.js.map +1 -1
  388. package/dist/src/validateNonInterActiveAuth.js.map +1 -1
  389. package/dist/src/zed-integration/acp.test.js +8 -16
  390. package/dist/src/zed-integration/acp.test.js.map +1 -1
  391. package/dist/src/zed-integration/connection.js +2 -0
  392. package/dist/src/zed-integration/connection.js.map +1 -1
  393. package/dist/src/zed-integration/fileSystemService.d.ts +0 -1
  394. package/dist/src/zed-integration/fileSystemService.js +0 -3
  395. package/dist/src/zed-integration/fileSystemService.js.map +1 -1
  396. package/dist/src/zed-integration/fileSystemService.test.js +0 -8
  397. package/dist/src/zed-integration/fileSystemService.test.js.map +1 -1
  398. package/dist/src/zed-integration/zedIntegration.js +13 -4
  399. package/dist/src/zed-integration/zedIntegration.js.map +1 -1
  400. package/dist/tsconfig.tsbuildinfo +1 -1
  401. package/package.json +3 -3
  402. package/dist/src/utils/version.js +0 -15
  403. package/dist/src/utils/version.js.map +0 -1
  404. package/dist/src/utils/version.test.js +0 -39
  405. package/dist/src/utils/version.test.js.map +0 -1
  406. /package/dist/src/{utils/version.test.d.ts → commands/hooks/migrate.test.d.ts} +0 -0
@@ -3,7 +3,7 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import type { MCPServerConfig, BugCommandSettings, TelemetrySettings, AuthType, HookDefinition, HookEventName } from '@google/gemini-cli-core';
6
+ import type { MCPServerConfig, BugCommandSettings, TelemetrySettings, AuthType } from '@google/gemini-cli-core';
7
7
  import type { CustomTheme } from '../ui/themes/theme.js';
8
8
  import type { SessionRetentionSettings } from './settings.js';
9
9
  export type SettingsType = 'boolean' | 'string' | 'number' | 'array' | 'object' | 'enum';
@@ -29,6 +29,11 @@ export interface SettingCollectionDefinition {
29
29
  * For example, a JSON schema generator can use this to point to a shared definition.
30
30
  */
31
31
  ref?: string;
32
+ /**
33
+ * Optional merge strategy for dynamically added properties.
34
+ * Used when this collection definition is referenced via additionalProperties.
35
+ */
36
+ mergeStrategy?: MergeStrategy;
32
37
  }
33
38
  export declare enum MergeStrategy {
34
39
  REPLACE = "replace",
@@ -667,6 +672,15 @@ declare const SETTINGS_SCHEMA: {
667
672
  readonly description: "Custom named presets for model configs. These are merged with (and override) the built-in aliases.";
668
673
  readonly showInDialog: false;
669
674
  };
675
+ readonly customOverrides: {
676
+ readonly type: "array";
677
+ readonly label: "Custom Model Config Overrides";
678
+ readonly category: "Model";
679
+ readonly requiresRestart: false;
680
+ readonly default: [];
681
+ readonly description: "Custom model config overrides. These are merged with (and added to) the built-in overrides.";
682
+ readonly showInDialog: false;
683
+ };
670
684
  readonly overrides: {
671
685
  readonly type: "array";
672
686
  readonly label: "Model Config Overrides";
@@ -957,7 +971,7 @@ declare const SETTINGS_SCHEMA: {
957
971
  readonly label: "Enable Message Bus Integration";
958
972
  readonly category: "Tools";
959
973
  readonly requiresRestart: true;
960
- readonly default: false;
974
+ readonly default: true;
961
975
  readonly description: string;
962
976
  readonly showInDialog: true;
963
977
  };
@@ -1052,6 +1066,15 @@ declare const SETTINGS_SCHEMA: {
1052
1066
  readonly description: "Disable YOLO mode, even if enabled by a flag.";
1053
1067
  readonly showInDialog: true;
1054
1068
  };
1069
+ readonly enablePermanentToolApproval: {
1070
+ readonly type: "boolean";
1071
+ readonly label: "Allow Permanent Tool Approval";
1072
+ readonly category: "Security";
1073
+ readonly requiresRestart: false;
1074
+ readonly default: false;
1075
+ readonly description: "Enable the \"Allow for all future sessions\" option in tool confirmation dialogs.";
1076
+ readonly showInDialog: true;
1077
+ };
1055
1078
  readonly blockGitExtensions: {
1056
1079
  readonly type: "boolean";
1057
1080
  readonly label: "Blocks extensions from Git";
@@ -1263,6 +1286,15 @@ declare const SETTINGS_SCHEMA: {
1263
1286
  readonly description: "Setting to enable experimental features";
1264
1287
  readonly showInDialog: false;
1265
1288
  readonly properties: {
1289
+ readonly enableAgents: {
1290
+ readonly type: "boolean";
1291
+ readonly label: "Enable Agents";
1292
+ readonly category: "Experimental";
1293
+ readonly requiresRestart: true;
1294
+ readonly default: false;
1295
+ readonly description: "Enable local and remote subagents.";
1296
+ readonly showInDialog: false;
1297
+ };
1266
1298
  readonly extensionManagement: {
1267
1299
  readonly type: "boolean";
1268
1300
  readonly label: "Extension Management";
@@ -1349,7 +1381,7 @@ declare const SETTINGS_SCHEMA: {
1349
1381
  readonly label: "Model";
1350
1382
  readonly category: "Experimental";
1351
1383
  readonly requiresRestart: true;
1352
- readonly default: "gemini-2.5-pro";
1384
+ readonly default: "auto";
1353
1385
  readonly description: "The model to use for the Codebase Investigator agent.";
1354
1386
  readonly showInDialog: false;
1355
1387
  };
@@ -1399,10 +1431,151 @@ declare const SETTINGS_SCHEMA: {
1399
1431
  readonly label: "Hooks";
1400
1432
  readonly category: "Advanced";
1401
1433
  readonly requiresRestart: false;
1402
- readonly default: { [K in HookEventName]?: HookDefinition[]; };
1434
+ readonly default: {};
1403
1435
  readonly description: "Hook configurations for intercepting and customizing agent behavior.";
1404
1436
  readonly showInDialog: false;
1405
- readonly mergeStrategy: MergeStrategy.SHALLOW_MERGE;
1437
+ readonly properties: {
1438
+ readonly disabled: {
1439
+ readonly type: "array";
1440
+ readonly label: "Disabled Hooks";
1441
+ readonly category: "Advanced";
1442
+ readonly requiresRestart: false;
1443
+ readonly default: string[];
1444
+ readonly description: "List of hook names (commands) that should be disabled. Hooks in this list will not execute even if configured.";
1445
+ readonly showInDialog: false;
1446
+ readonly items: {
1447
+ readonly type: "string";
1448
+ readonly description: "Hook command name";
1449
+ };
1450
+ readonly mergeStrategy: MergeStrategy.UNION;
1451
+ };
1452
+ readonly BeforeTool: {
1453
+ readonly type: "array";
1454
+ readonly label: "Before Tool Hooks";
1455
+ readonly category: "Advanced";
1456
+ readonly requiresRestart: false;
1457
+ readonly default: [];
1458
+ readonly description: "Hooks that execute before tool execution. Can intercept, validate, or modify tool calls.";
1459
+ readonly showInDialog: false;
1460
+ readonly ref: "HookDefinitionArray";
1461
+ readonly mergeStrategy: MergeStrategy.CONCAT;
1462
+ };
1463
+ readonly AfterTool: {
1464
+ readonly type: "array";
1465
+ readonly label: "After Tool Hooks";
1466
+ readonly category: "Advanced";
1467
+ readonly requiresRestart: false;
1468
+ readonly default: [];
1469
+ readonly description: "Hooks that execute after tool execution. Can process results, log outputs, or trigger follow-up actions.";
1470
+ readonly showInDialog: false;
1471
+ readonly ref: "HookDefinitionArray";
1472
+ readonly mergeStrategy: MergeStrategy.CONCAT;
1473
+ };
1474
+ readonly BeforeAgent: {
1475
+ readonly type: "array";
1476
+ readonly label: "Before Agent Hooks";
1477
+ readonly category: "Advanced";
1478
+ readonly requiresRestart: false;
1479
+ readonly default: [];
1480
+ readonly description: "Hooks that execute before agent loop starts. Can set up context or initialize resources.";
1481
+ readonly showInDialog: false;
1482
+ readonly ref: "HookDefinitionArray";
1483
+ readonly mergeStrategy: MergeStrategy.CONCAT;
1484
+ };
1485
+ readonly AfterAgent: {
1486
+ readonly type: "array";
1487
+ readonly label: "After Agent Hooks";
1488
+ readonly category: "Advanced";
1489
+ readonly requiresRestart: false;
1490
+ readonly default: [];
1491
+ readonly description: "Hooks that execute after agent loop completes. Can perform cleanup or summarize results.";
1492
+ readonly showInDialog: false;
1493
+ readonly ref: "HookDefinitionArray";
1494
+ readonly mergeStrategy: MergeStrategy.CONCAT;
1495
+ };
1496
+ readonly Notification: {
1497
+ readonly type: "array";
1498
+ readonly label: "Notification Hooks";
1499
+ readonly category: "Advanced";
1500
+ readonly requiresRestart: false;
1501
+ readonly default: [];
1502
+ readonly description: "Hooks that execute on notification events (errors, warnings, info). Can log or alert on specific conditions.";
1503
+ readonly showInDialog: false;
1504
+ readonly ref: "HookDefinitionArray";
1505
+ readonly mergeStrategy: MergeStrategy.CONCAT;
1506
+ };
1507
+ readonly SessionStart: {
1508
+ readonly type: "array";
1509
+ readonly label: "Session Start Hooks";
1510
+ readonly category: "Advanced";
1511
+ readonly requiresRestart: false;
1512
+ readonly default: [];
1513
+ readonly description: "Hooks that execute when a session starts. Can initialize session-specific resources or state.";
1514
+ readonly showInDialog: false;
1515
+ readonly ref: "HookDefinitionArray";
1516
+ readonly mergeStrategy: MergeStrategy.CONCAT;
1517
+ };
1518
+ readonly SessionEnd: {
1519
+ readonly type: "array";
1520
+ readonly label: "Session End Hooks";
1521
+ readonly category: "Advanced";
1522
+ readonly requiresRestart: false;
1523
+ readonly default: [];
1524
+ readonly description: "Hooks that execute when a session ends. Can perform cleanup or persist session data.";
1525
+ readonly showInDialog: false;
1526
+ readonly ref: "HookDefinitionArray";
1527
+ readonly mergeStrategy: MergeStrategy.CONCAT;
1528
+ };
1529
+ readonly PreCompress: {
1530
+ readonly type: "array";
1531
+ readonly label: "Pre-Compress Hooks";
1532
+ readonly category: "Advanced";
1533
+ readonly requiresRestart: false;
1534
+ readonly default: [];
1535
+ readonly description: "Hooks that execute before chat history compression. Can back up or analyze conversation before compression.";
1536
+ readonly showInDialog: false;
1537
+ readonly ref: "HookDefinitionArray";
1538
+ readonly mergeStrategy: MergeStrategy.CONCAT;
1539
+ };
1540
+ readonly BeforeModel: {
1541
+ readonly type: "array";
1542
+ readonly label: "Before Model Hooks";
1543
+ readonly category: "Advanced";
1544
+ readonly requiresRestart: false;
1545
+ readonly default: [];
1546
+ readonly description: "Hooks that execute before LLM requests. Can modify prompts, inject context, or control model parameters.";
1547
+ readonly showInDialog: false;
1548
+ readonly ref: "HookDefinitionArray";
1549
+ readonly mergeStrategy: MergeStrategy.CONCAT;
1550
+ };
1551
+ readonly AfterModel: {
1552
+ readonly type: "array";
1553
+ readonly label: "After Model Hooks";
1554
+ readonly category: "Advanced";
1555
+ readonly requiresRestart: false;
1556
+ readonly default: [];
1557
+ readonly description: "Hooks that execute after LLM responses. Can process outputs, extract information, or log interactions.";
1558
+ readonly showInDialog: false;
1559
+ readonly ref: "HookDefinitionArray";
1560
+ readonly mergeStrategy: MergeStrategy.CONCAT;
1561
+ };
1562
+ readonly BeforeToolSelection: {
1563
+ readonly type: "array";
1564
+ readonly label: "Before Tool Selection Hooks";
1565
+ readonly category: "Advanced";
1566
+ readonly requiresRestart: false;
1567
+ readonly default: [];
1568
+ readonly description: "Hooks that execute before tool selection. Can filter or prioritize available tools dynamically.";
1569
+ readonly showInDialog: false;
1570
+ readonly ref: "HookDefinitionArray";
1571
+ readonly mergeStrategy: MergeStrategy.CONCAT;
1572
+ };
1573
+ };
1574
+ readonly additionalProperties: {
1575
+ readonly type: "array";
1576
+ readonly description: "Custom hook event arrays that contain hook definitions for user-defined events";
1577
+ readonly mergeStrategy: MergeStrategy.CONCAT;
1578
+ };
1406
1579
  };
1407
1580
  };
1408
1581
  export type SettingsSchemaType = typeof SETTINGS_SCHEMA;
@@ -3,7 +3,7 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { DEFAULT_TRUNCATE_TOOL_OUTPUT_LINES, DEFAULT_TRUNCATE_TOOL_OUTPUT_THRESHOLD, DEFAULT_GEMINI_MODEL, DEFAULT_MODEL_CONFIGS, } from '@google/gemini-cli-core';
6
+ import { DEFAULT_TRUNCATE_TOOL_OUTPUT_LINES, DEFAULT_TRUNCATE_TOOL_OUTPUT_THRESHOLD, DEFAULT_MODEL_CONFIGS, GEMINI_MODEL_ALIAS_AUTO, } from '@google/gemini-cli-core';
7
7
  import { DEFAULT_MIN_RETENTION } from '../utils/sessionCleanup.js';
8
8
  /**
9
9
  * Setting datatypes that "toggle" through a fixed list of options
@@ -634,6 +634,15 @@ const SETTINGS_SCHEMA = {
634
634
  description: 'Custom named presets for model configs. These are merged with (and override) the built-in aliases.',
635
635
  showInDialog: false,
636
636
  },
637
+ customOverrides: {
638
+ type: 'array',
639
+ label: 'Custom Model Config Overrides',
640
+ category: 'Model',
641
+ requiresRestart: false,
642
+ default: [],
643
+ description: 'Custom model config overrides. These are merged with (and added to) the built-in overrides.',
644
+ showInDialog: false,
645
+ },
637
646
  overrides: {
638
647
  type: 'array',
639
648
  label: 'Model Config Overrides',
@@ -942,7 +951,7 @@ const SETTINGS_SCHEMA = {
942
951
  label: 'Enable Message Bus Integration',
943
952
  category: 'Tools',
944
953
  requiresRestart: true,
945
- default: false,
954
+ default: true,
946
955
  description: oneLine `
947
956
  Enable policy-based tool confirmation via message bus integration.
948
957
  When enabled, tools automatically respect policy engine decisions (ALLOW/DENY/ASK_USER) without requiring individual tool implementations.
@@ -1036,6 +1045,15 @@ const SETTINGS_SCHEMA = {
1036
1045
  description: 'Disable YOLO mode, even if enabled by a flag.',
1037
1046
  showInDialog: true,
1038
1047
  },
1048
+ enablePermanentToolApproval: {
1049
+ type: 'boolean',
1050
+ label: 'Allow Permanent Tool Approval',
1051
+ category: 'Security',
1052
+ requiresRestart: false,
1053
+ default: false,
1054
+ description: 'Enable the "Allow for all future sessions" option in tool confirmation dialogs.',
1055
+ showInDialog: true,
1056
+ },
1039
1057
  blockGitExtensions: {
1040
1058
  type: 'boolean',
1041
1059
  label: 'Blocks extensions from Git',
@@ -1246,6 +1264,15 @@ const SETTINGS_SCHEMA = {
1246
1264
  description: 'Setting to enable experimental features',
1247
1265
  showInDialog: false,
1248
1266
  properties: {
1267
+ enableAgents: {
1268
+ type: 'boolean',
1269
+ label: 'Enable Agents',
1270
+ category: 'Experimental',
1271
+ requiresRestart: true,
1272
+ default: false,
1273
+ description: 'Enable local and remote subagents.',
1274
+ showInDialog: false,
1275
+ },
1249
1276
  extensionManagement: {
1250
1277
  type: 'boolean',
1251
1278
  label: 'Extension Management',
@@ -1332,7 +1359,7 @@ const SETTINGS_SCHEMA = {
1332
1359
  label: 'Model',
1333
1360
  category: 'Experimental',
1334
1361
  requiresRestart: true,
1335
- default: DEFAULT_GEMINI_MODEL,
1362
+ default: GEMINI_MODEL_ALIAS_AUTO,
1336
1363
  description: 'The model to use for the Codebase Investigator agent.',
1337
1364
  showInDialog: false,
1338
1365
  },
@@ -1381,7 +1408,148 @@ const SETTINGS_SCHEMA = {
1381
1408
  default: {},
1382
1409
  description: 'Hook configurations for intercepting and customizing agent behavior.',
1383
1410
  showInDialog: false,
1384
- mergeStrategy: MergeStrategy.SHALLOW_MERGE,
1411
+ properties: {
1412
+ disabled: {
1413
+ type: 'array',
1414
+ label: 'Disabled Hooks',
1415
+ category: 'Advanced',
1416
+ requiresRestart: false,
1417
+ default: [],
1418
+ description: 'List of hook names (commands) that should be disabled. Hooks in this list will not execute even if configured.',
1419
+ showInDialog: false,
1420
+ items: {
1421
+ type: 'string',
1422
+ description: 'Hook command name',
1423
+ },
1424
+ mergeStrategy: MergeStrategy.UNION,
1425
+ },
1426
+ BeforeTool: {
1427
+ type: 'array',
1428
+ label: 'Before Tool Hooks',
1429
+ category: 'Advanced',
1430
+ requiresRestart: false,
1431
+ default: [],
1432
+ description: 'Hooks that execute before tool execution. Can intercept, validate, or modify tool calls.',
1433
+ showInDialog: false,
1434
+ ref: 'HookDefinitionArray',
1435
+ mergeStrategy: MergeStrategy.CONCAT,
1436
+ },
1437
+ AfterTool: {
1438
+ type: 'array',
1439
+ label: 'After Tool Hooks',
1440
+ category: 'Advanced',
1441
+ requiresRestart: false,
1442
+ default: [],
1443
+ description: 'Hooks that execute after tool execution. Can process results, log outputs, or trigger follow-up actions.',
1444
+ showInDialog: false,
1445
+ ref: 'HookDefinitionArray',
1446
+ mergeStrategy: MergeStrategy.CONCAT,
1447
+ },
1448
+ BeforeAgent: {
1449
+ type: 'array',
1450
+ label: 'Before Agent Hooks',
1451
+ category: 'Advanced',
1452
+ requiresRestart: false,
1453
+ default: [],
1454
+ description: 'Hooks that execute before agent loop starts. Can set up context or initialize resources.',
1455
+ showInDialog: false,
1456
+ ref: 'HookDefinitionArray',
1457
+ mergeStrategy: MergeStrategy.CONCAT,
1458
+ },
1459
+ AfterAgent: {
1460
+ type: 'array',
1461
+ label: 'After Agent Hooks',
1462
+ category: 'Advanced',
1463
+ requiresRestart: false,
1464
+ default: [],
1465
+ description: 'Hooks that execute after agent loop completes. Can perform cleanup or summarize results.',
1466
+ showInDialog: false,
1467
+ ref: 'HookDefinitionArray',
1468
+ mergeStrategy: MergeStrategy.CONCAT,
1469
+ },
1470
+ Notification: {
1471
+ type: 'array',
1472
+ label: 'Notification Hooks',
1473
+ category: 'Advanced',
1474
+ requiresRestart: false,
1475
+ default: [],
1476
+ description: 'Hooks that execute on notification events (errors, warnings, info). Can log or alert on specific conditions.',
1477
+ showInDialog: false,
1478
+ ref: 'HookDefinitionArray',
1479
+ mergeStrategy: MergeStrategy.CONCAT,
1480
+ },
1481
+ SessionStart: {
1482
+ type: 'array',
1483
+ label: 'Session Start Hooks',
1484
+ category: 'Advanced',
1485
+ requiresRestart: false,
1486
+ default: [],
1487
+ description: 'Hooks that execute when a session starts. Can initialize session-specific resources or state.',
1488
+ showInDialog: false,
1489
+ ref: 'HookDefinitionArray',
1490
+ mergeStrategy: MergeStrategy.CONCAT,
1491
+ },
1492
+ SessionEnd: {
1493
+ type: 'array',
1494
+ label: 'Session End Hooks',
1495
+ category: 'Advanced',
1496
+ requiresRestart: false,
1497
+ default: [],
1498
+ description: 'Hooks that execute when a session ends. Can perform cleanup or persist session data.',
1499
+ showInDialog: false,
1500
+ ref: 'HookDefinitionArray',
1501
+ mergeStrategy: MergeStrategy.CONCAT,
1502
+ },
1503
+ PreCompress: {
1504
+ type: 'array',
1505
+ label: 'Pre-Compress Hooks',
1506
+ category: 'Advanced',
1507
+ requiresRestart: false,
1508
+ default: [],
1509
+ description: 'Hooks that execute before chat history compression. Can back up or analyze conversation before compression.',
1510
+ showInDialog: false,
1511
+ ref: 'HookDefinitionArray',
1512
+ mergeStrategy: MergeStrategy.CONCAT,
1513
+ },
1514
+ BeforeModel: {
1515
+ type: 'array',
1516
+ label: 'Before Model Hooks',
1517
+ category: 'Advanced',
1518
+ requiresRestart: false,
1519
+ default: [],
1520
+ description: 'Hooks that execute before LLM requests. Can modify prompts, inject context, or control model parameters.',
1521
+ showInDialog: false,
1522
+ ref: 'HookDefinitionArray',
1523
+ mergeStrategy: MergeStrategy.CONCAT,
1524
+ },
1525
+ AfterModel: {
1526
+ type: 'array',
1527
+ label: 'After Model Hooks',
1528
+ category: 'Advanced',
1529
+ requiresRestart: false,
1530
+ default: [],
1531
+ description: 'Hooks that execute after LLM responses. Can process outputs, extract information, or log interactions.',
1532
+ showInDialog: false,
1533
+ ref: 'HookDefinitionArray',
1534
+ mergeStrategy: MergeStrategy.CONCAT,
1535
+ },
1536
+ BeforeToolSelection: {
1537
+ type: 'array',
1538
+ label: 'Before Tool Selection Hooks',
1539
+ category: 'Advanced',
1540
+ requiresRestart: false,
1541
+ default: [],
1542
+ description: 'Hooks that execute before tool selection. Can filter or prioritize available tools dynamically.',
1543
+ showInDialog: false,
1544
+ ref: 'HookDefinitionArray',
1545
+ mergeStrategy: MergeStrategy.CONCAT,
1546
+ },
1547
+ },
1548
+ additionalProperties: {
1549
+ type: 'array',
1550
+ description: 'Custom hook event arrays that contain hook definitions for user-defined events',
1551
+ mergeStrategy: MergeStrategy.CONCAT,
1552
+ },
1385
1553
  },
1386
1554
  };
1387
1555
  export const SETTINGS_SCHEMA_DEFINITIONS = {
@@ -1433,6 +1601,10 @@ export const SETTINGS_SCHEMA_DEFINITIONS = {
1433
1601
  type: 'boolean',
1434
1602
  description: 'Marks the server as trusted. Trusted servers may gain additional capabilities.',
1435
1603
  },
1604
+ managed: {
1605
+ type: 'boolean',
1606
+ description: 'Whether the MCP server is managed by the Cell CLI.',
1607
+ },
1436
1608
  description: {
1437
1609
  type: 'string',
1438
1610
  description: 'Human-readable description of the server.',
@@ -1510,6 +1682,10 @@ export const SETTINGS_SCHEMA_DEFINITIONS = {
1510
1682
  type: 'boolean',
1511
1683
  description: 'Whether to forward telemetry to an OTLP collector.',
1512
1684
  },
1685
+ useCliAuth: {
1686
+ type: 'boolean',
1687
+ description: 'Whether to use CLI authentication for telemetry (only for in-process exporters).',
1688
+ },
1513
1689
  },
1514
1690
  },
1515
1691
  BugCommandSettings: {
@@ -1632,6 +1808,42 @@ export const SETTINGS_SCHEMA_DEFINITIONS = {
1632
1808
  description: 'Accepts either a boolean flag or a string command name.',
1633
1809
  anyOf: [{ type: 'boolean' }, { type: 'string' }],
1634
1810
  },
1811
+ HookDefinitionArray: {
1812
+ type: 'array',
1813
+ description: 'Array of hook definition objects for a specific event.',
1814
+ items: {
1815
+ type: 'object',
1816
+ description: 'Hook definition specifying matcher pattern and hook configurations.',
1817
+ properties: {
1818
+ matcher: {
1819
+ type: 'string',
1820
+ description: 'Pattern to match against the event context (tool name, notification type, etc.). Supports exact match, regex (/pattern/), and wildcards (*).',
1821
+ },
1822
+ hooks: {
1823
+ type: 'array',
1824
+ description: 'Hooks to execute when the matcher matches.',
1825
+ items: {
1826
+ type: 'object',
1827
+ description: 'Individual hook configuration.',
1828
+ properties: {
1829
+ type: {
1830
+ type: 'string',
1831
+ description: 'Type of hook (currently only "command" supported).',
1832
+ },
1833
+ command: {
1834
+ type: 'string',
1835
+ description: 'Shell command to execute. Receives JSON input via stdin and returns JSON output via stdout.',
1836
+ },
1837
+ timeout: {
1838
+ type: 'number',
1839
+ description: 'Timeout in milliseconds for hook execution.',
1840
+ },
1841
+ },
1842
+ },
1843
+ },
1844
+ },
1845
+ },
1846
+ },
1635
1847
  };
1636
1848
  export function getSettingsSchema() {
1637
1849
  return SETTINGS_SCHEMA;