@google/gemini-cli 0.1.13 → 0.1.15-nightly.250731.0c6f7884

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 (246) hide show
  1. package/README.md +50 -1
  2. package/dist/google-gemini-cli-0.1.15.tgz +0 -0
  3. package/dist/package.json +6 -3
  4. package/dist/src/config/config.d.ts +5 -3
  5. package/dist/src/config/config.js +29 -32
  6. package/dist/src/config/config.js.map +1 -1
  7. package/dist/src/config/extension.d.ts +1 -0
  8. package/dist/src/config/extension.js +4 -0
  9. package/dist/src/config/extension.js.map +1 -1
  10. package/dist/src/config/settings.d.ts +9 -2
  11. package/dist/src/config/settings.js +25 -10
  12. package/dist/src/config/settings.js.map +1 -1
  13. package/dist/src/gemini.d.ts +1 -0
  14. package/dist/src/gemini.js +41 -36
  15. package/dist/src/gemini.js.map +1 -1
  16. package/dist/src/generated/git-commit.d.ts +1 -1
  17. package/dist/src/generated/git-commit.js +1 -1
  18. package/dist/src/patches/is-in-ci.d.ts +7 -0
  19. package/dist/src/patches/is-in-ci.js +15 -0
  20. package/dist/src/patches/is-in-ci.js.map +1 -0
  21. package/dist/src/services/BuiltinCommandLoader.d.ts +24 -0
  22. package/dist/src/services/BuiltinCommandLoader.js +74 -0
  23. package/dist/src/services/BuiltinCommandLoader.js.map +1 -0
  24. package/dist/src/services/CommandService.d.ts +47 -7
  25. package/dist/src/services/CommandService.js +77 -56
  26. package/dist/src/services/CommandService.js.map +1 -1
  27. package/dist/src/services/FileCommandLoader.d.ts +49 -0
  28. package/dist/src/services/FileCommandLoader.js +208 -0
  29. package/dist/src/services/FileCommandLoader.js.map +1 -0
  30. package/dist/src/services/McpPromptLoader.d.ts +25 -0
  31. package/dist/src/services/McpPromptLoader.js +192 -0
  32. package/dist/src/services/McpPromptLoader.js.map +1 -0
  33. package/dist/src/services/prompt-processors/argumentProcessor.d.ts +21 -0
  34. package/dist/src/services/prompt-processors/argumentProcessor.js +28 -0
  35. package/dist/src/services/prompt-processors/argumentProcessor.js.map +1 -0
  36. package/dist/src/services/prompt-processors/shellProcessor.d.ts +32 -0
  37. package/dist/src/services/prompt-processors/shellProcessor.js +77 -0
  38. package/dist/src/services/prompt-processors/shellProcessor.js.map +1 -0
  39. package/dist/src/services/prompt-processors/types.d.ts +38 -0
  40. package/dist/src/services/prompt-processors/types.js +14 -0
  41. package/dist/src/services/prompt-processors/types.js.map +1 -0
  42. package/dist/src/services/types.d.ts +22 -0
  43. package/dist/src/services/types.js +7 -0
  44. package/dist/src/services/types.js.map +1 -0
  45. package/dist/src/ui/App.js +96 -64
  46. package/dist/src/ui/App.js.map +1 -1
  47. package/dist/src/ui/colors.js +6 -0
  48. package/dist/src/ui/colors.js.map +1 -1
  49. package/dist/src/ui/commands/aboutCommand.js +2 -0
  50. package/dist/src/ui/commands/aboutCommand.js.map +1 -1
  51. package/dist/src/ui/commands/authCommand.js +2 -0
  52. package/dist/src/ui/commands/authCommand.js.map +1 -1
  53. package/dist/src/ui/commands/bugCommand.js +2 -0
  54. package/dist/src/ui/commands/bugCommand.js.map +1 -1
  55. package/dist/src/ui/commands/chatCommand.js +51 -3
  56. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  57. package/dist/src/ui/commands/clearCommand.js +2 -0
  58. package/dist/src/ui/commands/clearCommand.js.map +1 -1
  59. package/dist/src/ui/commands/compressCommand.js +3 -1
  60. package/dist/src/ui/commands/compressCommand.js.map +1 -1
  61. package/dist/src/ui/commands/copyCommand.d.ts +7 -0
  62. package/dist/src/ui/commands/copyCommand.js +59 -0
  63. package/dist/src/ui/commands/copyCommand.js.map +1 -0
  64. package/dist/src/ui/commands/corgiCommand.js +2 -0
  65. package/dist/src/ui/commands/corgiCommand.js.map +1 -1
  66. package/dist/src/ui/commands/docsCommand.js +2 -0
  67. package/dist/src/ui/commands/docsCommand.js.map +1 -1
  68. package/dist/src/ui/commands/editorCommand.js +2 -0
  69. package/dist/src/ui/commands/editorCommand.js.map +1 -1
  70. package/dist/src/ui/commands/extensionsCommand.js +2 -0
  71. package/dist/src/ui/commands/extensionsCommand.js.map +1 -1
  72. package/dist/src/ui/commands/helpCommand.js +3 -1
  73. package/dist/src/ui/commands/helpCommand.js.map +1 -1
  74. package/dist/src/ui/commands/ideCommand.js +103 -109
  75. package/dist/src/ui/commands/ideCommand.js.map +1 -1
  76. package/dist/src/ui/commands/initCommand.d.ts +7 -0
  77. package/dist/src/ui/commands/initCommand.js +76 -0
  78. package/dist/src/ui/commands/initCommand.js.map +1 -0
  79. package/dist/src/ui/commands/mcpCommand.js +229 -8
  80. package/dist/src/ui/commands/mcpCommand.js.map +1 -1
  81. package/dist/src/ui/commands/memoryCommand.js +11 -4
  82. package/dist/src/ui/commands/memoryCommand.js.map +1 -1
  83. package/dist/src/ui/commands/privacyCommand.js +2 -0
  84. package/dist/src/ui/commands/privacyCommand.js.map +1 -1
  85. package/dist/src/ui/commands/quitCommand.js +3 -1
  86. package/dist/src/ui/commands/quitCommand.js.map +1 -1
  87. package/dist/src/ui/commands/restoreCommand.js +2 -0
  88. package/dist/src/ui/commands/restoreCommand.js.map +1 -1
  89. package/dist/src/ui/commands/statsCommand.js +5 -1
  90. package/dist/src/ui/commands/statsCommand.js.map +1 -1
  91. package/dist/src/ui/commands/themeCommand.js +2 -0
  92. package/dist/src/ui/commands/themeCommand.js.map +1 -1
  93. package/dist/src/ui/commands/toolsCommand.js +2 -0
  94. package/dist/src/ui/commands/toolsCommand.js.map +1 -1
  95. package/dist/src/ui/commands/types.d.ts +42 -3
  96. package/dist/src/ui/commands/types.js +6 -1
  97. package/dist/src/ui/commands/types.js.map +1 -1
  98. package/dist/src/ui/commands/vimCommand.d.ts +7 -0
  99. package/dist/src/ui/commands/vimCommand.js +23 -0
  100. package/dist/src/ui/commands/vimCommand.js.map +1 -0
  101. package/dist/src/ui/components/ContextSummaryDisplay.d.ts +2 -2
  102. package/dist/src/ui/components/ContextSummaryDisplay.js +12 -12
  103. package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -1
  104. package/dist/src/ui/components/Footer.d.ts +1 -0
  105. package/dist/src/ui/components/Footer.js +2 -2
  106. package/dist/src/ui/components/Footer.js.map +1 -1
  107. package/dist/src/ui/components/Header.js +1 -1
  108. package/dist/src/ui/components/Header.js.map +1 -1
  109. package/dist/src/ui/components/Help.d.ts +1 -1
  110. package/dist/src/ui/components/Help.js +2 -2
  111. package/dist/src/ui/components/Help.js.map +1 -1
  112. package/dist/src/ui/components/IDEContextDetailDisplay.d.ts +12 -0
  113. package/dist/src/ui/components/IDEContextDetailDisplay.js +12 -0
  114. package/dist/src/ui/components/IDEContextDetailDisplay.js.map +1 -0
  115. package/dist/src/ui/components/InputPrompt.d.ts +3 -1
  116. package/dist/src/ui/components/InputPrompt.js +20 -99
  117. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  118. package/dist/src/ui/components/ShellConfirmationDialog.d.ts +15 -0
  119. package/dist/src/ui/components/ShellConfirmationDialog.js +44 -0
  120. package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -0
  121. package/dist/src/ui/components/ThemeDialog.js +42 -17
  122. package/dist/src/ui/components/ThemeDialog.js.map +1 -1
  123. package/dist/src/ui/components/Tips.js +1 -1
  124. package/dist/src/ui/components/Tips.js.map +1 -1
  125. package/dist/src/ui/components/messages/DiffRenderer.d.ts +1 -0
  126. package/dist/src/ui/components/messages/DiffRenderer.js +12 -11
  127. package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -1
  128. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +19 -7
  129. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  130. package/dist/src/ui/components/shared/text-buffer.d.ts +273 -3
  131. package/dist/src/ui/components/shared/text-buffer.js +425 -79
  132. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  133. package/dist/src/ui/components/shared/vim-buffer-actions.d.ts +72 -0
  134. package/dist/src/ui/components/shared/vim-buffer-actions.js +565 -0
  135. package/dist/src/ui/components/shared/vim-buffer-actions.js.map +1 -0
  136. package/dist/src/ui/contexts/VimModeContext.d.ts +19 -0
  137. package/dist/src/ui/contexts/VimModeContext.js +48 -0
  138. package/dist/src/ui/contexts/VimModeContext.js.map +1 -0
  139. package/dist/src/ui/hooks/atCommandProcessor.js +103 -56
  140. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  141. package/dist/src/ui/hooks/shellCommandProcessor.d.ts +1 -0
  142. package/dist/src/ui/hooks/shellCommandProcessor.js +139 -186
  143. package/dist/src/ui/hooks/shellCommandProcessor.js.map +1 -1
  144. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +8 -4
  145. package/dist/src/ui/hooks/slashCommandProcessor.js +209 -108
  146. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  147. package/dist/src/ui/hooks/useAuthCommand.js +2 -2
  148. package/dist/src/ui/hooks/useAuthCommand.js.map +1 -1
  149. package/dist/src/ui/hooks/useCompletion.d.ts +3 -1
  150. package/dist/src/ui/hooks/useCompletion.js +173 -65
  151. package/dist/src/ui/hooks/useCompletion.js.map +1 -1
  152. package/dist/src/ui/hooks/useConsoleMessages.js +53 -37
  153. package/dist/src/ui/hooks/useConsoleMessages.js.map +1 -1
  154. package/dist/src/ui/hooks/useGeminiStream.js +62 -13
  155. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  156. package/dist/src/ui/hooks/useInputHistory.d.ts +1 -1
  157. package/dist/src/ui/hooks/useKeypress.js +5 -2
  158. package/dist/src/ui/hooks/useKeypress.js.map +1 -1
  159. package/dist/src/ui/hooks/usePhraseCycler.js +1 -0
  160. package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
  161. package/dist/src/ui/hooks/useReactToolScheduler.js +0 -1
  162. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  163. package/dist/src/ui/hooks/useShellHistory.d.ts +3 -2
  164. package/dist/src/ui/hooks/useShellHistory.js.map +1 -1
  165. package/dist/src/ui/hooks/useThemeCommand.js +24 -23
  166. package/dist/src/ui/hooks/useThemeCommand.js.map +1 -1
  167. package/dist/src/ui/hooks/vim.d.ts +28 -0
  168. package/dist/src/ui/hooks/vim.js +630 -0
  169. package/dist/src/ui/hooks/vim.js.map +1 -0
  170. package/dist/src/ui/themes/ansi-light.js +2 -0
  171. package/dist/src/ui/themes/ansi-light.js.map +1 -1
  172. package/dist/src/ui/themes/ansi.js +2 -0
  173. package/dist/src/ui/themes/ansi.js.map +1 -1
  174. package/dist/src/ui/themes/atom-one-dark.js +2 -0
  175. package/dist/src/ui/themes/atom-one-dark.js.map +1 -1
  176. package/dist/src/ui/themes/ayu-light.js +3 -1
  177. package/dist/src/ui/themes/ayu-light.js.map +1 -1
  178. package/dist/src/ui/themes/ayu.js +3 -1
  179. package/dist/src/ui/themes/ayu.js.map +1 -1
  180. package/dist/src/ui/themes/color-utils.d.ts +21 -0
  181. package/dist/src/ui/themes/color-utils.js +221 -0
  182. package/dist/src/ui/themes/color-utils.js.map +1 -0
  183. package/dist/src/ui/themes/dracula.js +2 -0
  184. package/dist/src/ui/themes/dracula.js.map +1 -1
  185. package/dist/src/ui/themes/github-dark.js +2 -0
  186. package/dist/src/ui/themes/github-dark.js.map +1 -1
  187. package/dist/src/ui/themes/github-light.js +2 -0
  188. package/dist/src/ui/themes/github-light.js.map +1 -1
  189. package/dist/src/ui/themes/googlecode.js +2 -0
  190. package/dist/src/ui/themes/googlecode.js.map +1 -1
  191. package/dist/src/ui/themes/no-color.js +3 -1
  192. package/dist/src/ui/themes/no-color.js.map +1 -1
  193. package/dist/src/ui/themes/shades-of-purple.d.ts +1 -1
  194. package/dist/src/ui/themes/shades-of-purple.js +3 -1
  195. package/dist/src/ui/themes/shades-of-purple.js.map +1 -1
  196. package/dist/src/ui/themes/theme-manager.d.ts +31 -6
  197. package/dist/src/ui/themes/theme-manager.js +113 -34
  198. package/dist/src/ui/themes/theme-manager.js.map +1 -1
  199. package/dist/src/ui/themes/theme.d.ts +23 -3
  200. package/dist/src/ui/themes/theme.js +244 -182
  201. package/dist/src/ui/themes/theme.js.map +1 -1
  202. package/dist/src/ui/themes/xcode.js +2 -0
  203. package/dist/src/ui/themes/xcode.js.map +1 -1
  204. package/dist/src/ui/types.d.ts +9 -1
  205. package/dist/src/ui/utils/CodeColorizer.d.ts +3 -1
  206. package/dist/src/ui/utils/CodeColorizer.js +23 -11
  207. package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
  208. package/dist/src/ui/utils/commandUtils.d.ts +1 -0
  209. package/dist/src/ui/utils/commandUtils.js +47 -0
  210. package/dist/src/ui/utils/commandUtils.js.map +1 -1
  211. package/dist/src/ui/utils/markdownUtilities.js +1 -1
  212. package/dist/src/ui/utils/textUtils.d.ts +0 -8
  213. package/dist/src/ui/utils/textUtils.js +0 -22
  214. package/dist/src/ui/utils/textUtils.js.map +1 -1
  215. package/dist/src/ui/utils/updateCheck.d.ts +7 -1
  216. package/dist/src/ui/utils/updateCheck.js +9 -3
  217. package/dist/src/ui/utils/updateCheck.js.map +1 -1
  218. package/dist/src/utils/events.d.ts +11 -0
  219. package/dist/src/utils/events.js +13 -0
  220. package/dist/src/utils/events.js.map +1 -0
  221. package/dist/src/utils/handleAutoUpdate.d.ts +10 -0
  222. package/dist/src/utils/handleAutoUpdate.js +97 -0
  223. package/dist/src/utils/handleAutoUpdate.js.map +1 -0
  224. package/dist/src/utils/installationInfo.d.ts +23 -0
  225. package/dist/src/utils/installationInfo.js +154 -0
  226. package/dist/src/utils/installationInfo.js.map +1 -0
  227. package/dist/src/utils/sandbox-macos-permissive-closed.sb +6 -0
  228. package/dist/src/utils/sandbox-macos-permissive-open.sb +6 -0
  229. package/dist/src/utils/sandbox-macos-permissive-proxied.sb +6 -0
  230. package/dist/src/utils/sandbox-macos-restrictive-closed.sb +6 -0
  231. package/dist/src/utils/sandbox-macos-restrictive-open.sb +6 -0
  232. package/dist/src/utils/sandbox-macos-restrictive-proxied.sb +6 -0
  233. package/dist/src/utils/sandbox.d.ts +2 -2
  234. package/dist/src/utils/sandbox.js +36 -13
  235. package/dist/src/utils/sandbox.js.map +1 -1
  236. package/dist/src/utils/updateEventEmitter.d.ts +11 -0
  237. package/dist/src/utils/updateEventEmitter.js +12 -0
  238. package/dist/src/utils/updateEventEmitter.js.map +1 -0
  239. package/dist/src/utils/userStartupWarnings.js +22 -1
  240. package/dist/src/utils/userStartupWarnings.js.map +1 -1
  241. package/dist/src/validateNonInterActiveAuth.d.ts +7 -0
  242. package/dist/src/validateNonInterActiveAuth.js +35 -0
  243. package/dist/src/validateNonInterActiveAuth.js.map +1 -0
  244. package/dist/tsconfig.tsbuildinfo +1 -1
  245. package/package.json +7 -4
  246. package/dist/google-gemini-cli-0.1.12.tgz +0 -0
