@google/gemini-cli 0.7.1-reland → 0.8.0-nightly.20250926.2defdcff

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 (233) hide show
  1. package/README.md +10 -4
  2. package/dist/package.json +7 -5
  3. package/dist/src/commands/extensions/examples/mcp-server/gemini-extension.json +3 -2
  4. package/dist/src/commands/extensions/examples/mcp-server/package.json +18 -0
  5. package/dist/src/commands/extensions/examples/mcp-server/tsconfig.json +13 -0
  6. package/dist/src/commands/extensions/install.js +3 -3
  7. package/dist/src/commands/extensions/install.js.map +1 -1
  8. package/dist/src/commands/extensions/install.test.js +11 -2
  9. package/dist/src/commands/extensions/install.test.js.map +1 -1
  10. package/dist/src/commands/extensions/link.js +2 -2
  11. package/dist/src/commands/extensions/link.js.map +1 -1
  12. package/dist/src/commands/extensions/list.js +1 -1
  13. package/dist/src/commands/extensions/list.js.map +1 -1
  14. package/dist/src/commands/extensions/new.js +6 -1
  15. package/dist/src/commands/extensions/new.js.map +1 -1
  16. package/dist/src/commands/extensions/new.test.js +5 -3
  17. package/dist/src/commands/extensions/new.test.js.map +1 -1
  18. package/dist/src/commands/extensions/uninstall.test.js +4 -1
  19. package/dist/src/commands/extensions/uninstall.test.js.map +1 -1
  20. package/dist/src/commands/extensions/update.js +19 -18
  21. package/dist/src/commands/extensions/update.js.map +1 -1
  22. package/dist/src/commands/mcp/add.js +6 -1
  23. package/dist/src/commands/mcp/add.js.map +1 -1
  24. package/dist/src/config/config.d.ts +2 -0
  25. package/dist/src/config/config.js +70 -24
  26. package/dist/src/config/config.js.map +1 -1
  27. package/dist/src/config/extension.d.ts +26 -4
  28. package/dist/src/config/extension.js +171 -69
  29. package/dist/src/config/extension.js.map +1 -1
  30. package/dist/src/config/extensions/github.d.ts +6 -2
  31. package/dist/src/config/extensions/github.js +84 -32
  32. package/dist/src/config/extensions/github.js.map +1 -1
  33. package/dist/src/config/extensions/github.test.js +5 -1
  34. package/dist/src/config/extensions/github.test.js.map +1 -1
  35. package/dist/src/config/extensions/update.d.ts +3 -3
  36. package/dist/src/config/extensions/update.js +19 -14
  37. package/dist/src/config/extensions/update.js.map +1 -1
  38. package/dist/src/config/extensions/update.test.js +53 -18
  39. package/dist/src/config/extensions/update.test.js.map +1 -1
  40. package/dist/src/config/settings.js +18 -3
  41. package/dist/src/config/settings.js.map +1 -1
  42. package/dist/src/config/settingsSchema.d.ts +20 -2
  43. package/dist/src/config/settingsSchema.js +20 -2
  44. package/dist/src/config/settingsSchema.js.map +1 -1
  45. package/dist/src/config/settingsSchema.test.js +1 -1
  46. package/dist/src/config/settingsSchema.test.js.map +1 -1
  47. package/dist/src/config/trustedFolders.d.ts +10 -1
  48. package/dist/src/config/trustedFolders.js +40 -14
  49. package/dist/src/config/trustedFolders.js.map +1 -1
  50. package/dist/src/config/trustedFolders.test.js +95 -14
  51. package/dist/src/config/trustedFolders.test.js.map +1 -1
  52. package/dist/src/gemini.js +100 -126
  53. package/dist/src/gemini.js.map +1 -1
  54. package/dist/src/gemini.test.js +74 -5
  55. package/dist/src/gemini.test.js.map +1 -1
  56. package/dist/src/generated/git-commit.d.ts +2 -2
  57. package/dist/src/generated/git-commit.js +2 -2
  58. package/dist/src/generated/git-commit.js.map +1 -1
  59. package/dist/src/services/BuiltinCommandLoader.js +4 -0
  60. package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
  61. package/dist/src/services/BuiltinCommandLoader.test.js +50 -1
  62. package/dist/src/services/BuiltinCommandLoader.test.js.map +1 -1
  63. package/dist/src/test-utils/render.d.ts +3 -1
  64. package/dist/src/test-utils/render.js +2 -1
  65. package/dist/src/test-utils/render.js.map +1 -1
  66. package/dist/src/ui/App.js +1 -1
  67. package/dist/src/ui/App.js.map +1 -1
  68. package/dist/src/ui/AppContainer.js +32 -12
  69. package/dist/src/ui/AppContainer.js.map +1 -1
  70. package/dist/src/ui/AppContainer.test.js +31 -0
  71. package/dist/src/ui/AppContainer.test.js.map +1 -1
  72. package/dist/src/ui/commands/chatCommand.js +14 -3
  73. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  74. package/dist/src/ui/commands/extensionsCommand.js +5 -2
  75. package/dist/src/ui/commands/extensionsCommand.js.map +1 -1
  76. package/dist/src/ui/commands/modelCommand.d.ts +7 -0
  77. package/dist/src/ui/commands/modelCommand.js +16 -0
  78. package/dist/src/ui/commands/modelCommand.js.map +1 -0
  79. package/dist/src/ui/commands/modelCommand.test.js +30 -0
  80. package/dist/src/ui/commands/modelCommand.test.js.map +1 -0
  81. package/dist/src/ui/commands/permissionsCommand.d.ts +7 -0
  82. package/dist/src/ui/commands/permissionsCommand.js +16 -0
  83. package/dist/src/ui/commands/permissionsCommand.js.map +1 -0
  84. package/dist/src/ui/commands/permissionsCommand.test.d.ts +6 -0
  85. package/dist/src/ui/commands/permissionsCommand.test.js +30 -0
  86. package/dist/src/ui/commands/permissionsCommand.test.js.map +1 -0
  87. package/dist/src/ui/commands/types.d.ts +1 -1
  88. package/dist/src/ui/commands/types.js.map +1 -1
  89. package/dist/src/ui/components/AppHeader.js +2 -5
  90. package/dist/src/ui/components/AppHeader.js.map +1 -1
  91. package/dist/src/ui/components/Composer.js +2 -4
  92. package/dist/src/ui/components/Composer.js.map +1 -1
  93. package/dist/src/ui/components/DialogManager.d.ts +6 -1
  94. package/dist/src/ui/components/DialogManager.js +10 -1
  95. package/dist/src/ui/components/DialogManager.js.map +1 -1
  96. package/dist/src/ui/components/HistoryItemDisplay.d.ts +1 -1
  97. package/dist/src/ui/components/HistoryItemDisplay.js +6 -1
  98. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  99. package/dist/src/ui/components/HistoryItemDisplay.test.js +42 -1
  100. package/dist/src/ui/components/HistoryItemDisplay.test.js.map +1 -1
  101. package/dist/src/ui/components/InputPrompt.d.ts +1 -1
  102. package/dist/src/ui/components/InputPrompt.js +17 -8
  103. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  104. package/dist/src/ui/components/LoadingIndicator.js +1 -1
  105. package/dist/src/ui/components/LoadingIndicator.js.map +1 -1
  106. package/dist/src/ui/components/LoadingIndicator.test.js +4 -0
  107. package/dist/src/ui/components/LoadingIndicator.test.js.map +1 -1
  108. package/dist/src/ui/components/MainContent.js +1 -1
  109. package/dist/src/ui/components/MainContent.js.map +1 -1
  110. package/dist/src/ui/components/ModelDialog.d.ts +11 -0
  111. package/dist/src/ui/components/ModelDialog.js +53 -0
  112. package/dist/src/ui/components/ModelDialog.js.map +1 -0
  113. package/dist/src/ui/components/ModelDialog.test.d.ts +6 -0
  114. package/dist/src/ui/components/ModelDialog.test.js +153 -0
  115. package/dist/src/ui/components/ModelDialog.test.js.map +1 -0
  116. package/dist/src/ui/components/PermissionsModifyTrustDialog.d.ts +13 -0
  117. package/dist/src/ui/components/PermissionsModifyTrustDialog.js +45 -0
  118. package/dist/src/ui/components/PermissionsModifyTrustDialog.js.map +1 -0
  119. package/dist/src/ui/components/PermissionsModifyTrustDialog.test.d.ts +6 -0
  120. package/dist/src/ui/components/PermissionsModifyTrustDialog.test.js +158 -0
  121. package/dist/src/ui/components/PermissionsModifyTrustDialog.test.js.map +1 -0
  122. package/dist/src/ui/components/SettingsDialog.js +1 -1
  123. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  124. package/dist/src/ui/components/SettingsDialog.test.js +47 -13
  125. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
  126. package/dist/src/ui/components/WorkspaceMigrationDialog.js +3 -1
  127. package/dist/src/ui/components/WorkspaceMigrationDialog.js.map +1 -1
  128. package/dist/src/ui/components/messages/ToolGroupMessage.d.ts +1 -1
  129. package/dist/src/ui/components/messages/ToolGroupMessage.js +5 -5
  130. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
  131. package/dist/src/ui/components/messages/ToolMessage.d.ts +1 -1
  132. package/dist/src/ui/components/messages/ToolMessage.js +3 -3
  133. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  134. package/dist/src/ui/components/shared/BaseSelectionList.d.ts +43 -0
  135. package/dist/src/ui/components/shared/BaseSelectionList.js +72 -0
  136. package/dist/src/ui/components/shared/BaseSelectionList.js.map +1 -0
  137. package/dist/src/ui/components/shared/BaseSelectionList.test.d.ts +6 -0
  138. package/dist/src/ui/components/shared/BaseSelectionList.test.js +374 -0
  139. package/dist/src/ui/components/shared/BaseSelectionList.test.js.map +1 -0
  140. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.d.ts +36 -0
  141. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.js +13 -0
  142. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.js.map +1 -0
  143. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.test.d.ts +6 -0
  144. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.test.js +68 -0
  145. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.test.js.map +1 -0
  146. package/dist/src/ui/components/shared/RadioButtonSelect.js +9 -104
  147. package/dist/src/ui/components/shared/RadioButtonSelect.js.map +1 -1
  148. package/dist/src/ui/components/shared/RadioButtonSelect.test.js +113 -92
  149. package/dist/src/ui/components/shared/RadioButtonSelect.test.js.map +1 -1
  150. package/dist/src/ui/components/views/ExtensionsList.test.js +1 -1
  151. package/dist/src/ui/components/views/ExtensionsList.test.js.map +1 -1
  152. package/dist/src/ui/contexts/KeypressContext.js +3 -0
  153. package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
  154. package/dist/src/ui/contexts/ShellFocusContext.d.ts +7 -0
  155. package/dist/src/ui/contexts/ShellFocusContext.js +9 -0
  156. package/dist/src/ui/contexts/ShellFocusContext.js.map +1 -0
  157. package/dist/src/ui/contexts/UIActionsContext.d.ts +2 -0
  158. package/dist/src/ui/contexts/UIActionsContext.js.map +1 -1
  159. package/dist/src/ui/contexts/UIStateContext.d.ts +5 -1
  160. package/dist/src/ui/contexts/UIStateContext.js +1 -0
  161. package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
  162. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +2 -0
  163. package/dist/src/ui/hooks/slashCommandProcessor.js +6 -0
  164. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  165. package/dist/src/ui/hooks/useExtensionUpdates.js +23 -17
  166. package/dist/src/ui/hooks/useExtensionUpdates.js.map +1 -1
  167. package/dist/src/ui/hooks/useExtensionUpdates.test.js +9 -11
  168. package/dist/src/ui/hooks/useExtensionUpdates.test.js.map +1 -1
  169. package/dist/src/ui/hooks/useFocus.js +10 -0
  170. package/dist/src/ui/hooks/useFocus.js.map +1 -1
  171. package/dist/src/ui/hooks/useFolderTrust.d.ts +1 -1
  172. package/dist/src/ui/hooks/useFolderTrust.js +2 -7
  173. package/dist/src/ui/hooks/useFolderTrust.js.map +1 -1
  174. package/dist/src/ui/hooks/useGeminiStream.js +5 -1
  175. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  176. package/dist/src/ui/hooks/useGitBranchName.test.js.map +1 -1
  177. package/dist/src/ui/hooks/useModelCommand.d.ts +12 -0
  178. package/dist/src/ui/hooks/useModelCommand.js +21 -0
  179. package/dist/src/ui/hooks/useModelCommand.js.map +1 -0
  180. package/dist/src/ui/hooks/useModelCommand.test.d.ts +6 -0
  181. package/dist/src/ui/hooks/useModelCommand.test.js +35 -0
  182. package/dist/src/ui/hooks/useModelCommand.test.js.map +1 -0
  183. package/dist/src/ui/hooks/usePermissionsModifyTrust.d.ts +17 -0
  184. package/dist/src/ui/hooks/usePermissionsModifyTrust.js +78 -0
  185. package/dist/src/ui/hooks/usePermissionsModifyTrust.js.map +1 -0
  186. package/dist/src/ui/hooks/usePermissionsModifyTrust.test.d.ts +6 -0
  187. package/dist/src/ui/hooks/usePermissionsModifyTrust.test.js +182 -0
  188. package/dist/src/ui/hooks/usePermissionsModifyTrust.test.js.map +1 -0
  189. package/dist/src/ui/hooks/useSelectionList.d.ts +33 -0
  190. package/dist/src/ui/hooks/useSelectionList.js +252 -0
  191. package/dist/src/ui/hooks/useSelectionList.js.map +1 -0
  192. package/dist/src/ui/hooks/useSelectionList.test.d.ts +6 -0
  193. package/dist/src/ui/hooks/useSelectionList.test.js +651 -0
  194. package/dist/src/ui/hooks/useSelectionList.test.js.map +1 -0
  195. package/dist/src/ui/hooks/useSlashCompletion.js +7 -2
  196. package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -1
  197. package/dist/src/ui/hooks/useSlashCompletion.test.js +33 -0
  198. package/dist/src/ui/hooks/useSlashCompletion.test.js.map +1 -1
  199. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js +3 -3
  200. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js.map +1 -1
  201. package/dist/src/ui/state/extensions.d.ts +1 -1
  202. package/dist/src/ui/state/extensions.js +1 -1
  203. package/dist/src/ui/state/extensions.js.map +1 -1
  204. package/dist/src/ui/themes/theme.js +2 -2
  205. package/dist/src/ui/themes/theme.js.map +1 -1
  206. package/dist/src/ui/utils/displayUtils.js +1 -1
  207. package/dist/src/ui/utils/textUtils.d.ts +1 -0
  208. package/dist/src/ui/utils/textUtils.js +56 -0
  209. package/dist/src/ui/utils/textUtils.js.map +1 -1
  210. package/dist/src/ui/utils/textUtils.test.d.ts +6 -0
  211. package/dist/src/ui/utils/textUtils.test.js +132 -0
  212. package/dist/src/ui/utils/textUtils.test.js.map +1 -0
  213. package/dist/src/utils/deepMerge.d.ts +2 -3
  214. package/dist/src/utils/relaunch.d.ts +7 -0
  215. package/dist/src/utils/relaunch.js +57 -0
  216. package/dist/src/utils/relaunch.js.map +1 -0
  217. package/dist/src/utils/relaunch.test.d.ts +6 -0
  218. package/dist/src/utils/relaunch.test.js +273 -0
  219. package/dist/src/utils/relaunch.test.js.map +1 -0
  220. package/dist/src/utils/sandbox.js +23 -9
  221. package/dist/src/utils/sandbox.js.map +1 -1
  222. package/dist/src/zed-integration/schema.d.ts +22 -22
  223. package/dist/src/zed-integration/zedIntegration.d.ts +7 -0
  224. package/dist/src/zed-integration/zedIntegration.js +14 -2
  225. package/dist/src/zed-integration/zedIntegration.js.map +1 -1
  226. package/dist/tsconfig.tsbuildinfo +1 -1
  227. package/package.json +7 -5
  228. package/dist/src/commands/extensions/examples/mcp-server/example.js +0 -46
  229. package/dist/src/commands/extensions/examples/mcp-server/example.js.map +0 -1
  230. package/dist/src/ui/contexts/FocusContext.d.ts +0 -7
  231. package/dist/src/ui/contexts/FocusContext.js +0 -9
  232. package/dist/src/ui/contexts/FocusContext.js.map +0 -1
  233. /package/dist/src/{commands/extensions/examples/mcp-server/example.d.ts → ui/commands/modelCommand.test.d.ts} +0 -0
