@google/gemini-cli-core 0.5.0-preview.1 → 0.7.0-nightly.20250912.68035591

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 (231) hide show
  1. package/LICENSE +2 -2
  2. package/README.md +12 -2
  3. package/dist/google-gemini-cli-core-0.6.0-nightly.tgz +0 -0
  4. package/dist/index.d.ts +1 -1
  5. package/dist/index.js +1 -1
  6. package/dist/index.js.map +1 -1
  7. package/dist/src/config/config.d.ts +24 -1
  8. package/dist/src/config/config.js +58 -15
  9. package/dist/src/config/config.js.map +1 -1
  10. package/dist/src/config/config.test.js +11 -15
  11. package/dist/src/config/config.test.js.map +1 -1
  12. package/dist/src/config/models.d.ts +14 -0
  13. package/dist/src/config/models.js +26 -0
  14. package/dist/src/config/models.js.map +1 -1
  15. package/dist/src/config/models.test.d.ts +6 -0
  16. package/dist/src/config/models.test.js +55 -0
  17. package/dist/src/config/models.test.js.map +1 -0
  18. package/dist/src/confirmation-bus/index.d.ts +7 -0
  19. package/dist/src/confirmation-bus/index.js +8 -0
  20. package/dist/src/confirmation-bus/index.js.map +1 -0
  21. package/dist/src/confirmation-bus/message-bus.d.ts +17 -0
  22. package/dist/src/confirmation-bus/message-bus.js +81 -0
  23. package/dist/src/confirmation-bus/message-bus.js.map +1 -0
  24. package/dist/src/confirmation-bus/message-bus.test.d.ts +6 -0
  25. package/dist/src/confirmation-bus/message-bus.test.js +164 -0
  26. package/dist/src/confirmation-bus/message-bus.test.js.map +1 -0
  27. package/dist/src/confirmation-bus/types.d.ts +38 -0
  28. package/dist/src/confirmation-bus/types.js +15 -0
  29. package/dist/src/confirmation-bus/types.js.map +1 -0
  30. package/dist/src/core/client.d.ts +4 -1
  31. package/dist/src/core/client.js +46 -18
  32. package/dist/src/core/client.js.map +1 -1
  33. package/dist/src/core/client.test.js +156 -46
  34. package/dist/src/core/client.test.js.map +1 -1
  35. package/dist/src/core/contentGenerator.d.ts +0 -1
  36. package/dist/src/core/contentGenerator.js +0 -4
  37. package/dist/src/core/contentGenerator.js.map +1 -1
  38. package/dist/src/core/contentGenerator.test.js +0 -3
  39. package/dist/src/core/contentGenerator.test.js.map +1 -1
  40. package/dist/src/core/coreToolScheduler.d.ts +4 -3
  41. package/dist/src/core/coreToolScheduler.js +42 -5
  42. package/dist/src/core/coreToolScheduler.js.map +1 -1
  43. package/dist/src/core/coreToolScheduler.test.js +34 -0
  44. package/dist/src/core/coreToolScheduler.test.js.map +1 -1
  45. package/dist/src/core/geminiChat.d.ts +1 -22
  46. package/dist/src/core/geminiChat.js +15 -135
  47. package/dist/src/core/geminiChat.js.map +1 -1
  48. package/dist/src/core/geminiChat.test.js +59 -312
  49. package/dist/src/core/geminiChat.test.js.map +1 -1
  50. package/dist/src/core/nonInteractiveToolExecutor.test.js +48 -0
  51. package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
  52. package/dist/src/core/subagent.js +1 -1
  53. package/dist/src/core/subagent.js.map +1 -1
  54. package/dist/src/core/subagent.test.js +9 -8
  55. package/dist/src/core/subagent.test.js.map +1 -1
  56. package/dist/src/core/turn.d.ts +2 -1
  57. package/dist/src/core/turn.js +2 -2
  58. package/dist/src/core/turn.js.map +1 -1
  59. package/dist/src/core/turn.test.js +18 -18
  60. package/dist/src/core/turn.test.js.map +1 -1
  61. package/dist/src/generated/git-commit.d.ts +2 -2
  62. package/dist/src/generated/git-commit.js +2 -2
  63. package/dist/src/generated/git-commit.js.map +1 -1
  64. package/dist/src/ide/ide-client.d.ts +27 -0
  65. package/dist/src/ide/ide-client.js +85 -5
  66. package/dist/src/ide/ide-client.js.map +1 -1
  67. package/dist/src/ide/ide-client.test.js +53 -0
  68. package/dist/src/ide/ide-client.test.js.map +1 -1
  69. package/dist/src/ide/ideContext.d.ts +34 -20
  70. package/dist/src/ide/ideContext.js +20 -33
  71. package/dist/src/ide/ideContext.js.map +1 -1
  72. package/dist/src/ide/ideContext.test.js +37 -39
  73. package/dist/src/ide/ideContext.test.js.map +1 -1
  74. package/dist/src/index.d.ts +3 -1
  75. package/dist/src/index.js +3 -1
  76. package/dist/src/index.js.map +1 -1
  77. package/dist/src/output/json-formatter.d.ts +11 -0
  78. package/dist/src/output/json-formatter.js +30 -0
  79. package/dist/src/output/json-formatter.js.map +1 -0
  80. package/dist/src/output/json-formatter.test.d.ts +6 -0
  81. package/dist/src/output/json-formatter.test.js +266 -0
  82. package/dist/src/output/json-formatter.test.js.map +1 -0
  83. package/dist/src/output/types.d.ts +20 -0
  84. package/dist/src/output/types.js +11 -0
  85. package/dist/src/output/types.js.map +1 -0
  86. package/dist/src/policy/index.d.ts +7 -0
  87. package/dist/src/policy/index.js +8 -0
  88. package/dist/src/policy/index.js.map +1 -0
  89. package/dist/src/policy/policy-engine.d.ts +30 -0
  90. package/dist/src/policy/policy-engine.js +83 -0
  91. package/dist/src/policy/policy-engine.js.map +1 -0
  92. package/dist/src/policy/policy-engine.test.d.ts +6 -0
  93. package/dist/src/policy/policy-engine.test.js +470 -0
  94. package/dist/src/policy/policy-engine.test.js.map +1 -0
  95. package/dist/src/policy/stable-stringify.d.ts +58 -0
  96. package/dist/src/policy/stable-stringify.js +122 -0
  97. package/dist/src/policy/stable-stringify.js.map +1 -0
  98. package/dist/src/policy/types.d.ts +47 -0
  99. package/dist/src/policy/types.js +12 -0
  100. package/dist/src/policy/types.js.map +1 -0
  101. package/dist/src/routing/modelRouterService.d.ts +23 -0
  102. package/dist/src/routing/modelRouterService.js +36 -0
  103. package/dist/src/routing/modelRouterService.js.map +1 -0
  104. package/dist/src/routing/modelRouterService.test.d.ts +6 -0
  105. package/dist/src/routing/modelRouterService.test.js +72 -0
  106. package/dist/src/routing/modelRouterService.test.js.map +1 -0
  107. package/dist/src/routing/routingStrategy.d.ts +62 -0
  108. package/dist/src/routing/routingStrategy.js +7 -0
  109. package/dist/src/routing/routingStrategy.js.map +1 -0
  110. package/dist/src/routing/strategies/compositeStrategy.d.ts +26 -0
  111. package/dist/src/routing/strategies/compositeStrategy.js +67 -0
  112. package/dist/src/routing/strategies/compositeStrategy.js.map +1 -0
  113. package/dist/src/routing/strategies/compositeStrategy.test.d.ts +6 -0
  114. package/dist/src/routing/strategies/compositeStrategy.test.js +123 -0
  115. package/dist/src/routing/strategies/compositeStrategy.test.js.map +1 -0
  116. package/dist/src/routing/strategies/defaultStrategy.d.ts +12 -0
  117. package/dist/src/routing/strategies/defaultStrategy.js +20 -0
  118. package/dist/src/routing/strategies/defaultStrategy.js.map +1 -0
  119. package/dist/src/routing/strategies/defaultStrategy.test.d.ts +6 -0
  120. package/dist/src/routing/strategies/defaultStrategy.test.js +26 -0
  121. package/dist/src/routing/strategies/defaultStrategy.test.js.map +1 -0
  122. package/dist/src/routing/strategies/fallbackStrategy.d.ts +12 -0
  123. package/dist/src/routing/strategies/fallbackStrategy.js +25 -0
  124. package/dist/src/routing/strategies/fallbackStrategy.js.map +1 -0
  125. package/dist/src/routing/strategies/fallbackStrategy.test.d.ts +6 -0
  126. package/dist/src/routing/strategies/fallbackStrategy.test.js +55 -0
  127. package/dist/src/routing/strategies/fallbackStrategy.test.js.map +1 -0
  128. package/dist/src/routing/strategies/overrideStrategy.d.ts +15 -0
  129. package/dist/src/routing/strategies/overrideStrategy.js +27 -0
  130. package/dist/src/routing/strategies/overrideStrategy.js.map +1 -0
  131. package/dist/src/routing/strategies/overrideStrategy.test.d.ts +6 -0
  132. package/dist/src/routing/strategies/overrideStrategy.test.js +41 -0
  133. package/dist/src/routing/strategies/overrideStrategy.test.js.map +1 -0
  134. package/dist/src/services/fileDiscoveryService.d.ts +10 -0
  135. package/dist/src/services/fileDiscoveryService.js +31 -17
  136. package/dist/src/services/fileDiscoveryService.js.map +1 -1
  137. package/dist/src/services/loopDetectionService.d.ts +5 -0
  138. package/dist/src/services/loopDetectionService.js +13 -2
  139. package/dist/src/services/loopDetectionService.js.map +1 -1
  140. package/dist/src/services/loopDetectionService.test.js +15 -0
  141. package/dist/src/services/loopDetectionService.test.js.map +1 -1
  142. package/dist/src/services/shellExecutionService.d.ts +34 -2
  143. package/dist/src/services/shellExecutionService.js +177 -43
  144. package/dist/src/services/shellExecutionService.js.map +1 -1
  145. package/dist/src/services/shellExecutionService.test.js +153 -56
  146. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  147. package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +4 -2
  148. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +31 -4
  149. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  150. package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +6 -2
  151. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +14 -2
  152. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
  153. package/dist/src/telemetry/index.d.ts +2 -2
  154. package/dist/src/telemetry/index.js +2 -2
  155. package/dist/src/telemetry/index.js.map +1 -1
  156. package/dist/src/telemetry/loggers.d.ts +2 -1
  157. package/dist/src/telemetry/loggers.js +20 -5
  158. package/dist/src/telemetry/loggers.js.map +1 -1
  159. package/dist/src/telemetry/loggers.test.js +50 -35
  160. package/dist/src/telemetry/loggers.test.js.map +1 -1
  161. package/dist/src/telemetry/metrics.d.ts +1 -1
  162. package/dist/src/telemetry/metrics.js +2 -2
  163. package/dist/src/telemetry/metrics.js.map +1 -1
  164. package/dist/src/telemetry/types.d.ts +23 -3
  165. package/dist/src/telemetry/types.js +25 -3
  166. package/dist/src/telemetry/types.js.map +1 -1
  167. package/dist/src/tools/edit.js +2 -3
  168. package/dist/src/tools/edit.js.map +1 -1
  169. package/dist/src/tools/edit.test.js +2 -8
  170. package/dist/src/tools/edit.test.js.map +1 -1
  171. package/dist/src/tools/glob.d.ts +5 -1
  172. package/dist/src/tools/glob.js +24 -17
  173. package/dist/src/tools/glob.js.map +1 -1
  174. package/dist/src/tools/glob.test.js +51 -0
  175. package/dist/src/tools/glob.test.js.map +1 -1
  176. package/dist/src/tools/ls.js +19 -32
  177. package/dist/src/tools/ls.js.map +1 -1
  178. package/dist/src/tools/ls.test.js +140 -280
  179. package/dist/src/tools/ls.test.js.map +1 -1
  180. package/dist/src/tools/read-many-files.d.ts +1 -1
  181. package/dist/src/tools/read-many-files.js +17 -49
  182. package/dist/src/tools/read-many-files.js.map +1 -1
  183. package/dist/src/tools/ripGrep.d.ts +4 -0
  184. package/dist/src/tools/ripGrep.js +11 -1
  185. package/dist/src/tools/ripGrep.js.map +1 -1
  186. package/dist/src/tools/ripGrep.test.js +51 -1
  187. package/dist/src/tools/ripGrep.test.js.map +1 -1
  188. package/dist/src/tools/shell.d.ts +12 -2
  189. package/dist/src/tools/shell.js +12 -16
  190. package/dist/src/tools/shell.js.map +1 -1
  191. package/dist/src/tools/shell.test.js +2 -33
  192. package/dist/src/tools/shell.test.js.map +1 -1
  193. package/dist/src/tools/smart-edit.js +2 -3
  194. package/dist/src/tools/smart-edit.js.map +1 -1
  195. package/dist/src/tools/smart-edit.test.js +2 -8
  196. package/dist/src/tools/smart-edit.test.js.map +1 -1
  197. package/dist/src/tools/tools.d.ts +6 -4
  198. package/dist/src/tools/tools.js +2 -2
  199. package/dist/src/tools/tools.js.map +1 -1
  200. package/dist/src/tools/write-file.js +2 -3
  201. package/dist/src/tools/write-file.js.map +1 -1
  202. package/dist/src/tools/write-file.test.js +78 -0
  203. package/dist/src/tools/write-file.test.js.map +1 -1
  204. package/dist/src/utils/bfsFileSearch.js +11 -5
  205. package/dist/src/utils/bfsFileSearch.js.map +1 -1
  206. package/dist/src/utils/errors.d.ts +6 -0
  207. package/dist/src/utils/errors.js +10 -0
  208. package/dist/src/utils/errors.js.map +1 -1
  209. package/dist/src/utils/geminiIgnoreParser.d.ts +18 -0
  210. package/dist/src/utils/geminiIgnoreParser.js +61 -0
  211. package/dist/src/utils/geminiIgnoreParser.js.map +1 -0
  212. package/dist/src/utils/geminiIgnoreParser.test.d.ts +6 -0
  213. package/dist/src/utils/geminiIgnoreParser.test.js +50 -0
  214. package/dist/src/utils/geminiIgnoreParser.test.js.map +1 -0
  215. package/dist/src/utils/gitIgnoreParser.d.ts +3 -9
  216. package/dist/src/utils/gitIgnoreParser.js +60 -69
  217. package/dist/src/utils/gitIgnoreParser.js.map +1 -1
  218. package/dist/src/utils/gitIgnoreParser.test.js +18 -53
  219. package/dist/src/utils/gitIgnoreParser.test.js.map +1 -1
  220. package/dist/src/utils/terminalSerializer.d.ts +28 -0
  221. package/dist/src/utils/terminalSerializer.js +432 -0
  222. package/dist/src/utils/terminalSerializer.js.map +1 -0
  223. package/dist/src/utils/terminalSerializer.test.d.ts +6 -0
  224. package/dist/src/utils/terminalSerializer.test.js +176 -0
  225. package/dist/src/utils/terminalSerializer.test.js.map +1 -0
  226. package/dist/tsconfig.tsbuildinfo +1 -1
  227. package/package.json +1 -1
  228. package/dist/google-gemini-cli-core-0.5.0-preview.tgz +0 -0
  229. package/dist/src/utils/ide-trust.d.ts +0 -10
  230. package/dist/src/utils/ide-trust.js +0 -14
  231. package/dist/src/utils/ide-trust.js.map +0 -1
