@google/gemini-cli-core 0.25.0-preview.0 → 0.26.0-nightly.20260119.20580d754

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 (214) hide show
  1. package/dist/docs/CONTRIBUTING.md +12 -4
  2. package/dist/docs/architecture.md +3 -3
  3. package/dist/docs/changelogs/index.md +25 -0
  4. package/dist/docs/changelogs/latest.md +150 -138
  5. package/dist/docs/changelogs/preview.md +211 -118
  6. package/dist/docs/changelogs/releases.md +408 -27
  7. package/dist/docs/cli/commands.md +24 -0
  8. package/dist/docs/cli/custom-commands.md +9 -9
  9. package/dist/docs/cli/index.md +4 -2
  10. package/dist/docs/cli/keyboard-shortcuts.md +40 -52
  11. package/dist/docs/cli/model-routing.md +1 -1
  12. package/dist/docs/cli/sandbox.md +1 -1
  13. package/dist/docs/cli/settings.md +26 -25
  14. package/dist/docs/cli/skills.md +8 -8
  15. package/dist/docs/cli/telemetry.md +3 -3
  16. package/dist/docs/extensions/getting-started-extensions.md +39 -2
  17. package/dist/docs/extensions/index.md +38 -4
  18. package/dist/docs/get-started/configuration.md +28 -13
  19. package/dist/docs/index.md +2 -0
  20. package/dist/docs/local-development.md +1 -1
  21. package/dist/docs/sidebar.json +4 -0
  22. package/dist/docs/tools/index.md +3 -0
  23. package/dist/docs/tools/mcp-server.md +2 -1
  24. package/dist/docs/troubleshooting.md +14 -2
  25. package/dist/google-gemini-cli-core-0.26.0-nightly.20260115.6cb3ae4e0.tgz +0 -0
  26. package/dist/index.d.ts +1 -0
  27. package/dist/index.js +1 -0
  28. package/dist/index.js.map +1 -1
  29. package/dist/src/agents/a2a-client-manager.d.ts +0 -5
  30. package/dist/src/agents/a2a-client-manager.js +1 -123
  31. package/dist/src/agents/a2a-client-manager.js.map +1 -1
  32. package/dist/src/agents/a2a-client-manager.test.js +1 -62
  33. package/dist/src/agents/a2a-client-manager.test.js.map +1 -1
  34. package/dist/src/agents/generalist-agent.d.ts +21 -0
  35. package/dist/src/agents/generalist-agent.js +62 -0
  36. package/dist/src/agents/generalist-agent.js.map +1 -0
  37. package/dist/src/agents/generalist-agent.test.d.ts +6 -0
  38. package/dist/src/agents/generalist-agent.test.js +31 -0
  39. package/dist/src/agents/generalist-agent.test.js.map +1 -0
  40. package/dist/src/agents/local-executor.d.ts +1 -0
  41. package/dist/src/agents/local-executor.js +4 -1
  42. package/dist/src/agents/local-executor.js.map +1 -1
  43. package/dist/src/agents/registry.d.ts +1 -0
  44. package/dist/src/agents/registry.js +51 -14
  45. package/dist/src/agents/registry.js.map +1 -1
  46. package/dist/src/agents/registry.test.js +101 -21
  47. package/dist/src/agents/registry.test.js.map +1 -1
  48. package/dist/src/agents/types.d.ts +1 -0
  49. package/dist/src/code_assist/admin/admin_controls.d.ts +23 -0
  50. package/dist/src/code_assist/admin/admin_controls.js +88 -0
  51. package/dist/src/code_assist/admin/admin_controls.js.map +1 -0
  52. package/dist/src/code_assist/admin/admin_controls.test.d.ts +6 -0
  53. package/dist/src/code_assist/admin/admin_controls.test.js +200 -0
  54. package/dist/src/code_assist/admin/admin_controls.test.js.map +1 -0
  55. package/dist/src/code_assist/experiments/flagNames.d.ts +1 -0
  56. package/dist/src/code_assist/experiments/flagNames.js +1 -0
  57. package/dist/src/code_assist/experiments/flagNames.js.map +1 -1
  58. package/dist/src/code_assist/server.d.ts +2 -1
  59. package/dist/src/code_assist/server.js +3 -0
  60. package/dist/src/code_assist/server.js.map +1 -1
  61. package/dist/src/code_assist/types.d.ts +56 -17
  62. package/dist/src/code_assist/types.js +16 -0
  63. package/dist/src/code_assist/types.js.map +1 -1
  64. package/dist/src/config/config.d.ts +27 -10
  65. package/dist/src/config/config.js +60 -12
  66. package/dist/src/config/config.js.map +1 -1
  67. package/dist/src/config/config.test.js +74 -25
  68. package/dist/src/config/config.test.js.map +1 -1
  69. package/dist/src/config/constants.d.ts +2 -0
  70. package/dist/src/config/constants.js +4 -0
  71. package/dist/src/config/constants.js.map +1 -1
  72. package/dist/src/confirmation-bus/types.d.ts +52 -2
  73. package/dist/src/confirmation-bus/types.js +1 -0
  74. package/dist/src/confirmation-bus/types.js.map +1 -1
  75. package/dist/src/core/client.js +3 -1
  76. package/dist/src/core/client.js.map +1 -1
  77. package/dist/src/core/client.test.js +15 -0
  78. package/dist/src/core/client.test.js.map +1 -1
  79. package/dist/src/core/contentGenerator.js +2 -1
  80. package/dist/src/core/contentGenerator.js.map +1 -1
  81. package/dist/src/core/coreToolScheduler.d.ts +1 -0
  82. package/dist/src/core/coreToolScheduler.js +9 -3
  83. package/dist/src/core/coreToolScheduler.js.map +1 -1
  84. package/dist/src/core/coreToolScheduler.test.js +49 -6
  85. package/dist/src/core/coreToolScheduler.test.js.map +1 -1
  86. package/dist/src/core/prompts.d.ts +1 -1
  87. package/dist/src/core/prompts.js +3 -2
  88. package/dist/src/core/prompts.js.map +1 -1
  89. package/dist/src/core/prompts.test.js +1 -0
  90. package/dist/src/core/prompts.test.js.map +1 -1
  91. package/dist/src/generated/git-commit.d.ts +2 -2
  92. package/dist/src/generated/git-commit.js +2 -2
  93. package/dist/src/generated/git-commit.js.map +1 -1
  94. package/dist/src/hooks/hookRegistry.js +5 -2
  95. package/dist/src/hooks/hookRegistry.js.map +1 -1
  96. package/dist/src/hooks/hookRegistry.test.js +30 -1
  97. package/dist/src/hooks/hookRegistry.test.js.map +1 -1
  98. package/dist/src/hooks/types.d.ts +4 -0
  99. package/dist/src/hooks/types.js +4 -0
  100. package/dist/src/hooks/types.js.map +1 -1
  101. package/dist/src/index.d.ts +1 -0
  102. package/dist/src/index.js +1 -0
  103. package/dist/src/index.js.map +1 -1
  104. package/dist/src/mcp/oauth-provider.d.ts +9 -1
  105. package/dist/src/mcp/oauth-provider.js +37 -6
  106. package/dist/src/mcp/oauth-provider.js.map +1 -1
  107. package/dist/src/mcp/oauth-provider.test.js +107 -1
  108. package/dist/src/mcp/oauth-provider.test.js.map +1 -1
  109. package/dist/src/policy/config.js +9 -0
  110. package/dist/src/policy/config.js.map +1 -1
  111. package/dist/src/policy/policies/plan.toml +70 -0
  112. package/dist/src/policy/policies/read-only.toml +0 -5
  113. package/dist/src/policy/toml-loader.js +1 -0
  114. package/dist/src/policy/toml-loader.js.map +1 -1
  115. package/dist/src/policy/toml-loader.test.js +2 -0
  116. package/dist/src/policy/toml-loader.test.js.map +1 -1
  117. package/dist/src/policy/types.d.ts +7 -1
  118. package/dist/src/policy/types.js +1 -0
  119. package/dist/src/policy/types.js.map +1 -1
  120. package/dist/src/scheduler/confirmation.d.ts +24 -0
  121. package/dist/src/scheduler/confirmation.js +50 -0
  122. package/dist/src/scheduler/confirmation.js.map +1 -0
  123. package/dist/src/scheduler/confirmation.test.d.ts +6 -0
  124. package/dist/src/scheduler/confirmation.test.js +143 -0
  125. package/dist/src/scheduler/confirmation.test.js.map +1 -0
  126. package/dist/src/scheduler/state-manager.d.ts +67 -0
  127. package/dist/src/scheduler/state-manager.js +335 -0
  128. package/dist/src/scheduler/state-manager.js.map +1 -0
  129. package/dist/src/scheduler/state-manager.test.d.ts +6 -0
  130. package/dist/src/scheduler/state-manager.test.js +386 -0
  131. package/dist/src/scheduler/state-manager.test.js.map +1 -0
  132. package/dist/src/scheduler/tool-executor.js +5 -5
  133. package/dist/src/scheduler/tool-executor.js.map +1 -1
  134. package/dist/src/scheduler/tool-executor.test.js +10 -9
  135. package/dist/src/scheduler/tool-executor.test.js.map +1 -1
  136. package/dist/src/scheduler/types.d.ts +10 -1
  137. package/dist/src/services/shellExecutionService.js +14 -3
  138. package/dist/src/services/shellExecutionService.js.map +1 -1
  139. package/dist/src/services/shellExecutionService.test.js +30 -1
  140. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  141. package/dist/src/skills/builtin/skill-creator/SKILL.md +382 -0
  142. package/dist/src/skills/builtin/skill-creator/scripts/init_skill.cjs +235 -0
  143. package/dist/src/skills/builtin/skill-creator/scripts/package_skill.cjs +87 -0
  144. package/dist/src/skills/builtin/skill-creator/scripts/validate_skill.cjs +127 -0
  145. package/dist/src/skills/skillLoader.js +65 -9
  146. package/dist/src/skills/skillLoader.js.map +1 -1
  147. package/dist/src/skills/skillLoader.test.js +110 -0
  148. package/dist/src/skills/skillLoader.test.js.map +1 -1
  149. package/dist/src/skills/skillManager.d.ts +2 -2
  150. package/dist/src/skills/skillManager.js +17 -6
  151. package/dist/src/skills/skillManager.js.map +1 -1
  152. package/dist/src/skills/skillManager.test.js +91 -4
  153. package/dist/src/skills/skillManager.test.js.map +1 -1
  154. package/dist/src/telemetry/sdk.test.js +2 -1
  155. package/dist/src/telemetry/sdk.test.js.map +1 -1
  156. package/dist/src/telemetry/semantic.js +88 -0
  157. package/dist/src/telemetry/semantic.js.map +1 -1
  158. package/dist/src/telemetry/semantic.truncation.test.d.ts +1 -0
  159. package/dist/src/telemetry/semantic.truncation.test.js +92 -0
  160. package/dist/src/telemetry/semantic.truncation.test.js.map +1 -0
  161. package/dist/src/test-utils/mock-tool.d.ts +1 -0
  162. package/dist/src/test-utils/mock-tool.js +1 -0
  163. package/dist/src/test-utils/mock-tool.js.map +1 -1
  164. package/dist/src/tools/mcp-client-manager.d.ts +1 -0
  165. package/dist/src/tools/mcp-client-manager.js +3 -0
  166. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  167. package/dist/src/tools/mcp-client-manager.test.js +12 -1
  168. package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
  169. package/dist/src/tools/shell.js +1 -0
  170. package/dist/src/tools/shell.js.map +1 -1
  171. package/dist/src/tools/tools.d.ts +2 -0
  172. package/dist/src/tools/tools.js.map +1 -1
  173. package/dist/src/utils/editCorrector.js +3 -3
  174. package/dist/src/utils/editCorrector.js.map +1 -1
  175. package/dist/src/utils/events.d.ts +6 -0
  176. package/dist/src/utils/events.js +7 -0
  177. package/dist/src/utils/events.js.map +1 -1
  178. package/dist/src/utils/fileUtils.d.ts +11 -3
  179. package/dist/src/utils/fileUtils.js +49 -49
  180. package/dist/src/utils/fileUtils.js.map +1 -1
  181. package/dist/src/utils/fileUtils.test.js +52 -106
  182. package/dist/src/utils/fileUtils.test.js.map +1 -1
  183. package/dist/src/utils/filesearch/crawler.d.ts +1 -0
  184. package/dist/src/utils/filesearch/crawler.js +18 -1
  185. package/dist/src/utils/filesearch/crawler.js.map +1 -1
  186. package/dist/src/utils/filesearch/crawler.test.js +29 -2
  187. package/dist/src/utils/filesearch/crawler.test.js.map +1 -1
  188. package/dist/src/utils/filesearch/fileSearch.d.ts +2 -1
  189. package/dist/src/utils/filesearch/fileSearch.js +3 -2
  190. package/dist/src/utils/filesearch/fileSearch.js.map +1 -1
  191. package/dist/src/utils/filesearch/fileSearch.test.js +49 -28
  192. package/dist/src/utils/filesearch/fileSearch.test.js.map +1 -1
  193. package/dist/src/utils/llm-edit-fixer.js +2 -2
  194. package/dist/src/utils/llm-edit-fixer.js.map +1 -1
  195. package/dist/src/utils/shell-utils.d.ts +1 -0
  196. package/dist/src/utils/shell-utils.js +46 -2
  197. package/dist/src/utils/shell-utils.js.map +1 -1
  198. package/dist/src/utils/shell-utils.test.js +90 -1
  199. package/dist/src/utils/shell-utils.test.js.map +1 -1
  200. package/dist/src/utils/textUtils.d.ts +8 -0
  201. package/dist/src/utils/textUtils.js +13 -0
  202. package/dist/src/utils/textUtils.js.map +1 -1
  203. package/dist/src/utils/textUtils.test.js +18 -1
  204. package/dist/src/utils/textUtils.test.js.map +1 -1
  205. package/dist/src/utils/tokenCalculation.d.ts +1 -1
  206. package/dist/src/utils/tokenCalculation.js +25 -9
  207. package/dist/src/utils/tokenCalculation.js.map +1 -1
  208. package/dist/src/utils/tokenCalculation.test.js +20 -0
  209. package/dist/src/utils/tokenCalculation.test.js.map +1 -1
  210. package/dist/tsconfig.tsbuildinfo +1 -1
  211. package/package.json +2 -2
  212. package/dist/src/utils/LruCache.d.ts +0 -13
  213. package/dist/src/utils/LruCache.js +0 -38
  214. package/dist/src/utils/LruCache.js.map +0 -1
