Commit Graph

568 Commits

Author SHA1 Message Date
Allen Hutchison dc25ca81a3 feat(cli): add pro model availability check and fallback to flash (#608) 2025-06-02 13:55:54 -07:00
Olcan e0eb947f75 allow toolDiscoveryCommand to return function declarations with or without a tool wrapper; fully document both toolDiscoveryCommand and toolCallCommand with examples and pointers to API docs (#696) 2025-06-02 13:41:49 -07:00
N. Taylor Mullen 042c387ad9 refactor: Update MCP tool discovery to use @google/genai - Also fixes JSON schema issues. (#682) 2025-06-02 20:39:25 +00:00
Tolik Malibroda 71553d12e7 feat: Add --yolo mode that automatically accepts all tools executions (#695)
Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2025-06-02 22:05:45 +02:00
N. Taylor Mullen c4e6677821 feat: Refactor CLI header for customizable logo text (#658) 2025-06-02 11:45:09 -07:00
Miguel Solorio be59580326 Color enhancements (#680) 2025-06-02 11:20:58 -07: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
N. Taylor Mullen bd6eca5de3 Add a note about Gemini API usage and add a link to the TOS. (#681) 2025-06-02 09:42:24 -07:00
Sandy Tao 19037f40b4 Add documentation about debugging using React DevTools (#679) 2025-06-02 09:16:03 -07:00
N. Taylor Mullen 4d3f0dcc35 fix: Ensure all tool calls are complete before submitting responses (#689) 2025-06-02 08:50:28 +00:00
N. Taylor Mullen d6891a430c fix: Refine model message consolidation for improved model interaction (#685) 2025-06-02 07:28:14 +00:00
N. Taylor Mullen 75c884ebdb Enable "Debug Test" config to debug Server or CLI tests. (#683) 2025-06-02 07:07:10 +00:00
Olcan 4ddeeb3eec more strict italics: delimiters cannot be preceded/followed by \w or [./\\]\S (#677) 2025-06-01 16:52:31 -07:00
N. Taylor Mullen 25b12d8297 feat: Implement non-interactive mode for CLI (#675) 2025-06-01 23:11:37 +00:00
N. Taylor Mullen 3d71ee597a fix: Display MCP server count in context summary (#674) 2025-06-01 22:48:48 +00:00
Bryan Morgan 22457bef04 Added replace tool ability to replace more than 1 occurrence (#669)
Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2025-06-01 17:49:48 -04:00
N. Taylor Mullen cca2129f87 refactor: Centralize tool scheduling logic and simplify React hook (#670) 2025-06-01 14:16:24 -07:00
Leo d3a3678faf Update edit tool validation function to override validateToolParams (#667) 2025-06-01 11:18:43 -07:00
anj-s e13c4e55d1 Fix for validating getDescription in read_file tool call (#660) 2025-06-01 00:02:00 -07:00
Scott Densmore c2511c8e70 Fix: Make file path case-insensitive in @-command (#659) 2025-05-31 16:19:14 -07:00
Bryan Morgan ceb907966c Revert "cleanup: removed duplicate check from Config.registerCoreTool()" (#657)
Didn't notice the casing difference - duh....
2025-05-31 20:52:52 +00:00
Bryan Morgan b76d040243 cleanup: removed duplicate check from Config.registerCoreTool() (#656) 2025-05-31 16:50:19 -04:00
Allen Hutchison b78c320cbd feat: allow custom filename for context files (#654)
Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2025-05-31 12:49:28 -07:00
Miguel Solorio f15dff0acd Update default & ANSI theme names (#637) 2025-05-31 11:10:52 -07:00
Miguel Solorio 2743fe9d2b Add default build task for VS Code (#639) 2025-05-31 11:09:25 -07:00
Taylor Mullen d8ce0908a4 Test: Add comprehensive tests for useToolScheduler hook
- Introduces a suite of tests for the  hook, covering various scenarios including:
  - Successful tool execution
  - Tool not found errors
  - Errors during
  - Errors during tool execution
  - Tool confirmation (approved and cancelled) - (currently skipped)
  - Live output updates - (currently skipped)
  - Cancellation of tool calls (before execution and during approval) - (currently skipped)
  - Execution of multiple tool calls
  - Preventing scheduling while other calls are running - (currently skipped)
- Includes tests for the  utility function to ensure correct mapping of tool call states to display objects.
- Mocks dependencies like , , and individual  instances.
- Uses fake timers to control asynchronous operations.

Note: Some tests involving complex asynchronous interactions (confirmations, live output, cancellations) are currently skipped due to challenges in reliably testing these scenarios with the current setup. These will be addressed in future work.
2025-05-31 02:55:36 -07:00
Taylor Mullen c757c40238 Fix: Update code coverage reporting for core rename
- Renames "server" to "core" in GitHub Actions workflow and comment posting action.
- This ensures that code coverage paths and labels are accurate after the package rename.
2025-05-31 01:50:41 -07:00
Taylor Mullen f5c15ec681 Refactor: Generalize VSCode launch configuration for debugging tests
- Consolidates multiple specific test debug configurations into a single, more flexible configuration named "Debug Test File".
- Introduces an input variable `testFile` to prompt the user for the specific test file path, defaulting to a sample test file.
- This change simplifies the launch configuration and makes it easier to debug any test file without needing a dedicated configuration for each.
2025-05-31 01:28:21 -07:00
Olcan 76a15b0633 expose shell process group id to model, along with instructions for how to terminate or signal the group (#645) 2025-05-30 23:25:44 -07:00
Taylor Mullen 8b9145fb92 Fix: Update sandbox build to use new core package name
- The `packages/core` tarball name changed from `gemini-code-server-*.tgz` to `gemini-code-core-*.tgz` after the `server` to `core` rename.
- This updates `scripts/build_sandbox.sh` and the root `Dockerfile` to use the new `gemini-code-core-*.tgz` naming, resolving the CI failure during the Docker build step of the publish process.
2025-05-30 22:41:54 -07:00
Scott Densmore dfd8759bd1 Fix: Update git branch watcher to use .git/logs/HEAD (#643) 2025-05-30 21:08:56 -07:00
Daniel Young Lee 0f5c712871 feat: Implement delayed Ctrl+C exit prompt
This change introduces a small delay after the first Ctrl+C press, prompting the user to press Ctrl+C again to exit. This helps prevent accidental termination of the application.

- Added `exitOnCtrlC={false}` to the Ink render options in `gemini.tsx` to enable custom Ctrl+C handling.
- Implemented logic in `App.tsx` to:
    - Display "Press Ctrl+C again to exit." for 2 seconds after the first Ctrl+C.
    - Exit the application if Ctrl+C is pressed again during this period.
    - Revert to normal operation if the second Ctrl+C is not pressed within the timeout.
- Defined a constant `CTRL_C_PROMPT_DURATION_MS` for the timeout duration.
2025-05-30 20:51:07 -07:00
Scott Densmore 6b78f3002f Fix/cli version unknown (#642) 2025-05-30 20:45:15 -07:00
Scott Densmore c315ed2d42 Refactor: Align build scripts with core package rename (#641) 2025-05-30 20:16:35 -07:00
Tommaso Sciortino 64bd136f42 Rename server->core (#638) 2025-05-30 18:25:47 -07:00
Olcan a89369e0bf use json block for mcp tool output (and re-enable markdown rendering) (#635) 2025-05-30 15:59:23 -07:00
Olcan 7ad4ca5a7d confirm mcp tool executions from untrusted servers (per "trust" setting) (#631) 2025-05-30 15:32:21 -07:00
Allen Hutchison d76752a386 fix(ci): Adjust reporting for PRs from forks (#627) 2025-05-30 15:30:09 -07:00
Jacob Richman d695b90196 feat: add --show_memory_usage flag to display memory usage in status bar (#606) 2025-05-30 15:18:01 -07:00
Allen Hutchison a7bf6e4e81 fix(cli): Clear input buffer before onSubmit in InputPrompt (#633) 2025-05-30 15:16:06 -07:00
Olcan ba513a437a disable markdown for discovered (mcp) tools (#630) 2025-05-30 14:12:51 -07:00
Olcan 46f8757c63 add flags for markdown rendering and live updating to Tool to avoid special-casing shell tool by name, and open door for other tools to specify their rendering/updating (#629) 2025-05-30 13:59:05 -07:00
Brandon Keiji 454204cd0f fix(sandbox): pull sandbox image if it doesnt exist locally (#628) 2025-05-30 20:49:47 +00:00
Brandon Keiji 312ff7d8e9 fix(sandbox): prepare package.json before building sandbox image (#626) 2025-05-30 19:57:46 +00:00
Olcan 168cfe8aae disable markdown rendering of shell tool output (#625) 2025-05-30 12:43:59 -07:00
Brandon Keiji 840a2c730f feat(sandbox): use package config to dictate sandbox image name (#624) 2025-05-30 19:28:46 +00:00
cperry-goog f91e7c8449 docs: Update README, CONTRIBUTING, and CLI configuration docs (#591)
cleaning up for now, will take another pass
2025-05-30 12:20:12 -07:00
Brandon Keiji ce57868a4e fix(sandbox): set default env var to 'gemini-cli-sandbox' (#620) 2025-05-30 18:02:27 +00:00
N. Taylor Mullen 6bddecb1ad feat: Implement retry with backoff for API calls (#613) 2025-05-30 17:57:00 +00:00
Taylor Mullen a6ea1a2785 Change ReadFile to not have a result display.
- It's verbose on its own; however, if file content is truncated we'll indicate that in the result display.
2025-05-30 10:48:10 -07:00