@@ -4,6 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import * as fsPromises from 'fs/promises';
7
+ import { CommandKind, } from './types.js';
7
8
  import path from 'path';
8
9
  import { MessageType } from '../types.js';
9
10
  const getSavedChatTags = async (context, mtSortDesc) => {
@@ -38,6 +39,7 @@ const getSavedChatTags = async (context, mtSortDesc) => {
38
39
  const listCommand = {
39
40
  name: 'list',
40
41
  description: 'List saved conversation checkpoints',
42
+ kind: CommandKind.BUILT_IN,
41
43
  action: async (context) => {
42
44
  const chatDetails = await getSavedChatTags(context, false);
43
45
  if (chatDetails.length === 0) {
@@ -47,9 +49,14 @@ const listCommand = {
47
49
  content: 'No saved conversation checkpoints found.',
48
50
  };
49
51
  }
52
+ const maxNameLength = Math.max(...chatDetails.map((chat) => chat.name.length));
50
53
  let message = 'List of saved conversations:\n\n';
51
54
  for (const chat of chatDetails) {
52
- message += ` - \u001b[36m${chat.name}\u001b[0m\n`;
55
+ const paddedName = chat.name.padEnd(maxNameLength, ' ');
56
+ const isoString = chat.mtime.toISOString();
57
+ const match = isoString.match(/(\d{4}-\d{2}-\d{2})T(\d{2}:\d{2}:\d{2})/);
58
+ const formattedDate = match ? `${match[1]} ${match[2]}` : 'Invalid Date';
59
+ message += ` - \u001b[36m${paddedName}\u001b[0m \u001b[90m(saved on ${formattedDate})\u001b[0m\n`;
53
60
  }
54
61
  message += `\n\u001b[90mNote: Newest last, oldest first\u001b[0m`;
55
62
  return {
@@ -62,6 +69,7 @@ const listCommand = {
62
69
  const saveCommand = {
63
70
  name: 'save',
64
71
  description: 'Save the current conversation as a checkpoint. Usage: /chat save <tag>',
72
+ kind: CommandKind.BUILT_IN,
65
73
  action: async (context, args) => {
66
74
  const tag = args.trim();
67
75
  if (!tag) {
@@ -101,8 +109,9 @@ const saveCommand = {
101
109
  };
102
110
  const resumeCommand = {
103
111
  name: 'resume',
104
- altName: 'load',
112
+ altNames: ['load'],
105
113
  description: 'Resume a conversation from a checkpoint. Usage: /chat resume <tag>',
114
+ kind: CommandKind.BUILT_IN,
106
115
  action: async (context, args) => {
107
116
  const tag = args.trim();
108
117
  if (!tag) {
@@ -161,9 +170,48 @@ const resumeCommand = {
161
170
  .filter((name) => name.startsWith(partialArg));
162
171
  },
163
172
  };
173
+ const deleteCommand = {
174
+ name: 'delete',
175
+ description: 'Delete a conversation checkpoint. Usage: /chat delete <tag>',
176
+ kind: CommandKind.BUILT_IN,
177
+ action: async (context, args) => {
178
+ const tag = args.trim();
179
+ if (!tag) {
180
+ return {
181
+ type: 'message',
182
+ messageType: 'error',
183
+ content: 'Missing tag. Usage: /chat delete <tag>',
184
+ };
185
+ }
186
+ const { logger } = context.services;
187
+ await logger.initialize();
188
+ const deleted = await logger.deleteCheckpoint(tag);
189
+ if (deleted) {
190
+ return {
191
+ type: 'message',
192
+ messageType: 'info',
193
+ content: `Conversation checkpoint '${tag}' has been deleted.`,
194
+ };
195
+ }
196
+ else {
197
+ return {
198
+ type: 'message',
199
+ messageType: 'error',
200
+ content: `Error: No checkpoint found with tag '${tag}'.`,
201
+ };
202
+ }
203
+ },
204
+ completion: async (context, partialArg) => {
205
+ const chatDetails = await getSavedChatTags(context, true);
206
+ return chatDetails
207
+ .map((chat) => chat.name)
208
+ .filter((name) => name.startsWith(partialArg));
209
+ },
210
+ };
164
211
  export const chatCommand = {
165
212
  name: 'chat',
166
213
  description: 'Manage conversation history.',
167
- subCommands: [listCommand, saveCommand, resumeCommand],
214
+ kind: CommandKind.BUILT_IN,
215
+ subCommands: [listCommand, saveCommand, resumeCommand, deleteCommand],
168
216
  };
169
217
  //# sourceMappingURL=chatCommand.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chatCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/chatCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/chatCommand.ts"],"names":[],"mappings":"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"}
@@ -4,9 +4,11 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { uiTelemetryService } from '@google/gemini-cli-core';
7
+ import { CommandKind } from './types.js';
7
8
  export const clearCommand = {
8
9
  name: 'clear',
9
10
  description: 'clear the screen and conversation history',
11
+ kind: CommandKind.BUILT_IN,
10
12
  action: async (context, _args) => {
11
13
  const geminiClient = context.services.config?.getGeminiClient();
12
14
  if (geminiClient) {
@@ -1 +1 @@
1
- {"version":3,"file":"clearCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/clearCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,2CAA2C;IACxD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QAC/B,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC;QAEhE,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC,uCAAuC,CAAC,CAAC;YACpE,yEAAyE;YACzE,iEAAiE;YACjE,MAAM,YAAY,CAAC,SAAS,EAAE,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;QACnD,CAAC;QAED,kBAAkB,CAAC,yBAAyB,EAAE,CAAC;QAC/C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"clearCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/clearCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAgB,MAAM,YAAY,CAAC;AAEvD,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,2CAA2C;IACxD,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QAC/B,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC;QAEhE,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC,uCAAuC,CAAC,CAAC;YACpE,yEAAyE;YACzE,iEAAiE;YACjE,MAAM,YAAY,CAAC,SAAS,EAAE,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;QACnD,CAAC;QAED,kBAAkB,CAAC,yBAAyB,EAAE,CAAC;QAC/C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF,CAAC"}
@@ -4,10 +4,12 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { MessageType } from '../types.js';
7
+ import { CommandKind } from './types.js';
7
8
  export const compressCommand = {
8
9
  name: 'compress',
9
- altName: 'summarize',
10
+ altNames: ['summarize'],
10
11
  description: 'Compresses the context by replacing it with a summary.',
12
+ kind: CommandKind.BUILT_IN,
11
13
  action: async (context) => {
12
14
  const { ui } = context;
13
15
  if (ui.pendingItem) {
@@ -1 +1 @@
1
- {"version":3,"file":"compressCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/compressCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAA0B,WAAW,EAAE,MAAM,aAAa,CAAC;AAGlE,MAAM,CAAC,MAAM,eAAe,GAAiB;IAC3C,IAAI,EAAE,UAAU;IAChB,OAAO,EAAE,WAAW;IACpB,WAAW,EAAE,wDAAwD;IACrE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC;QACvB,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACnB,EAAE,CAAC,OAAO,CACR;gBACE,IAAI,EAAE,WAAW,CAAC,KAAK;gBACvB,IAAI,EAAE,4DAA4D;aACnE,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAA2B;YAC7C,IAAI,EAAE,WAAW,CAAC,WAAW;YAC7B,WAAW,EAAE;gBACX,SAAS,EAAE,IAAI;gBACf,kBAAkB,EAAE,IAAI;gBACxB,aAAa,EAAE,IAAI;aACpB;SACF,CAAC;QAEF,IAAI,CAAC;YACH,EAAE,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YAClC,MAAM,QAAQ,GAAG,YAAY,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YAC1C,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAC9C,EAAE,eAAe,EAAE;gBACnB,EAAE,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACpC,IAAI,UAAU,EAAE,CAAC;gBACf,EAAE,CAAC,OAAO,CACR;oBACE,IAAI,EAAE,WAAW,CAAC,WAAW;oBAC7B,WAAW,EAAE;wBACX,SAAS,EAAE,KAAK;wBAChB,kBAAkB,EAAE,UAAU,CAAC,kBAAkB;wBACjD,aAAa,EAAE,UAAU,CAAC,aAAa;qBACxC;iBACwB,EAC3B,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,EAAE,CAAC,OAAO,CACR;oBACE,IAAI,EAAE,WAAW,CAAC,KAAK;oBACvB,IAAI,EAAE,kCAAkC;iBACzC,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,EAAE,CAAC,OAAO,CACR;gBACE,IAAI,EAAE,WAAW,CAAC,KAAK;gBACvB,IAAI,EAAE,oCACJ,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAC3C,EAAE;aACH,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"compressCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/compressCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAA0B,WAAW,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,WAAW,EAAgB,MAAM,YAAY,CAAC;AAEvD,MAAM,CAAC,MAAM,eAAe,GAAiB;IAC3C,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,CAAC,WAAW,CAAC;IACvB,WAAW,EAAE,wDAAwD;IACrE,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC;QACvB,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACnB,EAAE,CAAC,OAAO,CACR;gBACE,IAAI,EAAE,WAAW,CAAC,KAAK;gBACvB,IAAI,EAAE,4DAA4D;aACnE,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAA2B;YAC7C,IAAI,EAAE,WAAW,CAAC,WAAW;YAC7B,WAAW,EAAE;gBACX,SAAS,EAAE,IAAI;gBACf,kBAAkB,EAAE,IAAI;gBACxB,aAAa,EAAE,IAAI;aACpB;SACF,CAAC;QAEF,IAAI,CAAC;YACH,EAAE,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YAClC,MAAM,QAAQ,GAAG,YAAY,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YAC1C,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAC9C,EAAE,eAAe,EAAE;gBACnB,EAAE,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACpC,IAAI,UAAU,EAAE,CAAC;gBACf,EAAE,CAAC,OAAO,CACR;oBACE,IAAI,EAAE,WAAW,CAAC,WAAW;oBAC7B,WAAW,EAAE;wBACX,SAAS,EAAE,KAAK;wBAChB,kBAAkB,EAAE,UAAU,CAAC,kBAAkB;wBACjD,aAAa,EAAE,UAAU,CAAC,aAAa;qBACxC;iBACwB,EAC3B,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,EAAE,CAAC,OAAO,CACR;oBACE,IAAI,EAAE,WAAW,CAAC,KAAK;oBACvB,IAAI,EAAE,kCAAkC;iBACzC,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,EAAE,CAAC,OAAO,CACR;gBACE,IAAI,EAAE,WAAW,CAAC,KAAK;gBACvB,IAAI,EAAE,oCACJ,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAC3C,EAAE;aACH,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { SlashCommand } from './types.js';
7
+ export declare const copyCommand: SlashCommand;
@@ -0,0 +1,59 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { copyToClipboard } from '../utils/commandUtils.js';
7
+ import { CommandKind, } from './types.js';
8
+ export const copyCommand = {
9
+ name: 'copy',
10
+ description: 'Copy the last result or code snippet to clipboard',
11
+ kind: CommandKind.BUILT_IN,
12
+ action: async (context, _args) => {
13
+ const chat = await context.services.config?.getGeminiClient()?.getChat();
14
+ const history = chat?.getHistory();
15
+ // Get the last message from the AI (model role)
16
+ const lastAiMessage = history
17
+ ? history.filter((item) => item.role === 'model').pop()
18
+ : undefined;
19
+ if (!lastAiMessage) {
20
+ return {
21
+ type: 'message',
22
+ messageType: 'info',
23
+ content: 'No output in history',
24
+ };
25
+ }
26
+ // Extract text from the parts
27
+ const lastAiOutput = lastAiMessage.parts
28
+ ?.filter((part) => part.text)
29
+ .map((part) => part.text)
30
+ .join('');
31
+ if (lastAiOutput) {
32
+ try {
33
+ await copyToClipboard(lastAiOutput);
34
+ return {
35
+ type: 'message',
36
+ messageType: 'info',
37
+ content: 'Last output copied to the clipboard',
38
+ };
39
+ }
40
+ catch (error) {
41
+ const message = error instanceof Error ? error.message : String(error);
42
+ console.debug(message);
43
+ return {
44
+ type: 'message',
45
+ messageType: 'error',
46
+ content: 'Failed to copy to the clipboard.',
47
+ };
48
+ }
49
+ }
50
+ else {
51
+ return {
52
+ type: 'message',
53
+ messageType: 'info',
54
+ content: 'Last AI output contains no text to copy.',
55
+ };
56
+ }
57
+ },
58
+ };
59
+ //# sourceMappingURL=copyCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"copyCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/copyCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EACL,WAAW,GAGZ,MAAM,YAAY,CAAC;AAEpB,MAAM,CAAC,MAAM,WAAW,GAAiB;IACvC,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,mDAAmD;IAChE,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAA4C,EAAE;QACzE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,OAAO,EAAE,CAAC;QACzE,MAAM,OAAO,GAAG,IAAI,EAAE,UAAU,EAAE,CAAC;QAEnC,gDAAgD;QAChD,MAAM,aAAa,GAAG,OAAO;YAC3B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,GAAG,EAAE;YACvD,CAAC,CAAC,SAAS,CAAC;QAEd,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,MAAM;gBACnB,OAAO,EAAE,sBAAsB;aAChC,CAAC;QACJ,CAAC;QACD,8BAA8B;QAC9B,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK;YACtC,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;aAC5B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;aACxB,IAAI,CAAC,EAAE,CAAC,CAAC;QAEZ,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC;gBACH,MAAM,eAAe,CAAC,YAAY,CAAC,CAAC;gBAEpC,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,MAAM;oBACnB,OAAO,EAAE,qCAAqC;iBAC/C,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAEvB,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,OAAO;oBACpB,OAAO,EAAE,kCAAkC;iBAC5C,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,MAAM;gBACnB,OAAO,EAAE,0CAA0C;aACpD,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -3,9 +3,11 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { CommandKind } from './types.js';
6
7
  export const corgiCommand = {
7
8
  name: 'corgi',
8
9
  description: 'Toggles corgi mode.',
10
+ kind: CommandKind.BUILT_IN,
9
11
  action: (context, _args) => {
10
12
  context.ui.toggleCorgiMode();
11
13
  },
@@ -1 +1 @@
1
- {"version":3,"file":"corgiCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/corgiCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,qBAAqB;IAClC,MAAM,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QACzB,OAAO,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC;IAC/B,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"corgiCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/corgiCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAqB,MAAM,YAAY,CAAC;AAE5D,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,qBAAqB;IAClC,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QACzB,OAAO,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC;IAC/B,CAAC;CACF,CAAC"}
@@ -5,10 +5,12 @@
5
5
  */
6
6
  import open from 'open';
7
7
  import process from 'node:process';
8
+ import { CommandKind, } from './types.js';
8
9
  import { MessageType } from '../types.js';
9
10
  export const docsCommand = {
10
11
  name: 'docs',
11
12
  description: 'open full Gemini CLI documentation in your browser',
13
+ kind: CommandKind.BUILT_IN,
12
14
  action: async (context) => {
13
15
  const docsUrl = 'https://goo.gle/gemini-cli-docs';
14
16
  if (process.env.SANDBOX && process.env.SANDBOX !== 'sandbox-exec') {
@@ -1 +1 @@
1
- {"version":3,"file":"docsCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/docsCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,CAAC,MAAM,WAAW,GAAiB;IACvC,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,oDAAoD;IACjE,MAAM,EAAE,KAAK,EAAE,OAAuB,EAAiB,EAAE;QACvD,MAAM,OAAO,GAAG,iCAAiC,CAAC;QAElD,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,cAAc,EAAE,CAAC;YAClE,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;gBACE,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,IAAI,EAAE,6EAA6E,OAAO,EAAE;aAC7F,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;gBACE,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,IAAI,EAAE,0CAA0C,OAAO,EAAE;aAC1D,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACF,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"docsCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/docsCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAGL,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,CAAC,MAAM,WAAW,GAAiB;IACvC,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,oDAAoD;IACjE,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,KAAK,EAAE,OAAuB,EAAiB,EAAE;QACvD,MAAM,OAAO,GAAG,iCAAiC,CAAC;QAElD,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,cAAc,EAAE,CAAC;YAClE,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;gBACE,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,IAAI,EAAE,6EAA6E,OAAO,EAAE;aAC7F,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;gBACE,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,IAAI,EAAE,0CAA0C,OAAO,EAAE;aAC1D,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACF,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -3,9 +3,11 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { CommandKind, } from './types.js';
6
7
  export const editorCommand = {
7
8
  name: 'editor',
8
9
  description: 'set external editor preference',
10
+ kind: CommandKind.BUILT_IN,
9
11
  action: () => ({
10
12
  type: 'dialog',
11
13
  dialog: 'editor',
@@ -1 +1 @@
1
- {"version":3,"file":"editorCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/editorCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,CAAC,MAAM,aAAa,GAAiB;IACzC,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,gCAAgC;IAC7C,MAAM,EAAE,GAA2B,EAAE,CAAC,CAAC;QACrC,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,QAAQ;KACjB,CAAC;CACH,CAAC"}
1
+ {"version":3,"file":"editorCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/editorCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,WAAW,GAGZ,MAAM,YAAY,CAAC;AAEpB,MAAM,CAAC,MAAM,aAAa,GAAiB;IACzC,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,gCAAgC;IAC7C,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,GAA2B,EAAE,CAAC,CAAC;QACrC,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,QAAQ;KACjB,CAAC;CACH,CAAC"}
@@ -3,10 +3,12 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { CommandKind, } from './types.js';
6
7
  import { MessageType } from '../types.js';
7
8
  export const extensionsCommand = {
8
9
  name: 'extensions',
9
10
  description: 'list active extensions',
11
+ kind: CommandKind.BUILT_IN,
10
12
  action: async (context) => {
11
13
  const activeExtensions = context.services.config
12
14
  ?.getExtensions()
@@ -1 +1 @@
1
- {"version":3,"file":"extensionsCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/extensionsCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,CAAC,MAAM,iBAAiB,GAAiB;IAC7C,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,wBAAwB;IACrC,MAAM,EAAE,KAAK,EAAE,OAAuB,EAAiB,EAAE;QACvD,MAAM,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM;YAC9C,EAAE,aAAa,EAAE;aAChB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjC,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvD,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;gBACE,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,IAAI,EAAE,uBAAuB;aAC9B,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAAG,gBAAgB,CAAC,GAAG,CACzC,CAAC,GAAG,EAAE,EAAE,CAAC,iBAAiB,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,OAAO,YAAY,CAChE,CAAC;QACF,MAAM,OAAO,GAAG,yBAAyB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAEvE,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;YACE,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,IAAI,EAAE,OAAO;SACd,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;IACJ,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"extensionsCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/extensionsCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAGL,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,CAAC,MAAM,iBAAiB,GAAiB;IAC7C,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,wBAAwB;IACrC,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,KAAK,EAAE,OAAuB,EAAiB,EAAE;QACvD,MAAM,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM;YAC9C,EAAE,aAAa,EAAE;aAChB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjC,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvD,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;gBACE,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,IAAI,EAAE,uBAAuB;aAC9B,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAAG,gBAAgB,CAAC,GAAG,CACzC,CAAC,GAAG,EAAE,EAAE,CAAC,iBAAiB,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,OAAO,YAAY,CAChE,CAAC;QACF,MAAM,OAAO,GAAG,yBAAyB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAEvE,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;YACE,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,IAAI,EAAE,OAAO;SACd,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -3,10 +3,12 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { CommandKind } from './types.js';
6
7
  export const helpCommand = {
7
8
  name: 'help',
8
- altName: '?',
9
+ altNames: ['?'],
9
10
  description: 'for help on gemini-cli',
11
+ kind: CommandKind.BUILT_IN,
10
12
  action: (_context, _args) => {
11
13
  console.debug('Opening help UI ...');
12
14
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"helpCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/helpCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,CAAC,MAAM,WAAW,GAAiB;IACvC,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,GAAG;IACZ,WAAW,EAAE,wBAAwB;IACrC,MAAM,EAAE,CAAC,QAAQ,EAAE,KAAK,EAA0B,EAAE;QAClD,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACrC,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,MAAM;SACf,CAAC;IACJ,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"helpCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/helpCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAwC,MAAM,YAAY,CAAC;AAE/E,MAAM,CAAC,MAAM,WAAW,GAAiB;IACvC,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,CAAC,GAAG,CAAC;IACf,WAAW,EAAE,wBAAwB;IACrC,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,CAAC,QAAQ,EAAE,KAAK,EAA0B,EAAE;QAClD,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACrC,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,MAAM;SACf,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -3,121 +3,115 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { fileURLToPath } from 'url';
7
- import { getMCPDiscoveryState, getMCPServerStatus, IDE_SERVER_NAME, MCPDiscoveryState, MCPServerStatus, } from '@google/gemini-cli-core';
8
- import * as child_process from 'child_process';
9
- import * as process from 'process';
10
- import { glob } from 'glob';
11
- import * as path from 'path';
12
- const VSCODE_COMMAND = process.platform === 'win32' ? 'code.cmd' : 'code';
13
- const VSCODE_COMPANION_EXTENSION_FOLDER = 'vscode-ide-companion';
14
- function isVSCodeInstalled() {
15
- try {
16
- child_process.execSync(process.platform === 'win32'
17
- ? `where.exe ${VSCODE_COMMAND}`
18
- : `command -v ${VSCODE_COMMAND}`, { stdio: 'ignore' });
19
- return true;
20
- }
21
- catch {
22
- return false;
23
- }
24
- }
6
+ import { IDEConnectionStatus, getIdeDisplayName, getIdeInstaller, } from '@google/gemini-cli-core';
7
+ import { CommandKind, } from './types.js';
8
+ import { SettingScope } from '../../config/settings.js';
25
9
  export const ideCommand = (config) => {
26
- if (!config?.getIdeMode()) {
10
+ if (!config?.getIdeModeFeature()) {
11
+ return null;
12
+ }
13
+ const currentIDE = config.getIdeClient().getCurrentIde();
14
+ if (!currentIDE) {
27
15
  return null;
28
16
  }
29
- return {
17
+ const ideSlashCommand = {
30
18
  name: 'ide',
31
19
  description: 'manage IDE integration',
32
- subCommands: [
33
- {
34
- name: 'status',
35
- description: 'check status of IDE integration',
36
- action: (_context) => {
37
- const status = getMCPServerStatus(IDE_SERVER_NAME);
38
- const discoveryState = getMCPDiscoveryState();
39
- switch (status) {
40
- case MCPServerStatus.CONNECTED:
41
- return {
42
- type: 'message',
43
- messageType: 'info',
44
- content: `🟢 Connected`,
45
- };
46
- case MCPServerStatus.CONNECTING:
47
- return {
48
- type: 'message',
49
- messageType: 'info',
50
- content: `🔄 Initializing...`,
51
- };
52
- case MCPServerStatus.DISCONNECTED:
53
- default:
54
- if (discoveryState === MCPDiscoveryState.IN_PROGRESS) {
55
- return {
56
- type: 'message',
57
- messageType: 'info',
58
- content: `🔄 Initializing...`,
59
- };
60
- }
61
- else {
62
- return {
63
- type: 'message',
64
- messageType: 'error',
65
- content: `🔴 Disconnected`,
66
- };
67
- }
68
- }
69
- },
70
- },
71
- {
72
- name: 'install',
73
- description: 'install required VS Code companion extension',
74
- action: async (context) => {
75
- if (!isVSCodeInstalled()) {
76
- context.ui.addItem({
77
- type: 'error',
78
- text: `VS Code command-line tool "${VSCODE_COMMAND}" not found in your PATH.`,
79
- }, Date.now());
80
- return;
81
- }
82
- const bundleDir = path.dirname(fileURLToPath(import.meta.url));
83
- // The VSIX file is copied to the bundle directory as part of the build.
84
- let vsixFiles = glob.sync(path.join(bundleDir, '*.vsix'));
85
- if (vsixFiles.length === 0) {
86
- // If the VSIX file is not in the bundle, it might be a dev
87
- // environment running with `npm start`. Look for it in the original
88
- // package location, relative to the bundle dir.
89
- const devPath = path.join(bundleDir, '..', '..', '..', '..', '..', VSCODE_COMPANION_EXTENSION_FOLDER, '*.vsix');
90
- vsixFiles = glob.sync(devPath);
91
- }
92
- if (vsixFiles.length === 0) {
93
- context.ui.addItem({
94
- type: 'error',
95
- text: 'Could not find the required VS Code companion extension. Please file a bug via /bug.',
96
- }, Date.now());
97
- return;
98
- }
99
- const vsixPath = vsixFiles[0];
100
- const command = `${VSCODE_COMMAND} --install-extension ${vsixPath} --force`;
101
- context.ui.addItem({
102
- type: 'info',
103
- text: `Installing VS Code companion extension...`,
104
- }, Date.now());
105
- try {
106
- child_process.execSync(command, { stdio: 'pipe' });
107
- context.ui.addItem({
108
- type: 'info',
109
- text: 'VS Code companion extension installed successfully. Restart gemini-cli in a fresh terminal window.',
110
- }, Date.now());
111
- }
112
- catch (_error) {
113
- context.ui.addItem({
114
- type: 'error',
115
- text: `Failed to install VS Code companion extension.`,
116
- }, Date.now());
20
+ kind: CommandKind.BUILT_IN,
21
+ subCommands: [],
22
+ };
23
+ const statusCommand = {
24
+ name: 'status',
25
+ description: 'check status of IDE integration',
26
+ kind: CommandKind.BUILT_IN,
27
+ action: (_context) => {
28
+ const connection = config.getIdeClient().getConnectionStatus();
29
+ switch (connection?.status) {
30
+ case IDEConnectionStatus.Connected:
31
+ return {
32
+ type: 'message',
33
+ messageType: 'info',
34
+ content: `🟢 Connected`,
35
+ };
36
+ case IDEConnectionStatus.Connecting:
37
+ return {
38
+ type: 'message',
39
+ messageType: 'info',
40
+ content: `🟡 Connecting...`,
41
+ };
42
+ default: {
43
+ let content = `🔴 Disconnected`;
44
+ if (connection?.details) {
45
+ content += `: ${connection.details}`;
117
46
  }
118
- },
119
- },
120
- ],
47
+ return {
48
+ type: 'message',
49
+ messageType: 'error',
50
+ content,
51
+ };
52
+ }
53
+ }
54
+ },
55
+ };
56
+ const installCommand = {
57
+ name: 'install',
58
+ description: `install required IDE companion ${getIdeDisplayName(currentIDE)} extension `,
59
+ kind: CommandKind.BUILT_IN,
60
+ action: async (context) => {
61
+ const installer = getIdeInstaller(currentIDE);
62
+ if (!installer) {
63
+ context.ui.addItem({
64
+ type: 'error',
65
+ text: 'No installer available for your configured IDE.',
66
+ }, Date.now());
67
+ return;
68
+ }
69
+ context.ui.addItem({
70
+ type: 'info',
71
+ text: `Installing IDE companion extension...`,
72
+ }, Date.now());
73
+ const result = await installer.install();
74
+ context.ui.addItem({
75
+ type: result.success ? 'info' : 'error',
76
+ text: result.message,
77
+ }, Date.now());
78
+ },
79
+ };
80
+ const enableCommand = {
81
+ name: 'enable',
82
+ description: 'enable IDE integration',
83
+ kind: CommandKind.BUILT_IN,
84
+ action: async (context) => {
85
+ context.services.settings.setValue(SettingScope.User, 'ideMode', true);
86
+ config.setIdeMode(true);
87
+ config.setIdeClientConnected();
88
+ },
121
89
  };
90
+ const disableCommand = {
91
+ name: 'disable',
92
+ description: 'disable IDE integration',
93
+ kind: CommandKind.BUILT_IN,
94
+ action: async (context) => {
95
+ context.services.settings.setValue(SettingScope.User, 'ideMode', false);
96
+ config.setIdeMode(false);
97
+ config.setIdeClientDisconnected();
98
+ },
99
+ };
100
+ const ideModeEnabled = config.getIdeMode();
101
+ if (ideModeEnabled) {
102
+ ideSlashCommand.subCommands = [
103
+ disableCommand,
104
+ statusCommand,
105
+ installCommand,
106
+ ];
107
+ }
108
+ else {
109
+ ideSlashCommand.subCommands = [
110
+ enableCommand,
111
+ statusCommand,
112
+ installCommand,
113
+ ];
114
+ }
115
+ return ideSlashCommand;
122
116
  };
123
117
  //# sourceMappingURL=ideCommand.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ideCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/ideCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ideCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/ideCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEL,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,GAChB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAIL,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,MAAqB,EAAuB,EAAE;IACvE,IAAI,CAAC,MAAM,EAAE,iBAAiB,EAAE,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC,aAAa,EAAE,CAAC;IACzD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,eAAe,GAAiB;QACpC,IAAI,EAAE,KAAK;QACX,WAAW,EAAE,wBAAwB;QACrC,IAAI,EAAE,WAAW,CAAC,QAAQ;QAC1B,WAAW,EAAE,EAAE;KAChB,CAAC;IAEF,MAAM,aAAa,GAAiB;QAClC,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,iCAAiC;QAC9C,IAAI,EAAE,WAAW,CAAC,QAAQ;QAC1B,MAAM,EAAE,CAAC,QAAwB,EAA4B,EAAE;YAC7D,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC,mBAAmB,EAAE,CAAC;YAC/D,QAAQ,UAAU,EAAE,MAAM,EAAE,CAAC;gBAC3B,KAAK,mBAAmB,CAAC,SAAS;oBAChC,OAAO;wBACL,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE,MAAM;wBACnB,OAAO,EAAE,cAAc;qBACf,CAAC;gBACb,KAAK,mBAAmB,CAAC,UAAU;oBACjC,OAAO;wBACL,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE,MAAM;wBACnB,OAAO,EAAE,kBAAkB;qBACnB,CAAC;gBACb,OAAO,CAAC,CAAC,CAAC;oBACR,IAAI,OAAO,GAAG,iBAAiB,CAAC;oBAChC,IAAI,UAAU,EAAE,OAAO,EAAE,CAAC;wBACxB,OAAO,IAAI,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC;oBACvC,CAAC;oBACD,OAAO;wBACL,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE,OAAO;wBACpB,OAAO;qBACC,CAAC;gBACb,CAAC;YACH,CAAC;QACH,CAAC;KACF,CAAC;IAEF,MAAM,cAAc,GAAiB;QACnC,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,kCAAkC,iBAAiB,CAAC,UAAU,CAAC,aAAa;QACzF,IAAI,EAAE,WAAW,CAAC,QAAQ;QAC1B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACxB,MAAM,SAAS,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;YAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;oBACE,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,iDAAiD;iBACxD,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;gBACF,OAAO;YACT,CAAC;YAED,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,uCAAuC;aAC9C,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;YACzC,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;gBACE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;gBACvC,IAAI,EAAE,MAAM,CAAC,OAAO;aACrB,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;QACJ,CAAC;KACF,CAAC;IAEF,MAAM,aAAa,GAAiB;QAClC,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,wBAAwB;QACrC,IAAI,EAAE,WAAW,CAAC,QAAQ;QAC1B,MAAM,EAAE,KAAK,EAAE,OAAuB,EAAE,EAAE;YACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YACvE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM,CAAC,qBAAqB,EAAE,CAAC;QACjC,CAAC;KACF,CAAC;IAEF,MAAM,cAAc,GAAiB;QACnC,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,yBAAyB;QACtC,IAAI,EAAE,WAAW,CAAC,QAAQ;QAC1B,MAAM,EAAE,KAAK,EAAE,OAAuB,EAAE,EAAE;YACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YACxE,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACzB,MAAM,CAAC,wBAAwB,EAAE,CAAC;QACpC,CAAC;KACF,CAAC;IAEF,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAC3C,IAAI,cAAc,EAAE,CAAC;QACnB,eAAe,CAAC,WAAW,GAAG;YAC5B,cAAc;YACd,aAAa;YACb,cAAc;SACf,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,eAAe,CAAC,WAAW,GAAG;YAC5B,aAAa;YACb,aAAa;YACb,cAAc;SACf,CAAC;IACJ,CAAC;IAED,OAAO,eAAe,CAAC;AACzB,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { SlashCommand } from './types.js';
7
+ export declare const initCommand: SlashCommand;