@machina.ai/cell-cli 1.0.21-rc4 → 1.4.0-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 (631) hide show
  1. package/dist/index.js +9 -0
  2. package/dist/index.js.map +1 -1
  3. package/dist/package.json +7 -9
  4. package/dist/src/commands/extensions/disable.d.ts +14 -0
  5. package/dist/src/commands/extensions/disable.js +42 -0
  6. package/dist/src/commands/extensions/disable.js.map +1 -0
  7. package/dist/src/commands/extensions/enable.d.ts +14 -0
  8. package/dist/src/commands/extensions/enable.js +48 -0
  9. package/dist/src/commands/extensions/enable.js.map +1 -0
  10. package/dist/src/commands/extensions/examples/context/GEMINI.md +8 -0
  11. package/dist/src/commands/extensions/examples/context/gemini-extension.json +5 -0
  12. package/dist/src/commands/extensions/examples/custom-commands/commands/fs/grep-code.toml +6 -0
  13. package/dist/src/commands/extensions/examples/custom-commands/gemini-extension.json +4 -0
  14. package/dist/src/commands/extensions/examples/exclude-tools/gemini-extension.json +5 -0
  15. package/dist/src/commands/extensions/examples/mcp-server/example.d.ts +6 -0
  16. package/dist/src/commands/extensions/examples/mcp-server/example.js +46 -0
  17. package/dist/src/commands/extensions/examples/mcp-server/example.js.map +1 -0
  18. package/dist/src/commands/extensions/examples/mcp-server/example.ts +60 -0
  19. package/dist/src/commands/extensions/examples/mcp-server/gemini-extension.json +10 -0
  20. package/dist/src/commands/extensions/install.d.ts +13 -0
  21. package/dist/src/commands/extensions/install.js +69 -0
  22. package/dist/src/commands/extensions/install.js.map +1 -0
  23. package/dist/src/commands/extensions/install.test.d.ts +6 -0
  24. package/dist/src/commands/extensions/install.test.js +22 -0
  25. package/dist/src/commands/extensions/install.test.js.map +1 -0
  26. package/dist/src/commands/extensions/link.d.ts +12 -0
  27. package/dist/src/commands/extensions/link.js +37 -0
  28. package/dist/src/commands/extensions/link.js.map +1 -0
  29. package/dist/src/commands/extensions/list.d.ts +8 -0
  30. package/dist/src/commands/extensions/list.js +32 -0
  31. package/dist/src/commands/extensions/list.js.map +1 -0
  32. package/dist/src/commands/extensions/new.d.ts +7 -0
  33. package/dist/src/commands/extensions/new.js +70 -0
  34. package/dist/src/commands/extensions/new.js.map +1 -0
  35. package/dist/src/commands/extensions/new.test.d.ts +6 -0
  36. package/dist/src/commands/extensions/new.test.js +50 -0
  37. package/dist/src/commands/extensions/new.test.js.map +1 -0
  38. package/dist/src/commands/extensions/uninstall.d.ts +12 -0
  39. package/dist/src/commands/extensions/uninstall.js +38 -0
  40. package/dist/src/commands/extensions/uninstall.js.map +1 -0
  41. package/dist/src/commands/extensions/uninstall.test.d.ts +6 -0
  42. package/dist/src/commands/extensions/uninstall.test.js +15 -0
  43. package/dist/src/commands/extensions/uninstall.test.js.map +1 -0
  44. package/dist/src/commands/extensions/update.d.ts +13 -0
  45. package/dist/src/commands/extensions/update.js +59 -0
  46. package/dist/src/commands/extensions/update.js.map +1 -0
  47. package/dist/src/commands/extensions.d.ts +7 -0
  48. package/dist/src/commands/extensions.js +33 -0
  49. package/dist/src/commands/extensions.js.map +1 -0
  50. package/dist/src/commands/mcp/add.js +1 -1
  51. package/dist/src/commands/mcp/add.js.map +1 -1
  52. package/dist/src/commands/mcp/list.js +3 -3
  53. package/dist/src/commands/mcp/list.js.map +1 -1
  54. package/dist/src/commands/mcp/remove.js +1 -1
  55. package/dist/src/commands/mcp/remove.js.map +1 -1
  56. package/dist/src/config/auth.js +3 -3
  57. package/dist/src/config/auth.js.map +1 -1
  58. package/dist/src/config/auth.test.js +9 -4
  59. package/dist/src/config/auth.test.js.map +1 -1
  60. package/dist/src/config/config.d.ts +11 -7
  61. package/dist/src/config/config.js +100 -65
  62. package/dist/src/config/config.js.map +1 -1
  63. package/dist/src/config/extension.d.ts +44 -3
  64. package/dist/src/config/extension.js +347 -20
  65. package/dist/src/config/extension.js.map +1 -1
  66. package/dist/src/config/extensions/variableSchema.d.ts +28 -0
  67. package/dist/src/config/extensions/variableSchema.js +18 -0
  68. package/dist/src/config/extensions/variableSchema.js.map +1 -0
  69. package/dist/src/config/extensions/variables.d.ts +17 -0
  70. package/dist/src/config/extensions/variables.js +40 -0
  71. package/dist/src/config/extensions/variables.js.map +1 -0
  72. package/dist/src/config/extensions/variables.test.d.ts +6 -0
  73. package/dist/src/config/extensions/variables.test.js +17 -0
  74. package/dist/src/config/extensions/variables.test.js.map +1 -0
  75. package/dist/src/config/keyBindings.d.ts +1 -0
  76. package/dist/src/config/keyBindings.js +6 -25
  77. package/dist/src/config/keyBindings.js.map +1 -1
  78. package/dist/src/config/keyBindings.test.js +1 -1
  79. package/dist/src/config/keyBindings.test.js.map +1 -1
  80. package/dist/src/config/sandboxConfig.d.ts +2 -2
  81. package/dist/src/config/sandboxConfig.js +5 -7
  82. package/dist/src/config/sandboxConfig.js.map +1 -1
  83. package/dist/src/config/settings.d.ts +15 -9
  84. package/dist/src/config/settings.js +316 -135
  85. package/dist/src/config/settings.js.map +1 -1
  86. package/dist/src/config/settingsSchema.d.ts +736 -338
  87. package/dist/src/config/settingsSchema.js +730 -333
  88. package/dist/src/config/settingsSchema.js.map +1 -1
  89. package/dist/src/config/settingsSchema.test.js +87 -89
  90. package/dist/src/config/settingsSchema.test.js.map +1 -1
  91. package/dist/src/config/trustedFolders.d.ts +14 -4
  92. package/dist/src/config/trustedFolders.js +63 -44
  93. package/dist/src/config/trustedFolders.js.map +1 -1
  94. package/dist/src/config/trustedFolders.test.js +89 -6
  95. package/dist/src/config/trustedFolders.test.js.map +1 -1
  96. package/dist/src/gemini.d.ts +3 -1
  97. package/dist/src/gemini.js +115 -82
  98. package/dist/src/gemini.js.map +1 -1
  99. package/dist/src/gemini.test.js +70 -44
  100. package/dist/src/gemini.test.js.map +1 -1
  101. package/dist/src/generated/git-commit.d.ts +2 -2
  102. package/dist/src/generated/git-commit.js +2 -2
  103. package/dist/src/generated/git-commit.js.map +1 -1
  104. package/dist/src/nonInteractiveCli.d.ts +1 -1
  105. package/dist/src/nonInteractiveCli.js +25 -37
  106. package/dist/src/nonInteractiveCli.js.map +1 -1
  107. package/dist/src/services/BuiltinCommandLoader.d.ts +3 -3
  108. package/dist/src/services/BuiltinCommandLoader.js +1 -1
  109. package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
  110. package/dist/src/services/BuiltinCommandLoader.test.js +3 -3
  111. package/dist/src/services/BuiltinCommandLoader.test.js.map +1 -1
  112. package/dist/src/services/CommandService.d.ts +2 -2
  113. package/dist/src/services/CommandService.test.js +1 -0
  114. package/dist/src/services/CommandService.test.js.map +1 -1
  115. package/dist/src/services/FileCommandLoader.d.ts +5 -3
  116. package/dist/src/services/FileCommandLoader.js +33 -16
  117. package/dist/src/services/FileCommandLoader.js.map +1 -1
  118. package/dist/src/services/McpPromptLoader.d.ts +14 -4
  119. package/dist/src/services/McpPromptLoader.js +44 -18
  120. package/dist/src/services/McpPromptLoader.js.map +1 -1
  121. package/dist/src/services/McpPromptLoader.test.d.ts +6 -0
  122. package/dist/src/services/McpPromptLoader.test.js +114 -0
  123. package/dist/src/services/McpPromptLoader.test.js.map +1 -0
  124. package/dist/src/services/prompt-processors/argumentProcessor.d.ts +3 -3
  125. package/dist/src/services/prompt-processors/argumentProcessor.js +3 -2
  126. package/dist/src/services/prompt-processors/argumentProcessor.js.map +1 -1
  127. package/dist/src/services/prompt-processors/atFileProcessor.d.ts +12 -0
  128. package/dist/src/services/prompt-processors/atFileProcessor.js +62 -0
  129. package/dist/src/services/prompt-processors/atFileProcessor.js.map +1 -0
  130. package/dist/src/services/prompt-processors/atFileProcessor.test.d.ts +6 -0
  131. package/dist/src/services/prompt-processors/atFileProcessor.test.js +174 -0
  132. package/dist/src/services/prompt-processors/atFileProcessor.test.js.map +1 -0
  133. package/dist/src/services/prompt-processors/injectionParser.d.ts +29 -0
  134. package/dist/src/services/prompt-processors/injectionParser.js +60 -0
  135. package/dist/src/services/prompt-processors/injectionParser.js.map +1 -0
  136. package/dist/src/services/prompt-processors/injectionParser.test.d.ts +6 -0
  137. package/dist/src/services/prompt-processors/injectionParser.test.js +189 -0
  138. package/dist/src/services/prompt-processors/injectionParser.test.js.map +1 -0
  139. package/dist/src/services/prompt-processors/shellProcessor.d.ts +4 -12
  140. package/dist/src/services/prompt-processors/shellProcessor.js +19 -68
  141. package/dist/src/services/prompt-processors/shellProcessor.js.map +1 -1
  142. package/dist/src/services/prompt-processors/types.d.ts +13 -8
  143. package/dist/src/services/prompt-processors/types.js +4 -0
  144. package/dist/src/services/prompt-processors/types.js.map +1 -1
  145. package/dist/src/services/types.d.ts +1 -1
  146. package/dist/src/test-utils/customMatchers.js +0 -6
  147. package/dist/src/test-utils/customMatchers.js.map +1 -1
  148. package/dist/src/test-utils/mockCommandContext.d.ts +1 -1
  149. package/dist/src/test-utils/render.d.ts +1 -1
  150. package/dist/src/ui/App.d.ts +2 -2
  151. package/dist/src/ui/App.js +158 -70
  152. package/dist/src/ui/App.js.map +1 -1
  153. package/dist/src/ui/IdeIntegrationNudge.d.ts +1 -1
  154. package/dist/src/ui/IdeIntegrationNudge.js +3 -8
  155. package/dist/src/ui/IdeIntegrationNudge.js.map +1 -1
  156. package/dist/src/ui/colors.d.ts +1 -1
  157. package/dist/src/ui/commands/aboutCommand.d.ts +1 -1
  158. package/dist/src/ui/commands/aboutCommand.js +10 -4
  159. package/dist/src/ui/commands/aboutCommand.js.map +1 -1
  160. package/dist/src/ui/commands/authCommand.d.ts +1 -1
  161. package/dist/src/ui/commands/authCommand.js.map +1 -1
  162. package/dist/src/ui/commands/bugCommand.js +9 -4
  163. package/dist/src/ui/commands/bugCommand.js.map +1 -1
  164. package/dist/src/ui/commands/chatCommand.d.ts +1 -1
  165. package/dist/src/ui/commands/chatCommand.js +6 -5
  166. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  167. package/dist/src/ui/commands/clearCommand.d.ts +1 -1
  168. package/dist/src/ui/commands/clearCommand.js +1 -1
  169. package/dist/src/ui/commands/clearCommand.js.map +1 -1
  170. package/dist/src/ui/commands/compressCommand.d.ts +1 -1
  171. package/dist/src/ui/commands/compressCommand.js +2 -0
  172. package/dist/src/ui/commands/compressCommand.js.map +1 -1
  173. package/dist/src/ui/commands/copyCommand.d.ts +1 -1
  174. package/dist/src/ui/commands/copyCommand.js +2 -2
  175. package/dist/src/ui/commands/copyCommand.js.map +1 -1
  176. package/dist/src/ui/commands/directoryCommand.d.ts +1 -1
  177. package/dist/src/ui/commands/directoryCommand.js +6 -5
  178. package/dist/src/ui/commands/directoryCommand.js.map +1 -1
  179. package/dist/src/ui/commands/helpCommand.d.ts +1 -1
  180. package/dist/src/ui/commands/helpCommand.js.map +1 -1
  181. package/dist/src/ui/commands/ideCommand.d.ts +2 -3
  182. package/dist/src/ui/commands/ideCommand.js +46 -18
  183. package/dist/src/ui/commands/ideCommand.js.map +1 -1
  184. package/dist/src/ui/commands/initCommand.d.ts +1 -1
  185. package/dist/src/ui/commands/initCommand.js +3 -3
  186. package/dist/src/ui/commands/initCommand.js.map +1 -1
  187. package/dist/src/ui/commands/mcpCommand.d.ts +1 -1
  188. package/dist/src/ui/commands/mcpCommand.js +12 -10
  189. package/dist/src/ui/commands/mcpCommand.js.map +1 -1
  190. package/dist/src/ui/commands/memoryCommand.d.ts +1 -1
  191. package/dist/src/ui/commands/memoryCommand.js +5 -4
  192. package/dist/src/ui/commands/memoryCommand.js.map +1 -1
  193. package/dist/src/ui/commands/privacyCommand.d.ts +1 -1
  194. package/dist/src/ui/commands/privacyCommand.js.map +1 -1
  195. package/dist/src/ui/commands/restoreCommand.d.ts +1 -1
  196. package/dist/src/ui/commands/restoreCommand.js +5 -9
  197. package/dist/src/ui/commands/restoreCommand.js.map +1 -1
  198. package/dist/src/ui/commands/settingsCommand.d.ts +1 -1
  199. package/dist/src/ui/commands/settingsCommand.js.map +1 -1
  200. package/dist/src/ui/commands/setupGithubCommand.d.ts +3 -1
  201. package/dist/src/ui/commands/setupGithubCommand.js +48 -9
  202. package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
  203. package/dist/src/ui/commands/setupGithubCommand.test.js +100 -7
  204. package/dist/src/ui/commands/setupGithubCommand.test.js.map +1 -1
  205. package/dist/src/ui/commands/statsCommand.js.map +1 -1
  206. package/dist/src/ui/commands/terminalSetupCommand.d.ts +1 -1
  207. package/dist/src/ui/commands/terminalSetupCommand.js.map +1 -1
  208. package/dist/src/ui/commands/themeCommand.d.ts +1 -1
  209. package/dist/src/ui/commands/themeCommand.js.map +1 -1
  210. package/dist/src/ui/commands/toolsCommand.js +2 -2
  211. package/dist/src/ui/commands/toolsCommand.js.map +1 -1
  212. package/dist/src/ui/commands/types.d.ts +7 -8
  213. package/dist/src/ui/commands/types.js +1 -0
  214. package/dist/src/ui/commands/types.js.map +1 -1
  215. package/dist/src/ui/commands/vimCommand.d.ts +1 -1
  216. package/dist/src/ui/commands/vimCommand.js.map +1 -1
  217. package/dist/src/ui/components/AboutBox.d.ts +1 -1
  218. package/dist/src/ui/components/AsciiArt.d.ts +3 -3
  219. package/dist/src/ui/components/AsciiArt.js +3 -3
  220. package/dist/src/ui/components/AuthDialog.d.ts +4 -3
  221. package/dist/src/ui/components/AuthDialog.js +16 -10
  222. package/dist/src/ui/components/AuthDialog.js.map +1 -1
  223. package/dist/src/ui/components/AuthDialog.test.js +80 -19
  224. package/dist/src/ui/components/AuthDialog.test.js.map +1 -1
  225. package/dist/src/ui/components/AuthInProgress.d.ts +1 -1
  226. package/dist/src/ui/components/AuthInProgress.js +0 -5
  227. package/dist/src/ui/components/AuthInProgress.js.map +1 -1
  228. package/dist/src/ui/components/AutoAcceptIndicator.d.ts +2 -2
  229. package/dist/src/ui/components/AutoAcceptIndicator.js +1 -1
  230. package/dist/src/ui/components/AutoAcceptIndicator.js.map +1 -1
  231. package/dist/src/ui/components/ConsoleSummaryDisplay.d.ts +1 -1
  232. package/dist/src/ui/components/ContextSummaryDisplay.d.ts +2 -2
  233. package/dist/src/ui/components/ContextSummaryDisplay.js +1 -0
  234. package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -1
  235. package/dist/src/ui/components/ContextUsageDisplay.js +1 -1
  236. package/dist/src/ui/components/ContextUsageDisplay.js.map +1 -1
  237. package/dist/src/ui/components/DetailedMessagesDisplay.d.ts +2 -2
  238. package/dist/src/ui/components/DetailedMessagesDisplay.js +1 -1
  239. package/dist/src/ui/components/DetailedMessagesDisplay.js.map +1 -1
  240. package/dist/src/ui/components/EditorSettingsDialog.d.ts +4 -3
  241. package/dist/src/ui/components/EditorSettingsDialog.js +9 -12
  242. package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -1
  243. package/dist/src/ui/components/FolderTrustDialog.d.ts +2 -1
  244. package/dist/src/ui/components/FolderTrustDialog.js +13 -5
  245. package/dist/src/ui/components/FolderTrustDialog.js.map +1 -1
  246. package/dist/src/ui/components/FolderTrustDialog.test.js +55 -3
  247. package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
  248. package/dist/src/ui/components/Footer.d.ts +4 -1
  249. package/dist/src/ui/components/Footer.js +5 -4
  250. package/dist/src/ui/components/Footer.js.map +1 -1
  251. package/dist/src/ui/components/GeminiRespondingSpinner.d.ts +1 -1
  252. package/dist/src/ui/components/GeminiRespondingSpinner.js +5 -3
  253. package/dist/src/ui/components/GeminiRespondingSpinner.js.map +1 -1
  254. package/dist/src/ui/components/Header.d.ts +1 -1
  255. package/dist/src/ui/components/Help.d.ts +2 -2
  256. package/dist/src/ui/components/Help.js +1 -1
  257. package/dist/src/ui/components/Help.js.map +1 -1
  258. package/dist/src/ui/components/HistoryItemDisplay.d.ts +4 -4
  259. package/dist/src/ui/components/HistoryItemDisplay.test.js +2 -0
  260. package/dist/src/ui/components/HistoryItemDisplay.test.js.map +1 -1
  261. package/dist/src/ui/components/InputPrompt.d.ts +5 -5
  262. package/dist/src/ui/components/InputPrompt.js +161 -29
  263. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  264. package/dist/src/ui/components/LoadingIndicator.d.ts +2 -2
  265. package/dist/src/ui/components/MemoryUsageDisplay.d.ts +1 -1
  266. package/dist/src/ui/components/MemoryUsageDisplay.js +1 -6
  267. package/dist/src/ui/components/MemoryUsageDisplay.js.map +1 -1
  268. package/dist/src/ui/components/ModelStatsDisplay.d.ts +1 -1
  269. package/dist/src/ui/components/ModelStatsDisplay.js.map +1 -1
  270. package/dist/src/ui/components/PrepareLabel.d.ts +1 -1
  271. package/dist/src/ui/components/ProQuotaDialog.d.ts +13 -0
  272. package/dist/src/ui/components/ProQuotaDialog.js +21 -0
  273. package/dist/src/ui/components/ProQuotaDialog.js.map +1 -0
  274. package/dist/src/ui/components/ProQuotaDialog.test.d.ts +6 -0
  275. package/dist/src/ui/components/ProQuotaDialog.test.js +56 -0
  276. package/dist/src/ui/components/ProQuotaDialog.test.js.map +1 -0
  277. package/dist/src/ui/components/SessionSummaryDisplay.d.ts +1 -1
  278. package/dist/src/ui/components/SettingsDialog.d.ts +2 -1
  279. package/dist/src/ui/components/SettingsDialog.js +67 -36
  280. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  281. package/dist/src/ui/components/SettingsDialog.test.js +134 -56
  282. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
  283. package/dist/src/ui/components/ShellConfirmationDialog.d.ts +2 -2
  284. package/dist/src/ui/components/ShellConfirmationDialog.js +2 -2
  285. package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -1
  286. package/dist/src/ui/components/ShellModeIndicator.d.ts +1 -1
  287. package/dist/src/ui/components/StatsDisplay.d.ts +1 -1
  288. package/dist/src/ui/components/StatsDisplay.js +3 -3
  289. package/dist/src/ui/components/StatsDisplay.js.map +1 -1
  290. package/dist/src/ui/components/SuggestionsDisplay.js +12 -4
  291. package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -1
  292. package/dist/src/ui/components/ThemeDialog.d.ts +3 -2
  293. package/dist/src/ui/components/ThemeDialog.js +5 -10
  294. package/dist/src/ui/components/ThemeDialog.js.map +1 -1
  295. package/dist/src/ui/components/Tips.d.ts +2 -2
  296. package/dist/src/ui/components/Tips.js +1 -0
  297. package/dist/src/ui/components/Tips.js.map +1 -1
  298. package/dist/src/ui/components/ToolStatsDisplay.d.ts +1 -1
  299. package/dist/src/ui/components/WorkspaceMigrationDialog.d.ts +11 -0
  300. package/dist/src/ui/components/WorkspaceMigrationDialog.js +42 -0
  301. package/dist/src/ui/components/WorkspaceMigrationDialog.js.map +1 -0
  302. package/dist/src/ui/components/messages/CompressionMessage.d.ts +2 -2
  303. package/dist/src/ui/components/messages/CompressionMessage.js +2 -1
  304. package/dist/src/ui/components/messages/CompressionMessage.js.map +1 -1
  305. package/dist/src/ui/components/messages/DiffRenderer.d.ts +1 -1
  306. package/dist/src/ui/components/messages/DiffRenderer.js +6 -2
  307. package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -1
  308. package/dist/src/ui/components/messages/ErrorMessage.d.ts +1 -1
  309. package/dist/src/ui/components/messages/GeminiMessage.d.ts +1 -1
  310. package/dist/src/ui/components/messages/GeminiMessage.js +2 -1
  311. package/dist/src/ui/components/messages/GeminiMessage.js.map +1 -1
  312. package/dist/src/ui/components/messages/GeminiMessageContent.d.ts +1 -1
  313. package/dist/src/ui/components/messages/InfoMessage.d.ts +1 -1
  314. package/dist/src/ui/components/messages/ToolConfirmationMessage.d.ts +3 -3
  315. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +41 -24
  316. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  317. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +79 -2
  318. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -1
  319. package/dist/src/ui/components/messages/ToolGroupMessage.d.ts +4 -4
  320. package/dist/src/ui/components/messages/ToolGroupMessage.js +1 -6
  321. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
  322. package/dist/src/ui/components/messages/ToolGroupMessage.test.d.ts +6 -0
  323. package/dist/src/ui/components/messages/ToolGroupMessage.test.js +259 -0
  324. package/dist/src/ui/components/messages/ToolGroupMessage.test.js.map +1 -0
  325. package/dist/src/ui/components/messages/ToolMessage.d.ts +1 -1
  326. package/dist/src/ui/components/messages/ToolMessage.js +2 -1
  327. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  328. package/dist/src/ui/components/messages/ToolMessage.test.js +6 -6
  329. package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -1
  330. package/dist/src/ui/components/messages/UserMessage.d.ts +1 -1
  331. package/dist/src/ui/components/messages/UserMessage.js +4 -2
  332. package/dist/src/ui/components/messages/UserMessage.js.map +1 -1
  333. package/dist/src/ui/components/messages/UserShellMessage.d.ts +1 -1
  334. package/dist/src/ui/components/shared/MaxSizedBox.js.map +1 -1
  335. package/dist/src/ui/components/shared/RadioButtonSelect.d.ts +1 -1
  336. package/dist/src/ui/components/shared/RadioButtonSelect.js +1 -6
  337. package/dist/src/ui/components/shared/RadioButtonSelect.js.map +1 -1
  338. package/dist/src/ui/components/shared/text-buffer.js +41 -101
  339. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  340. package/dist/src/ui/components/shared/vim-buffer-actions.d.ts +1 -1
  341. package/dist/src/ui/components/shared/vim-buffer-actions.js.map +1 -1
  342. package/dist/src/ui/constants.d.ts +8 -0
  343. package/dist/src/ui/constants.js +9 -0
  344. package/dist/src/ui/constants.js.map +1 -1
  345. package/dist/src/ui/contexts/KeypressContext.d.ts +4 -3
  346. package/dist/src/ui/contexts/KeypressContext.js +276 -54
  347. package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
  348. package/dist/src/ui/contexts/KeypressContext.test.js +290 -10
  349. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
  350. package/dist/src/ui/contexts/OverflowContext.d.ts +1 -1
  351. package/dist/src/ui/contexts/OverflowContext.js +0 -5
  352. package/dist/src/ui/contexts/OverflowContext.js.map +1 -1
  353. package/dist/src/ui/contexts/SessionContext.d.ts +2 -2
  354. package/dist/src/ui/contexts/SessionContext.js +1 -6
  355. package/dist/src/ui/contexts/SessionContext.js.map +1 -1
  356. package/dist/src/ui/contexts/SettingsContext.d.ts +1 -1
  357. package/dist/src/ui/contexts/StreamingContext.d.ts +1 -1
  358. package/dist/src/ui/contexts/VimModeContext.d.ts +1 -1
  359. package/dist/src/ui/contexts/VimModeContext.js +4 -4
  360. package/dist/src/ui/contexts/VimModeContext.js.map +1 -1
  361. package/dist/src/ui/editors/editorSettingsManager.d.ts +1 -1
  362. package/dist/src/ui/editors/editorSettingsManager.js +1 -1
  363. package/dist/src/ui/editors/editorSettingsManager.js.map +1 -1
  364. package/dist/src/ui/hooks/atCommandProcessor.d.ts +3 -3
  365. package/dist/src/ui/hooks/atCommandProcessor.js +5 -8
  366. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  367. package/dist/src/ui/hooks/atCommandProcessor.test.js +33 -10
  368. package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -1
  369. package/dist/src/ui/hooks/shellCommandProcessor.d.ts +3 -3
  370. package/dist/src/ui/hooks/shellCommandProcessor.js +15 -19
  371. package/dist/src/ui/hooks/shellCommandProcessor.js.map +1 -1
  372. package/dist/src/ui/hooks/shellCommandProcessor.test.js +16 -19
  373. package/dist/src/ui/hooks/shellCommandProcessor.test.js.map +1 -1
  374. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +5 -4
  375. package/dist/src/ui/hooks/slashCommandProcessor.js +16 -9
  376. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  377. package/dist/src/ui/hooks/useAtCompletion.d.ts +2 -2
  378. package/dist/src/ui/hooks/useAtCompletion.js +3 -2
  379. package/dist/src/ui/hooks/useAtCompletion.js.map +1 -1
  380. package/dist/src/ui/hooks/useAuthCommand.d.ts +2 -2
  381. package/dist/src/ui/hooks/useAuthCommand.js +5 -4
  382. package/dist/src/ui/hooks/useAuthCommand.js.map +1 -1
  383. package/dist/src/ui/hooks/useAutoAcceptIndicator.d.ts +4 -2
  384. package/dist/src/ui/hooks/useAutoAcceptIndicator.js +14 -5
  385. package/dist/src/ui/hooks/useAutoAcceptIndicator.js.map +1 -1
  386. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js +124 -4
  387. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js.map +1 -1
  388. package/dist/src/ui/hooks/useCommandCompletion.d.ts +8 -5
  389. package/dist/src/ui/hooks/useCommandCompletion.js +30 -9
  390. package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -1
  391. package/dist/src/ui/hooks/useCompletion.d.ts +1 -1
  392. package/dist/src/ui/hooks/useCompletion.js +1 -1
  393. package/dist/src/ui/hooks/useCompletion.js.map +1 -1
  394. package/dist/src/ui/hooks/useConsoleMessages.d.ts +1 -1
  395. package/dist/src/ui/hooks/useEditorSettings.d.ts +2 -2
  396. package/dist/src/ui/hooks/useEditorSettings.js +1 -1
  397. package/dist/src/ui/hooks/useEditorSettings.js.map +1 -1
  398. package/dist/src/ui/hooks/useEditorSettings.test.js +3 -3
  399. package/dist/src/ui/hooks/useEditorSettings.test.js.map +1 -1
  400. package/dist/src/ui/hooks/useFolderTrust.d.ts +2 -1
  401. package/dist/src/ui/hooks/useFolderTrust.js +24 -13
  402. package/dist/src/ui/hooks/useFolderTrust.js.map +1 -1
  403. package/dist/src/ui/hooks/useGeminiStream.d.ts +6 -5
  404. package/dist/src/ui/hooks/useGeminiStream.js +81 -46
  405. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  406. package/dist/src/ui/hooks/useGitBranchName.js +1 -1
  407. package/dist/src/ui/hooks/useGitBranchName.js.map +1 -1
  408. package/dist/src/ui/hooks/useGitBranchName.test.js +1 -1
  409. package/dist/src/ui/hooks/useGitBranchName.test.js.map +1 -1
  410. package/dist/src/ui/hooks/useHistoryManager.d.ts +1 -1
  411. package/dist/src/ui/hooks/useIdeTrustListener.d.ts +14 -0
  412. package/dist/src/ui/hooks/useIdeTrustListener.js +39 -0
  413. package/dist/src/ui/hooks/useIdeTrustListener.js.map +1 -0
  414. package/dist/src/ui/hooks/useInputHistoryStore.d.ts +19 -0
  415. package/dist/src/ui/hooks/useInputHistoryStore.js +81 -0
  416. package/dist/src/ui/hooks/useInputHistoryStore.js.map +1 -0
  417. package/dist/src/ui/hooks/useInputHistoryStore.test.d.ts +6 -0
  418. package/dist/src/ui/hooks/useInputHistoryStore.test.js +234 -0
  419. package/dist/src/ui/hooks/useInputHistoryStore.test.js.map +1 -0
  420. package/dist/src/ui/hooks/useKeypress.d.ts +2 -2
  421. package/dist/src/ui/hooks/useKeypress.js +1 -1
  422. package/dist/src/ui/hooks/useKeypress.js.map +1 -1
  423. package/dist/src/ui/hooks/useLoadingIndicator.d.ts +1 -1
  424. package/dist/src/ui/hooks/useLoadingIndicator.js +2 -2
  425. package/dist/src/ui/hooks/useLoadingIndicator.js.map +1 -1
  426. package/dist/src/ui/hooks/useLoadingIndicator.test.js +2 -2
  427. package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -1
  428. package/dist/src/ui/hooks/useLogger.d.ts +3 -2
  429. package/dist/src/ui/hooks/useLogger.js +4 -4
  430. package/dist/src/ui/hooks/useLogger.js.map +1 -1
  431. package/dist/src/ui/hooks/usePhraseCycler.d.ts +1 -1
  432. package/dist/src/ui/hooks/usePhraseCycler.js +11 -8
  433. package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
  434. package/dist/src/ui/hooks/usePrivacySettings.d.ts +1 -1
  435. package/dist/src/ui/hooks/usePrivacySettings.js +8 -13
  436. package/dist/src/ui/hooks/usePrivacySettings.js.map +1 -1
  437. package/dist/src/ui/hooks/usePrivacySettings.test.js +33 -97
  438. package/dist/src/ui/hooks/usePrivacySettings.test.js.map +1 -1
  439. package/dist/src/ui/hooks/usePromptCompletion.d.ts +23 -0
  440. package/dist/src/ui/hooks/usePromptCompletion.js +177 -0
  441. package/dist/src/ui/hooks/usePromptCompletion.js.map +1 -0
  442. package/dist/src/ui/hooks/useReactToolScheduler.d.ts +2 -2
  443. package/dist/src/ui/hooks/useReactToolScheduler.js +2 -3
  444. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  445. package/dist/src/ui/hooks/useReverseSearchCompletion.d.ts +2 -2
  446. package/dist/src/ui/hooks/useShellHistory.d.ts +2 -1
  447. package/dist/src/ui/hooks/useShellHistory.js +9 -10
  448. package/dist/src/ui/hooks/useShellHistory.js.map +1 -1
  449. package/dist/src/ui/hooks/useShellHistory.test.js +30 -4
  450. package/dist/src/ui/hooks/useShellHistory.test.js.map +1 -1
  451. package/dist/src/ui/hooks/useShowMemoryCommand.d.ts +3 -3
  452. package/dist/src/ui/hooks/useShowMemoryCommand.js +1 -1
  453. package/dist/src/ui/hooks/useShowMemoryCommand.js.map +1 -1
  454. package/dist/src/ui/hooks/useSlashCompletion.d.ts +2 -2
  455. package/dist/src/ui/hooks/useSlashCompletion.js +263 -67
  456. package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -1
  457. package/dist/src/ui/hooks/useSlashCompletion.test.d.ts +4 -1
  458. package/dist/src/ui/hooks/useSlashCompletion.test.js +452 -59
  459. package/dist/src/ui/hooks/useSlashCompletion.test.js.map +1 -1
  460. package/dist/src/ui/hooks/useThemeCommand.d.ts +1 -1
  461. package/dist/src/ui/hooks/useThemeCommand.js +8 -8
  462. package/dist/src/ui/hooks/useThemeCommand.js.map +1 -1
  463. package/dist/src/ui/hooks/useToolScheduler.test.js +100 -98
  464. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  465. package/dist/src/ui/hooks/useWorkspaceMigration.d.ts +13 -0
  466. package/dist/src/ui/hooks/useWorkspaceMigration.js +54 -0
  467. package/dist/src/ui/hooks/useWorkspaceMigration.js.map +1 -0
  468. package/dist/src/ui/keyMatchers.d.ts +2 -1
  469. package/dist/src/ui/keyMatchers.js +1 -1
  470. package/dist/src/ui/keyMatchers.js.map +1 -1
  471. package/dist/src/ui/keyMatchers.test.js +9 -0
  472. package/dist/src/ui/keyMatchers.test.js.map +1 -1
  473. package/dist/src/ui/privacy/CloudFreePrivacyNotice.d.ts +1 -1
  474. package/dist/src/ui/privacy/PrivacyNotice.d.ts +1 -1
  475. package/dist/src/ui/privacy/PrivacyNotice.js +1 -1
  476. package/dist/src/ui/privacy/PrivacyNotice.js.map +1 -1
  477. package/dist/src/ui/semantic-colors.d.ts +1 -1
  478. package/dist/src/ui/textConstants.d.ts +9 -0
  479. package/dist/src/ui/textConstants.js +10 -0
  480. package/dist/src/ui/textConstants.js.map +1 -0
  481. package/dist/src/ui/themes/atom-one-dark.js +1 -2
  482. package/dist/src/ui/themes/atom-one-dark.js.map +1 -1
  483. package/dist/src/ui/themes/ayu-light.js +1 -2
  484. package/dist/src/ui/themes/ayu-light.js.map +1 -1
  485. package/dist/src/ui/themes/ayu.js +1 -2
  486. package/dist/src/ui/themes/ayu.js.map +1 -1
  487. package/dist/src/ui/themes/default-light.js +1 -2
  488. package/dist/src/ui/themes/default-light.js.map +1 -1
  489. package/dist/src/ui/themes/default.js +1 -2
  490. package/dist/src/ui/themes/default.js.map +1 -1
  491. package/dist/src/ui/themes/dracula.js +1 -2
  492. package/dist/src/ui/themes/dracula.js.map +1 -1
  493. package/dist/src/ui/themes/github-dark.js +1 -2
  494. package/dist/src/ui/themes/github-dark.js.map +1 -1
  495. package/dist/src/ui/themes/github-light.js +1 -2
  496. package/dist/src/ui/themes/github-light.js.map +1 -1
  497. package/dist/src/ui/themes/googlecode.js +2 -3
  498. package/dist/src/ui/themes/googlecode.js.map +1 -1
  499. package/dist/src/ui/themes/no-color.js.map +1 -1
  500. package/dist/src/ui/themes/shades-of-purple.js +1 -2
  501. package/dist/src/ui/themes/shades-of-purple.js.map +1 -1
  502. package/dist/src/ui/themes/theme-manager.d.ts +4 -2
  503. package/dist/src/ui/themes/theme-manager.js +73 -6
  504. package/dist/src/ui/themes/theme-manager.js.map +1 -1
  505. package/dist/src/ui/themes/theme-manager.test.js +60 -1
  506. package/dist/src/ui/themes/theme-manager.test.js.map +1 -1
  507. package/dist/src/ui/themes/theme.d.ts +3 -3
  508. package/dist/src/ui/themes/theme.js +30 -2
  509. package/dist/src/ui/themes/theme.js.map +1 -1
  510. package/dist/src/ui/themes/xcode.js +1 -2
  511. package/dist/src/ui/themes/xcode.js.map +1 -1
  512. package/dist/src/ui/types.d.ts +4 -2
  513. package/dist/src/ui/types.js.map +1 -1
  514. package/dist/src/ui/utils/CodeColorizer.d.ts +2 -2
  515. package/dist/src/ui/utils/CodeColorizer.js +1 -1
  516. package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
  517. package/dist/src/ui/utils/ConsolePatcher.d.ts +1 -1
  518. package/dist/src/ui/utils/ConsolePatcher.js +1 -1
  519. package/dist/src/ui/utils/ConsolePatcher.js.map +1 -1
  520. package/dist/src/ui/utils/MarkdownDisplay.js +2 -1
  521. package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
  522. package/dist/src/ui/utils/MarkdownDisplay.test.js +17 -16
  523. package/dist/src/ui/utils/MarkdownDisplay.test.js.map +1 -1
  524. package/dist/src/ui/utils/clipboardUtils.js +6 -6
  525. package/dist/src/ui/utils/clipboardUtils.js.map +1 -1
  526. package/dist/src/ui/utils/commandUtils.d.ts +1 -1
  527. package/dist/src/ui/utils/commandUtils.js +52 -14
  528. package/dist/src/ui/utils/commandUtils.js.map +1 -1
  529. package/dist/src/ui/utils/commandUtils.test.js +76 -21
  530. package/dist/src/ui/utils/commandUtils.test.js.map +1 -1
  531. package/dist/src/ui/utils/computeStats.d.ts +1 -1
  532. package/dist/src/ui/utils/highlight.d.ts +10 -0
  533. package/dist/src/ui/utils/highlight.js +41 -0
  534. package/dist/src/ui/utils/highlight.js.map +1 -0
  535. package/dist/src/ui/utils/highlight.test.d.ts +6 -0
  536. package/dist/src/ui/utils/highlight.test.js +93 -0
  537. package/dist/src/ui/utils/highlight.test.js.map +1 -0
  538. package/dist/src/ui/utils/platformConstants.d.ts +33 -1
  539. package/dist/src/ui/utils/platformConstants.js +35 -1
  540. package/dist/src/ui/utils/platformConstants.js.map +1 -1
  541. package/dist/src/ui/utils/terminalSetup.js +5 -5
  542. package/dist/src/ui/utils/terminalSetup.js.map +1 -1
  543. package/dist/src/ui/utils/textUtils.d.ts +18 -0
  544. package/dist/src/ui/utils/textUtils.js +44 -0
  545. package/dist/src/ui/utils/textUtils.js.map +1 -1
  546. package/dist/src/ui/utils/updateCheck.d.ts +1 -1
  547. package/dist/src/ui/utils/updateCheck.js.map +1 -1
  548. package/dist/src/utils/cleanup.js +5 -4
  549. package/dist/src/utils/cleanup.js.map +1 -1
  550. package/dist/src/utils/deepMerge.d.ts +10 -0
  551. package/dist/src/utils/deepMerge.js +58 -0
  552. package/dist/src/utils/deepMerge.js.map +1 -0
  553. package/dist/src/utils/deepMerge.test.d.ts +6 -0
  554. package/dist/src/utils/deepMerge.test.js +143 -0
  555. package/dist/src/utils/deepMerge.test.js.map +1 -0
  556. package/dist/src/utils/dialogScopeUtils.d.ts +2 -1
  557. package/dist/src/utils/dialogScopeUtils.js.map +1 -1
  558. package/dist/src/utils/envVarResolver.d.ts +39 -0
  559. package/dist/src/utils/envVarResolver.js +97 -0
  560. package/dist/src/utils/envVarResolver.js.map +1 -0
  561. package/dist/src/utils/envVarResolver.test.d.ts +6 -0
  562. package/dist/src/utils/envVarResolver.test.js +221 -0
  563. package/dist/src/utils/envVarResolver.test.js.map +1 -0
  564. package/dist/src/utils/errors.d.ts +6 -0
  565. package/dist/src/utils/errors.js +12 -0
  566. package/dist/src/utils/errors.js.map +1 -0
  567. package/dist/src/utils/events.d.ts +1 -1
  568. package/dist/src/utils/events.js +1 -1
  569. package/dist/src/utils/events.js.map +1 -1
  570. package/dist/src/utils/gitUtils.js +1 -1
  571. package/dist/src/utils/gitUtils.js.map +1 -1
  572. package/dist/src/utils/gitUtils.test.js +4 -4
  573. package/dist/src/utils/gitUtils.test.js.map +1 -1
  574. package/dist/src/utils/handleAutoUpdate.d.ts +4 -4
  575. package/dist/src/utils/handleAutoUpdate.js +4 -3
  576. package/dist/src/utils/handleAutoUpdate.js.map +1 -1
  577. package/dist/src/utils/installationInfo.js +4 -4
  578. package/dist/src/utils/installationInfo.js.map +1 -1
  579. package/dist/src/utils/installationInfo.test.js +5 -5
  580. package/dist/src/utils/installationInfo.test.js.map +1 -1
  581. package/dist/src/utils/package.js +2 -2
  582. package/dist/src/utils/package.js.map +1 -1
  583. package/dist/src/utils/readStdin.js +15 -0
  584. package/dist/src/utils/readStdin.js.map +1 -1
  585. package/dist/src/utils/readStdin.test.d.ts +6 -0
  586. package/dist/src/utils/readStdin.test.js +88 -0
  587. package/dist/src/utils/readStdin.test.js.map +1 -0
  588. package/dist/src/utils/resolvePath.js +2 -2
  589. package/dist/src/utils/resolvePath.js.map +1 -1
  590. package/dist/src/utils/sandbox-macos-permissive-closed.sb +1 -1
  591. package/dist/src/utils/sandbox-macos-permissive-open.sb +2 -2
  592. package/dist/src/utils/sandbox-macos-permissive-proxied.sb +1 -1
  593. package/dist/src/utils/sandbox-macos-restrictive-closed.sb +2 -2
  594. package/dist/src/utils/sandbox-macos-restrictive-open.sb +2 -2
  595. package/dist/src/utils/sandbox-macos-restrictive-proxied.sb +1 -1
  596. package/dist/src/utils/sandbox.d.ts +2 -2
  597. package/dist/src/utils/sandbox.js +20 -27
  598. package/dist/src/utils/sandbox.js.map +1 -1
  599. package/dist/src/utils/settingsUtils.d.ts +2 -2
  600. package/dist/src/utils/settingsUtils.js +2 -8
  601. package/dist/src/utils/settingsUtils.js.map +1 -1
  602. package/dist/src/utils/settingsUtils.test.js +145 -148
  603. package/dist/src/utils/settingsUtils.test.js.map +1 -1
  604. package/dist/src/utils/spawnWrapper.d.ts +1 -1
  605. package/dist/src/utils/spawnWrapper.js +1 -1
  606. package/dist/src/utils/spawnWrapper.js.map +1 -1
  607. package/dist/src/utils/startupWarnings.js +3 -3
  608. package/dist/src/utils/startupWarnings.js.map +1 -1
  609. package/dist/src/utils/updateEventEmitter.d.ts +1 -1
  610. package/dist/src/utils/updateEventEmitter.js +1 -1
  611. package/dist/src/utils/updateEventEmitter.js.map +1 -1
  612. package/dist/src/utils/userStartupWarnings.d.ts +1 -1
  613. package/dist/src/utils/userStartupWarnings.js +4 -4
  614. package/dist/src/utils/userStartupWarnings.js.map +1 -1
  615. package/dist/src/utils/userStartupWarnings.test.js +3 -3
  616. package/dist/src/utils/userStartupWarnings.test.js.map +1 -1
  617. package/dist/src/validateNonInterActiveAuth.d.ts +2 -1
  618. package/dist/src/validateNonInterActiveAuth.js +1 -1
  619. package/dist/src/validateNonInterActiveAuth.js.map +1 -1
  620. package/dist/src/zed-integration/acp.d.ts +1 -1
  621. package/dist/src/zed-integration/acp.js +2 -1
  622. package/dist/src/zed-integration/acp.js.map +1 -1
  623. package/dist/src/zed-integration/fileSystemService.d.ts +2 -2
  624. package/dist/src/zed-integration/schema.d.ts +116 -13
  625. package/dist/src/zed-integration/schema.js +7 -1
  626. package/dist/src/zed-integration/schema.js.map +1 -1
  627. package/dist/src/zed-integration/zedIntegration.d.ts +4 -4
  628. package/dist/src/zed-integration/zedIntegration.js +197 -159
  629. package/dist/src/zed-integration/zedIntegration.js.map +1 -1
  630. package/dist/tsconfig.tsbuildinfo +1 -1
  631. package/package.json +9 -11