@@ -25,10 +25,12 @@ overview of Gemini CLI, see the [main documentation page](../index.md).
25
25
 
26
26
  - **[Checkpointing](./checkpointing.md):** Automatically save and restore
27
27
  snapshots of your session and files.
28
- - **[Enterprise configuration](./enterprise.md):** Deploying and manage Gemini
29
- CLI in an enterprise environment.
28
+ - **[Enterprise configuration](./enterprise.md):** Deploy and manage Gemini CLI
29
+ in an enterprise environment.
30
30
  - **[Sandboxing](./sandbox.md):** Isolate tool execution in a secure,
31
31
  containerized environment.
32
+ - **[Agent Skills](./skills.md):** (Experimental) Extend the CLI with
33
+ specialized expertise and procedural workflows.
32
34
  - **[Telemetry](./telemetry.md):** Configure observability to monitor usage and
33
35
  performance.
34
36
  - **[Token caching](./token-caching.md):** Optimize API costs by caching tokens.
@@ -8,10 +8,12 @@ available combinations.
8
8
 
9
9
  #### Basic Controls
10
10
 
11
- | Action | Keys |
12
- | -------------------------------------------- | ------- |
13
- | Confirm the current selection or choice. | `Enter` |
14
- | Dismiss dialogs or cancel the current focus. | `Esc` |
11
+ | Action | Keys |
12
+ | --------------------------------------------------------------- | ---------- |
13
+ | Confirm the current selection or choice. | `Enter` |
14
+ | Dismiss dialogs or cancel the current focus. | `Esc` |
15
+ | Cancel the current request or quit the CLI when input is empty. | `Ctrl + C` |
16
+ | Exit the CLI when the input buffer is empty. | `Ctrl + D` |
15
17
 