package/LICENSE CHANGED
@@ -187,7 +187,7 @@
187
187
  same "printed page" as the copyright notice for easier
188
188
  identification within third-party archives.
189
189
 
190
- Copyright 2025 Google LLC
190
+ Copyright [yyyy] [name of copyright owner]
191
191
 
192
192
  Licensed under the Apache License, Version 2.0 (the "License");
193
193
  you may not use this file except in compliance with the License.
@@ -199,4 +199,4 @@
199
199
  distributed under the License is distributed on an "AS IS" BASIS,
200
200
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
201
201
  See the License for the specific language governing permissions and
202
- limitations under the License.
202
+ limitations under the License.
package/README.md CHANGED
@@ -1,6 +1,7 @@
1
1
  # Gemini CLI
2
2
 
3
3
  [![Gemini CLI CI](https://github.com/google-gemini/gemini-cli/actions/workflows/ci.yml/badge.svg)](https://github.com/google-gemini/gemini-cli/actions/workflows/ci.yml)
4
+ [![Gemini CLI E2E](https://github.com/google-gemini/gemini-cli/actions/workflows/e2e.yml/badge.svg)](https://github.com/google-gemini/gemini-cli/actions/workflows/e2e.yml)
4
5
  [![Version](https://img.shields.io/npm/v/@google/gemini-cli)](https://www.npmjs.com/package/@google/gemini-cli)
5
6
  [![License](https://img.shields.io/github/license/google-gemini/gemini-cli)](https://github.com/google-gemini/gemini-cli/blob/main/LICENSE)
6
7
 
@@ -106,7 +107,7 @@ Integrate Gemini CLI directly into your GitHub workflows with [**Gemini CLI GitH
106
107
 
107
108
  Choose the authentication method that best fits your needs:
108
109
 
109
- ### Option 1: OAuth login (Using your Google Account)
110
+ ### Option 1: Login with Google (OAuth login using your Google Account)
110
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
113
 
@@ -117,7 +118,7 @@ Choose the authentication method that best fits your needs:
117
118
  - **No API key management** - just sign in with your Google account
118
119
  - **Automatic updates** to latest models
119
120
 
120
- #### Start Gemini CLI, then choose OAuth and follow the browser authentication flow when prompted
121
+ #### Start Gemini CLI, then choose _Login with Google_ and follow the browser authentication flow when prompted
121
122
 
122
123
  ```bash
123
124
  gemini
@@ -190,10 +191,19 @@ gemini -m gemini-2.5-flash
190
191
 
191
192
  #### Non-interactive mode for scripts
192
193
 
194
+ Get a simple text response:
195
+
193
196
  ```bash
194
197
  gemini -p "Explain the architecture of this codebase"
195
198
  ```
196
199
 
200
+ For more advanced scripting, including how to parse JSON and handle errors, use
201
+ the `--output-format json` flag to get structured output:
202
+
203
+ ```bash
204
+ gemini -p "Explain the architecture of this codebase" --output-format json
205
+ ```
206
+
197
207
  ### Quick Examples
198
208
 
199
209
  #### Start a new project
package/dist/index.d.ts CHANGED
@@ -6,11 +6,11 @@
6
6
  export * from './src/index.js';
7
7
  export { Storage } from './src/config/storage.js';
8
8
  export { DEFAULT_GEMINI_MODEL, DEFAULT_GEMINI_FLASH_MODEL, DEFAULT_GEMINI_FLASH_LITE_MODEL, DEFAULT_GEMINI_EMBEDDING_MODEL, } from './src/config/models.js';
9
+ export { serializeTerminalToObject, type AnsiOutput, type AnsiLine, type AnsiToken, } from './src/utils/terminalSerializer.js';
9
10
  export { DEFAULT_TRUNCATE_TOOL_OUTPUT_LINES, DEFAULT_TRUNCATE_TOOL_OUTPUT_THRESHOLD, } from './src/config/config.js';
10
11
  export { detectIdeFromEnv, getIdeInfo } from './src/ide/detect-ide.js';
11
12
  export { logIdeConnection } from './src/telemetry/loggers.js';
12
13
  export { IdeConnectionEvent, IdeConnectionType, ExtensionInstallEvent, } from './src/telemetry/types.js';
13
- export { getIdeTrust } from './src/utils/ide-trust.js';
14
14
  export { makeFakeConfig } from './src/test-utils/config.js';
15
15
  export * from './src/utils/pathReader.js';
16
16
  export { ClearcutLogger } from './src/telemetry/clearcut-logger/clearcut-logger.js';
package/dist/index.js CHANGED
@@ -6,11 +6,11 @@
6
6
  export * from './src/index.js';
7
7
  export { Storage } from './src/config/storage.js';
8
8
  export { DEFAULT_GEMINI_MODEL, DEFAULT_GEMINI_FLASH_MODEL, DEFAULT_GEMINI_FLASH_LITE_MODEL, DEFAULT_GEMINI_EMBEDDING_MODEL, } from './src/config/models.js';
9
+ export { serializeTerminalToObject, } from './src/utils/terminalSerializer.js';
9
10
  export { DEFAULT_TRUNCATE_TOOL_OUTPUT_LINES, DEFAULT_TRUNCATE_TOOL_OUTPUT_THRESHOLD, } from './src/config/config.js';
10
11
  export { detectIdeFromEnv, getIdeInfo } from './src/ide/detect-ide.js';
11
12
  export { logIdeConnection } from './src/telemetry/loggers.js';
12
13
  export { IdeConnectionEvent, IdeConnectionType, ExtensionInstallEvent, } from './src/telemetry/types.js';
13
- export { getIdeTrust } from './src/utils/ide-trust.js';
14
14
  export { makeFakeConfig } from './src/test-utils/config.js';
15
15
  export * from './src/utils/pathReader.js';
16
16
  export { ClearcutLogger } from './src/telemetry/clearcut-logger/clearcut-logger.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,GAC/B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,kCAAkC,EAClC,sCAAsC,GACvC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,GAC/B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,yBAAyB,GAI1B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,kCAAkC,EAClC,sCAAsC,GACvC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC"}
@@ -16,12 +16,18 @@ import { DEFAULT_GEMINI_FLASH_MODEL } from './models.js';
16
16
  import type { MCPOAuthConfig } from '../mcp/oauth-provider.js';
17
17
  import type { FileSystemService } from '../services/fileSystemService.js';
18
18
  import type { FallbackModelHandler } from '../fallback/types.js';
19
+ import { ModelRouterService } from '../routing/modelRouterService.js';
20
+ import { OutputFormat } from '../output/types.js';
19
21
  export type { MCPOAuthConfig, AnyToolInvocation };
20
22
  import type { AnyToolInvocation } from '../tools/tools.js';
21
23
  import { WorkspaceContext } from '../utils/workspaceContext.js';
22
24
  import { Storage } from './storage.js';
25
+ import type { ShellExecutionConfig } from '../services/shellExecutionService.js';
23
26
  import { FileExclusions } from '../utils/ignorePatterns.js';
24
27
  import type { EventEmitter } from 'node:events';
28
+ import { MessageBus } from '../confirmation-bus/message-bus.js';
29
+ import { PolicyEngine } from '../policy/policy-engine.js';
30
+ import type { PolicyEngineConfig } from '../policy/types.js';
25
31
  import type { UserTierId } from '../code_assist/types.js';
26
32
  export declare enum ApprovalMode {
27
33
  DEFAULT = "default",
@@ -49,6 +55,9 @@ export interface TelemetrySettings {
49
55
  logPrompts?: boolean;
50
56
  outfile?: string;
51
57
  }
58
+ export interface OutputSettings {
59
+ format?: OutputFormat;
60
+ }
52
61
  export interface GeminiCLIExtension {
53
62
  name: string;
54
63
  version: string;
@@ -147,6 +156,7 @@ export interface ConfigParameters {
147
156
  useRipgrep?: boolean;
148
157
  shouldUseNodePtyShell?: boolean;
149
158
  skipNextSpeakerCheck?: boolean;
159
+ shellExecutionConfig?: ShellExecutionConfig;
150
160
  extensionManagement?: boolean;
151
161
  enablePromptCompletion?: boolean;
152
162
  truncateToolOutputThreshold?: number;
@@ -154,6 +164,8 @@ export interface ConfigParameters {
154
164
  enableToolOutputTruncation?: boolean;
155
165
  eventEmitter?: EventEmitter;
156
166
  useSmartEdit?: boolean;
167
+ policyEngineConfig?: PolicyEngineConfig;
168
+ output?: OutputSettings;
157
169
  }
158
170
  export declare class Config {
159
171
  private toolRegistry;
@@ -185,6 +197,7 @@ export declare class Config {
185
197
  private readonly usageStatisticsEnabled;
186
198
  private geminiClient;
187
199
  private baseLlmClient;
200
+ private modelRouterService;
188
201
  private readonly fileFiltering;
189
202
  private fileDiscoveryService;
190
203
  private gitService;
@@ -192,7 +205,7 @@ export declare class Config {
192
205
  private readonly proxy;
193
206
  private readonly cwd;
194
207
  private readonly bugCommand;
195
- private readonly model;
208
+ private model;
196
209
  private readonly extensionContextFilePaths;
197
210
  private readonly noBrowser;
198
211
  private readonly folderTrustFeature;
@@ -214,6 +227,7 @@ export declare class Config {
214
227
  private readonly useRipgrep;
215
228
  private readonly shouldUseNodePtyShell;
216
229
  private readonly skipNextSpeakerCheck;
230
+ private shellExecutionConfig;
217
231
  private readonly extensionManagement;
218
232
  private readonly enablePromptCompletion;
219
233
  private readonly truncateToolOutputThreshold;
@@ -224,6 +238,9 @@ export declare class Config {
224
238
  private readonly fileExclusions;
225
239
  private readonly eventEmitter?;
226
240
  private readonly useSmartEdit;
241
+ private readonly messageBus;
242
+ private readonly policyEngine;
243
+ private readonly outputSettings;
227
244
  constructor(params: ConfigParameters);
228
245
  /**
229
246
  * Must only be called once, throws if called again.
@@ -280,6 +297,7 @@ export declare class Config {
280
297
  getTelemetryTarget(): TelemetryTarget;
281
298
  getTelemetryOutfile(): string | undefined;
282
299
  getGeminiClient(): GeminiClient;
300
+ getModelRouterService(): ModelRouterService;
283
301
  getEnableRecursiveFileSearch(): boolean;
284
302
  getFileFilteringDisableFuzzySearch(): boolean;
285
303
  getFileFilteringRespectGitIgnore(): boolean;
@@ -331,14 +349,19 @@ export declare class Config {
331
349
  getUseRipgrep(): boolean;
332
350
  getShouldUseNodePtyShell(): boolean;
333
351
  getSkipNextSpeakerCheck(): boolean;
352
+ getShellExecutionConfig(): ShellExecutionConfig;
353
+ setShellExecutionConfig(config: ShellExecutionConfig): void;
334
354
  getScreenReader(): boolean;
335
355
  getEnablePromptCompletion(): boolean;
336
356
  getEnableToolOutputTruncation(): boolean;
337
357
  getTruncateToolOutputThreshold(): number;
338
358
  getTruncateToolOutputLines(): number;
339
359
  getUseSmartEdit(): boolean;
360
+ getOutputFormat(): OutputFormat;
340
361
  getGitService(): Promise<GitService>;
341
362
  getFileExclusions(): FileExclusions;
363
+ getMessageBus(): MessageBus;
364
+ getPolicyEngine(): PolicyEngine;
342
365
  createToolRegistry(): Promise<ToolRegistry>;
343
366
  }
344
367
  export { DEFAULT_GEMINI_FLASH_MODEL };
@@ -27,16 +27,19 @@ import { FileDiscoveryService } from '../services/fileDiscoveryService.js';
27
27
  import { GitService } from '../services/gitService.js';
28
28
  import { initializeTelemetry, DEFAULT_TELEMETRY_TARGET, DEFAULT_OTLP_ENDPOINT, } from '../telemetry/index.js';
29
29
  import { StartSessionEvent } from '../telemetry/index.js';
30
- import { DEFAULT_GEMINI_EMBEDDING_MODEL, DEFAULT_GEMINI_FLASH_MODEL, } from './models.js';
30
+ import { DEFAULT_GEMINI_EMBEDDING_MODEL, DEFAULT_GEMINI_FLASH_MODEL, DEFAULT_GEMINI_MODEL, } from './models.js';
31
31
  import { shouldAttemptBrowserLaunch } from '../utils/browser.js';
32
- import { IdeClient } from '../ide/ide-client.js';
33
- import { ideContext } from '../ide/ideContext.js';
32
+ import { ideContextStore } from '../ide/ideContext.js';
34
33
  import { StandardFileSystemService } from '../services/fileSystemService.js';
35
- import { logCliConfiguration, logIdeConnection, logRipgrepFallback, } from '../telemetry/loggers.js';
36
- import { IdeConnectionEvent, IdeConnectionType, RipgrepFallbackEvent, } from '../telemetry/types.js';
34
+ import { logCliConfiguration, logRipgrepFallback, } from '../telemetry/loggers.js';
35
+ import { RipgrepFallbackEvent } from '../telemetry/types.js';
36
+ import { ModelRouterService } from '../routing/modelRouterService.js';
37
+ import { OutputFormat } from '../output/types.js';
37
38
  import { WorkspaceContext } from '../utils/workspaceContext.js';
38
39
  import { Storage } from './storage.js';
39
40
  import { FileExclusions } from '../utils/ignorePatterns.js';
41
+ import { MessageBus } from '../confirmation-bus/message-bus.js';
42
+ import { PolicyEngine } from '../policy/policy-engine.js';
40
43
  import { ProxyAgent, setGlobalDispatcher } from 'undici';
41
44
  export var ApprovalMode;
42
45
  (function (ApprovalMode) {
@@ -141,6 +144,7 @@ export class Config {
141
144
  usageStatisticsEnabled;
142
145
  geminiClient;
143
146
  baseLlmClient;
147
+ modelRouterService;
144
148
  fileFiltering;
145
149
  fileDiscoveryService = null;
146
150
  gitService = undefined;
@@ -170,6 +174,7 @@ export class Config {
170
174
  useRipgrep;
171
175
  shouldUseNodePtyShell;
172
176
  skipNextSpeakerCheck;
177
+ shellExecutionConfig;
173
178
  extensionManagement = true;
174
179
  enablePromptCompletion = false;
175
180
  truncateToolOutputThreshold;
@@ -180,6 +185,9 @@ export class Config {
180
185
  fileExclusions;
181
186
  eventEmitter;
182
187
  useSmartEdit;
188
+ messageBus;
189
+ policyEngine;
190
+ outputSettings;
183
191
  constructor(params) {
184
192
  this.sessionId = params.sessionId;
185
193
  this.embeddingModel =
@@ -223,7 +231,7 @@ export class Config {
223
231
  this.cwd = params.cwd ?? process.cwd();
224
232
  this.fileDiscoveryService = params.fileDiscoveryService ?? null;
225
233
  this.bugCommand = params.bugCommand;
226
- this.model = params.model;
234
+ this.model = params.model || DEFAULT_GEMINI_MODEL;
227
235
  this.extensionContextFilePaths = params.extensionContextFilePaths ?? [];
228
236
  this.maxSessionTurns = params.maxSessionTurns ?? -1;
229
237
  this.experimentalZedIntegration =
@@ -241,9 +249,15 @@ export class Config {
241
249
  this.chatCompression = params.chatCompression;
242
250
  this.interactive = params.interactive ?? false;
243
251
  this.trustedFolder = params.trustedFolder;
244
- this.useRipgrep = params.useRipgrep ?? false;
252
+ this.useRipgrep = params.useRipgrep ?? true;
245
253
  this.shouldUseNodePtyShell = params.shouldUseNodePtyShell ?? false;
246
254
  this.skipNextSpeakerCheck = params.skipNextSpeakerCheck ?? true;
255
+ this.shellExecutionConfig = {
256
+ terminalWidth: params.shellExecutionConfig?.terminalWidth ?? 80,
257
+ terminalHeight: params.shellExecutionConfig?.terminalHeight ?? 24,
258
+ showColor: params.shellExecutionConfig?.showColor ?? false,
259
+ pager: params.shellExecutionConfig?.pager ?? 'cat',
260
+ };
247
261
  this.truncateToolOutputThreshold =
248
262
  params.truncateToolOutputThreshold ??
249
263
  DEFAULT_TRUNCATE_TOOL_OUTPUT_THRESHOLD;
@@ -257,6 +271,11 @@ export class Config {
257
271
  this.enablePromptCompletion = params.enablePromptCompletion ?? false;
258
272
  this.fileExclusions = new FileExclusions(this);
259
273
  this.eventEmitter = params.eventEmitter;
274
+ this.policyEngine = new PolicyEngine(params.policyEngineConfig);
275
+ this.messageBus = new MessageBus(this.policyEngine);
276
+ this.outputSettings = {
277
+ format: params.output?.format ?? OutputFormat.TEXT,
278
+ };
260
279
  if (params.contextFileName) {
261
280
  setGeminiMdFilename(params.contextFileName);
262
281
  }
@@ -267,6 +286,7 @@ export class Config {
267
286
  setGlobalDispatcher(new ProxyAgent(this.getProxy()));
268
287
  }
269
288
  this.geminiClient = new GeminiClient(this);
289
+ this.modelRouterService = new ModelRouterService(this);
270
290
  }
271
291
  /**
272
292
  * Must only be called once, throws if called again.
@@ -276,10 +296,6 @@ export class Config {
276
296
  throw Error('Config was already initialized');
277
297
  }
278
298
  this.initialized = true;
279
- if (this.getIdeMode()) {
280
- await (await IdeClient.getInstance()).connect();
281
- logIdeConnection(this, new IdeConnectionEvent(IdeConnectionType.START));
282
- }
283
299
  // Initialize centralized FileDiscoveryService
284
300
  this.getFileService();
285
301
  if (this.getCheckpointingEnabled()) {
@@ -338,12 +354,14 @@ export class Config {
338
354
  return this.contentGeneratorConfig;
339
355
  }
340
356
  getModel() {
341
- return this.contentGeneratorConfig?.model || this.model;
357
+ return this.model;
342
358
  }
343
359
  setModel(newModel) {
344
- if (this.contentGeneratorConfig) {
345
- this.contentGeneratorConfig.model = newModel;
360
+ // Do not allow Pro usage if the user is in fallback mode.
361
+ if (newModel.includes('pro') && this.isInFallbackMode()) {
362
+ return;
346
363
  }
364
+ this.model = newModel;
347
365
  }
348
366
  isInFallbackMode() {
349
367
  return this.inFallbackMode;
@@ -470,6 +488,9 @@ export class Config {
470
488
  getGeminiClient() {
471
489
  return this.geminiClient;
472
490
  }
491
+ getModelRouterService() {
492
+ return this.modelRouterService;
493
+ }
473
494
  getEnableRecursiveFileSearch() {
474
495
  return this.fileFiltering.enableRecursiveFileSearch;
475
496
  }
@@ -574,7 +595,7 @@ export class Config {
574
595
  // restarts in the more common path. If the user chooses to mark the folder
575
596
  // as untrusted, the CLI will restart and we will have the trust value
576
597
  // reloaded.
577
- const context = ideContext.getIdeContext();
598
+ const context = ideContextStore.get();
578
599
  if (context?.workspaceState?.isTrusted !== undefined) {
579
600
  return context.workspaceState.isTrusted;
580
601
  }
@@ -610,6 +631,17 @@ export class Config {
610
631
  getSkipNextSpeakerCheck() {
611
632
  return this.skipNextSpeakerCheck;
612
633
  }
634
+ getShellExecutionConfig() {
635
+ return this.shellExecutionConfig;
636
+ }
637
+ setShellExecutionConfig(config) {
638
+ this.shellExecutionConfig = {
639
+ terminalWidth: config.terminalWidth ?? this.shellExecutionConfig.terminalWidth,
640
+ terminalHeight: config.terminalHeight ?? this.shellExecutionConfig.terminalHeight,
641
+ showColor: config.showColor ?? this.shellExecutionConfig.showColor,
642
+ pager: config.pager ?? this.shellExecutionConfig.pager,
643
+ };
644
+ }
613
645
  getScreenReader() {
614
646
  return this.accessibility.screenReader ?? false;
615
647
  }
@@ -628,6 +660,11 @@ export class Config {
628
660
  getUseSmartEdit() {
629
661
  return this.useSmartEdit;
630
662
  }
663
+ getOutputFormat() {
664
+ return this.outputSettings?.format
665
+ ? this.outputSettings.format
666
+ : OutputFormat.TEXT;
667
+ }
631
668
  async getGitService() {
632
669
  if (!this.gitService) {
633
670
  this.gitService = new GitService(this.targetDir, this.storage);
@@ -638,6 +675,12 @@ export class Config {
638
675
  getFileExclusions() {
639
676
  return this.fileExclusions;
640
677
  }
678
+ getMessageBus() {
679
+ return this.messageBus;
680
+ }
681
+ getPolicyEngine() {
682
+ return this.policyEngine;
683
+ }
641
684
  async createToolRegistry() {
642
685
  const registry = new ToolRegistry(this, this.eventEmitter);
643
686
  // helper to create & register core tools that are enabled
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/config/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/config/config.ts"],"names":[],"mappings":"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"}
@@ -167,9 +167,7 @@ describe('Server Config (config.ts)', () => {
167
167
  it('should refresh auth and update config', async () => {
168
168
  const config = new Config(baseParams);
169
169
  const authType = AuthType.USE_GEMINI;
170
- const newModel = 'gemini-flash';
171
170
  const mockContentConfig = {
172
- model: newModel,
173
171
  apiKey: 'test-key',
174
172
  };
175
173
  vi.mocked(createContentGeneratorConfig).mockReturnValue(mockContentConfig);
@@ -178,10 +176,8 @@ describe('Server Config (config.ts)', () => {
178
176
  expect(config.isInFallbackMode()).toBe(true);
179
177
  await config.refreshAuth(authType);
180
178
  expect(createContentGeneratorConfig).toHaveBeenCalledWith(config, authType);
181
- // Verify that contentGeneratorConfig is updated with the new model
179
+ // Verify that contentGeneratorConfig is updated
182
180
  expect(config.getContentGeneratorConfig()).toEqual(mockContentConfig);
183
- expect(config.getContentGeneratorConfig().model).toBe(newModel);
184
- expect(config.getModel()).toBe(newModel); // getModel() should return the updated model
185
181
  expect(GeminiClient).toHaveBeenCalledWith(config);
186
182
  // Verify that fallback mode is reset
187
183
  expect(config.isInFallbackMode()).toBe(false);
@@ -390,33 +386,33 @@ describe('Server Config (config.ts)', () => {
390
386
  });
391
387
  });
392
388
  describe('UseRipgrep Configuration', () => {
393
- it('should default useRipgrep to false when not provided', () => {
389
+ it('should default useRipgrep to true when not provided', () => {
394
390
  const config = new Config(baseParams);
395
- expect(config.getUseRipgrep()).toBe(false);
391
+ expect(config.getUseRipgrep()).toBe(true);
396
392
  });
397
- it('should set useRipgrep to true when provided as true', () => {
393
+ it('should set useRipgrep to false when provided as false', () => {
398
394
  const paramsWithRipgrep = {
399
395
  ...baseParams,
400
- useRipgrep: true,
396
+ useRipgrep: false,
401
397
  };
402
398
  const config = new Config(paramsWithRipgrep);
403
- expect(config.getUseRipgrep()).toBe(true);
399
+ expect(config.getUseRipgrep()).toBe(false);
404
400
  });
405
- it('should set useRipgrep to false when explicitly provided as false', () => {
401
+ it('should set useRipgrep to true when explicitly provided as true', () => {
406
402
  const paramsWithRipgrep = {
407
403
  ...baseParams,
408
- useRipgrep: false,
404
+ useRipgrep: true,
409
405
  };
410
406
  const config = new Config(paramsWithRipgrep);
411
- expect(config.getUseRipgrep()).toBe(false);
407
+ expect(config.getUseRipgrep()).toBe(true);
412
408
  });
413
- it('should default useRipgrep to false when undefined', () => {
409
+ it('should default useRipgrep to true when undefined', () => {
414
410
  const paramsWithUndefinedRipgrep = {
415
411
  ...baseParams,
416
412
  useRipgrep: undefined,
417
413
  };
418
414
  const config = new Config(paramsWithUndefinedRipgrep);
419
- expect(config.getUseRipgrep()).toBe(false);
415
+ expect(config.getUseRipgrep()).toBe(true);
420
416
  });
421
417
  });
422
418
  describe('createToolRegistry', () => {