summaryrefslogtreecommitdiff
path: root/packages/server/src/tools/shell.ts
AgeCommit message (Collapse)Author
2025-05-30Rename server->core (#638)Tommaso Sciortino
2025-05-30add flags for markdown rendering and live updating to Tool to avoid ↵Olcan
special-casing shell tool by name, and open door for other tools to specify their rendering/updating (#629)
2025-05-30truncate (hide) tool output at the top, add some spacing, also fix shell ↵Olcan
output interval change accidentally undone in a previous commit (#619)
2025-05-30tweaks to shell abort logic based on feedback (#618)Olcan
2025-05-30allow aborting of shell mode (!) commands, similar to shell tool commands. ↵Olcan
fix bug that prevented aborts after first abort. more robust killing logic (#616)
2025-05-30update shell output at an interval to reduce flicker (#614)Olcan
2025-05-28much improved support for background processes, avoiding termination (via ↵Olcan
SIGPIPE) or eventual blocking (e.g. due to filled OS buffers) (#586)
2025-05-27feat: Allow cancellation of in-progress Gemini requests and pre-execution checksTaylor Mullen
- Implements cancellation for Gemini requests while they are actively being processed by the model. - Extends cancellation support to the logic within tools. This allows users to cancel operations during the phase where the system is determining if a tool execution requires user confirmation, which can include potentially long-running pre-flight checks or LLM-based corrections. - Underlying LLM calls for edit corrections (within and ) and next speaker checks can now also be cancelled. - Previously, cancellation of the main request was not possible until text started streaming, and pre-execution checks were not cancellable. - This change leverages the updated SDK's ability to accept an abort token and threads s throughout the request, tool execution, and pre-execution check lifecycle. Fixes https://github.com/google-gemini/gemini-cli/issues/531
2025-05-27live output from shell tool (#573)Olcan
2025-05-27improve shell tool output when cancelled in debug mode (#571)Olcan
2025-05-22fix: forward entire tool call confirmation object through useToolScheduler ↵Brandon Keiji
(#481)
2025-05-21switch to spawn for shell mode (#467)Olcan
2025-05-21fix exit code for shell tool (#465)Olcan
2025-05-19fix SIGPIPE and race condition causing dropping of final output ( "command ↵Olcan
not found" error) on cloudtops (#429)
2025-05-18fix(shell): Improve error reporting for shell command failuresTaylor Mullen
This commit enhances the tool to provide more informative feedback to the user when a shell command fails, especially in non-debug mode. Previously, if a command terminated due to a signal (e.g., SIGPIPE during a with no upstream) or failed without producing stdout/stderr, the user would see no output, making it difficult to diagnose the issue. Changes: - Modified to update the logic. - If a command produces no direct output but results in an error, signal, non-zero exit code, or user cancellation, a concise message indicating this outcome is now shown in . - Utilized the existing utility from for consistent error message formatting, which also resolved previous TypeScript type inference issues. This ensures users receive clearer feedback on command execution status, improving the tool's usability and aiding in troubleshooting. Fixes https://b.corp.google.com/issues/417998119
2025-05-10Enable tools to cancel active execution.Taylor Mullen
- 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-08fix json import warning (#291)Olcan
2025-05-06drop restriction on whitespace in bash commands (#272)Olcan
2025-05-06use temp file instead of footer to allow arbitrary chunking of streams and ↵Olcan
arbitrary interleaving with output from background processes (#267)
2025-05-02Use parameter properties where possible. (#242)Jacob Richman
2025-04-30simplify directory display in shell tool description (#230)Olcan
2025-04-29do not prepend ./ to absolute paths or . (#220)Olcan
2025-04-28switch to shell tool, deprecating terminal (#203)Olcan
* switch to shell tool, deprecating terminal * Merge remote-tracking branch 'origin/main' into deprecate_terminal
2025-04-28do not prepend ./ unless missing (#200)Olcan
* do not prepend ./ unless missing * Merge remote-tracking branch 'origin/main' into dir_prefix_fix
2025-04-28rename dev image with -dev suffix (#195)Olcan
2025-04-28shell tool tweaks (#194)Olcan
2025-04-27minimal shell tool (#191)Olcan
2025-04-25more consistent confirmations, TODO to improve write confirmations, drop ↵Olcan
"description" from execution confirmation, add confirmation to new (still dummy) shell tool (#176)
2025-04-24enable json imports (#165)Olcan
* enable json imports * Merge remote-tracking branch 'origin/main' into enable_json_imports
2025-04-24shell bones (#160)Olcan
* 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