Commit Graph

61 Commits

Author SHA1 Message Date
Olcan
d80e7b55e7 fix MCP under seatbelt, improve error handling (#301) 2025-05-09 09:02:14 -07:00
Olcan
596f0d1c8f fix json import warning (#291) 2025-05-08 14:14:09 -07:00
Taylor Mullen
cc0e439744 Update EditTool description for clarity and better parameter guidance.
- Prior to this change, the model would often escape parameters when requesting edits, leading to failures in matching the original content. This update clarifies the expected format for `old_string` and `new_string` to prevent such issues.
   - Update `EditTool` description to provide clearer instructions.
   - Clarify expectations for `old_string` and `new_string` parameters, emphasizing the need for exact, unescaped text.
   - Aim to reduce user errors by setting better expectations for tool usage.

Fixes: https://b.corp.google.com/issues/413088274

— Your friendly neighborhood Gemini
2025-05-07 18:31:39 -07:00
Taylor Mullen
9d9f7739b7 Continue to work through 429/500s.
- The root of this issue was actually a genai SDK bug that was fixed here: https://critique.corp.google.com/cl/753255997
- Upgrade to latest genai SDK for latest bug fixes (including the above)
- Removed specific 429 handling for uncaught rejections.

Fixes https://b.corp.google.com/issues/413760164
2025-05-07 16:38:06 -07:00
Olcan
e634c8a384 drop restriction on whitespace in bash commands (#272) 2025-05-06 23:38:36 -07:00
Olcan
f0ccf9bbfd use temp file instead of footer to allow arbitrary chunking of streams and arbitrary interleaving with output from background processes (#267) 2025-05-06 10:44:40 -07:00
Brandon Keiji
1a7582b766 fix: use flat config for react eslint plugin (#265) 2025-05-06 08:48:26 -07:00
Taylor Mullen
fe3206e29e Add vibe coding instructions for 0->game.
- Prior to this GC would attempt to utilize React components as game assets (instead of using canvas) + would fail to deal with placeholder assets effectively.

Part of https://b.corp.google.com/issues/413718497
2025-05-05 20:53:47 -07:00
olcan
47ed4b9c61 added todo about removing mcp dependency once support is built into genai SDK 2025-05-05 17:10:45 -07:00
olcan
0d175bad27 extra spacing in discovered tool descriptions 2025-05-05 17:10:45 -07:00
olcan
06274153ba support for mcp tools 2025-05-05 17:10:45 -07:00
olcan
44d0b55ebd support for discovered tools using project settings for discovery and call commands 2025-05-05 17:10:45 -07:00
Seth Troisi
bc2a10c117 Remove passthroughCommands (#252) 2025-05-05 10:57:06 -07:00
Jacob Richman
3f9c759932 Cleanup low value comments. (#248) 2025-05-02 14:39:39 -07:00
Jacob Richman
379b9198d2 Use parameter properties for constructor parameters in config.ts (#245) 2025-05-02 11:28:30 -07:00
Jacob Richman
99f047b349 Use parameter properties where possible. (#242) 2025-05-02 09:31:18 -07:00
Olcan
0200fdc27c sandbox setting and argument (#243) 2025-05-02 08:15:46 -07:00
Jacob Richman
4808237923 Support escaping spaces in file paths. (#241) 2025-05-01 18:02:04 -07:00
Olcan
4a1104725c simplify directory display in shell tool description (#230) 2025-04-30 12:27:56 -07:00
Olcan
39f7e34929 do not prepend ./ to absolute paths or . (#220) 2025-04-29 22:31:46 +00:00
Olcan
03a40f9904 switch to shell tool, deprecating terminal (#203)
* switch to shell tool, deprecating terminal

* Merge remote-tracking branch 'origin/main' into deprecate_terminal
2025-04-28 15:05:36 -07:00
Olcan
9e75137b54 do not prepend ./ unless missing (#200)
* do not prepend ./ unless missing

* Merge remote-tracking branch 'origin/main' into dir_prefix_fix
2025-04-28 11:07:11 -07:00
Olcan
48c78a5645 rename dev image with -dev suffix (#195) 2025-04-28 08:52:18 -07:00
Olcan
be01b95af7 shell tool tweaks (#194) 2025-04-28 08:17:52 -07:00
Taylor Mullen
b61cf3c44b Refactor: Update core system prompt with new application workflow and improved structure
- Refine agent persona from 'assistant' to 'agent'.
- Restructure prompt into distinct 'Software Engineering Tasks' and 'New Application' workflows.
- Add detailed steps and tool usage guidance for creating new applications.
- Improve clarity and formatting of prompt instructions.

Part of https://b.corp.google.com/issues/413718497

Signed-off-by: Gemini, your friendly neighborhood code agent.
2025-04-27 22:36:05 -07:00
Olcan
81c3717613 minimal shell tool (#191) 2025-04-27 18:57:10 -07:00
Olcan
d7a449ee58 don't confirm invalid params in terminal tool, or in general (added comments to base class) (#187) 2025-04-27 10:25:12 -07:00
Taylor Mullen
8a8983deea Prevent console.warn's for tool calls.
- Added helper for extracting text content from responses without warning.

See fixed issue for more detail: https://b.corp.google.com/issues/414005146
2025-04-26 15:50:44 -07:00
Olcan
4931f14ef9 more consistent confirmations, TODO to improve write confirmations, drop "description" from execution confirmation, add confirmation to new (still dummy) shell tool (#176) 2025-04-25 14:05:58 -07:00
Olcan
b8a24d5327 enable json imports (#165)
* enable json imports

* Merge remote-tracking branch 'origin/main' into enable_json_imports
2025-04-24 18:30:19 -07:00
Olcan
fd546cd158 shell bones (#160)
* shell bones

* Merge remote-tracking branch 'origin/main' into shell_bones

* add line break

* another line break

* drop the log to avoid breaking terminals

* rename tool to be consistent with terminal

* fix build
2025-04-24 18:03:33 -07:00
Allen Hutchison
761293bd1c Adding a full_context command line argument. (#158)
* Adding a full_context command line argument.

* Update packages/cli/src/config/config.ts

Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>

* lint fix.

---------

Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2025-04-24 16:08:29 -07:00
Olcan
0c293647a7 general rules should apply to whole project (#159)
* general rules should apply to whole project

* Merge remote-tracking branch 'origin/main' into fix_eslint

* lint fixes under server package
2025-04-24 15:42:18 -07:00
Olcan
492b1931b0 remove dead code (+ dont reset shellReady unless restarting) (#156) 2025-04-24 13:24:15 -07:00
Olcan
319b78f5e6 rename read_many_files (#153) 2025-04-24 12:15:49 -07:00
Olcan
c710593f92 unban commands (#146) 2025-04-23 19:20:54 -07:00
Allen Hutchison
affa850a0c Add concatenation tool (#130)
* Adding a tool inspired by files-to-prompt that will recursivly read through all the files in a directory (guarded by targetDir) and concatenate those files for the model. Ignores common build artifacts and non-text files.

* Migraded glob logic to fast-glob. Buffed the tool description to give more guidance to the model. Incorporated reveiw feedback.

* lint and error checking.
2025-04-23 17:25:47 -07:00
Taylor Mullen
c73fa983a0 Refactor: Remove GEMINI.md memory and refactor system prompt
- Updates CONTRIBUTING.md and Tips.tsx to remove references to GEMINI.md and the /init command, and renumbers tips.
- Fixes a typo in Tips.tsx ("information.s" -> "information.").
- Refactors the core system prompt in prompts.ts from a constant string to a function .
- Updates client.ts to call the  function.
- Updates tool name references within the system prompt to use template literals for dynamic naming.

Fixes bug: https://buganizer.corp.google.com/issues/413061073
---

Generated by yours truly __Gemini Code__
2025-04-23 15:57:40 -07:00
Chris Perry
bf596ff4b6 Updating the system prompt to allow for more complex app creation 2025-04-23 14:39:12 -07:00
Olcan
1ded5bd96a remove dead code (#131) 2025-04-23 13:33:07 -07:00
Allen Hutchison
a26c454771 Question flag (#125) 2025-04-22 18:32:03 -07:00
Jaana Dogan
afa0a31555 fix hanging tools
https://github.com/google-gemini/gemini-code/pull/117/
2025-04-22 13:40:36 -07:00
Jaana Dogan
3fb6725506 Initiate the GeminiClient with a config
Also address the open readability improvement comments from #104.
2025-04-22 11:20:19 -07:00
Jaana Dogan
c0c1f3579e Simplify GeminiClient (#101)
Doing some more clean-up:
* Remove confusing continue/break
* Handle empty result
* Rename the file just client.js
2025-04-21 17:15:20 -07:00
Brandon Keiji
587d21988f fix: remove circular dependency in background terminal analyzer (#94) 2025-04-21 14:27:11 -07:00
Brandon Keiji
8f8e0d89d5 fix: use relative imports within the same package (#93) 2025-04-21 14:09:14 -07:00
Jaana Dogan
f1825822aa Remove dead methods from ToolRegistry (#91)
* getToolSchemas is deprecated.
* listAvailableTools is now getAllTools.
2025-04-21 13:29:36 -07:00
Jaana Dogan
51ff4ba14f Remove duplicate CLI tools module, remove the global tool registry (#89) 2025-04-21 12:59:31 -07:00
Jaana Dogan
ed4f47e6d1 Remove redundant else branches (#86)
Else branches are an anti pattern especially if you can easily return from the previous branch. Over time, else branches cause deep nesting and make code unreadable and unmaintainable. Remove elses where possible.
2025-04-21 12:15:47 -07:00
Taylor Mullen
86dac064b7 Fix confirmations.
- This fixes what it means to get confirmations in GC. Prior to this they had just been accidentally unwired as part of all of the refactorings to turns + to server/core.
  - The key piece of this is that we wrap the onConfirm in the gemini stream hook in order to resubmit function responses. This isn't 100% ideal but gets the job done for now.
- Fixed history not updating properly with confirmations.

Fixes https://b.corp.google.com/issues/412323656
2025-04-21 14:47:17 -04:00