Commit Graph

58 Commits

Author SHA1 Message Date
Dmitry Lyalin
e8fc61586e Add low/full CLI error verbosity mode for cleaner UI (#20399) 2026-02-27 19:15:10 +00:00
joshualitt
be97897a39 feat(core): experimental in-progress steering hints (2 of 2) (#19307) 2026-02-18 22:05:50 +00:00
Jerop Kipruto
8aa2f974e3 refactor: use CoreToolCallStatus in the the history data model (#19033) 2026-02-13 22:20:14 +00:00
Tommaso Sciortino
7f00209b68 Fix drag and drop escaping (#18965) 2026-02-13 02:27:56 +00:00
Tommaso Sciortino
aedf241c40 Properly parse at-commands with narrow non-breaking spaces (#18677) 2026-02-10 00:51:24 +00:00
Tommaso Sciortino
670a52f63d Allow @-includes outside of workspaces (with permission) (#18470) 2026-02-09 12:24:28 -08:00
Tommaso Sciortino
3ca50cba96 propagate abortSignal (#18477) 2026-02-08 21:56:26 +00:00
Tommaso Sciortino
9ede50686b Refactor atCommandProcessor (#18461) 2026-02-06 20:49:11 +00:00
Christian Gunderman
4d72449dfa Cleanup post delegate_to_agent removal (#17875) 2026-01-29 18:24:35 +00:00
N. Taylor Mullen
34a9bc4de3 refactor(core): centralize path validation and allow temp dir access for tools (#17185)
Co-authored-by: Your Name <joshualitt@google.com>
2026-01-27 21:17:40 +00:00
Adib234
a19e7138a8 feat: implement /rewind command (#15720) 2026-01-22 15:26:52 +00:00
Sehoon Shon
a844dbe758 Support @ suggestions for subagenets (#16201)
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-01-09 00:51:18 +00:00
Abhi
2411c3a674 feat(core,cli): enforce mandatory MessageBus injection (Phase 3 Hard Migration) (#15776) 2026-01-04 22:11:43 +00:00
Adib234
97bc542183 Migrate console to coreEvents.emitFeedback or debugLogger (#15219) 2025-12-29 20:46:10 +00:00
Christian Gunderman
bce7cd8bb3 Disallow redundant typecasts. (#15030) 2025-12-13 01:43:43 +00:00
Gaurav Sehgal
7761c6a9a5 Add clarity to error messages (#14879) 2025-12-13 01:01:12 +00:00
Alex Gavrilescu
0166d127bd feat: Add support for MCP Resources (#13178)
Co-authored-by: Jack Wotherspoon <jackwoth@google.com>
2025-12-09 02:43:12 +00:00
Abhi
0e6e5a023e refactor: remove read-many-files tool from agent (#12796) 2025-11-13 02:56:37 +00:00
Tommaso Sciortino
1ff17461a8 Use consistent param names (#12517) 2025-11-06 23:03:52 +00:00
Tommaso Sciortino
fb605ffb14 Fix atprocessor test on windows (#12252) 2025-10-29 21:11:39 +00:00
lifefloating
0c087bea4b fix: enhance path handling in handleAtCommand to support relative paths (#9065)
Co-authored-by: Jacob Richman <jacob314@gmail.com>
2025-10-29 02:13:04 +00:00
Allen Hutchison
16ee683eb4 refactor: Migrate console.error to debugLogger.warn in atCommandProcessor.ts (#12134) 2025-10-28 17:16:47 +00:00
Abhi
a2fc45a492 refactor(logging): Centralize console logging with debugLogger (#11590) 2025-10-21 20:35:22 +00:00
Pascal Birchler
a97a6cc71b Explict imports & exports with type modifier (#3774) 2025-08-25 22:04:53 +00:00
Pascal Birchler
42392f6308 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
Victor Miura
7bce49cb9b fix(tools): Add an end of file list marker to ReadManyFilesTool (#5967)
Co-authored-by: Gal Zahavi <38544478+galz10@users.noreply.github.com>
Co-authored-by: Allen Hutchison <adh@google.com>
2025-08-22 15:10:14 +00:00
Victor May
42e30bbe8b Fixing at command race condition (#6663) 2025-08-20 19:51:31 +00:00
Tommaso Sciortino
c0c371bf5d Remove unnecessary promiuse usage. (#6585) 2025-08-19 22:31:02 +00:00
Richie Foreman
ddc9755b96 chore(compiler): Enable strict property access TS compiler flag. (#6255)
Co-authored-by: Jacob Richman <jacob314@gmail.com>
2025-08-17 16:43:21 +00:00
joshualitt
81c8e0163c feat(core): Introduce DeclarativeTool and ToolInvocation. (#5613) 2025-08-06 17:50:02 +00:00
Sandy Tao
178afd18fe feat(cli): Handle Punctuation in @ Command Parsing (#5482) 2025-08-04 17:49:15 +00:00
Yuki Okita
2d6318d9d0 feat: Multi-Directory Workspace Support (part1: add --include-directories option) (#4605)
Co-authored-by: Allen Hutchison <adh@google.com>
2025-07-30 20:38:20 +00:00
Tommaso Sciortino
e10acf4404 Fix windows bugs in atCommandProcessor.ts (#4684) 2025-07-23 00:18:57 +00:00
Pyush Sinha
612b6ba9b1 feat: full implementation for .geminiignore in settings and respective tool calls (#3727) 2025-07-20 07:55:33 +00:00
zfflxx
c60a5d603c @file don't respect config respectGitIgnore=false (#3382) (#3387)
Co-authored-by: Ryan Fang <ryan.fang@gllue.com>
2025-07-07 05:48:39 +00:00
Brandon Keiji
5ad4a0a826 fix: prepublish changes to package names (#1420) 2025-06-25 12:41:11 +00:00
Billy Biggs
614e5e6afb Bug/1369 at command recursive search (#1370) 2025-06-24 06:48:26 +00:00
Anas H. Sulaiman
194e091d4a centralize file filtering in FileDiscoveryService (#1039) 2025-06-14 14:25:34 +00:00
Seth Troisi
74a5887bbb Have @ pass through images and other Part objects (#990) 2025-06-12 16:17:44 -07:00
Seth Troisi
5c815ead99 Fixed @ file content not being added or sent to server (#962) 2025-06-12 23:08:27 +00:00
cperry-goog
a49f734c13 refactor: rename gemini-code to gemini-cli (#822) 2025-06-07 14:27:22 -07:00
Keith Ballinger
906f716d3e 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
Olcan
55d4bbb8e7 enable async tool discovery by making the registry accessor async; remove call to discoverTools that caused duplicate discovery (#691) 2025-06-02 09:56:32 -07:00
Tommaso Sciortino
64bd136f42 Rename server->core (#638) 2025-05-30 18:25:47 -07:00
Allen Hutchison
08194f24a5 fix(cli): Support multiple @file references in atCommandProcessor (#590) 2025-05-28 17:08:05 -07:00
DeWitt Clinton
bcb134e49c Add globbing support to @-command file suggestions and resolution. (#462)
Implements recursive glob-based file search for both suggestions and execution of the `@` command.

- When typing `@filename`, suggestions will now include files matching `filename` in nested directories.
- Suggestions are sorted by path depth (shallowest first), then directories before files, then alphabetically.
- The maximum recursion depth for suggestions is set to 10.
- When executing an `@filename` command, if the file is not found directly, a recursive search (using the glob tool) is performed to locate the file.

This addresses the first request in issue #461 by allowing users to quickly reference deeply nested files without typing the full path. Also addresses b/416292478.
2025-05-21 12:22:18 -07:00
Jacob Richman
042b85a4dc Support Images and PDFs (#447) 2025-05-20 13:02:41 -07:00
Taylor Mullen
7012c97710 fix: Ensure filename is available for diff rendering in write-file
This commit resolves a bug where the `write-file` operation could fail to render content due to a missing filename.

The fix involves:
- Ensuring `fileName` is consistently passed to `DiffRenderer.tsx` through `ToolConfirmationMessage.tsx`, `ToolMessage.tsx`, and `useGeminiStream.ts`.
- Modifying `edit.ts` and `write-file.ts` to include `fileName` in the `FileDiff` object.
- Expanding the `FileDiff` interface in `tools.ts` to include `fileName`.

Additionally, this commit enhances the diff rendering by:
- Adding syntax highlighting based on file extension in `DiffRenderer.tsx`.
- Adding more language mappings to `getLanguageFromExtension` in `DiffRenderer.tsx`.
- Added lots of tests for all the above.

Fixes https://b.corp.google.com/issues/418125982
2025-05-16 10:13:13 -07:00
Brandon Keiji
577ddd6648 refactor: move nested debugmessage and slashcommand hooks outside of useGeminiStream (#341) 2025-05-13 16:55:49 -07:00
Taylor Mullen
2b1e39db6a Enable tools to cancel active execution.
- Plumbed abort signals through to tools
- Updated the shell tool to properly cancel active requests by killing the entire child process tree of the underlying shell process and then report that the shell itself was canceled.

Fixes https://b.corp.google.com/issues/416829935
2025-05-10 00:21:09 -07:00