16
18
  #### Cursor Movement
17
19
 
@@ -19,6 +21,8 @@ available combinations.
19
21
  | ------------------------------------------- | ------------------------------------------------------------ |
20
22
  | Move the cursor to the start of the line. | `Ctrl + A`<br />`Home` |
21
23
  | Move the cursor to the end of the line. | `Ctrl + E`<br />`End` |
24
+ | Move the cursor up one line. | `Up Arrow (no Ctrl, no Cmd)` |
25
+ | Move the cursor down one line. | `Down Arrow (no Ctrl, no Cmd)` |
22
26
  | Move the cursor one character to the left. | `Left Arrow (no Ctrl, no Cmd)`<br />`Ctrl + B` |
23
27
  | Move the cursor one character to the right. | `Right Arrow (no Ctrl, no Cmd)`<br />`Ctrl + F` |
24
28
  | Move the cursor one word to the left. | `Ctrl + Left Arrow`<br />`Cmd + Left Arrow`<br />`Cmd + B` |
@@ -26,23 +30,17 @@ available combinations.
26
30
 
27
31
  #### Editing
28
32
 
29
- | Action | Keys |
30
- | ------------------------------------------------ | -------------------------------------------------------------------------------------------- |
31
- | Delete from the cursor to the end of the line. | `Ctrl + K` |
32
- | Delete from the cursor to the start of the line. | `Ctrl + U` |
33
- | Clear all text in the input field. | `Ctrl + C` |
34
- | Delete the previous word. | `Ctrl + Backspace`<br />`Cmd + Backspace`<br />`Ctrl + ""`<br />`Cmd + ""`<br />`Ctrl + W` |
35
- | Delete the next word. | `Ctrl + Delete`<br />`Cmd + Delete` |
36
- | Delete the character to the left. | `Backspace`<br />`""`<br />`Ctrl + H` |
37
- | Delete the character to the right. | `Delete`<br />`Ctrl + D` |
38
- | Undo the most recent text edit. | `Ctrl + Z (no Shift)` |
39
- | Redo the most recent undone text edit. | `Ctrl + Shift + Z` |
40
-
41
- #### Screen Control
42
-
43
- | Action | Keys |
44
- | -------------------------------------------- | ---------- |
45
- | Clear the terminal screen and redraw the UI. | `Ctrl + L` |
33
+ | Action | Keys |
34
+ | ------------------------------------------------ | --------------------------------------------------------- |
35
+ | Delete from the cursor to the end of the line. | `Ctrl + K` |
36
+ | Delete from the cursor to the start of the line. | `Ctrl + U` |
37
+ | Clear all text in the input field. | `Ctrl + C` |
38
+ | Delete the previous word. | `Ctrl + Backspace`<br />`Cmd + Backspace`<br />`Ctrl + W` |
39
+ | Delete the next word. | `Ctrl + Delete`<br />`Cmd + Delete` |
40
+ | Delete the character to the left. | `Backspace`<br />`Ctrl + H` |
41
+ | Delete the character to the right. | `Delete`<br />`Ctrl + D` |
42
+ | Undo the most recent text edit. | `Ctrl + Z (no Shift)` |
43
+ | Redo the most recent undone text edit. | `Ctrl + Shift + Z` |
46
44
 
