@google/gemini-cli-core 0.32.0-preview.0 → 0.33.0-nightly.20260228.1ca5c05d0

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 (30) hide show
  1. package/dist/docs/cli/cli-reference.md +12 -12
  2. package/dist/docs/cli/custom-commands.md +9 -0
  3. package/dist/docs/cli/enterprise.md +19 -0
  4. package/dist/docs/cli/model.md +5 -14
  5. package/dist/docs/cli/sandbox.md +42 -2
  6. package/dist/docs/cli/telemetry.md +29 -0
  7. package/dist/docs/cli/tutorials/automation.md +101 -5
  8. package/dist/docs/cli/tutorials/mcp-setup.md +8 -0
  9. package/dist/docs/cli/tutorials/skills-getting-started.md +8 -0
  10. package/dist/docs/extensions/writing-extensions.md +16 -0
  11. package/dist/docs/get-started/authentication.md +86 -5
  12. package/dist/docs/get-started/installation.md +1 -1
  13. package/dist/docs/hooks/best-practices.md +33 -1
  14. package/dist/docs/hooks/writing-hooks.md +24 -0
  15. package/dist/docs/ide-integration/index.md +8 -0
  16. package/dist/docs/reference/configuration.md +16 -7
  17. package/dist/docs/reference/policy-engine.md +10 -0
  18. package/dist/docs/resources/faq.md +8 -0
  19. package/dist/docs/resources/troubleshooting.md +4 -1
  20. package/dist/google-gemini-cli-core-0.33.0-nightly.20260227.08ee13613.tgz +0 -0
  21. package/dist/src/core/loggingContentGenerator.d.ts +1 -0
  22. package/dist/src/core/loggingContentGenerator.js +26 -0
  23. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  24. package/dist/src/core/loggingContentGenerator.test.js +42 -0
  25. package/dist/src/core/loggingContentGenerator.test.js.map +1 -1
  26. package/dist/src/generated/git-commit.d.ts +2 -2
  27. package/dist/src/generated/git-commit.js +2 -2
  28. package/dist/src/generated/git-commit.js.map +1 -1
  29. package/dist/tsconfig.tsbuildinfo +1 -1
  30. package/package.json +1 -1
@@ -78,11 +78,20 @@ To authenticate and use Gemini CLI with a Gemini API key:
78
78
 
79
79
  2. Set the `GEMINI_API_KEY` environment variable to your key. For example:
80
80
 
81
+ **macOS/Linux**
82
+
81
83
  ```bash
82
84
  # Replace YOUR_GEMINI_API_KEY with the key from AI Studio
83
85
  export GEMINI_API_KEY="YOUR_GEMINI_API_KEY"
84
86
  ```
85
87
 
88
+ **Windows (PowerShell)**
89
+
90
+ ```powershell
91
+ # Replace YOUR_GEMINI_API_KEY with the key from AI Studio
92
+ $env:GEMINI_API_KEY="YOUR_GEMINI_API_KEY"
93
+ ```
94
+
86
95
  To make this setting persistent, see
