Commit Graph

77 Commits

Author SHA1 Message Date
Tommaso Sciortino d79dafc577
Basic code assist support (#910) 2025-06-10 16:00:13 -07:00
jerop fa27bc832f feat: enable gzip compression for otlp exporters 2025-06-10 17:30:50 -04:00
Abhi 9c3f34890f
feat: Add UI for /stats slash command (#883) 2025-06-10 15:59:52 -04: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
Tommaso Sciortino 895c1f132f
GEMINI_SANDBOX=false should disable seatbelt (#888) 2025-06-10 06:22:02 -07:00
Bryan Morgan 1e3abf96b5
addressed b/423798481 (#887) 2025-06-10 08:47:46 -04:00
Abhi 7f1252d364
feat: Display initial token usage metrics in /stats (#879) 2025-06-09 20:25:37 -04:00
Eddie Santos 6484dc9008
Add Windsurf in edit tool to modify changes, if installed (#853) 2025-06-09 16:01:06 -07:00
Tommaso Sciortino 5c9e526f0e
Code to support Oauth login (#881) 2025-06-09 15:14:06 -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
Abhi 2182a1cd2c
Bump @google/genai dependency (#870) 2025-06-09 14:17:39 -04:00
Tommaso Sciortino 0613062fc8
Simplify user agent handling. (#828) 2025-06-09 09:31:27 -07:00
Olcan 87474e52d7
rename shell tool more intuitively as run_shell_command (from historical name of execute_bash_command inherited from terminal tool) (#869) 2025-06-09 08:57:30 -07:00
anj-s c55a1d9012
Add support for sorting files search by recency threshold followed by lexicographic sorting (#867) 2025-06-09 08:07:24 -07:00
Olcan a2fee6bdd3
fix mcp timeouts and missing description on mcp errors (#868) 2025-06-08 21:52:11 -07:00
matt korwel 37edbd8c18
Rollforward AST changes to unblock Sandboxing (#863) 2025-06-08 19:07:25 -07:00
N. Taylor Mullen ccdd1df039
feat(core): Add .gitignore support to getFolderStructure (#865) 2025-06-09 01:42:38 +00:00
N. Taylor Mullen 72fa01f62d
feat(git): Refactor gitignore handling to use `ignore` library instead of `minimatch` (#864) 2025-06-08 18:32:19 -07:00
N. Taylor Mullen d62dad5575
Revert "Add batch editing capabilities to Edit Tool (#648)" (#857) 2025-06-08 23:20:43 +00:00
Bryan Morgan 152af28a34
Bryanmorgan/add tool source description (#856) 2025-06-08 19:07:05 -04:00
N. Taylor Mullen f2ea78d0e4
fix(tool-scheduler): Correctly pipe cancellation signal to tool calls (#852) 2025-06-08 22:42:49 +00:00
Eddie Santos 394312b9c2
Add tests for `core/utils/editor` (#851) 2025-06-08 19:42:42 +00:00
N. Taylor Mullen 241c404573
fix(cli): correctly handle tool invocation cancellation (#844) 2025-06-08 11:14:45 -07:00
Leo 9efca40dae
feat: Add flow to allow modifying edits during edit tool call (#808) 2025-06-08 10:56:58 -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 569c977408
refactor(core): remove comments from geminiChat.ts (#834) 2025-06-07 22:20:59 -07:00
Tommaso Sciortino 389907ce65
Introduce ContentGeneratorConfig (#826) 2025-06-07 16:17:27 -07:00
Bryan Morgan e95a6086fc
Bryanmorgan/add mcp description support (#825) 2025-06-07 18:30:56 -04:00
cperry-goog 18d6a11c04
refactor: rename gemini-code to gemini-cli (#822) 2025-06-07 14:27:22 -07:00
Tommaso Sciortino d6cf4d5b0b
Eliminate createServerConfig() (#821) 2025-06-07 13:49:00 -07:00
Eddie Santos 27fdd1b6e6
Add embedder (#818) 2025-06-07 13:38:05 -07:00
matt korwel f1a4e5d4d3
Creating Node AST Tool. (#756) 2025-06-07 12:07:58 -07:00
Bryan Morgan 28ff62e7b1
Added /mcp command support and cleaned up broken tests (#817) 2025-06-07 15:06:18 -04:00
Tommaso Sciortino 680f4cdd61
More version simplifiction. (#810) 2025-06-07 10:54:23 -07:00
Keith Ballinger 0c86874677
Add batch editing capabilities to Edit Tool (#648)
Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2025-06-06 22:54:37 -07:00
N. Taylor Mullen 1ffe027d8a
Add support for configured mcp client timeout. (#775) 2025-06-05 20:35:00 +00:00
Tommaso Sciortino e59e18251b
Introduce generate content interface (#755) 2025-06-05 13:26:38 -07:00
Jerop Kipruto 2ebf2fbc82
OpenTelemetry Integration & Telemetry Control Flag (#762) 2025-06-05 13:04:25 -07:00
Eddie Santos e02868bb1a
Bump default model to `gemini-2.5-pro-preview-06-05` (#765) 2025-06-05 11:52:36 -07:00
Eddie Santos 422c763a55
Add support for `.geminiignore` file (#757) 2025-06-05 10:15:27 -07:00
anj-s 78b2a28fb6
Checks for diff changes before displaying the code snippet (#751) 2025-06-05 06:48:03 -07:00
Jacob Richman aa386d135b
Jacob314/memory fixes (#754)
Address multiple possible memory leaks found bystatic analysis of the codebase. The primary source of the leaks was event listeners on child processes and global objects that were not being properly removed, potentially causing their closures to be retained in memory indefinitely particularly for processes that did not exit.

There are two commits. A larger one made by gemini CLI and a smaller one by me to make sure we always disconnect child processes as part of the cleanup methods. These changes may not actually fix any leaks but do look like reasonable defensive coding to avoid leaking event listeners or child processes.

The following files were fixed:
This is Gemini's somewhat overconfident description of what it did.

packages/core/src/tools/shell.ts: Fixed a leak where an abortSignal listener was not being reliably removed.
packages/cli/src/utils/readStdin.ts: Fixed a significant leak where listeners on process.stdin were never removed.
packages/cli/src/utils/sandbox.ts: Fixed leaks in the imageExists and pullImage helper functions where listeners on spawned child processes were not being removed.
packages/core/src/tools/grep.ts: Fixed three separate leaks in the isCommandAvailable check and the git grep and system grep strategies due to un-removed listeners on child processes.
packages/core/src/tools/tool-registry.ts: Corrected a leak in the execute method of the DiscoveredTool class where listeners on the spawned tool process were not being removed.
2025-06-05 06:40:33 -07:00
N. Taylor Mullen afc30e314f
feat(accessibility): Add option to disable loading phrases (#745) 2025-06-04 07:46:57 +00:00
N. Taylor Mullen d179b3aae4
refactor(core): Centralize tool response formatting (#743) 2025-06-04 07:24:25 +00:00
Keith Ballinger c313762ba0
Ignore folders files (#651)
# Add .gitignore-Aware File Filtering to gemini-cli

This pull request introduces .gitignore-based file filtering to the gemini-cli, ensuring that git-ignored files are automatically excluded from file-related operations and suggestions throughout the CLI. The update enhances usability, reduces noise from build artifacts and dependencies, and provides new configuration options for fine-tuning file discovery.

Key Improvements
.gitignore File Filtering

All @ (at) commands, file completions, and core discovery tools now honor .gitignore patterns by default.
Git-ignored files (such as node_modules/, dist/, .env, and .git) are excluded from results unless explicitly overridden.
The behavior can be customized via a new fileFiltering section in settings.json, including options for:
Turning .gitignore respect on/off.
Adding custom ignore patterns.
Allowing or excluding build artifacts.
Configuration & Documentation Updates

settings.json schema extended with fileFiltering options.
Documentation updated to explain new filtering controls and usage patterns.
Testing

New and updated integration/unit tests for file filtering logic, configuration merging, and edge cases.
Test coverage ensures .gitignore filtering works as intended across different workflows.
Internal Refactoring

Core file discovery logic refactored for maintainability and extensibility.
Underlying tools (ls, glob, read-many-files) now support git-aware filtering out of the box.


Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2025-06-04 04:40:46 +00:00
Cindy Xing d85f09ac51
Update configuration.md (#722) 2025-06-03 21:33:02 -07:00
Olcan 80a445c7ae
bandaid for broken mcp calls (#732) 2025-06-03 14:40:36 -07:00
Olcan 00a9f654a3
fixed strip-ansi dep by installing it in core package (also ran npm install in cli package that resulted in the minor changes here) (#727) 2025-06-03 13:37:59 -07:00
Brandon Keiji 546e033081
feat: notify user when chat context is compressed (#724) 2025-06-03 19:19:49 +00:00
Brandon Keiji fa5b616a10
feat: compress chat history when we approach token limit (#711) 2025-06-03 18:54:11 +00:00