summaryrefslogtreecommitdiff
path: root/packages/core/src/utils
AgeCommit message (Collapse)Author
2025-06-24[JUNE 25] Permanent failover to Flash model for OAuth users after persistent ↵Bryan Morgan
429 errors (#1376) Co-authored-by: Scott Densmore <[email protected]>
2025-06-24Update editor.ts (#1371)cornmander
2025-06-23Add Zed Editor to Eidtor List (#1372)Scott Densmore
2025-06-24Improve Auth error messaging (#1358)Tommaso Sciortino
2025-06-23Remove .gitignore logging from startup. (#1323)N. Taylor Mullen
2025-06-22Clearcut logging - initial implementation (#1274)owenofbrien
Flag-guarded initial implementation of a clearcut logger to collect telemetry data and send it to Concord for dashboards, etc.
2025-06-19Move the shell history our of the project .gemini to the home dir (#1195)Louis Jimenez
2025-06-18Fix noise in headless mode on STDOUT (#1184)Allen Hutchison
2025-06-15feat(test): Increase test coverage across CLI and Core packages (#1089)N. Taylor Mullen
2025-06-15Add file operation telemetry (#1068)Jerop Kipruto
Introduces telemetry for file create, read, and update operations. This change adds the `gemini_cli.file.operation.count` metric, recorded by the `read-file`, `read-many-files`, and `write-file` tools. The metric includes the following attributes: - `operation` (string: `create`, `read`, `update`): The type of file operation. - `lines` (optional, Int): Number of lines in the file. - `mimetype` (optional, string): Mimetype of the file. - `extension` (optional, string): File extension of the file. Here is a stacked bar chart of file operations by extension (`js`, `ts`, `md`): ![image](https://github.com/user-attachments/assets/3e8f8ea9-6155-4186-863c-075cc47647c5) Here is a stacked bar chart of file operations by type (`create`, `read`, `update`): ![image](https://github.com/user-attachments/assets/3fcf491d-31d0-4ba8-80e6-7fd2bd9c7c27) #750 cc @allenhutchison as discussed
2025-06-15Telemetry: Improve API response logging with function call details (#1064)Jerop Kipruto
2025-06-14Address b/424256913 - fixed error in correctStringEscaping() and improved ↵Bryan Morgan
backslash handling (#1007)
2025-06-14centralize file filtering in `FileDiscoveryService` (#1039)Anas H. Sulaiman
2025-06-13Improvements to web-fetch tool (#1030)Allen Hutchison
2025-06-13initialize `FileDiscoveryService` once (#1029)Anas H. Sulaiman
2025-06-13reuse `GitIgnoreParser` for loading `.geminiignore` (#1025)Anas H. Sulaiman
2025-06-13Fix default extension context filename and update docs (#1024)Tommaso Sciortino
2025-06-13reuse filtering service in `bfsFileSearch` (#1018)Anas H. Sulaiman
2025-06-13reuse filtering service in getFolderStructure (#1016)Anas H. Sulaiman
2025-06-13Update contextFileName to support an optional list of strings (#1001)Billy Biggs
2025-06-13refactor: Use default centralized Flash & Pro models everywhere (#994)N. Taylor Mullen
2025-06-13Handle telemetry in non-interactive mode (#1002)Jerop Kipruto
Changes: - Ensure proper shutdown in non-interactive mode - Ensures the initial user prompt is logged in non-interactive mode - Improve telemetry for streaming - handle chunks and input token count is now alongside other token counts in response To test: - Follow instructions in https://github.com/google-gemini/gemini-cli/blob/main/docs/core/telemetry.md#google-cloud - Run CLI in non-interactive mode and observe logs/metrics in GCP Logs Explorer and Metrics Explorer #750
2025-06-12Refactor OTEL logging for API calls (#991)Jerop Kipruto
Refactor OpenTelemetry logging for API requests, responses, and errors. Moved logging responsibility from GeminiClient to GeminiChat for more detailed logging. #750
2025-06-12Improve the performance of filename completion over large repositories. (#938)DeWitt Clinton
2025-06-11feat: External editor settings (#882)Leo
2025-06-11Extensibility: Gemini.md files (#944)matt korwel
2025-06-11refactor(telemetry): pass config object to telemetry functionsjerop
This commit refactors the telemetry system to pass a object to various logging and metrics functions. This change centralizes configuration management within the telemetry system, making it more modular and easier to maintain. The constructor and various tool execution functions have been updated to accept the object, which is then passed down to the telemetry functions. This eliminates the need to pass individual configuration values, such as , through multiple layers of the application.
2025-06-11feat(core): Create BFS file search utility (#903)Allen Hutchison
2025-06-11refactor: Centralize session ID generation and propagationjerop
2025-06-10Remove unneeded `mockRestore()`s from tests (#919)Seth Troisi
2025-06-09Add Windsurf in edit tool to modify changes, if installed (#853)Eddie Santos
2025-06-09Windows: Refactor Shell Scripts to Node.js for Cross-Platform Compatibility ↵matt korwel
(#784)
2025-06-09feat(core): Add .gitignore support to getFolderStructure (#865)N. Taylor Mullen
2025-06-08feat(git): Refactor gitignore handling to use `ignore` library instead of ↵N. Taylor Mullen
`minimatch` (#864)
2025-06-08Revert "Add batch editing capabilities to Edit Tool (#648)" (#857)N. Taylor Mullen
2025-06-08Add tests for `core/utils/editor` (#851)Eddie Santos
2025-06-08feat: Add flow to allow modifying edits during edit tool call (#808)Leo
2025-06-07Added /mcp command support and cleaned up broken tests (#817)Bryan Morgan
2025-06-06Add batch editing capabilities to Edit Tool (#648)Keith Ballinger
Co-authored-by: N. Taylor Mullen <[email protected]>
2025-06-05Introduce generate content interface (#755)Tommaso Sciortino
2025-06-04refactor(core): Centralize tool response formatting (#743)N. Taylor Mullen
2025-06-04Ignore folders files (#651)Keith Ballinger
# 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 <[email protected]>
2025-06-03Modify shortenPath and add param validation (#663)anj-s
2025-06-02upate to PR 669 (#700)Bryan Morgan
Co-authored-by: N. Taylor Mullen <[email protected]>
2025-06-01Added replace tool ability to replace more than 1 occurrence (#669)Bryan Morgan
Co-authored-by: N. Taylor Mullen <[email protected]>
2025-05-31feat: allow custom filename for context files (#654)Allen Hutchison
Co-authored-by: N. Taylor Mullen <[email protected]>
2025-05-30Rename server->core (#638)Tommaso Sciortino