87
96
  [Persisting Environment Variables](#persisting-vars).
88
97
 
@@ -114,12 +123,22 @@ or the location where you want to run your jobs.
114
123
 
115
124
  For example:
116
125
 
126
+ **macOS/Linux**
127
+
117
128
  ```bash
118
129
  # Replace with your project ID and desired location (e.g., us-central1)
119
130
  export GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"
120
131
  export GOOGLE_CLOUD_LOCATION="YOUR_PROJECT_LOCATION"
121
132
  ```
122
133
 
134
+ **Windows (PowerShell)**
135
+
136
+ ```powershell
137
+ # Replace with your project ID and desired location (e.g., us-central1)
138
+ $env:GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"
139
+ $env:GOOGLE_CLOUD_LOCATION="YOUR_PROJECT_LOCATION"
140
+ ```
141
+
123
142
  To make any Vertex AI environment variable settings persistent, see
124
143
  [Persisting Environment Variables](#persisting-vars).
125
144
 
@@ -130,9 +149,17 @@ Consider this authentication method if you have Google Cloud CLI installed.
130
149
  > **Note:** If you have previously set `GOOGLE_API_KEY` or `GEMINI_API_KEY`, you
131
150
  > must unset them to use ADC:
132
151
  >
152
+ > **macOS/Linux**
153
+ >
133
154
  > ```bash
134
155
  > unset GOOGLE_API_KEY GEMINI_API_KEY
135
156
  > ```
157
+ >
158
+ > **Windows (PowerShell)**
159
+ >
160
+ > ```powershell
161
+ > Remove-Item Env:\GOOGLE_API_KEY, Env:\GEMINI_API_KEY -ErrorAction Ignore
162
+ > ```
136
163
 
137
164
  1. Verify you have a Google Cloud project and Vertex AI API is enabled.
138
165
 
@@ -160,9 +187,17 @@ pipelines, or if your organization restricts user-based ADC or API key creation.
160
187
  > **Note:** If you have previously set `GOOGLE_API_KEY` or `GEMINI_API_KEY`, you
161
188
  > must unset them:
162
189
  >
190
+ > **macOS/Linux**
191
+ >
163
192
  > ```bash
164
193
  > unset GOOGLE_API_KEY GEMINI_API_KEY
165
194
  > ```
195
+ >
196
+ > **Windows (PowerShell)**
197
+ >
198
+ > ```powershell
199
+ > Remove-Item Env:\GOOGLE_API_KEY, Env:\GEMINI_API_KEY -ErrorAction Ignore
200
+ > ```
166
201
 
167
202
  1. [Create a service account and key](https://cloud.google.com/iam/docs/keys-create-delete)
168
203
  and download the provided JSON file. Assign the "Vertex AI User" role to the
@@ -171,11 +206,20 @@ pipelines, or if your organization restricts user-based ADC or API key creation.
171
206
  2. Set the `GOOGLE_APPLICATION_CREDENTIALS` environment variable to the JSON
172
207
  file's absolute path. For example:
173
208
 
209
+ **macOS/Linux**
210
+
174
211
  ```bash
175
212
  # Replace /path/to/your/keyfile.json with the actual path
176
213
  export GOOGLE_APPLICATION_CREDENTIALS="/path/to/your/keyfile.json"
177
214
  ```
178
215
 
216
+ **Windows (PowerShell)**
217
+
218
+ ```powershell
219
+ # Replace C:\path\to\your\keyfile.json with the actual path
220
+ $env:GOOGLE_APPLICATION_CREDENTIALS="C:\path\to\your\keyfile.json"
221
+ ```
222
+
179
223
  3. [Configure your Google Cloud Project](#set-gcp).
180
224
 
181
225
  4. Start the CLI:
@@ -195,11 +239,20 @@ pipelines, or if your organization restricts user-based ADC or API key creation.
195
239
 
196
240
  2. Set the `GOOGLE_API_KEY` environment variable:
197
241
 
242
+ **macOS/Linux**
243
+
198
244
  ```bash
199
245
  # Replace YOUR_GOOGLE_API_KEY with your Vertex AI API key
200
246
  export GOOGLE_API_KEY="YOUR_GOOGLE_API_KEY"
201
247
  ```
202
248
 
249
+ **Windows (PowerShell)**
250
+
251
+ ```powershell
252
+ # Replace YOUR_GOOGLE_API_KEY with your Vertex AI API key
253
+ $env:GOOGLE_API_KEY="YOUR_GOOGLE_API_KEY"
254
+ ```
255
+
203
256
  > **Note:** If you see errors like
204
257
  > `"API keys are not supported by this API..."`, your organization might
205
258
  > restrict API key usage for this service. Try the other Vertex AI
@@ -243,11 +296,20 @@ To configure Gemini CLI to use a Google Cloud project, do the following:
243
296
 
244
297
  For example, to set the `GOOGLE_CLOUD_PROJECT_ID` variable:
245
298
 
299
+ **macOS/Linux**
300
+
246
301
  ```bash
247
302
  # Replace YOUR_PROJECT_ID with your actual Google Cloud project ID
248
303
  export GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"
249
304
  ```
250
305
 
306
+ **Windows (PowerShell)**
307
+
308
+ ```powershell
309
+ # Replace YOUR_PROJECT_ID with your actual Google Cloud project ID
310
+ $env:GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"
311
+ ```
312
+
251
313
  To make this setting persistent, see
252
314
  [Persisting Environment Variables](#persisting-vars).
253
315
 
@@ -257,16 +319,22 @@ To avoid setting environment variables for every terminal session, you can
257
319
  persist them with the following methods:
258
320
 
259
321
  1. **Add your environment variables to your shell configuration file:** Append
260
- the `export ...` commands to your shell's startup file (e.g., `~/.bashrc`,
261
- `~/.zshrc`, or `~/.profile`) and reload your shell (e.g.,
262
- `source ~/.bashrc`).
322
+ the environment variable commands to your shell's startup file.
323
+
324
+ **macOS/Linux** (e.g., `~/.bashrc`, `~/.zshrc`, or `~/.profile`):
263
325
 
264
326
  ```bash
265
- # Example for .bashrc
266
327
  echo 'export GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"' >> ~/.bashrc
267
328
  source ~/.bashrc
268
329
  ```
269
330
 
331
+ **Windows (PowerShell)** (e.g., `$PROFILE`):
332
+
333
+ ```powershell
334
+ Add-Content -Path $PROFILE -Value '$env:GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"'
335
+ . $PROFILE
336
+ ```
337
+
270
338
  > **Warning:** Be aware that when you export API keys or service account
271
339
  > paths in your shell configuration file, any process launched from that
272
340
  > shell can read them.
@@ -274,10 +342,13 @@ persist them with the following methods:
274
342
  2. **Use a `.env` file:** Create a `.gemini/.env` file in your project
275
343
  directory or home directory. Gemini CLI automatically loads variables from
276
344
  the first `.env` file it finds, searching up from the current directory,
277
- then in `~/.gemini/.env` or `~/.env`. `.gemini/.env` is recommended.
345
+ then in your home directory's `.gemini/.env` (e.g., `~/.gemini/.env` or
346
+ `%USERPROFILE%\.gemini\.env`).
278
347
 
279
348
  Example for user-wide settings:
280
349
 
350
+ **macOS/Linux**
351
+
281
352
  ```bash
282
353
  mkdir -p ~/.gemini
283
354
  cat >> ~/.gemini/.env <<'EOF'
@@ -286,6 +357,16 @@ persist them with the following methods:
286
357
  EOF
287
358
  ```
288
359
 
360
+ **Windows (PowerShell)**
361
+
362
+ ```powershell
363
+ New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.gemini"
364
+ @"
365
+ GOOGLE_CLOUD_PROJECT="your-project-id"
366
+ # Add other variables like GEMINI_API_KEY as needed
367
+ "@ | Out-File -FilePath "$env:USERPROFILE\.gemini\.env" -Encoding utf8 -Append
368
+ ```
369
+
289
370
  Variables are loaded from the first file found, not merged.
290
371
 
291
372
  ## Running in Google Cloud environments <a id="cloud-env"></a>
@@ -13,7 +13,7 @@ installation methods, and release types.
13
13
  - "Casual" usage: 4GB+ RAM (short sessions, common tasks and edits)
14
14
  - "Power" usage: 16GB+ RAM (long sessions, large codebases, deep context)
15
15
  - **Runtime:** Node.js 20.0.0+
16
- - **Shell:** Bash or Zsh
16
+ - **Shell:** Bash, Zsh, or PowerShell
17
17
  - **Location:**
18
18
  [Gemini Code Assist supported locations](https://developers.google.com/gemini-code-assist/resources/available-locations#americas)
19
19
  - **Internet connection required**
@@ -167,6 +167,8 @@ try {
167
167
  Run hook scripts manually with sample JSON input to verify they behave as
168
168
  expected before hooking them up to the CLI.
169
169
 
170
+ **macOS/Linux**
171
+
170
172
  ```bash
171
173
  # Create test input
172
174
  cat > test-input.json << 'EOF'
@@ -187,7 +189,30 @@ cat test-input.json | .gemini/hooks/my-hook.sh
187
189
 
188
190
  # Check exit code
189
191
  echo "Exit code: $?"
192
+ ```
193
+
194
+ **Windows (PowerShell)**
190
195
 
196
+ ```powershell
197
+ # Create test input
198
+ @"
199
+ {
200
+ "session_id": "test-123",
201
+ "cwd": "C:\\temp\\test",
202
+ "hook_event_name": "BeforeTool",
203
+ "tool_name": "write_file",
204
+ "tool_input": {
205
+ "file_path": "test.txt",
206
+ "content": "Test content"
207
+ }
208
+ }
209
+ "@ | Out-File -FilePath test-input.json -Encoding utf8
210
+
211
+ # Test the hook
212
+ Get-Content test-input.json | .\.gemini\hooks\my-hook.ps1
213
+
214
+ # Check exit code
215
+ Write-Host "Exit code: $LASTEXITCODE"
191
216
  ```
192
217
 
193
218
  ### Check exit codes
@@ -333,7 +358,7 @@ tool_name=$(echo "$input" | jq -r '.tool_name')
333
358
 
334
359
  ### Make scripts executable
335
360
 
336
- Always make hook scripts executable:
361
+ Always make hook scripts executable on macOS/Linux:
337
362
 
338
363
  ```bash
339
364
  chmod +x .gemini/hooks/*.sh
@@ -341,6 +366,10 @@ chmod +x .gemini/hooks/*.js
341
366
 
342
367
  ```
343
368
 
369
+ **Windows Note**: On Windows, PowerShell scripts (`.ps1`) don't use `chmod`, but
370
+ you may need to ensure your execution policy allows them to run (e.g.,
371
+ `Set-ExecutionPolicy RemoteSigned -Scope CurrentUser`).
372
+
344
373
  ### Version control
345
374
 
346
375
  Commit hooks to share with your team:
@@ -481,6 +510,9 @@ ls -la .gemini/hooks/my-hook.sh
481
510
  chmod +x .gemini/hooks/my-hook.sh
482
511
  ```
483
512
 
513
+ **Windows Note**: On Windows, ensure your execution policy allows running
514
+ scripts (e.g., `Get-ExecutionPolicy`).
515
+
484
516
  **Verify script path:** Ensure the path in `settings.json` resolves correctly.
485
517
 
486
518
  ```bash
@@ -28,6 +28,8 @@ Create a directory for hooks and a simple logging script.
28
28
  > This example uses `jq` to parse JSON. If you don't have it installed, you can
29
29
  > perform similar logic using Node.js or Python.
30
30
 
31
+ **macOS/Linux**
32
+
31
33
  ```bash
32
34
  mkdir -p .gemini/hooks
33
35
  cat > .gemini/hooks/log-tools.sh << 'EOF'
@@ -52,6 +54,28 @@ EOF
52
54
  chmod +x .gemini/hooks/log-tools.sh
53
55
  ```
54
56
 
57
+ **Windows (PowerShell)**
58
+
59
+ ```powershell
60
+ New-Item -ItemType Directory -Force -Path ".gemini\hooks"
61
+ @"
62
+ # Read hook input from stdin
63
+ `$inputJson = `$input | Out-String | ConvertFrom-Json
64
+
65
+ # Extract tool name
66
+ `$toolName = `$inputJson.tool_name
67
+
68
+ # Log to stderr (visible in terminal if hook fails, or captured in logs)
69
+ [Console]::Error.WriteLine("Logging tool: `$toolName")
70
+
71
+ # Log to file
72
+ "[`$(Get-Date -Format 'o')] Tool executed: `$toolName" | Out-File -FilePath ".gemini\tool-log.txt" -Append -Encoding utf8
73
+
74
+ # Return success with empty JSON
75
+ "{}"
76
+ "@ | Out-File -FilePath ".gemini\hooks\log-tools.ps1" -Encoding utf8
77
+ ```
78
+
55
79
  ## Exit Code Strategies
56
80
 
57
81
  There are two ways to control or block an action in Gemini CLI:
@@ -177,10 +177,18 @@ standalone terminal and want to manually associate it with a specific IDE
177
177
  instance, you can set the `GEMINI_CLI_IDE_PID` environment variable to the
178
178
  process ID (PID) of your IDE.
179
179
 
180
+ **macOS/Linux**
181
+
180
182
  ```bash
181
183
  export GEMINI_CLI_IDE_PID=12345
182
184
  ```
183
185
 
186
+ **Windows (PowerShell)**
187
+
188
+ ```powershell
189
+ $env:GEMINI_CLI_IDE_PID=12345
190
+ ```
191
+
184
192
  When this variable is set, Gemini CLI will skip automatic detection and attempt
185
193
  to connect using the provided PID.
186
194
 
@@ -1332,7 +1332,8 @@ the `advanced.excludedEnvVars` setting in your `settings.json` file.
1332
1332
  - **`GEMINI_MODEL`**:
1333
1333
  - Specifies the default Gemini model to use.
1334
1334
  - Overrides the hardcoded default
1335
- - Example: `export GEMINI_MODEL="gemini-3-flash-preview"`
1335
+ - Example: `export GEMINI_MODEL="gemini-3-flash-preview"` (Windows PowerShell:
1336
+ `$env:GEMINI_MODEL="gemini-3-flash-preview"`)
1336
1337
  - **`GEMINI_CLI_IDE_PID`**:
1337
1338
  - Manually specifies the PID of the IDE process to use for integration. This
1338
1339
  is useful when running Gemini CLI in a standalone terminal while still
@@ -1344,12 +1345,14 @@ the `advanced.excludedEnvVars` setting in your `settings.json` file.
1344
1345
  - By default, this is the user's system home directory. The CLI will create a
1345
1346
  `.gemini` folder inside this directory.
1346
1347
  - Useful for shared compute environments or keeping CLI state isolated.
1347
- - Example: `export GEMINI_CLI_HOME="/path/to/user/config"`
1348
+ - Example: `export GEMINI_CLI_HOME="/path/to/user/config"` (Windows
1349
+ PowerShell: `$env:GEMINI_CLI_HOME="C:\path\to\user\config"`)
1348
1350
  - **`GOOGLE_API_KEY`**:
1349
1351
  - Your Google Cloud API key.
1350
1352
  - Required for using Vertex AI in express mode.
1351
1353
  - Ensure you have the necessary permissions.
1352
- - Example: `export GOOGLE_API_KEY="YOUR_GOOGLE_API_KEY"`.
1354
+ - Example: `export GOOGLE_API_KEY="YOUR_GOOGLE_API_KEY"` (Windows PowerShell:
1355
+ `$env:GOOGLE_API_KEY="YOUR_GOOGLE_API_KEY"`).
1353
1356
  - **`GOOGLE_CLOUD_PROJECT`**:
1354
1357
  - Your Google Cloud Project ID.
1355
1358
  - Required for using Code Assist or Vertex AI.
@@ -1360,18 +1363,23 @@ the `advanced.excludedEnvVars` setting in your `settings.json` file.
1360
1363
  you have `GOOGLE_CLOUD_PROJECT` set in your global environment in Cloud
1361
1364
  Shell, it will be overridden by this default. To use a different project in
1362
1365
  Cloud Shell, you must define `GOOGLE_CLOUD_PROJECT` in a `.env` file.
1363
- - Example: `export GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"`.
1366
+ - Example: `export GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"` (Windows
1367
+ PowerShell: `$env:GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"`).
1364
1368
  - **`GOOGLE_APPLICATION_CREDENTIALS`** (string):
1365
1369
  - **Description:** The path to your Google Application Credentials JSON file.
1366
1370
  - **Example:**
1367
1371
  `export GOOGLE_APPLICATION_CREDENTIALS="/path/to/your/credentials.json"`
1372
+ (Windows PowerShell:
1373
+ `$env:GOOGLE_APPLICATION_CREDENTIALS="C:\path\to\your\credentials.json"`)
1368
1374
  - **`GOOGLE_GENAI_API_VERSION`**:
1369
1375
  - Specifies the API version to use for Gemini API requests.
1370
1376
  - When set, overrides the default API version used by the SDK.
1371
- - Example: `export GOOGLE_GENAI_API_VERSION="v1"`
1377
+ - Example: `export GOOGLE_GENAI_API_VERSION="v1"` (Windows PowerShell:
1378
+ `$env:GOOGLE_GENAI_API_VERSION="v1"`)
1372
1379
  - **`OTLP_GOOGLE_CLOUD_PROJECT`**:
1373
1380
  - Your Google Cloud Project ID for Telemetry in Google Cloud
1374
- - Example: `export OTLP_GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"`.
1381
+ - Example: `export OTLP_GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"` (Windows
1382
+ PowerShell: `$env:OTLP_GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"`).
1375
1383
  - **`GEMINI_TELEMETRY_ENABLED`**:
1376
1384
  - Set to `true` or `1` to enable telemetry. Any other value is treated as
1377
1385
  disabling it.
@@ -1399,7 +1407,8 @@ the `advanced.excludedEnvVars` setting in your `settings.json` file.
1399
1407
  - **`GOOGLE_CLOUD_LOCATION`**:
1400
1408
  - Your Google Cloud Project Location (e.g., us-central1).
1401
1409
  - Required for using Vertex AI in non-express mode.
1402
- - Example: `export GOOGLE_CLOUD_LOCATION="YOUR_PROJECT_LOCATION"`.
1410
+ - Example: `export GOOGLE_CLOUD_LOCATION="YOUR_PROJECT_LOCATION"` (Windows
1411
+ PowerShell: `$env:GOOGLE_CLOUD_LOCATION="YOUR_PROJECT_LOCATION"`).
1403
1412
  - **`GEMINI_SANDBOX`**:
1404
1413
  - Alternative to the `sandbox` setting in `settings.json`.
1405
1414
  - Accepts `true`, `false`, `docker`, `podman`, or a custom command string.
@@ -10,9 +10,19 @@ confirmation.
10
10
  To create your first policy:
11
11
 
12
12
  1. **Create the policy directory** if it doesn't exist:
13
+
14
+ **macOS/Linux**
15
+
13
16
  ```bash
14
17
  mkdir -p ~/.gemini/policies
15
18
  ```
19
+
20
+ **Windows (PowerShell)**
21
+
22
+ ```powershell
23
+ New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.gemini\policies"
24
+ ```
25
+
16
26
  2. **Create a new policy file** (e.g., `~/.gemini/policies/my-rules.toml`). You
17
27
  can use any filename ending in `.toml`; all such files in this directory
18
28
  will be loaded and combined:
@@ -88,10 +88,18 @@ You can configure your Google Cloud Project ID using an environment variable.
88
88
 
89
89
  Set the `GOOGLE_CLOUD_PROJECT` environment variable in your shell:
90
90
 
91
+ **macOS/Linux**
92
+
91
93
  ```bash
92
94
  export GOOGLE_CLOUD_PROJECT="your-project-id"
93
95
  ```
94
96
 
97
+ **Windows (PowerShell)**
98
+
99
+ ```powershell
100
+ $env:GOOGLE_CLOUD_PROJECT="your-project-id"
101
+ ```
102
+
95
103
  To make this setting permanent, add this line to your shell's startup file
96
104
  (e.g., `~/.bashrc`, `~/.zshrc`).
97
105
 
@@ -55,10 +55,13 @@ topics on:
55
55
  - Set the `NODE_USE_SYSTEM_CA=1` environment variable to tell Node.js to use
56
56
  the operating system's native certificate store (where corporate
57
57
  certificates are typically already installed).
58
- - Example: `export NODE_USE_SYSTEM_CA=1`
58
+ - Example: `export NODE_USE_SYSTEM_CA=1` (Windows PowerShell:
59
+ `$env:NODE_USE_SYSTEM_CA=1`)
59
60
  - Set the `NODE_EXTRA_CA_CERTS` environment variable to the absolute path of
60
61
  your corporate root CA certificate file.
61
62
  - Example: `export NODE_EXTRA_CA_CERTS=/path/to/your/corporate-ca.crt`
63
+ (Windows PowerShell:
64
+ `$env:NODE_EXTRA_CA_CERTS="C:\path\to\your\corporate-ca.crt"`)
62
65
 
63
66
  ## Common error messages and solutions
64
67
 
@@ -34,6 +34,7 @@ export declare class LoggingContentGenerator implements ContentGenerator {
34
34
  private logApiRequest;
35
35
  private _getEndpointUrl;
36
36
  private _logApiResponse;
37
+ private _fixGaxiosErrorData;
37
38
  private _logApiError;
38
39
  generateContent(req: GenerateContentParameters, userPromptId: string, role: LlmRole): Promise<GenerateContentResponse>;
39
40
  generateContentStream(req: GenerateContentParameters, userPromptId: string, role: LlmRole): Promise<AsyncGenerator<GenerateContentResponse>>;
@@ -175,6 +175,30 @@ export class LoggingContentGenerator {
175
175
  }
176
176
  logApiResponse(this.config, event);
177
177
  }
178
+ _fixGaxiosErrorData(error) {
179
+ // Fix for raw ASCII buffer strings appearing in dev with the latest
180
+ // Gaxios updates.
181
+ if (typeof error === 'object' &&
182
+ error !== null &&
183
+ 'response' in error &&
184
+ typeof error.response === 'object' &&
185
+ error.response !== null &&
186
+ 'data' in error.response) {
187
+ const response = error.response;
188
+ const data = response.data;
189
+ if (typeof data === 'string' && data.includes(',')) {
190
+ try {
191
+ const charCodes = data.split(',').map(Number);
192
+ if (charCodes.every((code) => !isNaN(code))) {
193
+ response.data = String.fromCharCode(...charCodes);
194
+ }
195
+ }
196
+ catch (_e) {
197
+ // If parsing fails, just leave it alone
198
+ }
199
+ }
200
+ }
201
+ }
178
202
  _logApiError(durationMs, error, model, prompt_id, requestContents, role, generationConfig, serverDetails) {
179
203
  const errorMessage = error instanceof Error ? error.message : String(error);
180
204
  const errorType = getErrorType(error);
@@ -226,6 +250,7 @@ export class LoggingContentGenerator {
226
250
  catch (error) {
227
251
  spanMetadata.error = error;
228
252
  const durationMs = Date.now() - startTime;
253
+ this._fixGaxiosErrorData(error);
229
254
  this._logApiError(durationMs, error, req.model, userPromptId, contents, role, req.config, serverDetails);
230
255
  throw error;
231
256
  }
@@ -257,6 +282,7 @@ export class LoggingContentGenerator {
257
282
  }
258
283
  catch (error) {
259
284
  const durationMs = Date.now() - startTime;
285
+ this._fixGaxiosErrorData(error);
260
286
  this._logApiError(durationMs, error, req.model, userPromptId, toContents(req.contents), role, req.config, serverDetails);
261
287
  throw error;
262
288
  }
@@ -1 +1 @@
1
- {"version":3,"file":"loggingContentGenerator.js","sourceRoot":"","sources":["../../../src/core/loggingContentGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loggingContentGenerator.js","sourceRoot":"","sources":["../../../src/core/loggingContentGenerator.ts"],"names":[],"mappings":"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"}
@@ -166,6 +166,48 @@ describe('LoggingContentGenerator', () => {
166
166
  expect(errorEvent.error_type).toBe('FatalAuthenticationError');
167
167
  });
168
168
  });
169
+ describe('Gaxios error parsing', () => {
170
+ it('should parse raw ASCII buffer strings in Gaxios errors', async () => {
171
+ const req = { contents: [], model: 'gemini-pro' };
172
+ // Simulate a Gaxios error with comma-separated ASCII codes
173
+ const asciiData = '72,101,108,108,111'; // "Hello"
174
+ const gaxiosError = Object.assign(new Error('Gaxios Error'), {
175
+ response: { data: asciiData },
176
+ });
177
+ vi.mocked(wrapped.generateContent).mockRejectedValue(gaxiosError);
178
+ await expect(loggingContentGenerator.generateContent(req, 'prompt-123', LlmRole.MAIN)).rejects.toSatisfy((error) => {
179
+ const gError = error;
180
+ expect(gError.response.data).toBe('Hello');
181
+ return true;
182
+ });
183
+ });
184
+ it('should leave data alone if it is not a comma-separated string', async () => {
185
+ const req = { contents: [], model: 'gemini-pro' };
186
+ const normalData = 'Normal error message';
187
+ const gaxiosError = Object.assign(new Error('Gaxios Error'), {
188
+ response: { data: normalData },
189
+ });
190
+ vi.mocked(wrapped.generateContent).mockRejectedValue(gaxiosError);
191
+ await expect(loggingContentGenerator.generateContent(req, 'prompt-123', LlmRole.MAIN)).rejects.toSatisfy((error) => {
192
+ const gError = error;
193
+ expect(gError.response.data).toBe(normalData);
194
+ return true;
195
+ });
196
+ });
197
+ it('should leave data alone if parsing fails', async () => {
198
+ const req = { contents: [], model: 'gemini-pro' };
199
+ const invalidAscii = '72,invalid,101';
200
+ const gaxiosError = Object.assign(new Error('Gaxios Error'), {
201
+ response: { data: invalidAscii },
202
+ });
203
+ vi.mocked(wrapped.generateContent).mockRejectedValue(gaxiosError);
204
+ await expect(loggingContentGenerator.generateContent(req, 'prompt-123', LlmRole.MAIN)).rejects.toSatisfy((error) => {
205
+ const gError = error;
206
+ expect(gError.response.data).toBe(invalidAscii);
207
+ return true;
208
+ });
209
+ });
210
+ });
169
211
  });
170
212
  describe('generateContentStream', () => {
171
213
  it('should log request and response on success', async () => {