Jacob Richman
5ff00b0c5d
Remove uses of the spread operator that appear to have caused a maximum call stack size exceeded error ( #1389 )
2025-06-24 21:38:25 +00:00
Sandy Tao
a411c415a8
Do not render mcp responses as markdown ( #1388 )
2025-06-24 14:10:41 -07:00
Billy Biggs
b47a4240ff
Bug/1369 at command recursive search ( #1370 )
2025-06-24 06:48:26 +00:00
Scott Densmore
324715ee8b
Add Zed Editor to Eidtor List ( #1372 )
2025-06-23 23:32:09 -07:00
Abhi
d3f13c71ae
feat: add custom message for 429 errors ( #1366 )
2025-06-24 03:43:00 +00:00
Tommaso Sciortino
0abd2a644e
Improve Auth error messaging ( #1358 )
2025-06-24 01:37:41 +00:00
Seth Troisi
104f23da90
Add `/chat list` ( #1361 )
2025-06-24 01:11:45 +00:00
Seth Troisi
335802f4dd
moving `/save`, `/resume` to `/chat <save|resume>` ( #1355 )
2025-06-23 16:56:08 -07:00
Jacob Richman
f741630572
Polish Theme Dialog ( #1356 )
2025-06-23 16:43:17 -07:00
Seth Troisi
8c6545bf9d
Include all chat messages ( #1354 )
2025-06-23 22:41:33 +00:00
Jerop Kipruto
b443b5e800
Ensure telemetry events are flushed immediately ( #1344 )
...
The previous implementation used `flushIfNeeded` to batch most telemetry events, but it was not reliably sending them, leading to data loss. Notably, the `startSession` event, which already used `flushToClearcut`, was working correctly, indicating an issue with the batching logic itself.
This change replaces all calls to `flushIfNeeded` with `flushToClearcut` to align all event logging with the working `startSession` implementation and ensure that events are sent immediately. This prioritizes the reliability of data collection over network efficiency.
This is a temporary solution to prevent further data loss. The underlying issue with the batching mechanism in `flushIfNeeded` should be investigated and fixed in the future, at which point this change can be reverted.
2025-06-23 22:05:02 +00:00
Bryan Morgan
e423d20a8d
Updated docs and /stats command to support lack of token caching support for OAuth users (b/426943001) ( #1307 )
2025-06-23 21:55:24 +00:00
Sandy Tao
fcb8be2fb9
Refine refresh static logic ( #1349 )
2025-06-23 21:45:15 +00:00
Jacob Richman
1faf53a3af
Remove fallback to render normall rather than using custom MaxSizedBox layout logic ( #1340 )
2025-06-23 21:41:45 +00:00
N. Taylor Mullen
fd58d3267e
feat: Open MCP docs if no MCPs are configured ( #1325 )
2025-06-23 21:35:23 +00:00
Abhi
dc76bcc433
Add error messaging for 429 errors ( #1316 )
2025-06-23 21:30:13 +00:00
Jerop Kipruto
98f3a7066e
refactor: rename `disableDataCollection` to `dataCollectionEnabled` ( #1319 )
...
Renames the `disableDataCollection` flag to the more intuitive and positive `dataCollectionEnabled`.
This change improves code clarity by avoiding double negatives and making the purpose of the flag more direct. The logic has been inverted wherever the flag is used to accommodate the new naming convention.
Using a suffix like `"Enabled"` follows a common convention that improves readability.
- A condition like `if (dataCollectionEnabled)` reads like a natural language sentence ("if data collection is enabled"), which reduces cognitive load.
- Distinguishes the boolean flag (representing a state) from potential functions that would perform an action (e.g., `enableDataCollection()` or `disableDataCollection()`), avoiding ambiguity between checking a value and calling a function.
#750
2025-06-23 21:19:40 +00:00
Scott Densmore
99d521569d
Scotdensmore/first run auth fix ( #1322 )
2025-06-22 22:52:25 -07:00
Jacob Richman
156feff5b1
Fix so that pressing ctrl-s a second time toggles off constrain height mode ( #1306 )
2025-06-23 05:42:20 +00:00
Mark McDonald
523aeec544
Use shorter URL for docs link ( #1324 )
2025-06-23 05:37:41 +00:00
matt korwel
da128e725d
{bug} Vertex Auth Support ( #1302 )
...
Co-authored-by: Tommaso Sciortino <sciortino@gmail.com>
2025-06-23 00:30:58 +00:00
Billy Biggs
c9bea8e646
Plumb extension context filenames through for /memory refresh ( #1312 )
2025-06-22 16:17:05 -07:00
cperry-goog
b05b8673cd
update tips ( #1315 )
2025-06-22 16:02:48 -07:00
Jacob Richman
b831ffc1b3
Jacob314/auto exit unconstrained height mode ( #1293 )
...
Co-authored-by: Scott Densmore <scottdensmore@mac.com>
2025-06-22 13:43:36 -07:00
N. Taylor Mullen
3c656cfbc6
feat: Only show ctrl-s when idle ( #1299 )
2025-06-22 15:57:53 +00:00
N. Taylor Mullen
cb76b08e31
feat: Add /docs command and update UI ( #1297 )
2025-06-22 15:54:10 +00:00
owenofbrien
4cfab0a893
Clearcut logging - initial implementation ( #1274 )
...
Flag-guarded initial implementation of a clearcut logger to collect telemetry data and send it to Concord for dashboards, etc.
2025-06-22 14:26:48 +00:00
Abhi
c9950b3cb2
feat: Add client-initiated tool call handling ( #1292 )
2025-06-22 01:35:36 -04:00
Billy Biggs
0779697da6
Add setting enableRecursiveFileSearch to control @-file completion ( #1290 )
2025-06-22 01:23:35 +00:00
Jacob Richman
63f6a497cb
Jacob314/overflow notification and one MaxSizedBox bug fix ( #1288 )
2025-06-22 00:54:10 +00:00
cperry-goog
e255eb6124
feat(cli): update Tips.tsx component ( #1284 )
2025-06-21 12:58:00 -07:00
Billy Biggs
99a6dc0267
Update memory and context summary UI for multiple context filenames ( #1282 )
2025-06-21 19:15:43 +00:00
Sandy Tao
03af6235a9
Fix Static duplication and input prompt tearing ( #1279 )
2025-06-21 11:11:42 -07:00
Abhi
52afcb3a12
bug: fix cancel after a tool has been used ( #1270 )
2025-06-20 20:01:44 -07:00
matt korwel
3283f55e7e
Auth timeout ( #1263 )
2025-06-20 18:33:31 +00:00
matt korwel
7c8a1da8fe
Auth blocking ( #1261 )
2025-06-20 10:46:41 -07:00
N. Taylor Mullen
4e69ba3bbe
feat(auth): handle auth flow errors gracefully ( #1256 )
2025-06-20 01:30:06 -07:00
N. Taylor Mullen
4d9e258a1e
Prevent hard crashing on update notifier fail. ( #1254 )
2025-06-20 07:30:30 +00:00
Jacob Richman
05b1c8101f
Turn off debug logging of MaxSizedBox errors by default. ( #1228 )
2025-06-20 05:27:03 +00:00
Louis Jimenez
b179424161
Support autocompletion for checkpoints ( #1253 )
2025-06-20 01:18:11 -04:00
Louis Jimenez
6c67618624
Make checkpoints configurable in settings.json ( #1251 )
2025-06-20 00:39:15 -04:00
Louis Jimenez
ea63a8401e
Move the shell history our of the project .gemini to the home dir ( #1195 )
2025-06-19 23:53:24 -04:00
Tommaso Sciortino
0c9b138f5e
Reword auth dialog options ( #1246 )
2025-06-20 02:41:19 +00:00
Tommaso Sciortino
2f1fc3f359
Initially hide some Auth options behind "More..." ( #1245 )
2025-06-19 19:28:56 -07:00
N. Taylor Mullen
4059a3e8ee
fix: flicker of StreamingState to Idle when tool finishes ( #1190 ) ( #1216 )
...
Co-authored-by: Asad Memon <asad.lionpk@gmail.com>
2025-06-20 01:25:23 +00:00
matt korwel
04518b52c0
Auth First Run ( #1207 )
...
Co-authored-by: Tommaso Sciortino <sciortino@gmail.com>
Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2025-06-19 16:52:22 -07:00
Jacob Richman
b0bc7c3d99
Fix flicker issues by ensuring all actively changing content fits in the viewport ( #1217 )
2025-06-19 13:17:23 -07:00
Brandon Keiji
332512853e
feat: consolidate sandbox configurations into a single object ( #1154 )
2025-06-18 17:01:00 +00:00
Brandon Keiji
30d1662128
fix: check package.json for app version ( #1160 ) ( #1182 )
2025-06-18 16:57:17 +00:00
Anas H. Sulaiman
63fbc8ce18
fix: regression in completion filtering ( #1135 )
2025-06-18 05:05:47 +00:00
Abhi
f3c1cbbabf
feat: shell history ( #1169 )
2025-06-17 22:17:16 -04:00
Billy Biggs
708ba8902a
Support escaping carriage returns with \ ( #1127 )
2025-06-17 10:03:05 -07:00
Jacob MacDonald
e59c872b3d
code review followup for compress command ( #1097 )
...
Followup to https://github.com/google-gemini/gemini-cli/pull/986
2025-06-17 15:44:54 +00:00
Eddie Santos
c3971754bf
Auto-update notifications ( #1110 )
2025-06-17 15:24:07 +00:00
Miguel Solorio
137baa0a07
Update /help page ( #1119 )
2025-06-16 20:13:33 -07:00
Jacob Richman
a7e45d47cd
Fix bug where single line inserts were deleting all text after the in… ( #1114 )
2025-06-16 15:21:22 -07:00
Abhi
6af7a5c589
feat: clear should also clear chat history ( #1008 )
2025-06-16 06:33:59 +00:00
Jacob Richman
5d4f4f421c
feat: text-buffer: input sanitization and delete character handling. ( #1031 )
2025-06-16 06:25:11 +00:00
N. Taylor Mullen
742caa5dd8
feat(cli): Standardize keyboard shortcut hints ( #1092 )
2025-06-16 06:21:58 +00:00
Billy Biggs
40fbb61a1b
Update /tools desc to show the name of each tool as known to the model ( #1091 )
2025-06-15 23:09:53 -07:00
N. Taylor Mullen
197704c630
feat(test): Increase test coverage across CLI and Core packages ( #1089 )
2025-06-15 22:41:32 -07:00
Abhi
bedff2ca79
feat: Adds shell command context to gemini history ( #1076 )
2025-06-15 22:09:30 -04:00
N. Taylor Mullen
4463671284
refactor(cli): Use excludeTools for non-interactive mode ( #1072 )
2025-06-15 16:05:40 -07:00
Jerop Kipruto
101b6fe767
Stabilize /bug command tests with consistent version mocking ( #1070 )
...
The `/bug` command tests in `slashCommandProcessor.test.ts` were flaky due to inconsistent CLI versioning.
This commit:
- Implements a flexible, top-level mock for `getCliVersion` that can be overridden per test.
- Sets a default mock value for `/bug` command tests via `beforeEach`.
- Overrides the mock in one test case requiring a specific version ('test-version').
- Ensures the test's helper `getExpectedUrl` receives the correct explicit version.
- Aligns the expected CLI version in the custom bug URL test with the default mock.
These changes ensure consistent CLI versioning in tests, resolving flakiness.
#1071
2025-06-15 16:35:15 -04:00
Billy Biggs
b67806ae9a
Support completion of checkpoint names in /resume ( #1063 )
2025-06-15 11:40:39 -07:00
Billy Biggs
6959663646
Add support for /mcp schema to show full parameter schema as JSON ( #1050 )
...
Outputs a raw JSON version of the parameter names and descriptions as provided to the model, plus minor formatting adjustments to /mcp desc.
2025-06-15 11:25:40 -07:00
Asad Memon
123ad20e9b
feat: Show model thoughts while loading ( #992 )
2025-06-15 18:19:05 +00:00
Asad Memon
b3d89a1075
feat: Add token stats in footer ( #909 )
2025-06-15 11:15:53 -07:00
Billy Biggs
da09431be9
Add support for showing descriptions of CLI tools ( #1052 )
...
Adds support for /tools desc to show the full description of tools as provided to the model.
2025-06-15 07:56:07 -07:00
Leo
e544b940f1
bug: Fix code colorizer ( #1046 )
2025-06-14 21:27:53 +01:00
Anas H. Sulaiman
4873fce791
centralize file filtering in `FileDiscoveryService` ( #1039 )
2025-06-14 14:25:34 +00:00
Allen Hutchison
643bdf31d5
feat: Add custom URL support for the /bug command ( #1017 )
2025-06-14 07:00:24 +00:00
Jacob MacDonald
d5c6bb9740
Add `/compress` command to force a compression of the context ( #986 )
...
Related to https://b.corp.google.com/issues/423605555 - I figured this might be a simpler solution to start with, while still also being useful on its own even if we do implement that.
2025-06-14 04:21:40 +00:00
Allen Hutchison
31b28ade01
Improvements to web-fetch tool ( #1030 )
2025-06-13 17:44:14 -07:00
Anas H. Sulaiman
8eb505fbba
initialize `FileDiscoveryService` once ( #1029 )
2025-06-13 17:25:59 -07:00
Daniel Lee
daceb9963f
feat(cli): support ctrl+d to exit ( #878 )
...
Similar to ctrl+c, ctrl+d can now be used to exit the program. To avoid accidental exit, ctrl+d must be pressed twice in relatively quick succession (same as ctrl+c).
Following common UX pattern, ctrl+d will be ignored when the input prompt is non-empty. This behavior is similar to how most shell (bash/zsh) behaves. To support this, I had to refactor so that text buffer is initialized outside of the InputPrompt component and instead do it on the main App component to allow input controller to have access to check the content of the text buffer.
2025-06-13 16:59:09 +00:00
Billy Biggs
2a1ad1f5d9
Update contextFileName to support an optional list of strings ( #1001 )
2025-06-13 09:19:08 -07:00
Anas H. Sulaiman
34e0d9c0b6
cleanup unused `allowBuildArtifacts` ( #1010 )
2025-06-13 12:00:38 -04:00
Anas H. Sulaiman
c886f08525
cleanup unused `customIgnorePatterns` ( #1009 )
2025-06-13 11:49:48 -04:00
Leo
d25459d815
Edit wording in /edit description ( #1006 )
2025-06-13 15:36:51 +00:00
Miguel Solorio
f8a31f29aa
Replace logo with custom ASCII ( #958 )
2025-06-13 07:59:45 +00:00
Marat Boshernitsan
181abde2ff
Reduce coupling between core and cli packages ( #961 )
...
Co-authored-by: Marat Boshernitsan <maratb@google.com>
2025-06-12 17:17:29 -07:00
Seth Troisi
dc378e8d60
Have @ pass through images and other Part objects ( #990 )
2025-06-12 16:17:44 -07:00
Seth Troisi
b7daa7c702
Fixed @ file content not being added or sent to server ( #962 )
2025-06-12 23:08:27 +00:00
Jerop Kipruto
6723c72fa5
telemetry: include user decisions in tool call logs ( #966 )
...
Add the user's decision (accept, reject, modify) to tool call telemetry to better understand user intent. The decision provides crucial context to the `success` metric, as a user can reject a call that would have succeeded or accept one that fails.
Also prettify the arguments json.
Example:

#750
2025-06-12 20:48:10 +00:00
Abhi
32da693b91
bug: only show tool tokens if > 0 ( #985 )
2025-06-12 19:31:17 +00:00
Leo
ad2e47dc20
remove enable editor flag ( #984 )
2025-06-12 17:28:20 +00:00
DeWitt Clinton
a9e56ee460
Ignore dot files on @-completion. ( #978 )
2025-06-12 17:04:15 +00:00
DeWitt Clinton
f2ab6d08c4
Improve the performance of filename completion over large repositories. ( #938 )
2025-06-12 07:09:38 -07:00
anj-s
6fc7028031
Revert "Add support for local logging per session ( #936 )" ( #970 )
2025-06-11 21:59:46 -07:00
Jerop Kipruto
89f682f081
Telemetry: Improve clarity of user prompt event ( #967 )
2025-06-11 21:43:00 -04:00
Leo
1ef68e0612
feat: External editor settings ( #882 )
2025-06-11 18:21:54 -07:00
Abhi
dd53e5c96a
Show session summary on exit for ctrl+c x 2. Fix exit UI ( #963 )
2025-06-11 20:08:32 -04:00
Eddie Santos
e02a035ab4
Adding silly phrases ( #922 )
2025-06-11 23:40:13 +00:00
anj-s
2dc79b3bd0
Add support for local logging per session ( #936 )
2025-06-11 15:05:41 -07:00
Seth Troisi
122678cc09
clean chat history before /resume ( #949 )
2025-06-11 13:40:44 -07:00
Abhi
7a72d255d8
feat: Add exit UI w/ stats ( #924 )
2025-06-11 16:40:31 -04:00
Seth Troisi
5586ad5f8a
Fix noisy tests ( #950 )
2025-06-11 13:01:04 -07:00
Louis Jimenez
e0f4f428fc
Restore Checkpoint Feature ( #934 )
2025-06-11 15:33:09 -04:00
jerop
d96af8bacd
refactor(telemetry): pass config object to telemetry functions
...
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-11 13:24:41 -04:00
Miguel Solorio
9c5b5ff823
Allow themes to update gradient colors ( #914 )
2025-06-11 17:14:18 +00:00
Anas Sulaiman
9d992b32e4
add a unit test with multiple hunks for diff renderer
2025-06-11 09:47:11 -04:00
jerop
d1e23b7c71
refactor: Centralize session ID generation and propagation
2025-06-11 01:18:40 -04:00
Olcan
3372fd8df8
rename sandbox-exec as MacOS Seatbelt in footer ( #921 )
2025-06-10 18:35:00 -07:00
Seth Troisi
8e0d5076d6
Add [tag] to /save and /resume ( #916 )
2025-06-10 16:58:39 -07:00
Seth Troisi
36f58a34b4
logConversation
...
loadConversation
/resume
clean up for review
2025-06-10 16:14:42 -07:00
Abhi
9c3f34890f
feat: Add UI for /stats slash command ( #883 )
2025-06-10 15:59:52 -04: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
matt korwel
3b943c1582
Windows: Refactor Shell Scripts to Node.js for Cross-Platform Compatibility ( #784 )
2025-06-09 12:19:42 -07:00
Tommaso Sciortino
0613062fc8
Simplify user agent handling. ( #828 )
2025-06-09 09:31:27 -07:00
Olcan
a2fee6bdd3
fix mcp timeouts and missing description on mcp errors ( #868 )
2025-06-08 21:52:11 -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
Olcan
d061419452
enforce minimum lines shown/hidden ( #860 )
2025-06-08 17:11:16 -07:00
Bryan Morgan
152af28a34
Bryanmorgan/add tool source description ( #856 )
2025-06-08 19:07:05 -04:00
Bryan Morgan
31c14ea78f
Bryanmorgan/add mcp description support ( #855 )
2025-06-08 18:45:36 -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
Abhi
7868ef8229
feat: Introduce session context and add session duration stat for `/stats` command ( #854 )
2025-06-08 18:01:02 -04:00
Scott Densmore
9104ac02f7
feat: display commit hash in detached HEAD state ( #832 )
2025-06-08 14:59:18 -07: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
N. Taylor Mullen
d0b78225a1
feat: update ctrl+t text ( #845 )
2025-06-08 07:16:08 +00:00
Scott Densmore
b46f220931
feat(cli): improve API error parsing and display ( #829 )
2025-06-07 22:04:57 -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
Tolik Malibroda
dd08582f81
fix: Rename missing occurence of gemini-code ( #824 )
2025-06-08 00:12:53 +02:00
Jacob Richman
ab44824e07
Auto insert @ when dragging and dropping files. ( #812 )
2025-06-07 14:48:56 -07:00
cperry-goog
18d6a11c04
refactor: rename gemini-code to gemini-cli ( #822 )
2025-06-07 14:27:22 -07:00
Eddie Santos
27fdd1b6e6
Add embedder ( #818 )
2025-06-07 13:38:05 -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
Tommaso Sciortino
76ec9122c0
clean up version lookup code ( #804 )
2025-06-06 16:21:20 -07:00
cperry-goog
e94a10023d
adding very important phrases ( #802 )
2025-06-06 14:49:40 -07:00
Jacob Richman
2f54aa888a
feat(ui): add cursor to empty input prompt ( #800 )
2025-06-06 13:44:11 -07:00
Jacob Richman
89aca349cf
Exit with an error message if parsing settings.json fails. ( #747 )
2025-06-06 09:56:45 -07:00
Jacob Richman
9ad615c2a4
Fix build break due to changes to theme. ( #796 )
2025-06-06 08:05:00 -07:00
Jacob Richman
4262f5b0de
feat(cli): respect the NO_COLOR env variable ( #772 )
2025-06-06 07:55:28 -07:00
matt korwel
2f51c22141
Title & Big text Updates ( #781 )
2025-06-05 18:14:02 -07:00
Miguel Solorio
8a0a2523ca
Allow themes to theme the UI ( #769 )
2025-06-05 14:35:47 -07:00
Brandon Keiji
2285bba66e
refactor: remove unnecessary useRefs ( #780 )
2025-06-05 21:33:24 +00:00
Jerop Kipruto
2ebf2fbc82
OpenTelemetry Integration & Telemetry Control Flag ( #762 )
2025-06-05 13:04:25 -07:00
N. Taylor Mullen
822803d9d6
Fix "npx https:...." header issue ( #759 )
2025-06-05 07:00:34 +00:00
Eddie Santos
d99d132cdf
Add `/tools` slash command to view available tools ( #752 )
2025-06-04 14:01:38 -07:00
Tommaso Sciortino
4192cfb092
CLI_TITLE env var for setting the CLI title ( #748 )
2025-06-04 10:44:50 -07:00
Miguel Solorio
a2f03636a5
Update light themes ( #726 )
2025-06-04 10:41:03 -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
Marat Boshernitsan
7de790fbf2
Fix several bugs in prompt history ( #734 )
...
Co-authored-by: Marat Boshernitsan <maratb@google.com>
2025-06-03 23:01:26 -07: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