Commit graph

229 commits

Author SHA1 Message Date
matt korwel
b08633daa3
Reset 2 (#8898)
Co-authored-by: gemini-cli-robot <gemini-cli-robot@google.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-09-19 03:51:01 -07:00
matt korwel
5f5e07e6cc
nailedit (#8896)
Co-authored-by: gemini-cli-robot <gemini-cli-robot@google.com>
2025-09-19 03:27:47 -07:00
matt korwel
0fbc13aa4b
hm (#8887)
Co-authored-by: gemini-cli-robot <gemini-cli-robot@google.com>
2025-09-19 01:50:59 -07:00
matt korwel
e232c1d5ba
continue (#8886)
Co-authored-by: gemini-cli-robot <gemini-cli-robot@google.com>
2025-09-19 01:35:45 -07:00
matt korwel
47e8822467
debugging (#8882)
Co-authored-by: gemini-cli-robot <gemini-cli-robot@google.com>
2025-09-19 01:23:55 -07:00
matt korwel
44805f4d58
keep going (#8881)
Co-authored-by: gemini-cli-robot <gemini-cli-robot@google.com>
2025-09-19 01:16:37 -07:00
matt korwel
bba0f2e557
breaking apart steps for permissions (#8880)
Co-authored-by: gemini-cli-robot <gemini-cli-robot@google.com>
2025-09-19 01:08:59 -07:00
matt korwel
bcc1f25c53
security bot was right (#8868)
Co-authored-by: gemini-cli-robot <gemini-cli-robot@google.com>
2025-09-19 00:36:12 -07:00
matt korwel
951596ffe4
again with permissions (#8865)
Co-authored-by: gemini-cli-robot <gemini-cli-robot@google.com>
2025-09-19 00:27:14 -07:00
matt korwel
2993800e07
use the cla user (#8804) 2025-09-18 20:29:39 -07:00
matt korwel
9954b03ced
switch to gh cli instead of api (#8795) 2025-09-18 19:18:27 -07:00
matt korwel
ec01b1f29f
better messaging (#8794) 2025-09-18 19:00:18 -07:00
matt korwel
b14a4f5ebc
dealing with conflicts (#8772) 2025-09-18 17:33:08 -07:00
matt korwel
29852e9b08
patch e2e vnext (#8767) 2025-09-18 23:31:39 +00:00
matt korwel
509444d059
Improve CI Times by 70% (#8530) 2025-09-18 16:29:40 -07:00
matt korwel
f41db212ec
fix linting (#8725) 2025-09-18 11:19:43 -07:00
matt korwel
b376df7691
work (#8720) 2025-09-18 10:45:42 -07:00
matt korwel
99b43e1302
Prstep2 (#8715) 2025-09-18 10:10:26 -07:00
matt korwel
6b34f38ce0
better notifications (#8714) 2025-09-18 09:56:45 -07:00
matt korwel
930f39a0cd
Releasing: Patching and Rollback (#8673) 2025-09-18 04:16:08 +00:00
Tommaso Sciortino
f3abfb8e66
Properly publish npm-shrinkwrap.json. (#8655) 2025-09-18 01:08:43 +00:00
matt korwel
79e72a94fe
Mk/release hotfix (#8633) 2025-09-17 11:02:54 -07:00
matt korwel
1a6e4a119e
Release Promotion Clean up (#8597) 2025-09-16 23:47:05 -07:00
Gal Zahavi
986b9fe7e9
refactor: Replace exec with spawn (#8510) 2025-09-16 19:03:17 +00:00
Tommaso Sciortino
21826010ef
Use shrinkwrap for package locking (#8298) 2025-09-12 20:26:55 +00:00
matt korwel
c99539b991
feat: simplify patch release workflow (#8196)
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Richie Foreman <richie.foreman@gmail.com>
2025-09-12 17:22:10 +00:00
matt korwel
1819ffe5bd
feat(release): automate patch creation and release process (#8202) 2025-09-11 16:19:07 +00:00
matt korwel
0d03f4ea9d
Release Process vNext (#8152)
Co-authored-by: gemini-cli-robot <gemini-cli-robot@google.com>
2025-09-10 08:28:58 +00:00
ZHAO Jin-Xiang
93ec574f68
fix: gemini-cli-vscode-ide-companion's package script (#7555) 2025-09-03 13:32:21 +00:00
christine betts
6a581a695f
Add gemini extensions link command (#7241)
Co-authored-by: Bryan Morgan <bryanmorgan@google.com>
2025-09-02 17:15:42 +00:00
Arya Gummadi
4fd1113905
fix(build): allow builds to continue when sandbox detection fails (#7538) 2025-09-01 14:24:11 +00:00
ljxfstorm
f80f7b445c
Restore missing resolved and integrity of some dependencies and add check of lockfile integrity (#5336)
Co-authored-by: Tommaso Sciortino <sciortino@gmail.com>
2025-08-29 16:43:56 +00:00
cornmander
327c5f889d
Print error when failing to build sandbox (#7149) 2025-08-26 21:58:33 +00:00
Pascal Birchler
ee4feea006
chore: consistently import node modules with prefix (#3013)
Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2025-08-25 20:11:27 +00:00
bonggwan
a64394a4fa
(fix): Change broken emojis (#6725) 2025-08-21 06:14:29 +00:00
matt korwel
0e24805806
feat(release): update release process for nightly and preview builds (#6643)
Co-authored-by: Bryan Morgan <bryanmorgan@google.com>
2025-08-20 15:50:00 +00:00
Shreya Keshive
e74dc4d0e0
Update versioning script to also bump version for companion extension so they stay in sync (#6075) 2025-08-14 14:30:16 +00:00
owenofbrien
dd55a82a28
Log CLI version and git commit hash (v2) (#6176) 2025-08-14 10:12:26 +00:00
Seth Vargo
0e8bbfb8ba
chore: update bash to follow shellcheck recommendations (#6102) 2025-08-13 02:17:04 +00:00
Shreya Keshive
3a87712c1a
Launch VS Code IDE Integration (#6063) 2025-08-12 21:08:07 +00:00
doonrevver86
c5c6966d08
ensure sandbox build script is cross-platform (#2603)
Co-authored-by: Allen Hutchison <adh@google.com>
2025-08-12 18:18:06 +00:00
William Thurston
bed6ab1cce
fix(start): use absolute path to resolve CLI package (#3196)
Co-authored-by: Abhi <43648792+abhipatel12@users.noreply.github.com>
Co-authored-by: Sandy Tao <sandytao520@icloud.com>
2025-08-05 22:43:15 +00:00
DeWitt Clinton
49001a0f83
Remove the "local modifications" string from bug and about reports. (#5552) 2025-08-05 04:01:19 +00:00
Olcan
11ecf6fc86
fix self-reference in build script (#5548) 2025-08-05 01:12:21 +00:00
Niladri Das
9a6422f331
fix: CLAUDE.md compatibility for GEMINI.md '@' file import behavior (#2978)
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Allen Hutchison <adh@google.com>
2025-07-31 16:36:50 +00:00
Shreya Keshive
0c6f788406
Exclude companion extension from release versioning (#5226)
Co-authored-by: Jacob Richman <jacob314@gmail.com>
2025-07-30 22:49:26 +00:00
christine betts
e05173d9cc
Move vscode extension build into its own command (#4799) 2025-07-24 18:40:50 +00:00
anthony bushong
74d0f4c79f
fix: handle cross-device issues with running otel collector (#4458) 2025-07-21 19:44:18 +00:00
Abhi
8497176168
(fix): broken releases and e2e workflows (#4428) 2025-07-18 04:10:58 +00:00
Shreya Keshive
e4ed1aabac
Include companion VS Code extension VSIX as part of build/release (#4254) 2025-07-16 19:06:39 +00:00
Abhi
8d0a4082a4
Fix(ci): Correct container publishing pipeline and improve robustness (#4093) 2025-07-14 04:19:58 +00:00
matt korwel
75a128e7ee
chore(release): v0.1.10 (#3749)
Co-authored-by: Gaurav <39389231+gsquared94@users.noreply.github.com>
Co-authored-by: Aryan Sawant <156219699+aryanjsawant@users.noreply.github.com>
Co-authored-by: neo.alienson <neo@01man.com>
2025-07-10 16:55:22 +00:00
Sandy Tao
f7ad9a7e47
Fix infinite loop in start.js on Windows (#3506) 2025-07-08 03:49:22 +00:00
matt korwel
a4097ae6f9
Release and Packaging: Clean up (#3489) 2025-07-07 23:36:51 +00:00
matt korwel
a7256f630c
Relase: Clean up and condensing (#3321) 2025-07-05 20:58:59 +00:00
Didier Durand
ab96676e36
fix typos in diverse files (#3284)
Co-authored-by: Scott Densmore <scottdensmore@mac.com>
2025-07-05 15:23:39 +00:00
matt korwel
e90e0015ea
Signing tags (#3254) 2025-07-04 22:04:05 +00:00
matt korwel
d43ea268b0
Releasing: Utilizing Github Actions and Tagging for release. (#2852)
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2025-07-04 03:57:01 +00:00
MirzaSamadAhmedBaig
01186e3aff
Make clean script cross-platform (#1990)
Co-authored-by: Scott Densmore <scottdensmore@mac.com>
2025-07-01 15:30:18 +00:00
JimmyLiao
399841b6e0
fix: Correct start script reference in create_alias.sh (#1487) 2025-06-28 23:28:44 +00:00
Billy Biggs
25cdf9b762
Inline the description and schema of the shell tool in the source (#1709) 2025-06-28 09:53:03 +00:00
Mot
ad7839ea4c
quiet dotenv log message (#2239)
Co-authored-by: Scott Densmore <scottdensmore@mac.com>
2025-06-28 02:03:20 +00:00
DongJin Jeong
a943cee45d
Fix typos and formatting issues (#1480) 2025-06-27 10:31:42 +00:00
Brandon Keiji
bf873a1d85
feat: add prepublishOnly checks (#2052) 2025-06-26 23:49:43 +00:00
Brandon Keiji
d9892ada7f
fix: add repository field to package.jsons (#2032) 2025-06-26 22:36:34 +00:00
Brandon Keiji
a8763abfb7
feat: add release trigger configuration (#1697) 2025-06-26 01:54:58 +00:00
Brandon Keiji
f6c36f75e3
fix: prepublish changes to package names (#1420) 2025-06-25 12:41:11 +00:00
Jacob Richman
75ed7aaa06
Jacob314/max old space (#1314) 2025-06-24 14:18:55 -07:00
Jerop Kipruto
64e1c7df75
docs: update telemetry documentation and scripts (#1318) 2025-06-23 06:10:26 +01:00
Louis Jimenez
2e5e9d736b
Move the otel folder out of project root .gemini and into user home dir (#1188) 2025-06-19 21:09:05 -04:00
Brandon Keiji
10a83a6395
refactor: remove docker tagging step from sandbox publishing (#1223) 2025-06-19 12:19:39 -07:00
Leo
0ebac0b896
add sandboxImageName in package.json (#1219) 2025-06-19 11:50:34 -07:00
Brandon Keiji
cc89830b2a
refactor: consolidate container image tag source of truth to cli package.json (#1156) 2025-06-18 19:43:12 +00:00
matt korwel
df938d6ee8
Preflight and integration npx (#1096) 2025-06-16 15:27:29 +00:00
Zach Sais
cc7459e403
fix version release for Dockerfile build (#1080) 2025-06-16 06:13:39 +00:00
Jerop Kipruto
e772dc2b85
Decouple telemetry project ID configuration (#1077)
#750 

Renames project ID for telemetry from `GOOGLE_CLOUD_PROJECT` to `OTLP_GOOGLE_CLOUD_PROJECT`.

This change allows for a separate Google Cloud Project to be used for telemetry data, distinct from the project used for other services like Vertex AI or Code Assist. This enhances clarity and flexibility in project configuration.
2025-06-16 01:12:57 +00:00
Jerop Kipruto
4421ef126f
Refactor: Use telemetry_utils.js in local_telemetry.js (#1066)
## TLDR

Refactors `scripts/local_telemetry.js` to use shared helper functions and constants from `scripts/telemetry_utils.js`.

## Dive Deeper

This change centralizes common telemetry-related logic, including:
- Binary downloading and management (`ensureBinary`)
- Reading and writing JSON files
- Waiting for network ports
- Managing workspace telemetry settings (`manageTelemetrySettings`)
- Process cleanup and signal handling (`registerCleanup`)

By using the shared utilities, `local_telemetry.js` becomes more concise and focused on its specific task of setting up the local OpenTelemetry and Jaeger environment.

## Docs

https://github.com/google-gemini/gemini-cli/blob/main/docs/core/telemetry.md#local-telemetry-with-jaeger-ui-for-traces

## Issue

#750
2025-06-15 19:32:12 +00:00
Billy Biggs
e717c51aa1
Avoid import.meta.dirname to be backwards compatible to Node.js 18+ (#1058) 2025-06-15 05:30:00 +00:00
Jerop Kipruto
53753f0455
Add telemetry command and refactor telemetry settings (#1060)
#750 

### Telemetry Settings
Refactors telemetry configuration to use a nested `telemetry` object in `settings.json`, for example:

```json
{
  "telemetry": {
    "enabled": true,
    "target": "gcp"
    "log-prompts": "true"
  },
  "sandbox": false
}
```

The above includes
- Centralized telemetry settings under a `telemetry` object in `settings.json`.
- CLI flags for the `gemini` command to override all telemetry sub-settings:
    - `--telemetry` / `--no-telemetry`
    - `--telemetry-target <local|gcp>`
    - `--telemetry-otlp-endpoint <URL>`
    - `--telemetry-log-prompts` / `--no-telemetry-log-prompts`
- Updates `packages/cli/src/config/config.ts` and `packages/core/src/config/config.ts` to read from the new settings structure and respect the new CLI flags.
- Modifies `scripts/handle-telemetry.js`, `scripts/local_telemetry.js`, and `scripts/telemetry_utils.js` to align with the new settings structure.
- Updates `docs/core/telemetry.md` to reflect the new settings structure, CLI flags, and order of precedence.
- Renames `logUserPromptsEnabled` to `logPrompts` for brevity.

### `npm run telemetry`

Add a new `npm run telemetry` command that uses `scripts/telemetry.js`, automates the entire process of setting up a local and GCP telemetry pipelines, including configuring the necessary settings in the `.gemini/settings.json` workspace file and installing required binaries (e.g. `otelcol-contrib`).

---
```shell
$ npm run telemetry -- --target=gcp

> gemini-cli@0.1.0 telemetry
> node scripts/telemetry.js --target=gcp

⚙️  Using command-line target: gcp
🚀 Running telemetry script for target: gcp.
 Starting Local Telemetry Exporter for Google Cloud 
⚙️  Enabled telemetry in workspace settings.
🔧 Set telemetry OTLP endpoint to http://localhost:4317.
🎯 Set telemetry target to gcp.
 Workspace settings updated.
 Using Google Cloud Project ID: foo-bar

🔑 Please ensure you are authenticated with Google Cloud:
  - Run `gcloud auth application-default login` OR ensure `GOOGLE_APPLICATION_CREDENTIALS` environment variable points to a valid service account key.
  - The account needs "Cloud Trace Agent", "Monitoring Metric Writer", and "Logs Writer" roles.
 otelcol-contrib already exists at /Users/jerop/github/gemini-cli/.gemini/otel/bin/otelcol-contrib
🧹 Cleaning up old processes and logs...
 Deleted old GCP collector log.
📄 Wrote OTEL collector config to /Users/jerop/github/gemini-cli/.gemini/otel/collector-gcp.yaml
🚀 Starting OTEL collector for GCP... Logs: /Users/jerop/github/gemini-cli/.gemini/otel/collector-gcp.log
 Waiting for OTEL collector to start (PID: 17013)...
 OTEL collector started successfully on port 4317.

 Local OTEL collector for GCP is running.

🚀 To send telemetry, run the Gemini CLI in a separate terminal window.

📄 Collector logs are being written to: /Users/jerop/github/gemini-cli/.gemini/otel/collector-gcp.log

📊 View your telemetry data in Google Cloud Console:
   - Logs: https://console.cloud.google.com/logs/query;query=logName%3D%22projects%2Ffoo-bar%2Flogs%2Fgemini_cli%22?project=foo-bar
   - Metrics: https://console.cloud.google.com/monitoring/metrics-explorer?project=foo-bar
   - Traces: https://console.cloud.google.com/traces/list?project=foo-bar

Press Ctrl+C to exit.
^C
👋 Shutting down...
⚙️  Disabled telemetry in workspace settings.
🔧 Cleared telemetry OTLP endpoint.
🎯 Cleared telemetry target.
 Workspace settings updated.
🛑 Stopping otelcol-contrib (PID: 17013)...
 otelcol-contrib stopped.
```
2025-06-15 00:47:32 -04:00
Jerop Kipruto
3bcb3c3666
docs: clarify telemetry script usage (#1034)
Updates the telemetry documentation and the GCP telemetry script to make it clearer that the Gemini CLI needs to be run in a separate terminal session after starting the collector script.

This addresses potential user confusion where they might expect telemetry data to appear without actively using the CLI.

#750
2025-06-14 14:49:21 +00:00
Jerop Kipruto
1452bb4ca4
Add GCP telemetry script (#1033)
Adds a script -  `scripts/telemetry_gcp.js` - to simplify setting up a local OpenTelemetry collector that forwards data to Google Cloud. This is a follow up to the script for local telemetry `scripts/local_telemetry.js` added in #1015.

This script automates downloading necessary binaries, configuring the collector, and updating workspace settings.

Also includes `scripts/telemetry_utils.js` with shared helper functions for telemetry scripts. Will refactor `scripts/local_t elemetry.js` in next steps to use this shared functionality.

Updates `docs/core/telemetry.md` to include:
- A new "Quick Start" section
- Detailed instructions for the new GCP automated script
- Reorganization of existing sections for clarity

#750 

---
```
 Starting Local Telemetry Exporter for Google Cloud 
⚙️  Enabled telemetry in workspace settings.
🔧 Set telemetry OTLP endpoint to http://localhost:4317.
 Workspace settings updated.
 Using Google Cloud Project ID: foo-bar

🔑 Please ensure you are authenticated with Google Cloud:
  - Run `gcloud auth application-default login` OR ensure `GOOGLE_APPLICATION_CREDENTIALS` environment variable points to a valid service account key.
  - The account needs "Cloud Trace Agent", "Monitoring Metric Writer", and "Logs Writer" roles.
 otelcol-contrib already exists at /Users/jerop/github/gemini-cli/.gemini/otel/bin/otelcol-contrib
🧹 Cleaning up old processes and logs...
 Deleted old GCP collector log.
📄 Wrote OTEL collector config to /Users/jerop/github/gemini-cli/.gemini/otel/collector-gcp.yaml
🚀 Starting OTEL collector for GCP... Logs: /Users/jerop/github/gemini-cli/.gemini/otel/collector-gcp.log
 Waiting for OTEL collector to start (PID: 65145)...
 OTEL collector started successfully on port 4317.

 Local OTEL collector for GCP is running.

📄 Collector logs are being written to: /Users/jerop/github/gemini-cli/.gemini/otel/collector-gcp.log

📊 View your telemetry data in Google Cloud Console:
   - Traces: https://console.cloud.google.com/traces/list?project=foo-bar
   - Metrics: https://console.cloud.google.com/monitoring/metrics-explorer?project=foo-bar
   - Logs: https://console.cloud.google.com/logs/query;query=logName%3D%22projects%2Ffoo-bar%2Flogs%2Fgemini_cli%22?project=foo-bar

Press Ctrl+C to exit.
^C
👋 Shutting down...
⚙️ Disabled telemetry in workspace settings.
🔧 Cleared telemetry OTLP endpoint.
 Workspace settings updated.
🛑 Stopping otelcol-contrib (PID: 65145)...
 otelcol-contrib stopped.
```
2025-06-13 23:28:18 -04:00
Keir Mierle
9954779739
Add a local telemetry launcher (#1015) 2025-06-13 18:08:03 -07:00
Olcan
f75c48323c
fixes to proxy on macos: prevent curl from hanging during wait-for-proxy by adding ipv6 support and timeout (#947) 2025-06-11 11:31:38 -07:00
Zach Sais
5bab5a7378
fix version set for cli and slash commands (#892) 2025-06-11 08:25:26 -05:00
Tommaso Sciortino
97e08fc804
Remove warnings for old env var names. (#920) 2025-06-10 18:34:36 -07:00
Seth Troisi
6f4226fde1 Fix debug to work when not running under a sandbox 2025-06-10 13:33:18 -07:00
Olcan
e38d2078cc
restricted networking for all sandboxing methods, new seatbelt profiles, updated docs, fixes to sandbox build, debugging through sandbox (#891) 2025-06-10 08:58:37 -07:00
Olcan
749c010a0d
strip json comments in newly created sandbox_command.js (consistent w/ bash version) (#886) 2025-06-10 00:33:42 -07:00
matt korwel
3b943c1582
Windows: Refactor Shell Scripts to Node.js for Cross-Platform Compatibility (#784) 2025-06-09 12:19:42 -07:00
Olcan
a3d11e8fef
replace reference to "README" with "docs" to avoid confusion for folks who do not have access to README (#866) 2025-06-08 19:19:33 -07:00
matt korwel
584286cfd9
fix(deps): externalize tree-sitter (#840)
Submitting without approval to fix broken deployment on main. But also, we should lock this down.
2025-06-08 02:05:55 -07:00
Keith Ballinger
84678c6448
Makefile for convenience (#833) 2025-06-07 22:22:32 -07:00
cperry-goog
18d6a11c04
refactor: rename gemini-code to gemini-cli (#822) 2025-06-07 14:27:22 -07:00
cperry-goog
51cd5ffd91
fix(build): correct sandbox warning link (#819) 2025-06-07 12:42:32 -07:00
Bryan Morgan
28ff62e7b1
Added /mcp command support and cleaned up broken tests (#817) 2025-06-07 15:06:18 -04:00
Olcan
d3e43437a0
use execSync (vs spawnSync) so launch fails if build_sandbox fails; tweaks in build_sandbox to fix some shellcheck warnings, and to simplify the logic slightly (#767) 2025-06-05 13:02:56 -07:00
Tolik Malibroda
4d4cf0f2f9
feat: Add multi-stage docker build support for custom sandbox.Dockerfile (#746) 2025-06-05 17:46:54 +02:00
Olcan
8365c8f954
prefer to load gemini-specific .env file from .gemini folder when it exists there (#697) 2025-06-02 14:16:48 -07:00
Taylor Mullen
190e6be800 Fix: Update sandbox build to use new core package name
- The `packages/core` tarball name changed from `gemini-code-server-*.tgz` to `gemini-code-core-*.tgz` after the `server` to `core` rename.
- This updates `scripts/build_sandbox.sh` and the root `Dockerfile` to use the new `gemini-code-core-*.tgz` naming, resolving the CI failure during the Docker build step of the publish process.
2025-05-30 22:41:54 -07:00
Tommaso Sciortino
21fba832d1
Rename server->core (#638) 2025-05-30 18:25:47 -07:00