47
45
  #### Scrolling
48
46
 
@@ -86,39 +84,29 @@ available combinations.
86
84
 
87
85
  #### Text Input
88
86
 
89
- | Action | Keys |
90
- | ------------------------------------ | ------------------------------------------------------------------------------------------- |
91
- | Submit the current prompt. | `Enter (no Ctrl, no Shift, no Cmd, not Paste)` |
92
- | Insert a newline without submitting. | `Ctrl + Enter`<br />`Cmd + Enter`<br />`Paste + Enter`<br />`Shift + Enter`<br />`Ctrl + J` |
93
-
94
- #### External Tools
95
-
96
- | Action | Keys |
97
- | ---------------------------------------------- | ------------------------- |
98
- | Open the current prompt in an external editor. | `Ctrl + X` |
99
- | Paste from the clipboard. | `Ctrl + V`<br />`Cmd + V` |
87
+ | Action | Keys |
88
+ | ---------------------------------------------- | ---------------------------------------------------------------------- |
89
+ | Submit the current prompt. | `Enter (no Ctrl, no Shift, no Cmd)` |
90
+ | Insert a newline without submitting. | `Ctrl + Enter`<br />`Cmd + Enter`<br />`Shift + Enter`<br />`Ctrl + J` |
91
+ | Open the current prompt in an external editor. | `Ctrl + X` |
92
+ | Paste from the clipboard. | `Ctrl + V`<br />`Cmd + V` |
100
93
 
101
94
  #### App Controls
102
95
 
103
- | Action | Keys |
104
- | ----------------------------------------------------------------- | ---------------- |
105
- | Toggle detailed error information. | `F12` |
106
- | Toggle the full TODO list. | `Ctrl + T` |
107
- | Show IDE context details. | `Ctrl + G` |
108
- | Toggle Markdown rendering. | `Cmd + M` |
109
- | Toggle copy mode when the terminal is using the alternate buffer. | `Ctrl + S` |
110
- | Toggle YOLO (auto-approval) mode for tool calls. | `Ctrl + Y` |
111
- | Toggle Auto Edit (auto-accept edits) mode. | `Shift + Tab` |
112
- | Expand a height-constrained response to show additional lines. | `Ctrl + S` |
113
- | Focus the shell input from the gemini input. | `Tab (no Shift)` |
114
- | Focus the Gemini input from the shell input. | `Tab` |
115
-
116
- #### Session Control
117
-
118
- | Action | Keys |
119
- | -------------------------------------------- | ---------- |
120
- | Cancel the current request or quit the CLI. | `Ctrl + C` |
121
- | Exit the CLI when the input buffer is empty. | `Ctrl + D` |
96
+ | Action | Keys |
97
+ | ------------------------------------------------------------------------------------------------ | ---------------- |
98
+ | Toggle detailed error information. | `F12` |
99
+ | Toggle the full TODO list. | `Ctrl + T` |
100
+ | Show IDE context details. | `Ctrl + G` |
101
+ | Toggle Markdown rendering. | `Cmd + M` |
102
+ | Toggle copy mode when in alternate buffer mode. | `Ctrl + S` |
103
+ | Toggle YOLO (auto-approval) mode for tool calls. | `Ctrl + Y` |
104
+ | Toggle Auto Edit (auto-accept edits) mode. | `Shift + Tab` |
105
+ | Expand a height-constrained response to show additional lines when not in alternate buffer mode. | `Ctrl + S` |
106
+ | Focus the shell input from the gemini input. | `Tab (no Shift)` |
107
+ | Focus the Gemini input from the shell input. | `Tab` |
108
+ | Clear the terminal screen and redraw the UI. | `Ctrl + L` |
109
+ | Restart the application. | `R` |
122
110
 
123
111
  <!-- KEYBINDINGS-AUTOGEN:END -->
124
112
 
@@ -129,7 +117,7 @@ available combinations.
129
117
  - `!` on an empty prompt: Enter or exit shell mode.
130
118
  - `\` (at end of a line) + `Enter`: Insert a newline without leaving single-line
131
119
  mode.
132
- - `Esc` pressed twice quickly: Clear the current input buffer.
120
+ - `Esc` pressed twice quickly: Browse and rewind previous interactions.
133
121
  - `Up Arrow` / `Down Arrow`: When the cursor is at the top or bottom of a
134
122
  single-line input, navigate backward or forward through prompt history.
135
123
  - `Number keys (1-9, multi-digit)` inside selection dialogs: Jump directly to
@@ -11,7 +11,7 @@ health and automatically routes requests to available models based on defined
11
11
  policies.
12
12
 
13
13
  1. **Model failure:** If the currently selected model fails (e.g., due to quota
14
- or server errors), the CLI will iniate the fallback process.
14
+ or server errors), the CLI will initiate the fallback process.
15
15
 
16
16
  2. **User consent:** Depending on the failure and the model's policy, the CLI
17
17
  may prompt you to switch to a fallback model (by default always prompts
@@ -11,7 +11,7 @@ Before using sandboxing, you need to install and set up the Gemini CLI:
11
11
  npm install -g @google/gemini-cli
12
12
  ```
13
13
 
14
- To verify the installation
14
+ To verify the installation:
15
15
 