@@ -3,396 +3,769 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ export var MergeStrategy;
7
+ (function (MergeStrategy) {
8
+ // Replace the old value with the new value. This is the default.
9
+ MergeStrategy["REPLACE"] = "replace";
10
+ // Concatenate arrays.
11
+ MergeStrategy["CONCAT"] = "concat";
12
+ // Merge arrays, ensuring unique values.
13
+ MergeStrategy["UNION"] = "union";
14
+ // Shallow merge objects.
15
+ MergeStrategy["SHALLOW_MERGE"] = "shallow_merge";
16
+ })(MergeStrategy || (MergeStrategy = {}));
6
17
  /**
7
18
  * The canonical schema for all settings.
8
19
  * The structure of this object defines the structure of the `Settings` type.
9
20
  * `as const` is crucial for TypeScript to infer the most specific types possible.
10
21
  */
11
22
  export const SETTINGS_SCHEMA = {
12
- // UI Settings
13
- theme: {
14
- type: 'string',
15
- label: 'Theme',
16
- category: 'UI',
17
- requiresRestart: false,
18
- default: undefined,
19
- description: 'The color theme for the UI.',
20
- showInDialog: false,
21
- },
22
- customThemes: {
23
+ // Maintained for compatibility/criticality
24
+ mcpServers: {
23
25
  type: 'object',
24
- label: 'Custom Themes',
25
- category: 'UI',
26
- requiresRestart: false,
27
- default: {},
28
- description: 'Custom theme definitions.',
29
- showInDialog: false,
30
- },
31
- hideWindowTitle: {
32
- type: 'boolean',
33
- label: 'Hide Window Title',
34
- category: 'UI',
35
- requiresRestart: true,
36
- default: false,
37
- description: 'Hide the window title bar',
38
- showInDialog: true,
39
- },
40
- hideTips: {
41
- type: 'boolean',
42
- label: 'Hide Tips',
43
- category: 'UI',
44
- requiresRestart: false,
45
- default: false,
46
- description: 'Hide helpful tips in the UI',
47
- showInDialog: true,
48
- },
49
- hideBanner: {
50
- type: 'boolean',
51
- label: 'Hide Banner',
52
- category: 'UI',
53
- requiresRestart: false,
54
- default: false,
55
- description: 'Hide the application banner',
56
- showInDialog: true,
57
- },
58
- hideFooter: {
59
- type: 'boolean',
60
- label: 'Hide Footer',
61
- category: 'UI',
62
- requiresRestart: false,
63
- default: false,
64
- description: 'Hide the footer from the UI',
65
- showInDialog: true,
66
- },
67
- showMemoryUsage: {
68
- type: 'boolean',
69
- label: 'Show Memory Usage',
70
- category: 'UI',
71
- requiresRestart: false,
72
- default: false,
73
- description: 'Display memory usage information in the UI',
74
- showInDialog: true,
75
- },
76
- usageStatisticsEnabled: {
77
- type: 'boolean',
78
- label: 'Enable Usage Statistics',
79
- category: 'General',
80
- requiresRestart: true,
81
- default: true,
82
- description: 'Enable collection of usage statistics',
83
- showInDialog: false, // All details are shown in /privacy and dependent on auth type
84
- },
85
- autoConfigureMaxOldSpaceSize: {
86
- type: 'boolean',
87
- label: 'Auto Configure Max Old Space Size',
88
- category: 'General',
26
+ label: 'MCP Servers',
27
+ category: 'Advanced',
89
28
  requiresRestart: true,
90
- default: false,
91
- description: 'Automatically configure Node.js memory limits',
92
- showInDialog: true,
93
- },
94
- preferredEditor: {
95
- type: 'string',
96
- label: 'Preferred Editor',
97
- category: 'General',
98
- requiresRestart: false,
99
- default: undefined,
100
- description: 'The preferred editor to open files in.',
101
- showInDialog: false,
102
- },
103
- maxSessionTurns: {
104
- type: 'number',
105
- label: 'Max Session Turns',
106
- category: 'General',
107
- requiresRestart: false,
108
- default: -1,
109
- description: 'Maximum number of user/model/tool turns to keep in a session. -1 means unlimited.',
110
- showInDialog: true,
111
- },
112
- memoryImportFormat: {
113
- type: 'string',
114
- label: 'Memory Import Format',
115
- category: 'General',
116
- requiresRestart: false,
117
- default: undefined,
118
- description: 'The format to use when importing memory.',
29
+ default: {},
30
+ description: 'Configuration for MCP servers.',
119
31
  showInDialog: false,
32
+ mergeStrategy: MergeStrategy.SHALLOW_MERGE,
120
33
  },
121
- memoryDiscoveryMaxDirs: {
122
- type: 'number',
123
- label: 'Memory Discovery Max Dirs',
124
- category: 'General',
125
- requiresRestart: false,
126
- default: 200,
127
- description: 'Maximum number of directories to search for memory.',
128
- showInDialog: true,
129
- },
130
- contextFileName: {
34
+ general: {
131
35
  type: 'object',
132
- label: 'Context File Name',
36
+ label: 'General',
133
37
  category: 'General',
134
38
  requiresRestart: false,
135
- default: undefined,
136
- description: 'The name of the context file.',
137
- showInDialog: false,
138
- },
139
- vimMode: {
140
- type: 'boolean',
141
- label: 'Vim Mode',
142
- category: 'Mode',
143
- requiresRestart: false,
144
- default: false,
145
- description: 'Enable Vim keybindings',
146
- showInDialog: true,
147
- },
148
- ideMode: {
149
- type: 'boolean',
150
- label: 'IDE Mode',
151
- category: 'Mode',
152
- requiresRestart: true,
153
- default: false,
154
- description: 'Enable IDE integration mode',
155
- showInDialog: true,
156
- },
157
- accessibility: {
158
- type: 'object',
159
- label: 'Accessibility',
160
- category: 'Accessibility',
161
- requiresRestart: true,
162
39
  default: {},
163
- description: 'Accessibility settings.',
40
+ description: 'General application settings.',
164
41
  showInDialog: false,
165
42
  properties: {
166
- disableLoadingPhrases: {
43
+ preferredEditor: {
44
+ type: 'string',
45
+ label: 'Preferred Editor',
46
+ category: 'General',
47
+ requiresRestart: false,
48
+ default: undefined,
49
+ description: 'The preferred editor to open files in.',
50
+ showInDialog: false,
51
+ },
52
+ vimMode: {
53
+ type: 'boolean',
54
+ label: 'Vim Mode',
55
+ category: 'General',
56
+ requiresRestart: false,
57
+ default: false,
58
+ description: 'Enable Vim keybindings',
59
+ showInDialog: true,
60
+ },
61
+ disableAutoUpdate: {
62
+ type: 'boolean',
63
+ label: 'Disable Auto Update',
64
+ category: 'General',
65
+ requiresRestart: false,
66
+ default: false,
67
+ description: 'Disable automatic updates',
68
+ showInDialog: true,
69
+ },
70
+ disableUpdateNag: {
71
+ type: 'boolean',
72
+ label: 'Disable Update Nag',
73
+ category: 'General',
74
+ requiresRestart: false,
75
+ default: false,
76
+ description: 'Disable update notification prompts.',
77
+ showInDialog: false,
78
+ },
79
+ checkpointing: {
80
+ type: 'object',
81
+ label: 'Checkpointing',
82
+ category: 'General',
83
+ requiresRestart: true,
84
+ default: {},
85
+ description: 'Session checkpointing settings.',
86
+ showInDialog: false,
87
+ properties: {
88
+ enabled: {
89
+ type: 'boolean',
90
+ label: 'Enable Checkpointing',
91
+ category: 'General',
92
+ requiresRestart: true,
93
+ default: false,
94
+ description: 'Enable session checkpointing for recovery',
95
+ showInDialog: false,
96
+ },
97
+ },
98
+ },
99
+ enablePromptCompletion: {
167
100
  type: 'boolean',
168
- label: 'Disable Loading Phrases',
169
- category: 'Accessibility',
101
+ label: 'Enable Prompt Completion',
102
+ category: 'General',
170
103
  requiresRestart: true,
171
104
  default: false,
172
- description: 'Disable loading phrases for accessibility',
105
+ description: 'Enable AI-powered prompt completion suggestions while typing.',
106
+ showInDialog: true,
107
+ },
108
+ debugKeystrokeLogging: {
109
+ type: 'boolean',
110
+ label: 'Debug Keystroke Logging',
111
+ category: 'General',
112
+ requiresRestart: false,
113
+ default: false,
114
+ description: 'Enable debug logging of keystrokes to the console.',
173
115
  showInDialog: true,
174
116
  },
175
117
  },
176
118
  },
177
- checkpointing: {
119
+ ui: {
178
120
  type: 'object',
179
- label: 'Checkpointing',
180
- category: 'Checkpointing',
181
- requiresRestart: true,
121
+ label: 'UI',
122
+ category: 'UI',
123
+ requiresRestart: false,
182
124
  default: {},
183
- description: 'Session checkpointing settings.',
125
+ description: 'User interface settings.',
184
126
  showInDialog: false,
185
127
  properties: {
186
- enabled: {
128
+ theme: {
129
+ type: 'string',
130
+ label: 'Theme',
131
+ category: 'UI',
132
+ requiresRestart: false,
133
+ default: undefined,
134
+ description: 'The color theme for the UI.',
135
+ showInDialog: false,
136
+ },
137
+ customThemes: {
138
+ type: 'object',
139
+ label: 'Custom Themes',
140
+ category: 'UI',
141
+ requiresRestart: false,
142
+ default: {},
143
+ description: 'Custom theme definitions.',
144
+ showInDialog: false,
145
+ },
146
+ hideWindowTitle: {
187
147
  type: 'boolean',
188
- label: 'Enable Checkpointing',
189
- category: 'Checkpointing',
148
+ label: 'Hide Window Title',
149
+ category: 'UI',
190
150
  requiresRestart: true,
191
151
  default: false,
192
- description: 'Enable session checkpointing for recovery',
152
+ description: 'Hide the window title bar',
153
+ showInDialog: true,
154
+ },
155
+ hideTips: {
156
+ type: 'boolean',
157
+ label: 'Hide Tips',
158
+ category: 'UI',
159
+ requiresRestart: false,
160
+ default: false,
161
+ description: 'Hide helpful tips in the UI',
162
+ showInDialog: true,
163
+ },
164
+ hideBanner: {
165
+ type: 'boolean',
166
+ label: 'Hide Banner',
167
+ category: 'UI',
168
+ requiresRestart: false,
169
+ default: false,
170
+ description: 'Hide the application banner',
171
+ showInDialog: true,
172
+ },
173
+ hideContextSummary: {
174
+ type: 'boolean',
175
+ label: 'Hide Context Summary',
176
+ category: 'UI',
177
+ requiresRestart: false,
178
+ default: false,
179
+ description: 'Hide the context summary (GEMINI.md, MCP servers) above the input.',
180
+ showInDialog: true,
181
+ },
182
+ footer: {
183
+ type: 'object',
184
+ label: 'Footer',
185
+ category: 'UI',
186
+ requiresRestart: false,
187
+ default: {},
188
+ description: 'Settings for the footer.',
189
+ showInDialog: false,
190
+ properties: {
191
+ hideCWD: {
192
+ type: 'boolean',
193
+ label: 'Hide CWD',
194
+ category: 'UI',
195
+ requiresRestart: false,
196
+ default: false,
197
+ description: 'Hide the current working directory path in the footer.',
198
+ showInDialog: true,
199
+ },
200
+ hideSandboxStatus: {
201
+ type: 'boolean',
202
+ label: 'Hide Sandbox Status',
203
+ category: 'UI',
204
+ requiresRestart: false,
205
+ default: false,
206
+ description: 'Hide the sandbox status indicator in the footer.',
207
+ showInDialog: true,
208
+ },
209
+ hideModelInfo: {
210
+ type: 'boolean',
211
+ label: 'Hide Model Info',
212
+ category: 'UI',
213
+ requiresRestart: false,
214
+ default: false,
215
+ description: 'Hide the model name and context usage in the footer.',
216
+ showInDialog: true,
217
+ },
218
+ },
219
+ },
220
+ hideFooter: {
221
+ type: 'boolean',
222
+ label: 'Hide Footer',
223
+ category: 'UI',
224
+ requiresRestart: false,
225
+ default: false,
226
+ description: 'Hide the footer from the UI',
227
+ showInDialog: true,
228
+ },
229
+ showMemoryUsage: {
230
+ type: 'boolean',
231
+ label: 'Show Memory Usage',
232
+ category: 'UI',
233
+ requiresRestart: false,
234
+ default: false,
235
+ description: 'Display memory usage information in the UI',
236
+ showInDialog: true,
237
+ },
238
+ showLineNumbers: {
239
+ type: 'boolean',
240
+ label: 'Show Line Numbers',
241
+ category: 'UI',
242
+ requiresRestart: false,
243
+ default: false,
244
+ description: 'Show line numbers in the chat.',
245
+ showInDialog: true,
246
+ },
247
+ showCitations: {
248
+ type: 'boolean',
249
+ label: 'Show Citations',
250
+ category: 'UI',
251
+ requiresRestart: false,
252
+ default: false,
253
+ description: 'Show citations for generated text in the chat.',
254
+ showInDialog: true,
255
+ },
256
+ customWittyPhrases: {
257
+ type: 'array',
258
+ label: 'Custom Witty Phrases',
259
+ category: 'UI',
260
+ requiresRestart: false,
261
+ default: [],
262
+ description: 'Custom witty phrases to display during loading.',
263
+ showInDialog: false,
264
+ },
265
+ accessibility: {
266
+ type: 'object',
267
+ label: 'Accessibility',
268
+ category: 'UI',
269
+ requiresRestart: true,
270
+ default: {},
271
+ description: 'Accessibility settings.',
193
272
  showInDialog: false,
273
+ properties: {
274
+ disableLoadingPhrases: {
275
+ type: 'boolean',
276
+ label: 'Disable Loading Phrases',
277
+ category: 'UI',
278
+ requiresRestart: true,
279
+ default: false,
280
+ description: 'Disable loading phrases for accessibility',
281
+ showInDialog: true,
282
+ },
283
+ screenReader: {
284
+ type: 'boolean',
285
+ label: 'Screen Reader Mode',
286
+ category: 'UI',
287
+ requiresRestart: true,
288
+ default: undefined,
289
+ description: 'Render output in plain-text to be more screen reader accessible',
290
+ showInDialog: true,
291
+ },
292
+ },
194
293
  },
195
294
  },
196
295
  },
197
- fileFiltering: {
296
+ ide: {
198
297
  type: 'object',
199
- label: 'File Filtering',
200
- category: 'File Filtering',
298
+ label: 'IDE',
299
+ category: 'IDE',
201
300
  requiresRestart: true,
202
301
  default: {},
203
- description: 'Settings for git-aware file filtering.',
302
+ description: 'IDE integration settings.',
204
303
  showInDialog: false,
205
304
  properties: {
206
- respectGitIgnore: {
305
+ enabled: {
207
306
  type: 'boolean',
208
- label: 'Respect .gitignore',
209
- category: 'File Filtering',
307
+ label: 'IDE Mode',
308
+ category: 'IDE',
210
309
  requiresRestart: true,
211
- default: true,
212
- description: 'Respect .gitignore files when searching',
310
+ default: false,
311
+ description: 'Enable IDE integration mode',
213
312
  showInDialog: true,
214
313
  },
215
- respectGeminiIgnore: {
314
+ hasSeenNudge: {
216
315
  type: 'boolean',
217
- label: 'Respect .geminiignore',
218
- category: 'File Filtering',
219
- requiresRestart: true,
220
- default: true,
221
- description: 'Respect .geminiignore files when searching',
222
- showInDialog: true,
316
+ label: 'Has Seen IDE Integration Nudge',
317
+ category: 'IDE',
318
+ requiresRestart: false,
319
+ default: false,
320
+ description: 'Whether the user has seen the IDE integration nudge.',
321
+ showInDialog: false,
223
322
  },
224
- enableRecursiveFileSearch: {
323
+ },
324
+ },
325
+ privacy: {
326
+ type: 'object',
327
+ label: 'Privacy',
328
+ category: 'Privacy',
329
+ requiresRestart: true,
330
+ default: {},
331
+ description: 'Privacy-related settings.',
332
+ showInDialog: false,
333
+ properties: {
334
+ usageStatisticsEnabled: {
225
335
  type: 'boolean',
226
- label: 'Enable Recursive File Search',
227
- category: 'File Filtering',
336
+ label: 'Enable Usage Statistics',
337
+ category: 'Privacy',
228
338
  requiresRestart: true,
229
339
  default: true,
230
- description: 'Enable recursive file search functionality',
231
- showInDialog: true,
340
+ description: 'Enable collection of usage statistics',
341
+ showInDialog: false,
232
342
  },
233
343
  },
234
344
  },
235
- disableAutoUpdate: {
236
- type: 'boolean',
237
- label: 'Disable Auto Update',
238
- category: 'Updates',
239
- requiresRestart: false,
240
- default: false,
241
- description: 'Disable automatic updates',
242
- showInDialog: true,
243
- },
244
- selectedAuthType: {
245
- type: 'string',
246
- label: 'Selected Auth Type',
247
- category: 'Advanced',
248
- requiresRestart: true,
249
- default: undefined,
250
- description: 'The currently selected authentication type.',
251
- showInDialog: false,
252
- },
253
- useExternalAuth: {
254
- type: 'boolean',
255
- label: 'Use External Auth',
256
- category: 'Advanced',
257
- requiresRestart: true,
258
- default: undefined,
259
- description: 'Whether to use an external authentication flow.',
260
- showInDialog: false,
261
- },
262
- sandbox: {
345
+ telemetry: {
263
346
  type: 'object',
264
- label: 'Sandbox',
265
- category: 'Advanced',
266
- requiresRestart: true,
267
- default: undefined,
268
- description: 'Sandbox execution environment (can be a boolean or a path string).',
269
- showInDialog: false,
270
- },
271
- coreTools: {
272
- type: 'array',
273
- label: 'Core Tools',
274
- category: 'Advanced',
275
- requiresRestart: true,
276
- default: undefined,
277
- description: 'Paths to core tool definitions.',
278
- showInDialog: false,
279
- },
280
- excludeTools: {
281
- type: 'array',
282
- label: 'Exclude Tools',
283
- category: 'Advanced',
284
- requiresRestart: true,
285
- default: undefined,
286
- description: 'Tool names to exclude from discovery.',
287
- showInDialog: false,
288
- },
289
- toolDiscoveryCommand: {
290
- type: 'string',
291
- label: 'Tool Discovery Command',
292
- category: 'Advanced',
293
- requiresRestart: true,
294
- default: undefined,
295
- description: 'Command to run for tool discovery.',
296
- showInDialog: false,
297
- },
298
- toolCallCommand: {
299
- type: 'string',
300
- label: 'Tool Call Command',
301
- category: 'Advanced',
302
- requiresRestart: true,
303
- default: undefined,
304
- description: 'Command to run for tool calls.',
305
- showInDialog: false,
306
- },
307
- mcpServerCommand: {
308
- type: 'string',
309
- label: 'MCP Server Command',
347
+ label: 'Telemetry',
310
348
  category: 'Advanced',
311
349
  requiresRestart: true,
312
350
  default: undefined,
313
- description: 'Command to start an MCP server.',
351
+ description: 'Telemetry configuration.',
314
352
  showInDialog: false,
315
353
  },
316
- mcpServers: {
354
+ model: {
317
355
  type: 'object',
318
- label: 'MCP Servers',
319
- category: 'Advanced',
320
- requiresRestart: true,
356
+ label: 'Model',
357
+ category: 'Model',
358
+ requiresRestart: false,
321
359
  default: {},
322
- description: 'Configuration for MCP servers.',
360
+ description: 'Settings related to the generative model.',
323
361
  showInDialog: false,
362
+ properties: {
363
+ name: {
364
+ type: 'string',
365
+ label: 'Model',
366
+ category: 'Model',
367
+ requiresRestart: false,
368
+ default: undefined,
369
+ description: 'The Gemini model to use for conversations.',
370
+ showInDialog: false,
371
+ },
372
+ maxSessionTurns: {
373
+ type: 'number',
374
+ label: 'Max Session Turns',
375
+ category: 'Model',
376
+ requiresRestart: false,
377
+ default: -1,
378
+ description: 'Maximum number of user/model/tool turns to keep in a session. -1 means unlimited.',
379
+ showInDialog: true,
380
+ },
381
+ summarizeToolOutput: {
382
+ type: 'object',
383
+ label: 'Summarize Tool Output',
384
+ category: 'Model',
385
+ requiresRestart: false,
386
+ default: undefined,
387
+ description: 'Settings for summarizing tool output.',
388
+ showInDialog: false,
389
+ },
390
+ chatCompression: {
391
+ type: 'object',
392
+ label: 'Chat Compression',
393
+ category: 'Model',
394
+ requiresRestart: false,
395
+ default: undefined,
396
+ description: 'Chat compression settings.',
397
+ showInDialog: false,
398
+ },
399
+ skipNextSpeakerCheck: {
400
+ type: 'boolean',
401
+ label: 'Skip Next Speaker Check',
402
+ category: 'Model',
403
+ requiresRestart: false,
404
+ default: true,
405
+ description: 'Skip the next speaker check.',
406
+ showInDialog: true,
407
+ },
408
+ },
324
409
  },
325
- allowMCPServers: {
326
- type: 'array',
327
- label: 'Allow MCP Servers',
328
- category: 'Advanced',
329
- requiresRestart: true,
330
- default: undefined,
331
- description: 'A whitelist of MCP servers to allow.',
410
+ context: {
411
+ type: 'object',
412
+ label: 'Context',
413
+ category: 'Context',
414
+ requiresRestart: false,
415
+ default: {},
416
+ description: 'Settings for managing context provided to the model.',
332
417
  showInDialog: false,
418
+ properties: {
419
+ fileName: {
420
+ type: 'object',
421
+ label: 'Context File Name',
422
+ category: 'Context',
423
+ requiresRestart: false,
424
+ default: undefined,
425
+ description: 'The name of the context file.',
426
+ showInDialog: false,
427
+ },
428
+ importFormat: {
429
+ type: 'string',
430
+ label: 'Memory Import Format',
431
+ category: 'Context',
432
+ requiresRestart: false,
433
+ default: undefined,
434
+ description: 'The format to use when importing memory.',
435
+ showInDialog: false,
436
+ },
437
+ discoveryMaxDirs: {
438
+ type: 'number',
439
+ label: 'Memory Discovery Max Dirs',
440
+ category: 'Context',
441
+ requiresRestart: false,
442
+ default: 200,
443
+ description: 'Maximum number of directories to search for memory.',
444
+ showInDialog: true,
445
+ },
446
+ includeDirectories: {
447
+ type: 'array',
448
+ label: 'Include Directories',
449
+ category: 'Context',
450
+ requiresRestart: false,
451
+ default: [],
452
+ description: 'Additional directories to include in the workspace context. Missing directories will be skipped with a warning.',
453
+ showInDialog: false,
454
+ mergeStrategy: MergeStrategy.CONCAT,
455
+ },
456
+ loadMemoryFromIncludeDirectories: {
457
+ type: 'boolean',
458
+ label: 'Load Memory From Include Directories',
459
+ category: 'Context',
460
+ requiresRestart: false,
461
+ default: false,
462
+ description: 'Whether to load memory files from include directories.',
463
+ showInDialog: true,
464
+ },
465
+ fileFiltering: {
466
+ type: 'object',
467
+ label: 'File Filtering',
468
+ category: 'Context',
469
+ requiresRestart: true,
470
+ default: {},
471
+ description: 'Settings for git-aware file filtering.',
472
+ showInDialog: false,
473
+ properties: {
474
+ respectGitIgnore: {
475
+ type: 'boolean',
476
+ label: 'Respect .gitignore',
477
+ category: 'Context',
478
+ requiresRestart: true,
479
+ default: true,
480
+ description: 'Respect .gitignore files when searching',
481
+ showInDialog: true,
482
+ },
483
+ respectGeminiIgnore: {
484
+ type: 'boolean',
485
+ label: 'Respect .geminiignore',
486
+ category: 'Context',
487
+ requiresRestart: true,
488
+ default: true,
489
+ description: 'Respect .geminiignore files when searching',
490
+ showInDialog: true,
491
+ },
492
+ enableRecursiveFileSearch: {
493
+ type: 'boolean',
494
+ label: 'Enable Recursive File Search',
495
+ category: 'Context',
496
+ requiresRestart: true,
497
+ default: true,
498
+ description: 'Enable recursive file search functionality',
499
+ showInDialog: true,
500
+ },
501
+ disableFuzzySearch: {
502
+ type: 'boolean',
503
+ label: 'Disable Fuzzy Search',
504
+ category: 'Context',
505
+ requiresRestart: true,
506
+ default: false,
507
+ description: 'Disable fuzzy search when searching for files.',
508
+ showInDialog: true,
509
+ },
510
+ },
511
+ },
512
+ },
333
513
  },
334
- excludeMCPServers: {
335
- type: 'array',
336
- label: 'Exclude MCP Servers',
337
- category: 'Advanced',
514
+ tools: {
515
+ type: 'object',
516
+ label: 'Tools',
517
+ category: 'Tools',
338
518
  requiresRestart: true,
339
- default: undefined,
340
- description: 'A blacklist of MCP servers to exclude.',
519
+ default: {},
520
+ description: 'Settings for built-in and custom tools.',
341
521
  showInDialog: false,
522
+ properties: {
523
+ sandbox: {
524
+ type: 'object',
525
+ label: 'Sandbox',
526
+ category: 'Tools',
527
+ requiresRestart: true,
528
+ default: undefined,
529
+ description: 'Sandbox execution environment (can be a boolean or a path string).',
530
+ showInDialog: false,
531
+ },
532
+ usePty: {
533
+ type: 'boolean',
534
+ label: 'Use node-pty for Shell Execution',
535
+ category: 'Tools',
536
+ requiresRestart: true,
537
+ default: false,
538
+ description: 'Use node-pty for shell command execution. Fallback to child_process still applies.',
539
+ showInDialog: true,
540
+ },
541
+ autoAccept: {
542
+ type: 'boolean',
543
+ label: 'Auto Accept',
544
+ category: 'Tools',
545
+ requiresRestart: false,
546
+ default: false,
547
+ description: 'Automatically accept and execute tool calls that are considered safe (e.g., read-only operations).',
548
+ showInDialog: true,
549
+ },
550
+ core: {
551
+ type: 'array',
552
+ label: 'Core Tools',
553
+ category: 'Tools',
554
+ requiresRestart: true,
555
+ default: undefined,
556
+ description: 'Paths to core tool definitions.',
557
+ showInDialog: false,
558
+ },
559
+ allowed: {
560
+ type: 'array',
561
+ label: 'Allowed Tools',
562
+ category: 'Advanced',
563
+ requiresRestart: true,
564
+ default: undefined,
565
+ description: 'A list of tool names that will bypass the confirmation dialog.',
566
+ showInDialog: false,
567
+ },
568
+ exclude: {
569
+ type: 'array',
570
+ label: 'Exclude Tools',
571
+ category: 'Tools',
572
+ requiresRestart: true,
573
+ default: undefined,
574
+ description: 'Tool names to exclude from discovery.',
575
+ showInDialog: false,
576
+ },
577
+ discoveryCommand: {
578
+ type: 'string',
579
+ label: 'Tool Discovery Command',
580
+ category: 'Tools',
581
+ requiresRestart: true,
582
+ default: undefined,
583
+ description: 'Command to run for tool discovery.',
584
+ showInDialog: false,
585
+ },
586
+ callCommand: {
587
+ type: 'string',
588
+ label: 'Tool Call Command',
589
+ category: 'Tools',
590
+ requiresRestart: true,
591
+ default: undefined,
592
+ description: 'Command to run for tool calls.',
593
+ showInDialog: false,
594
+ },
595
+ useRipgrep: {
596
+ type: 'boolean',
597
+ label: 'Use Ripgrep',
598
+ category: 'Tools',
599
+ requiresRestart: false,
600
+ default: false,
601
+ description: 'Use ripgrep for file content search instead of the fallback implementation. Provides faster search performance.',
602
+ showInDialog: true,
603
+ },
604
+ },
342
605
  },
343
- telemetry: {
606
+ mcp: {
344
607
  type: 'object',
345
- label: 'Telemetry',
346
- category: 'Advanced',
608
+ label: 'MCP',
609
+ category: 'MCP',
347
610
  requiresRestart: true,
348
- default: undefined,
349
- description: 'Telemetry configuration.',
611
+ default: {},
612
+ description: 'Settings for Model Context Protocol (MCP) servers.',
350
613
  showInDialog: false,
614
+ properties: {
615
+ serverCommand: {
616
+ type: 'string',
617
+ label: 'MCP Server Command',
618
+ category: 'MCP',
619
+ requiresRestart: true,
620
+ default: undefined,
621
+ description: 'Command to start an MCP server.',
622
+ showInDialog: false,
623
+ },
624
+ allowed: {
625
+ type: 'array',
626
+ label: 'Allow MCP Servers',
627
+ category: 'MCP',
628
+ requiresRestart: true,
629
+ default: undefined,
630
+ description: 'A list of MCP servers to allow.',
631
+ showInDialog: false,
632
+ },
633
+ excluded: {
634
+ type: 'array',
635
+ label: 'Exclude MCP Servers',
636
+ category: 'MCP',
637
+ requiresRestart: true,
638
+ default: undefined,
639
+ description: 'A list of MCP servers to exclude.',
640
+ showInDialog: false,
641
+ },
642
+ },
351
643
  },
352
- bugCommand: {
353
- type: 'object',
354
- label: 'Bug Command',
644
+ useSmartEdit: {
645
+ type: 'boolean',
646
+ label: 'Use Smart Edit',
355
647
  category: 'Advanced',
356
648
  requiresRestart: false,
357
- default: undefined,
358
- description: 'Configuration for the bug report command.',
649
+ default: false,
650
+ description: 'Enable the smart-edit tool instead of the replace tool.',
359
651
  showInDialog: false,
360
652
  },
361
- summarizeToolOutput: {
653
+ security: {
362
654
  type: 'object',
363
- label: 'Summarize Tool Output',
364
- category: 'Advanced',
365
- requiresRestart: false,
366
- default: undefined,
367
- description: 'Settings for summarizing tool output.',
368
- showInDialog: false,
369
- },
370
- dnsResolutionOrder: {
371
- type: 'string',
372
- label: 'DNS Resolution Order',
373
- category: 'Advanced',
655
+ label: 'Security',
656
+ category: 'Security',
374
657
  requiresRestart: true,
375
- default: undefined,
376
- description: 'The DNS resolution order.',
658
+ default: {},
659
+ description: 'Security-related settings.',
377
660
  showInDialog: false,
661
+ properties: {
662
+ folderTrust: {
663
+ type: 'object',
664
+ label: 'Folder Trust',
665
+ category: 'Security',
666
+ requiresRestart: false,
667
+ default: {},
668
+ description: 'Settings for folder trust.',
669
+ showInDialog: false,
670
+ properties: {
671
+ enabled: {
672
+ type: 'boolean',
673
+ label: 'Folder Trust',
674
+ category: 'Security',
675
+ requiresRestart: true,
676
+ default: false,
677
+ description: 'Setting to track whether Folder trust is enabled.',
678
+ showInDialog: true,
679
+ },
680
+ },
681
+ },
682
+ auth: {
683
+ type: 'object',
684
+ label: 'Authentication',
685
+ category: 'Security',
686
+ requiresRestart: true,
687
+ default: {},
688
+ description: 'Authentication settings.',
689
+ showInDialog: false,
690
+ properties: {
691
+ selectedType: {
692
+ type: 'string',
693
+ label: 'Selected Auth Type',
694
+ category: 'Security',
695
+ requiresRestart: true,
696
+ default: undefined,
697
+ description: 'The currently selected authentication type.',
698
+ showInDialog: false,
699
+ },
700
+ enforcedType: {
701
+ type: 'string',
702
+ label: 'Enforced Auth Type',
703
+ category: 'Advanced',
704
+ requiresRestart: true,
705
+ default: undefined,
706
+ description: 'The required auth type. If this does not match the selected auth type, the user will be prompted to re-authenticate.',
707
+ showInDialog: false,
708
+ },
709
+ useExternal: {
710
+ type: 'boolean',
711
+ label: 'Use External Auth',
712
+ category: 'Security',
713
+ requiresRestart: true,
714
+ default: undefined,
715
+ description: 'Whether to use an external authentication flow.',
716
+ showInDialog: false,
717
+ },
718
+ },
719
+ },
720
+ },
378
721
  },
379
- excludedProjectEnvVars: {
380
- type: 'array',
381
- label: 'Excluded Project Environment Variables',
722
+ advanced: {
723
+ type: 'object',
724
+ label: 'Advanced',
382
725
  category: 'Advanced',
383
- requiresRestart: false,
384
- default: ['DEBUG', 'DEBUG_MODE'],
385
- description: 'Environment variables to exclude from project context.',
386
- showInDialog: false,
387
- },
388
- disableUpdateNag: {
389
- type: 'boolean',
390
- label: 'Disable Update Nag',
391
- category: 'Updates',
392
- requiresRestart: false,
393
- default: false,
394
- description: 'Disable update notification prompts.',
726
+ requiresRestart: true,
727
+ default: {},
728
+ description: 'Advanced settings for power users.',
395
729
  showInDialog: false,
730
+ properties: {
731
+ autoConfigureMemory: {
732
+ type: 'boolean',
733
+ label: 'Auto Configure Max Old Space Size',
734
+ category: 'Advanced',
735
+ requiresRestart: true,
736
+ default: false,
737
+ description: 'Automatically configure Node.js memory limits',
738
+ showInDialog: false,
739
+ },
740
+ dnsResolutionOrder: {
741
+ type: 'string',
742
+ label: 'DNS Resolution Order',
743
+ category: 'Advanced',
744
+ requiresRestart: true,
745
+ default: undefined,
746
+ description: 'The DNS resolution order.',
747
+ showInDialog: false,
748
+ },
749
+ excludedEnvVars: {
750
+ type: 'array',
751
+ label: 'Excluded Project Environment Variables',
752
+ category: 'Advanced',
753
+ requiresRestart: false,
754
+ default: ['DEBUG', 'DEBUG_MODE'],
755
+ description: 'Environment variables to exclude from project context.',
756
+ showInDialog: false,
757
+ mergeStrategy: MergeStrategy.UNION,
758
+ },
759
+ bugCommand: {
760
+ type: 'object',
761
+ label: 'Bug Command',
762
+ category: 'Advanced',
763
+ requiresRestart: false,
764
+ default: undefined,
765
+ description: 'Configuration for the bug report command.',
766
+ showInDialog: false,
767
+ },
768
+ },
396
769
  },
397
770
  // Cell-specific configuration loaded from ~/.cell-cli/config.yaml
398
771
  keycloakClientId: {
@@ -449,15 +822,6 @@ export const SETTINGS_SCHEMA = {
449
822
  description: 'Whether to load memory files from include directories.',
450
823
  showInDialog: true,
451
824
  },
452
- model: {
453
- type: 'string',
454
- label: 'Model',
455
- category: 'General',
456
- requiresRestart: false,
457
- default: undefined,
458
- description: 'The Gemini model to use for conversations.',
459
- showInDialog: false,
460
- },
461
825
  hasSeenIdeIntegrationNudge: {
462
826
  type: 'boolean',
463
827
  label: 'Has Seen IDE Integration Nudge',
@@ -485,23 +849,56 @@ export const SETTINGS_SCHEMA = {
485
849
  description: 'Setting to track whether Folder trust is enabled.',
486
850
  showInDialog: true,
487
851
  },
488
- chatCompression: {
852
+ experimental: {
489
853
  type: 'object',
490
- label: 'Chat Compression',
491
- category: 'General',
492
- requiresRestart: false,
493
- default: undefined,
494
- description: 'Chat compression settings.',
854
+ label: 'Experimental',
855
+ category: 'Experimental',
856
+ requiresRestart: true,
857
+ default: {},
858
+ description: 'Setting to enable experimental features',
495
859
  showInDialog: false,
860
+ properties: {
861
+ extensionManagement: {
862
+ type: 'boolean',
863
+ label: 'Extension Management',
864
+ category: 'Experimental',
865
+ requiresRestart: true,
866
+ default: true,
867
+ description: 'Enable extension management features.',
868
+ showInDialog: false,
869
+ },
870
+ },
496
871
  },
497
- showLineNumbers: {
498
- type: 'boolean',
499
- label: 'Show Line Numbers',
500
- category: 'General',
501
- requiresRestart: false,
502
- default: false,
503
- description: 'Show line numbers in the chat.',
504
- showInDialog: true,
872
+ extensions: {
873
+ type: 'object',
874
+ label: 'Extensions',
875
+ category: 'Extensions',
876
+ requiresRestart: true,
877
+ default: {},
878
+ description: 'Settings for extensions.',
879
+ showInDialog: false,
880
+ properties: {
881
+ disabled: {
882
+ type: 'array',
883
+ label: 'Disabled Extensions',
884
+ category: 'Extensions',
885
+ requiresRestart: true,
886
+ default: [],
887
+ description: 'List of disabled extensions.',
888
+ showInDialog: false,
889
+ mergeStrategy: MergeStrategy.UNION,
890
+ },
891
+ workspacesWithMigrationNudge: {
892
+ type: 'array',
893
+ label: 'Workspaces with Migration Nudge',
894
+ category: 'Extensions',
895
+ requiresRestart: false,
896
+ default: [],
897
+ description: 'List of workspaces for which the migration nudge has been shown.',
898
+ showInDialog: false,
899
+ mergeStrategy: MergeStrategy.UNION,
900
+ },
901
+ },
505
902
  },
506
903
  };
507
904
  //# sourceMappingURL=settingsSchema.js.map