package/README.md CHANGED
@@ -109,14 +109,20 @@ Choose the authentication method that best fits your needs:
109
109
 
110
110
  ### Option 1: Login with Google (OAuth login using your Google Account)
111
111
 
112
- **✨ Best for:** Individual developers as well as anyone who has a Gemini Code Assist License. (see [quota limits and terms of service](https://cloud.google.com/gemini/docs/quotas) for details)
112
+ **✨ Best for:**
113
+
114
+ - Individual developers.
115
+ - Google AI Pro and AI Ultra subscribers.
116
+ - Anyone who has a Gemini Code Assist license.
117
+
118
+ _See [quota limits and terms of service](https://cloud.google.com/gemini/docs/quotas) for details._
113
119
 
114
120
  **Benefits:**
115
121
 
116
- - **Free tier**: 60 requests/min and 1,000 requests/day
117
- - **Gemini 2.5 Pro** with 1M token context window
122
+ - **Free tier** with 60 requests/min and 1,000 requests/day
123
+ - **Gemini 2.5 Pro and Flash** with 1M token context window
118
124
  - **No API key management** - just sign in with your Google account
119
- - **Automatic updates** to latest models
125
+ - **Automatic updates** to our latest models
120
126
 
121
127
  #### Start Gemini CLI, then choose _Login with Google_ and follow the browser authentication flow when prompted
122
128
 
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@google/gemini-cli",
3
- "version": "0.7.1-reland",
3
+ "version": "0.8.0-nightly.20250926.2defdcff",
4
4
  "description": "Gemini CLI",
5
5
  "repository": {
6
6
  "type": "git",
@@ -18,14 +18,14 @@
18
18
  "lint": "eslint . --ext .ts,.tsx",
19
19
  "format": "prettier --write .",
20
20
  "test": "vitest run",
21
- "test:ci": "vitest run --coverage",
21
+ "test:ci": "vitest run",
22
22
  "typecheck": "tsc --noEmit"
23
23
  },
24
24
  "files": [
25
25
  "dist"
26
26
  ],
27
27
  "config": {
28
- "sandboxImageUri": "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.7.1-reland"
28
+ "sandboxImageUri": "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.8.0-nightly.20250926.2defdcff"
29
29
  },
30
30
  "dependencies": {
31
31
  "@google/gemini-cli-core": "file:../core",
@@ -33,12 +33,13 @@
33
33
  "@iarna/toml": "^2.2.5",
34
34
  "@modelcontextprotocol/sdk": "^1.15.1",
35
35
  "@types/update-notifier": "^6.0.8",
36
+ "ansi-regex": "^6.2.2",
36
37
  "command-exists": "^1.2.9",
37
38
  "comment-json": "^4.2.5",
38
39
  "diff": "^7.0.0",
39
40
  "dotenv": "^17.1.0",
40
41
  "fzf": "^0.5.2",
41
- "glob": "^10.4.1",
42
+ "glob": "^10.4.5",
42
43
  "highlight.js": "^11.11.1",
43
44
  "ink": "^6.2.3",
44
45
  "ink-gradient": "^3.0.0",
@@ -47,13 +48,14 @@
47
48
  "open": "^10.1.2",
48
49
  "react": "^19.1.0",
49
50
  "read-package-up": "^11.0.0",
50
- "simple-git": "^3.28.0",
51
51
  "shell-quote": "^1.8.3",
52
+ "simple-git": "^3.28.0",
52
53
  "string-width": "^7.1.0",
53
54
  "strip-ansi": "^7.1.0",
54
55
  "strip-json-comments": "^3.1.1",
55
56
  "undici": "^7.10.0",
56
57
  "update-notifier": "^7.3.1",
58
+ "wrap-ansi": "9.0.2",
57
59
  "yargs": "^17.7.2",
58
60
  "zod": "^3.23.8"
59
61
  },
@@ -1,10 +1,11 @@
1
1
  {
2
- "name": "mcp-server",
2
+ "name": "mcp-server-example",
3
3
  "version": "1.0.0",
4
4
  "mcpServers": {
5
5
  "nodeServer": {
6
6
  "command": "node",
7
- "args": ["${extensionPath}${/}example.ts"]
7
+ "args": ["${extensionPath}${/}dist${/}example.js"],
8
+ "cwd": "${extensionPath}"
8
9
  }
9
10
  }
10
11
  }
@@ -0,0 +1,18 @@
1
+ {
2
+ "name": "mcp-server-example",
3
+ "version": "1.0.0",
4
+ "description": "Example MCP Server for Gemini CLI Extension",
5
+ "type": "module",
6
+ "main": "example.js",
7
+ "scripts": {
8
+ "build": "tsc"
9
+ },
10
+ "devDependencies": {
11
+ "typescript": "~5.4.5",
12
+ "@types/node": "^20.11.25"
13
+ },
14
+ "dependencies": {
15
+ "@modelcontextprotocol/sdk": "^1.11.0",
16
+ "zod": "^3.22.4"
17
+ }
18
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2022",
4
+ "module": "NodeNext",
5
+ "moduleResolution": "NodeNext",
6
+ "strict": true,
7
+ "esModuleInterop": true,
8
+ "skipLibCheck": true,
9
+ "forceConsistentCasingInFileNames": true,
10
+ "outDir": "./dist"
11
+ },
12
+ "include": ["example.ts"]
13
+ }
@@ -3,7 +3,7 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { installExtension } from '../../config/extension.js';
6
+ import { installExtension, requestConsentNonInteractive, } from '../../config/extension.js';
7
7
  import { getErrorMessage } from '../../utils/errors.js';
8
8
  export async function handleInstall(args) {
9
9
  try {
@@ -36,7 +36,7 @@ export async function handleInstall(args) {
36
36
  // This should not be reached due to the yargs check.
37
37
  throw new Error('Either --source or --path must be provided.');
38
38
  }
39
- const name = await installExtension(installMetadata, true);
39
+ const name = await installExtension(installMetadata, requestConsentNonInteractive);
40
40
  console.log(`Extension "${name}" installed successfully and enabled.`);
41
41
  }
42
42
  catch (error) {
@@ -45,7 +45,7 @@ export async function handleInstall(args) {
45
45
  }
46
46
  }
47
47
  export const installCommand = {
48
- command: 'install [source]',
48
+ command: 'install [<source>] [--path] [--ref] [--auto-update]',
49
49
  describe: 'Installs an extension from a git repository URL or a local path.',
50
50
  builder: (yargs) => yargs
51
51
  .positional('source', {
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../src/commands/extensions/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../src/commands/extensions/install.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,10 @@ import { describe, it, expect, vi } from 'vitest';
7
7
  import { handleInstall, installCommand } from './install.js';
8
8
  import yargs from 'yargs';
9
9
  const mockInstallExtension = vi.hoisted(() => vi.fn());
10
+ const mockRequestConsentNonInteractive = vi.hoisted(() => vi.fn());
10
11
  vi.mock('../../config/extension.js', () => ({
11
12
  installExtension: mockInstallExtension,
13
+ requestConsentNonInteractive: mockRequestConsentNonInteractive,
12
14
  }));
13
15
  vi.mock('../../utils/errors.js', () => ({
14
16
  getErrorMessage: vi.fn((error) => error.message),
@@ -19,11 +21,17 @@ describe('extensions install command', () => {
19
21
  expect(() => validationParser.parse('install')).toThrow('Either source or --path must be provided.');
20
22
  });
21
23
  it('should fail if both git source and local path are provided', () => {
22
- const validationParser = yargs([]).command(installCommand).fail(false);
24
+ const validationParser = yargs([])
25
+ .command(installCommand)
26
+ .fail(false)
27
+ .locale('en');
23
28
  expect(() => validationParser.parse('install some-url --path /some/path')).toThrow('Arguments source and path are mutually exclusive');
24
29
  });
25
30
  it('should fail if both auto update and local path are provided', () => {
26
- const validationParser = yargs([]).command(installCommand).fail(false);
31
+ const validationParser = yargs([])
32
+ .command(installCommand)
33
+ .fail(false)
34
+ .locale('en');
27
35
  expect(() => validationParser.parse('install some-url --path /some/path --auto-update')).toThrow('Arguments path and auto-update are mutually exclusive');
28
36
  });
29
37
  });
@@ -40,6 +48,7 @@ describe('handleInstall', () => {
40
48
  });
41
49
  afterEach(() => {
42
50
  mockInstallExtension.mockClear();
51
+ mockRequestConsentNonInteractive.mockClear();
43
52
  vi.resetAllMocks();
44
53
  });
45
54
  it('should install an extension from a http source', async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"install.test.js","sourceRoot":"","sources":["../../../../src/commands/extensions/install.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.test.js","sourceRoot":"","sources":["../../../../src/commands/extensions/install.test.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { installExtension } from '../../config/extension.js';
6
+ import { installExtension, requestConsentNonInteractive, } from '../../config/extension.js';
7
7
  import { getErrorMessage } from '../../utils/errors.js';
8
8
  export async function handleLink(args) {
9
9
  try {
@@ -11,7 +11,7 @@ export async function handleLink(args) {
11
11
  source: args.path,
12
12
  type: 'link',
13
13
  };
14
- const extensionName = await installExtension(installMetadata);
14
+ const extensionName = await installExtension(installMetadata, requestConsentNonInteractive);
15
15
  console.log(`Extension "${extensionName}" linked successfully and enabled.`);
16
16
  }
17
17
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"link.js","sourceRoot":"","sources":["../../../../src/commands/extensions/link.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAG7D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAMxD,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAiB;IAChD,IAAI,CAAC;QACH,MAAM,eAAe,GAA6B;YAChD,MAAM,EAAE,IAAI,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM;SACb,CAAC;QACF,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,eAAe,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CACT,cAAc,aAAa,oCAAoC,CAChE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;QACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAkB;IACxC,OAAO,EAAE,aAAa;IACtB,QAAQ,EACN,gGAAgG;IAClG,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,UAAU,CAAC,MAAM,EAAE;QAClB,QAAQ,EAAE,oCAAoC;QAC9C,IAAI,EAAE,QAAQ;KACf,CAAC;SACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;IACvB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,UAAU,CAAC;YACf,IAAI,EAAE,IAAI,CAAC,MAAM,CAAW;SAC7B,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"link.js","sourceRoot":"","sources":["../../../../src/commands/extensions/link.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,gBAAgB,EAChB,4BAA4B,GAC7B,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAMxD,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAiB;IAChD,IAAI,CAAC;QACH,MAAM,eAAe,GAA6B;YAChD,MAAM,EAAE,IAAI,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM;SACb,CAAC;QACF,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAC1C,eAAe,EACf,4BAA4B,CAC7B,CAAC;QACF,OAAO,CAAC,GAAG,CACT,cAAc,aAAa,oCAAoC,CAChE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;QACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAkB;IACxC,OAAO,EAAE,aAAa;IACtB,QAAQ,EACN,gGAAgG;IAClG,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,UAAU,CAAC,MAAM,EAAE;QAClB,QAAQ,EAAE,oCAAoC;QAC9C,IAAI,EAAE,QAAQ;KACf,CAAC;SACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;IACvB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,UAAU,CAAC;YACf,IAAI,EAAE,IAAI,CAAC,MAAM,CAAW;SAC7B,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
@@ -13,7 +13,7 @@ export async function handleList() {
13
13
  return;
14
14
  }
15
15
  console.log(extensions
16
- .map((extension, _) => toOutputString(extension))
16
+ .map((extension, _) => toOutputString(extension, process.cwd()))
17
17
  .join('\n\n'));
18
18
  }
19
19
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/extensions/list.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,kBAAkB,EAAE,CAAC;QACxC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;YACxC,OAAO;QACT,CAAC;QACD,OAAO,CAAC,GAAG,CACT,UAAU;aACP,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,EAAU,EAAE,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;aACxD,IAAI,CAAC,MAAM,CAAC,CAChB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;QACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAkB;IACxC,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,6BAA6B;IACvC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK;IACzB,OAAO,EAAE,KAAK,IAAI,EAAE;QAClB,MAAM,UAAU,EAAE,CAAC;IACrB,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/extensions/list.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,kBAAkB,EAAE,CAAC;QACxC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;YACxC,OAAO;QACT,CAAC;QACD,OAAO,CAAC,GAAG,CACT,UAAU;aACP,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,EAAU,EAAE,CAAC,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;aACvE,IAAI,CAAC,MAAM,CAAC,CAChB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;QACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAkB;IACxC,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,6BAA6B;IACvC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK;IACzB,OAAO,EAAE,KAAK,IAAI,EAAE;QAClB,MAAM,UAAU,EAAE,CAAC;IACrB,CAAC;CACF,CAAC"}
@@ -25,7 +25,12 @@ async function copyDirectory(template, path) {
25
25
  }
26
26
  const examplePath = join(EXAMPLES_PATH, template);
27
27
  await mkdir(path, { recursive: true });
28
- await cp(examplePath, path, { recursive: true });
28
+ const entries = await readdir(examplePath, { withFileTypes: true });
29
+ for (const entry of entries) {
30
+ const srcPath = join(examplePath, entry.name);
31
+ const destPath = join(path, entry.name);
32
+ await cp(srcPath, destPath, { recursive: true });
33
+ }
29
34
  }
30
35
  async function handleNew(args) {
31
36
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"new.js","sourceRoot":"","sources":["../../../../src/commands/extensions/new.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"new.js","sourceRoot":"","sources":["../../../../src/commands/extensions/new.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAOxD,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;AAElD,KAAK,UAAU,UAAU,CAAC,IAAY;IACpC,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,QAAgB,EAAE,IAAY;IACzD,IAAI,MAAM,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IAClD,MAAM,KAAK,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACpE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACxC,MAAM,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,IAAa;IACpC,IAAI,CAAC;QACH,MAAM,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CACT,qDAAqD,IAAI,CAAC,QAAQ,QAAQ,IAAI,CAAC,IAAI,GAAG,CACvF,CAAC;QACF,OAAO,CAAC,GAAG,CACT,sDAAsD,IAAI,CAAC,IAAI,mBAAmB,CACnF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;QACtC,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,qBAAqB;IAClC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,aAAa,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,OAAO,OAAO;SACX,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;SACtC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAAkB;IACvC,OAAO,EAAE,uBAAuB;IAChC,QAAQ,EAAE,oDAAoD;IAC9D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QACvB,MAAM,OAAO,GAAG,MAAM,qBAAqB,EAAE,CAAC;QAC9C,OAAO,KAAK;aACT,UAAU,CAAC,MAAM,EAAE;YAClB,QAAQ,EAAE,sCAAsC;YAChD,IAAI,EAAE,QAAQ;SACf,CAAC;aACD,UAAU,CAAC,UAAU,EAAE;YACtB,QAAQ,EAAE,kCAAkC;YAC5C,IAAI,EAAE,QAAQ;YACd,OAAO;SACR,CAAC,CAAC;IACP,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,SAAS,CAAC;YACd,IAAI,EAAE,IAAI,CAAC,MAAM,CAAW;YAC5B,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAW;SACrC,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
@@ -21,11 +21,11 @@ describe('extensions new command', () => {
21
21
  mockedFs.readdir.mockResolvedValue(fakeFiles);
22
22
  });
23
23
  it('should fail if no path is provided', async () => {
24
- const parser = yargs([]).command(newCommand).fail(false);
24
+ const parser = yargs([]).command(newCommand).fail(false).locale('en');
25
25
  await expect(parser.parseAsync('new')).rejects.toThrow('Not enough non-option arguments: got 0, need at least 2');
26
26
  });
27
27
  it('should fail if no template is provided', async () => {
28
- const parser = yargs([]).command(newCommand).fail(false);
28
+ const parser = yargs([]).command(newCommand).fail(false).locale('en');
29
29
  await expect(parser.parseAsync('new /some/path')).rejects.toThrow('Not enough non-option arguments: got 1, need at least 2');
30
30
  });
31
31
  it('should create directory and copy files when path does not exist', async () => {
@@ -37,7 +37,9 @@ describe('extensions new command', () => {
37
37
  expect(mockedFs.mkdir).toHaveBeenCalledWith('/some/path', {
38
38
  recursive: true,
39
39
  });
40
- expect(mockedFs.cp).toHaveBeenCalledWith(expect.stringContaining('context'), '/some/path', { recursive: true });
40
+ expect(mockedFs.cp).toHaveBeenCalledWith(expect.stringContaining('context/context'), '/some/path/context', { recursive: true });
41
+ expect(mockedFs.cp).toHaveBeenCalledWith(expect.stringContaining('context/custom-commands'), '/some/path/custom-commands', { recursive: true });
42
+ expect(mockedFs.cp).toHaveBeenCalledWith(expect.stringContaining('context/mcp-server'), '/some/path/mcp-server', { recursive: true });
41
43
  });
42
44
  it('should throw an error if the path already exists', async () => {
43
45
  mockedFs.access.mockResolvedValue(undefined);
@@ -1 +1 @@
1
- {"version":3,"file":"new.test.js","sourceRoot":"","sources":["../../../../src/commands/extensions/new.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"new.test.js","sourceRoot":"","sources":["../../../../src/commands/extensions/new.test.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,10 @@ import { uninstallCommand } from './uninstall.js';
8
8
  import yargs from 'yargs';
9
9
  describe('extensions uninstall command', () => {
10
10
  it('should fail if no source is provided', () => {
11
- const validationParser = yargs([]).command(uninstallCommand).fail(false);
11
+ const validationParser = yargs([])
12
+ .command(uninstallCommand)
13
+ .fail(false)
14
+ .locale('en');
12
15
  expect(() => validationParser.parse('uninstall')).toThrow('Not enough non-option arguments: got 0, need at least 1');
13
16
  });
14
17
  });
@@ -1 +1 @@
1
- {"version":3,"file":"uninstall.test.js","sourceRoot":"","sources":["../../../../src/commands/extensions/uninstall.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IAC5C,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,gBAAgB,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzE,MAAM,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CACvD,yDAAyD,CAC1D,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"uninstall.test.js","sourceRoot":"","sources":["../../../../src/commands/extensions/uninstall.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IAC5C,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,gBAAgB,GAAG,KAAK,CAAC,EAAE,CAAC;aAC/B,OAAO,CAAC,gBAAgB,CAAC;aACzB,IAAI,CAAC,KAAK,CAAC;aACX,MAAM,CAAC,IAAI,CAAC,CAAC;QAChB,MAAM,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CACvD,yDAAyD,CAC1D,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -3,7 +3,7 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { loadExtensions, annotateActiveExtensions, } from '../../config/extension.js';
6
+ import { loadExtensions, annotateActiveExtensions, requestConsentNonInteractive, } from '../../config/extension.js';
7
7
  import { updateAllUpdatableExtensions, checkForAllExtensionUpdates, updateExtension, } from '../../config/extensions/update.js';
8
8
  import { checkForExtensionUpdate } from '../../config/extensions/github.js';
9
9
  import { getErrorMessage } from '../../utils/errors.js';
@@ -13,21 +13,7 @@ export async function handleUpdate(args) {
13
13
  const workingDir = process.cwd();
14
14
  const allExtensions = loadExtensions();
15
15
  const extensions = annotateActiveExtensions(allExtensions, allExtensions.map((e) => e.config.name), workingDir);
16
- if (args.all) {
17
- try {
18
- let updateInfos = await updateAllUpdatableExtensions(workingDir, extensions, await checkForAllExtensionUpdates(extensions, new Map(), (_) => { }), () => { });
19
- updateInfos = updateInfos.filter((info) => info.originalVersion !== info.updatedVersion);
20
- if (updateInfos.length === 0) {
21
- console.log('No extensions to update.');
22
- return;
23
- }
24
- console.log(updateInfos.map((info) => updateOutput(info)).join('\n'));
25
- }
26
- catch (error) {
27
- console.error(getErrorMessage(error));
28
- }
29
- }
30
- if (args.name)
16
+ if (args.name) {
31
17
  try {
32
18
  const extension = extensions.find((extension) => extension.name === args.name);
33
19
  if (!extension) {
@@ -47,7 +33,7 @@ export async function handleUpdate(args) {
47
33
  return;
48
34
  }
49
35
  // TODO(chrstnb): we should list extensions if the requested extension is not installed.
50
- const updatedExtensionInfo = (await updateExtension(extension, workingDir, updateState, () => { }));
36
+ const updatedExtensionInfo = (await updateExtension(extension, workingDir, requestConsentNonInteractive, updateState, () => { }));
51
37
  if (updatedExtensionInfo.originalVersion !==
52
38
  updatedExtensionInfo.updatedVersion) {
53
39
  console.log(`Extension "${args.name}" successfully updated: ${updatedExtensionInfo.originalVersion} → ${updatedExtensionInfo.updatedVersion}.`);
@@ -59,9 +45,24 @@ export async function handleUpdate(args) {
59
45
  catch (error) {
60
46
  console.error(getErrorMessage(error));
61
47
  }
48
+ }
49
+ if (args.all) {
50
+ try {
51
+ let updateInfos = await updateAllUpdatableExtensions(workingDir, requestConsentNonInteractive, extensions, await checkForAllExtensionUpdates(extensions, new Map(), (_) => { }), () => { });
52
+ updateInfos = updateInfos.filter((info) => info.originalVersion !== info.updatedVersion);
53
+ if (updateInfos.length === 0) {
54
+ console.log('No extensions to update.');
55
+ return;
56
+ }
57
+ console.log(updateInfos.map((info) => updateOutput(info)).join('\n'));
58
+ }
59
+ catch (error) {
60
+ console.error(getErrorMessage(error));
61
+ }
62
+ }
62
63
  }
63
64
  export const updateCommand = {
64
- command: 'update [--all] [name]',
65
+ command: 'update [<name>] [--all]',
65
66
  describe: 'Updates all extensions or a named extension to the latest version.',
66
67
  builder: (yargs) => yargs
67
68
  .positional('name', {
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/commands/extensions/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/commands/extensions/update.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,13 @@
6
6
  import { loadSettings, SettingScope } from '../../config/settings.js';
7
7
  async function addMcpServer(name, commandOrUrl, args, options) {
8
8
  const { scope, transport, env, header, timeout, trust, description, includeTools, excludeTools, } = options;
9
+ const settings = loadSettings(process.cwd());
10
+ const inHome = settings.workspace.path === settings.user.path;
11
+ if (scope === 'project' && inHome) {
12
+ console.error('Error: Please use --scope user to edit settings in the home directory.');
13
+ process.exit(1);
14
+ }
9
15
  const settingsScope = scope === 'user' ? SettingScope.User : SettingScope.Workspace;
10
- const settings = loadSettings();
11
16
  let newServer = {};
12
17
  const headers = header?.reduce((acc, curr) => {
13
18
  const [key, ...valueParts] = curr.split(':');
@@ -1 +1 @@
1
- {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../../src/commands/mcp/add.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../../src/commands/mcp/add.ts"],"names":[],"mappings":"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"}
@@ -34,6 +34,7 @@ export interface CliArgs {
34
34
  includeDirectories: string[] | undefined;
35
35
  screenReader: boolean | undefined;
36
36
  useSmartEdit: boolean | undefined;
37
+ useWriteTodos: boolean | undefined;
37
38
  promptWords: string[] | undefined;
38
39
  outputFormat: string | undefined;
39
40
  }
@@ -42,4 +43,5 @@ export declare function loadHierarchicalGeminiMemory(currentWorkingDirectory: st
42
43
  memoryContent: string;
43
44
  fileCount: number;
44
45
  }>;
46
+ export declare function isDebugMode(argv: CliArgs): boolean;
45
47
  export declare function loadCliConfig(settings: Settings, extensions: Extension[], sessionId: string, argv: CliArgs, cwd?: string): Promise<Config>;