16
16
  ```bash
17
17
  gemini --version
@@ -26,7 +26,7 @@ they appear in the UI.
26
26
  | ------------------------------- | ---------------------------------- | ------------------------------------------------------------- | ------- |
27
27
  | Preview Features (e.g., models) | `general.previewFeatures` | Enable preview features (e.g., preview models). | `false` |
28
28
  | Vim Mode | `general.vimMode` | Enable Vim keybindings | `false` |
29
- | Disable Auto Update | `general.disableAutoUpdate` | Disable automatic updates | `false` |
29
+ | Enable Auto Update | `general.enableAutoUpdate` | Enable automatic updates. | `true` |
30
30
  | Enable Prompt Completion | `general.enablePromptCompletion` | Enable AI-powered prompt completion suggestions while typing. | `false` |
31
31
  | Debug Keystroke Logging | `general.debugKeystrokeLogging` | Enable debug logging of keystrokes to the console. | `false` |
32
32
  | Enable Session Cleanup | `general.sessionRetention.enabled` | Enable automatic session cleanup | `false` |
@@ -39,29 +39,29 @@ they appear in the UI.
39
39
 
40
40
  ### UI
41
41
 
42
- | UI Label | Setting | Description | Default |
43
- | ------------------------------ | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
44
- | Hide Window Title | `ui.hideWindowTitle` | Hide the window title bar | `false` |
45
- | Show Thoughts in Title | `ui.showStatusInTitle` | Show Gemini CLI model thoughts in the terminal window title during the working phase | `false` |
46
- | Dynamic Window Title | `ui.dynamicWindowTitle` | Update the terminal window title with current status icons (Ready: ◇, Action Required: ✋, Working: ✦) | `true` |
47
- | Show Home Directory Warning | `ui.showHomeDirectoryWarning` | Show a warning when running Gemini CLI in the home directory. | `true` |
48
- | Hide Tips | `ui.hideTips` | Hide helpful tips in the UI | `false` |
49
- | Hide Banner | `ui.hideBanner` | Hide the application banner | `false` |
50
- | Hide Context Summary | `ui.hideContextSummary` | Hide the context summary (GEMINI.md, MCP servers) above the input. | `false` |
51
- | Hide CWD | `ui.footer.hideCWD` | Hide the current working directory path in the footer. | `false` |
52
- | Hide Sandbox Status | `ui.footer.hideSandboxStatus` | Hide the sandbox status indicator in the footer. | `false` |
53
- | Hide Model Info | `ui.footer.hideModelInfo` | Hide the model name and context usage in the footer. | `false` |
54
- | Hide Context Window Percentage | `ui.footer.hideContextPercentage` | Hides the context window remaining percentage. | `true` |
55
- | Hide Footer | `ui.hideFooter` | Hide the footer from the UI | `false` |
56
- | Show Memory Usage | `ui.showMemoryUsage` | Display memory usage information in the UI | `false` |
57
- | Show Line Numbers | `ui.showLineNumbers` | Show line numbers in the chat. | `true` |
58
- | Show Citations | `ui.showCitations` | Show citations for generated text in the chat. | `false` |
59
- | Show Model Info In Chat | `ui.showModelInfoInChat` | Show the model name in the chat for each model turn. | `false` |
60
- | Use Full Width | `ui.useFullWidth` | Use the entire width of the terminal for output. | `true` |
61
- | Use Alternate Screen Buffer | `ui.useAlternateBuffer` | Use an alternate screen buffer for the UI, preserving shell history. | `false` |
62
- | Incremental Rendering | `ui.incrementalRendering` | Enable incremental rendering for the UI. This option will reduce flickering but may cause rendering artifacts. Only supported when useAlternateBuffer is enabled. | `true` |
63
- | Disable Loading Phrases | `ui.accessibility.disableLoadingPhrases` | Disable loading phrases for accessibility | `false` |
64
- | Screen Reader Mode | `ui.accessibility.screenReader` | Render output in plain-text to be more screen reader accessible | `false` |
42
+ | UI Label | Setting | Description | Default |
43
+ | ------------------------------ | --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
44
+ | Hide Window Title | `ui.hideWindowTitle` | Hide the window title bar | `false` |
45
+ | Show Thoughts in Title | `ui.showStatusInTitle` | Show Gemini CLI model thoughts in the terminal window title during the working phase | `false` |
46
+ | Dynamic Window Title | `ui.dynamicWindowTitle` | Update the terminal window title with current status icons (Ready: ◇, Action Required: ✋, Working: ✦) | `true` |
47
+ | Show Home Directory Warning | `ui.showHomeDirectoryWarning` | Show a warning when running Gemini CLI in the home directory. | `true` |
48
+ | Hide Tips | `ui.hideTips` | Hide helpful tips in the UI | `false` |
49
+ | Hide Banner | `ui.hideBanner` | Hide the application banner | `false` |
50
+ | Hide Context Summary | `ui.hideContextSummary` | Hide the context summary (GEMINI.md, MCP servers) above the input. | `false` |
51
+ | Hide CWD | `ui.footer.hideCWD` | Hide the current working directory path in the footer. | `false` |
52
+ | Hide Sandbox Status | `ui.footer.hideSandboxStatus` | Hide the sandbox status indicator in the footer. | `false` |
53
+ | Hide Model Info | `ui.footer.hideModelInfo` | Hide the model name and context usage in the footer. | `false` |
54
+ | Hide Context Window Percentage | `ui.footer.hideContextPercentage` | Hides the context window remaining percentage. | `true` |
55
+ | Hide Footer | `ui.hideFooter` | Hide the footer from the UI | `false` |
56
+ | Show Memory Usage | `ui.showMemoryUsage` | Display memory usage information in the UI | `false` |
57
+ | Show Line Numbers | `ui.showLineNumbers` | Show line numbers in the chat. | `true` |
58
+ | Show Citations | `ui.showCitations` | Show citations for generated text in the chat. | `false` |
59
+ | Show Model Info In Chat | `ui.showModelInfoInChat` | Show the model name in the chat for each model turn. | `false` |
60
+ | Use Full Width | `ui.useFullWidth` | Use the entire width of the terminal for output. | `true` |
61
+ | Use Alternate Screen Buffer | `ui.useAlternateBuffer` | Use an alternate screen buffer for the UI, preserving shell history. | `false` |
62
+ | Incremental Rendering | `ui.incrementalRendering` | Enable incremental rendering for the UI. This option will reduce flickering but may cause rendering artifacts. Only supported when useAlternateBuffer is enabled. | `true` |
63
+ | Enable Loading Phrases | `ui.accessibility.enableLoadingPhrases` | Enable loading phrases during operations. | `true` |
64
+ | Screen Reader Mode | `ui.accessibility.screenReader` | Render output in plain-text to be more screen reader accessible | `false` |
65
65
 
66
66
  ### IDE
67
67
 
@@ -86,7 +86,7 @@ they appear in the UI.
86
86
  | Respect .gitignore | `context.fileFiltering.respectGitIgnore` | Respect .gitignore files when searching. | `true` |
87
87
  | Respect .geminiignore | `context.fileFiltering.respectGeminiIgnore` | Respect .geminiignore files when searching. | `true` |
88
88
  | Enable Recursive File Search | `context.fileFiltering.enableRecursiveFileSearch` | Enable recursive file search functionality when completing @ references in the prompt. | `true` |
89
- | Disable Fuzzy Search | `context.fileFiltering.disableFuzzySearch` | Disable fuzzy search when searching for files. | `false` |
89
+ | Enable Fuzzy Search | `context.fileFiltering.enableFuzzySearch` | Enable fuzzy search when searching for files. | `true` |
90
90
 
91
91
  ### Tools
92
92
 
@@ -120,6 +120,7 @@ they appear in the UI.
120
120
  | Codebase Investigator Max Num Turns | `experimental.codebaseInvestigatorSettings.maxNumTurns` | Maximum number of turns for the Codebase Investigator agent. | `10` |
121
121
  | Use OSC 52 Paste | `experimental.useOSC52Paste` | Use OSC 52 sequence for pasting instead of clipboardy (useful for remote sessions). | `false` |
122
122
  | Enable CLI Help Agent | `experimental.cliHelpAgentSettings.enabled` | Enable the CLI Help Agent. | `true` |
123
+ | Plan | `experimental.plan` | Enable planning features (Plan Mode and tools). | `false` |
123
124
 
124
125
  ### Hooks
125
126
 
@@ -13,7 +13,7 @@ discoverable capability.
13
13
  ## Overview
14
14
 
15
15
  Unlike general context files ([`GEMINI.md`](./gemini-md.md)), which provide
16
- persistent project-wide background, Skills represent **on-demand expertise**.
16
+ persistent workspace-wide background, Skills represent **on-demand expertise**.
17
17
  This allows Gemini to maintain a vast library of specialized capabilities—such
18
18
  as security auditing, cloud deployments, or codebase migrations—without
19
19
  cluttering the model's immediate context window.
@@ -39,15 +39,15 @@ the full instructions and resources required to complete the task using the
39
39
 
40
40
  Gemini CLI discovers skills from three primary locations:
41
41
 
42
- 1. **Project Skills** (`.gemini/skills/`): Project-specific skills that are
42
+ 1. **Workspace Skills** (`.gemini/skills/`): Workspace-specific skills that are
43
43
  typically committed to version control and shared with the team.
44
44
  2. **User Skills** (`~/.gemini/skills/`): Personal skills available across all
45
- your projects.
45
+ your workspaces.
46
46
  3. **Extension Skills**: Skills bundled within installed
47
47
  [extensions](../extensions/index.md).
48
48
 
49
49
  **Precedence:** If multiple skills share the same name, higher-precedence
50
- locations override lower ones: **Project > User > Extension**.
50
+ locations override lower ones: **Workspace > User > Extension**.
51
51
 
52
52
  ## Managing Skills
53
53
 
@@ -61,7 +61,7 @@ Use the `/skills` slash command to view and manage available expertise:
61
61
  - `/skills reload`: Refreshes the list of discovered skills from all tiers.
62
62
 
63
63
  _Note: `/skills disable` and `/skills enable` default to the `user` scope. Use
64
- `--scope project` to manage project-specific settings._
64
+ `--scope workspace` to manage workspace-specific settings._
65
65
 
66
66
  ### From the Terminal
67
67
 
@@ -89,8 +89,8 @@ gemini skills uninstall my-expertise --scope workspace
89
89
  # Enable a skill (globally)
90
90
  gemini skills enable my-expertise
91
91
 
92
- # Disable a skill. Can use --scope to specify project or user (defaults to project)
93
- gemini skills disable my-expertise --scope project
92
+ # Disable a skill. Can use --scope to specify workspace or user (defaults to workspace)
93
+ gemini skills disable my-expertise --scope workspace
94
94
  ```
95
95
 
96
96
  ## Creating a Skill
@@ -147,7 +147,7 @@ You are an expert code reviewer. When reviewing code, follow this workflow:
147
147
  1. **Analyze**: Review the staged changes or specific files provided. Ensure
148
148
  that the changes are scoped properly and represent minimal changes required
149
149
  to address the issue.
150
- 2. **Style**: Ensure code follows the project's conventions and idiomatic
150
+ 2. **Style**: Ensure code follows the workspace's conventions and idiomatic
151
151
  patterns as described in the `GEMINI.md` file.
152
152
  3. **Security**: Flag any potential security vulnerabilities.
153
153
  4. **Tests**: Verify that new logic has corresponding test coverage and that
@@ -224,11 +224,11 @@ visualize your telemetry.
224
224
  This dashboard can be found under **Google Cloud Monitoring Dashboard
225
225
  Templates** as "**Gemini CLI Monitoring**".
226
226
 
227
- ![Gemini CLI Monitoring Dashboard Overview](../assets/monitoring-dashboard-overview.png)
227
+ ![Gemini CLI Monitoring Dashboard Overview](/docs/assets/monitoring-dashboard-overview.png)
228
228
 
229
- ![Gemini CLI Monitoring Dashboard Metrics](../assets/monitoring-dashboard-metrics.png)
229
+ ![Gemini CLI Monitoring Dashboard Metrics](/docs/assets/monitoring-dashboard-metrics.png)
230
230
 
231
- ![Gemini CLI Monitoring Dashboard Logs](../assets/monitoring-dashboard-logs.png)
231
+ ![Gemini CLI Monitoring Dashboard Logs](/docs/assets/monitoring-dashboard-logs.png)
232
232
 
233
233
  To learn more, check out this blog post:
234
234
  [Instant insights: Gemini CLI’s new pre-configured monitoring dashboards](https://cloud.google.com/blog/topics/developers-practitioners/instant-insights-gemini-clis-new-pre-configured-monitoring-dashboards/).
@@ -222,9 +222,45 @@ need this for extensions built to expose commands and prompts.
222
222
  Restart the CLI again. The model will now have the context from your `GEMINI.md`
223
223
  file in every session where the extension is active.
224
224
 
225
- ## Step 6: Releasing your extension
225
+ ## (Optional) Step 6: Add an Agent Skill
226
226
 
227
- Once you are happy with your extension, you can share it with others. The two
227
+ _Note: This is an experimental feature enabled via `experimental.skills`._
228
+
229
+ [Agent Skills](../cli/skills.md) let you bundle specialized expertise and
230
+ procedural workflows. Unlike `GEMINI.md`, which provides persistent context,
231
+ skills are activated only when needed, saving context tokens.
232
+
233
+ 1. Create a `skills` directory and a subdirectory for your skill:
234
+
235
+ ```bash
236
+ mkdir -p skills/security-audit
237
+ ```
238
+
239
+ 2. Create a `skills/security-audit/SKILL.md` file:
240
+
241
+ ```markdown
242
+ ---
243
+ name: security-audit
244
+ description:
245
+ Expertise in auditing code for security vulnerabilities. Use when the user
246
+ asks to "check for security issues" or "audit" their changes.
247
+ ---
248
+
249
+ # Security Auditor
250
+
251
+ You are an expert security researcher. When auditing code:
252
+
253
+ 1. Look for common vulnerabilities (OWASP Top 10).
254
+ 2. Check for hardcoded secrets or API keys.
255
+ 3. Suggest remediation steps for any findings.
256
+ ```
257
+
258
+ Skills bundled with your extension are automatically discovered and can be
259
+ activated by the model during a session when it identifies a relevant task.
260
+
261
+ ## Step 7: Release your extension
262
+
263
+ Once you're happy with your extension, you can share it with others. The two
228
264
  primary ways of releasing extensions are via a Git repository or through GitHub
229
265
  Releases. Using a public Git repository is the simplest method.
230
266
 
@@ -239,6 +275,7 @@ You've successfully created a Gemini CLI extension! You learned how to:
239
275
  - Add custom tools with an MCP server.
240
276
  - Create convenient custom commands.
241
277
  - Provide persistent context to the model.
278
+ - Bundle specialized Agent Skills.
242
279
  - Link your extension for local development.
243
280
 
244
281
  From here, you can explore more advanced features and build powerful new
@@ -2,10 +2,10 @@
2
2
 
3
3
  _This documentation is up-to-date with the v0.4.0 release._
4
4
 
5
- Gemini CLI extensions package prompts, MCP servers, and custom commands into a
6
- familiar and user-friendly format. With extensions, you can expand the
7
- capabilities of Gemini CLI and share those capabilities with others. They are
8
- designed to be easily installable and shareable.
5
+ Gemini CLI extensions package prompts, MCP servers, Agent Skills, and custom
6
+ commands into a familiar and user-friendly format. With extensions, you can
7
+ expand the capabilities of Gemini CLI and share those capabilities with others.
8
+ They're designed to be easily installable and shareable.
9
9
 
10
10
  To see examples of extensions, you can browse a gallery of
11
11
  [Gemini CLI extensions](https://geminicli.com/extensions/browse/).
@@ -263,6 +263,40 @@ Would provide these commands:
263
263
  - `/deploy` - Shows as `[gcp] Custom command from deploy.toml` in help
264
264
  - `/gcs:sync` - Shows as `[gcp] Custom command from sync.toml` in help
265
265
 
266
+ ### Agent Skills
267
+
268
+ _Note: This is an experimental feature enabled via `experimental.skills`._
269
+
270
+ Extensions can bundle [Agent Skills](../cli/skills.md) to provide on-demand
271
+ expertise and specialized workflows. To include skills in your extension, place
272
+ them in a `skills/` subdirectory within the extension directory. Each skill must
273
+ follow the [Agent Skills structure](../cli/skills.md#folder-structure),
274
+ including a `SKILL.md` file.
275
+
276
+ **Example**
277
+
278
+ An extension named `security-toolkit` with the following structure:
279
+
280
+ ```
281
+ .gemini/extensions/security-toolkit/
282
+ ├── gemini-extension.json
283
+ └── skills/
284
+ ├── audit/
285
+ │ ├── SKILL.md
286
+ │ └── scripts/
287
+ │ └── scan.py
288
+ └── hardening/
289
+ └── SKILL.md
290
+ ```
291
+
292
+ Upon installation, these skills will be discovered by Gemini CLI and can be
293
+ activated during a session when the model identifies a task matching their
294
+ descriptions.
295
+
296
+ Extension skills have the lowest precedence and will be overridden by user or
297
+ workspace skills of the same name. They can be viewed and managed (enabled or
298
+ disabled) using the [`/skills` command](../cli/skills.md#managing-skills).
299
+
266
300
  ### Hooks
267
301
 
268
302
  Extensions can provide [hooks](../hooks/index.md) to intercept and customize
@@ -110,13 +110,13 @@ their corresponding top-level category object in your `settings.json` file.
110
110
  - **Description:** Enable Vim keybindings
111
111
  - **Default:** `false`
112
112
 
113
- - **`general.disableAutoUpdate`** (boolean):
114
- - **Description:** Disable automatic updates
115
- - **Default:** `false`
113
+ - **`general.enableAutoUpdate`** (boolean):
114
+ - **Description:** Enable automatic updates.
115
+ - **Default:** `true`
116
116
 
117
- - **`general.disableUpdateNag`** (boolean):
118
- - **Description:** Disable update notification prompts.
119
- - **Default:** `false`
117
+ - **`general.enableAutoUpdateNotification`** (boolean):
118
+ - **Description:** Enable update notification prompts.
119
+ - **Default:** `true`
120
120
 
121
121
  - **`general.checkpointing.enabled`** (boolean):
122
122
  - **Description:** Enable session checkpointing for recovery
@@ -266,9 +266,9 @@ their corresponding top-level category object in your `settings.json` file.
266
266
  provided, the CLI cycles through these instead of the defaults.
267
267
  - **Default:** `[]`
268
268
 
269
- - **`ui.accessibility.disableLoadingPhrases`** (boolean):
270
- - **Description:** Disable loading phrases for accessibility
271
- - **Default:** `false`
269
+ - **`ui.accessibility.enableLoadingPhrases`** (boolean):
270
+ - **Description:** Enable loading phrases during operations.
271
+ - **Default:** `true`
272
272
  - **Requires restart:** Yes
273
273
 
274
274
  - **`ui.accessibility.screenReader`** (boolean):
@@ -607,9 +607,9 @@ their corresponding top-level category object in your `settings.json` file.
607
607
  - **Default:** `true`
608
608
  - **Requires restart:** Yes
609
609
 
610
- - **`context.fileFiltering.disableFuzzySearch`** (boolean):
611
- - **Description:** Disable fuzzy search when searching for files.
612
- - **Default:** `false`
610
+ - **`context.fileFiltering.enableFuzzySearch`** (boolean):
611
+ - **Description:** Enable fuzzy search when searching for files.
612
+ - **Default:** `true`
613
613
  - **Requires restart:** Yes
614
614
 
615
615
  #### `tools`
@@ -830,6 +830,11 @@ their corresponding top-level category object in your `settings.json` file.
830
830
  - **Default:** `true`
831
831
  - **Requires restart:** Yes
832
832
 
833
+ - **`experimental.extensionConfig`** (boolean):
834
+ - **Description:** Enable requesting and fetching of extension settings.
835
+ - **Default:** `false`
836
+ - **Requires restart:** Yes
837
+
833
838
  - **`experimental.extensionReloading`** (boolean):
834
839
  - **Description:** Enables extension loading/unloading within the CLI session.
835
840
  - **Default:** `false`
@@ -882,6 +887,11 @@ their corresponding top-level category object in your `settings.json` file.
882
887
  - **Default:** `true`
883
888
  - **Requires restart:** Yes
884
889
 
890
+ - **`experimental.plan`** (boolean):
891
+ - **Description:** Enable planning features (Plan Mode and tools).
892
+ - **Default:** `false`
893
+ - **Requires restart:** Yes
894
+
885
895
  #### `skills`
886
896
 
887
897
  - **`skills.disabled`** (array):
@@ -1323,7 +1333,8 @@ for that specific session.
1323
1333
  - **`--sandbox`** (**`-s`**):
1324
1334
  - Enables sandbox mode for this session.
1325
1335
  - **`--debug`** (**`-d`**):
1326
- - Enables debug mode for this session, providing more verbose output.
1336
+ - Enables debug mode for this session, providing more verbose output. Open the
1337
+ debug console with F12 to see the additional logging.
1327
1338
 
1328
1339
  - **`--help`** (or **`-h`**):
1329
1340
  - Displays help information about command-line arguments.
@@ -1335,6 +1346,10 @@ for that specific session.
1335
1346
  - `auto_edit`: Automatically approve edit tools (replace, write_file) while
1336
1347
  prompting for others
1337
1348
  - `yolo`: Automatically approve all tool calls (equivalent to `--yolo`)
1349
+ - `plan`: Read-only mode for tool calls (requires experimental planning to
1350
+ be enabled).
1351
+ > **Note:** This mode is currently under development and not yet fully
1352
+ > functional.
1338
1353
  - Cannot be used together with `--yolo`. Use `--approval-mode=yolo` instead of
1339
1354
  `--yolo` for the new unified approach.
1340
1355
  - Example: `gemini --approval-mode auto_edit`
@@ -56,6 +56,8 @@ This documentation is organized into the following sections:
56
56
  commands with `/model`.
57
57
  - **[Sandbox](./cli/sandbox.md):** Isolate tool execution in a secure,
58
58
  containerized environment.
59
+ - **[Agent Skills](./cli/skills.md):** (Experimental) Extend the CLI with
60
+ specialized expertise and procedural workflows.
59
61
  - **[Settings](./cli/settings.md):** Configure various aspects of the CLI's
60
62
  behavior and appearance with `/settings`.
61
63
  - **[Telemetry](./cli/telemetry.md):** Overview of telemetry in the CLI.
@@ -10,7 +10,7 @@ debug your code by instrumenting interesting events like model calls, tool
10
10
  scheduler, tool calls, etc.
11
11
 
12
12
  Dev traces are verbose and are specifically meant for understanding agent
13
- behaviour and debugging issues. They are disabled by default.
13
+ behavior and debugging issues. They are disabled by default.
14
14
 
15
15
  To enable dev traces, set the `GEMINI_DEV_TRACING=true` environment variable
16
16
  when running Gemini CLI.
@@ -80,6 +80,10 @@
80
80
  "label": "Model selection",
81
81
  "slug": "docs/cli/model"
82
82
  },
83
+ {
84
+ "label": "Rewind",
85
+ "slug": "docs/cli/rewind"
86
+ },
83
87
  {
84
88
  "label": "Sandbox",
85
89
  "slug": "docs/cli/sandbox"
@@ -91,5 +91,8 @@ Additionally, these tools incorporate:
91
91
 
92
92
  - **[MCP servers](./mcp-server.md)**: MCP servers act as a bridge between the
93
93
  Gemini model and your local environment or other services like APIs.
94
+ - **[Agent Skills](../cli/skills.md)**: (Experimental) On-demand expertise
95
+ packages that are activated via the `activate_skill` tool to provide
96
+ specialized guidance and resources.
94
97
  - **[Sandboxing](../cli/sandbox.md)**: Sandboxing isolates the model and its
95
98
  changes from your environment to reduce potential risk.
@@ -722,7 +722,8 @@ The MCP integration tracks several states:
722
722
 
723
723
  ### Debugging tips
724
724
 
725
- 1. **Enable debug mode:** Run the CLI with `--debug` for verbose output
725
+ 1. **Enable debug mode:** Run the CLI with `--debug` for verbose output (use F12
726
+ to open debug console in interactive mode)
726
727
  2. **Check stderr:** MCP server stderr is captured and logged (INFO messages
727
728
  filtered)
728
729
  3. **Test isolation:** Test your MCP server independently before integrating
@@ -28,6 +28,16 @@ topics on:
28
28
  - **Organizational Users:** Contact your Google Cloud administrator to be
29
29
  added to your organization's Gemini Code Assist subscription.
30
30
 
31
+ - **Error:
32
+ `Failed to login. Message: Your current account is not eligible... because it is not currently available in your location.`**
33
+ - **Cause:** Gemini CLI does not currently support your location. For a full
34
+ list of supported locations, see the following pages:
35
+ - Gemini Code Assist for individuals:
36
+ [Available locations](https://developers.google.com/gemini-code-assist/resources/available-locations#americas)
37
+ - Google AI Pro and Ultra where Gemini Code Assist (and Gemini CLI) is also
38
+ available:
39
+ [Available locations](https://developers.google.com/gemini-code-assist/resources/locations-pro-ultra)
40
+
31
41
  - **Error: `Failed to login. Message: Request contains an invalid argument`**
32
42
  - **Cause:** Users with Google Workspace accounts or Google Cloud accounts
33
43
  associated with their Gmail accounts may not be able to activate the free
@@ -130,13 +140,15 @@ This is especially useful for scripting and automation.
130
140
  ## Debugging tips
131
141
 
132
142
  - **CLI debugging:**
133
- - Use the `--debug` flag for more detailed output.
143
+ - Use the `--debug` flag for more detailed output. In interactive mode, press
144
+ F12 to view the debug console.
134
145
  - Check the CLI logs, often found in a user-specific configuration or cache
135
146
  directory.
136
147
 
137
148
  - **Core debugging:**
138
149
  - Check the server console output for error messages or stack traces.
139
- - Increase log verbosity if configurable.
150
+ - Increase log verbosity if configurable. For example, set the `DEBUG_MODE`
151
+ environment variable to `true` or `1`.
140
152
  - Use Node.js debugging tools (e.g., `node --inspect`) if you need to step
141
153
  through server-side code.
142
154