Commit Graph

46 Commits

Author SHA1 Message Date
Jacob MacDonald c9a63d8e8f [feat] Extension Reloading - respect updates to exclude tools (#12728) 2025-11-07 20:18:35 +00:00
Allen Hutchison 3ef50aed3a fix: integrate DiscoveredTool with Policy Engine (#12646) 2025-11-06 23:51:16 +00:00
Tommaso Sciortino 9ab24d397c List tools in a consistent order. (#12615) 2025-11-05 23:38:44 +00:00
Jacob MacDonald e1614fc362 Extensions MCP refactor (#12413) 2025-11-04 15:51:18 +00:00
Jacob MacDonald c1ea4eb434 Initial support for reloading extensions in the CLI - mcp servers only (#12239) 2025-10-30 18:05:49 +00:00
Allen Hutchison 2a17b03d46 feat(policy): Introduce config-based policy engine with TOML configuration (#11992) 2025-10-28 16:20:57 +00:00
Tommaso Sciortino 7c6a9c1892 Migrate to coreEvents/debugLogger (#12107) 2025-10-27 23:46:35 +00:00
Allen Hutchison c27a9a935e feat(core): Introduce message bus for tool execution confirmation (#11544)
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-10-24 20:04:40 +00:00
Abhi a2fc45a492 refactor(logging): Centralize console logging with debugLogger (#11590) 2025-10-21 20:35:22 +00:00
Zack Birkenbuel a240ecefcd Pass whole extensions rather than just context files (#10910)
Co-authored-by: Jake Macdonald <jakemac@google.com>
2025-10-20 23:15:23 +00:00
Tommaso Sciortino 2b3f002ab0 Serialize function calls that mutate state (#8513) 2025-09-17 18:45:04 +00:00
shrutip90 8ec52b9136 Skip MCP server connections in untrusted folders (#7358) 2025-08-28 22:46:27 +00:00
Pascal Birchler 9fdb9491c5 Add MCP loading indicator when initializing Gemini CLI (#6923) 2025-08-28 19:53:56 +00:00
Lee James 15c92fa946 feat(errors): Make errors more informative (#7133) 2025-08-26 23:22:05 +00:00
Pascal Birchler a97a6cc71b Explict imports & exports with type modifier (#3774) 2025-08-25 22:04:53 +00:00
joshualitt bad9d8aa73 feat(core): Annotate remaining error paths in tools with type. (#6699) 2025-08-21 21:40:18 +00:00
Jacob MacDonald febcd47630 return the JSON stringified parameters from getDescription for MCP tools and Discovered tools (#6655) 2025-08-20 20:10:02 +00:00
Ramón Medrano Llamas c65b4356fa feat: restart MCP servers on /mcp refresh (#5479)
Co-authored-by: Brian Ray <62354532+emeryray2002@users.noreply.github.com>
Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2025-08-19 19:03:19 +00:00
joshualitt 9c56fbabc9 feat(core): Migrate web-search, write-file, and discovered-tool. (#6188)
Co-authored-by: Jacob Richman <jacob314@gmail.com>
2025-08-14 20:28:33 +00:00
Richie Foreman d3d31c4242 chore(build/compiler): Enable a bunch of strict TS compiler options. (#6138) 2025-08-13 20:17:38 +00:00
Harold Mciver efd5dd135a fix: Prevent duplicate or inactive tools/prompts after server refresh (#5850) 2025-08-13 19:31:24 +00:00
Agus Zubiaga c00193b026 Zed integration schema upgrade (#5536)
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Co-authored-by: Ben Brandt <benjamin@zed.dev>
2025-08-13 15:58:26 +00:00
Wanlin Du bab6bef615 feat: migrate tools to use parametersJsonSchema. (#5330) 2025-08-11 23:12:41 +00:00
Jacob MacDonald ae32ba463d Add MCP Roots support (#5856)
Co-authored-by: Jacob Richman <jacob314@gmail.com>
2025-08-08 23:29:06 +00:00
Abhi c71bbd0847 feat(agent): Introduce Foundational Subagent Architecture (#1805)
Co-authored-by: Colt McAnlis <colton@google.com>
2025-08-07 00:34:38 +00:00
joshualitt 81c8e0163c feat(core): Introduce DeclarativeTool and ToolInvocation. (#5613) 2025-08-06 17:50:02 +00:00
Ramón Medrano Llamas 860aa1ca31 fix(mcp): clear prompt registry on refresh to prevent duplicates (#5385)
Co-authored-by: Jacob Richman <jacob314@gmail.com>
Co-authored-by: Sandy Tao <sandytao520@icloud.com>
2025-08-05 21:59:31 +00:00
christine betts bf7da82d05 Load and use MCP server prompts as slash commands in the CLI (#4828)
Co-authored-by: harold <haroldmciver@google.com>
Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2025-07-25 20:56:33 +00:00
Ramón Medrano Llamas 20e9504cf2 feat: add /mcp refresh command (#4566) 2025-07-25 01:14:45 +00:00
Brian Ray a67a7488fe MCP OAuth Part 2 - MCP Client Integration (#4318)
Co-authored-by: Greg Shikhman <shikhman@google.com>
2025-07-22 13:34:56 +00:00
Tommaso Sciortino 0fcad5aa7f Use simple name for MCP tools where possible. (#4459) 2025-07-18 21:29:09 +00:00
Conrad Irwin 6e762dc70c Zed integration (#4266)
Co-authored-by: Agus Zubiaga <agus@zed.dev>
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
Co-authored-by: mkorwel <matt.korwel@gmail.com>
2025-07-17 22:25:23 +00:00
Sambhav Khanna a13119e706 feat(tool): sort tool list alphabetically for deterministic output (#3095)
Co-authored-by: Pascal Birchler <pascalb@google.com>
2025-07-15 18:35:35 +00:00
Billy Biggs d0588851af Show stderr output from mcp servers in debug mode (#4049) 2025-07-14 04:42:22 +00:00
N. Taylor Mullen a744c3f326 feat(tools): Centralize shell tool summarization (#4009) 2025-07-13 04:09:12 +00:00
anj-s e97f349fc9 Summarize tool call outputs using tool specific summarizers (#3745) 2025-07-11 16:29:08 +00:00
Tommaso Sciortino 1afb62ad31 Initialize MCP tools once at start up instead of every time we auth. (#3483) 2025-07-07 22:01:59 +00:00
Tommaso Sciortino 8400bca3dd Remove unneeded code. (#3467)
Co-authored-by: Scott Densmore <scottdensmore@mac.com>
2025-07-07 19:35:29 +00:00
BigUncle 507980a3d9 fix(core): Sanitize tool parameters to fix 400 API errors (#3300) 2025-07-05 21:58:51 +00:00
Jacob Richman 50efcbf241 Jacob314/memory fixes (#754)
Address multiple possible memory leaks found bystatic analysis of the codebase. The primary source of the leaks was event listeners on child processes and global objects that were not being properly removed, potentially causing their closures to be retained in memory indefinitely particularly for processes that did not exit.

There are two commits. A larger one made by gemini CLI and a smaller one by me to make sure we always disconnect child processes as part of the cleanup methods. These changes may not actually fix any leaks but do look like reasonable defensive coding to avoid leaking event listeners or child processes.

The following files were fixed:
This is Gemini's somewhat overconfident description of what it did.

packages/core/src/tools/shell.ts: Fixed a leak where an abortSignal listener was not being reliably removed.
packages/cli/src/utils/readStdin.ts: Fixed a significant leak where listeners on process.stdin were never removed.
packages/cli/src/utils/sandbox.ts: Fixed leaks in the imageExists and pullImage helper functions where listeners on spawned child processes were not being removed.
packages/core/src/tools/grep.ts: Fixed three separate leaks in the isCommandAvailable check and the git grep and system grep strategies due to un-removed listeners on child processes.
packages/core/src/tools/tool-registry.ts: Corrected a leak in the execute method of the DiscoveredTool class where listeners on the spawned tool process were not being removed.
2025-06-05 06:40:33 -07:00
N. Taylor Mullen 200548785d Fix: Ensure MCP tools are discovered from slow-starting servers (#717) 2025-06-03 07:40:51 +00:00
Brandon Keiji f5416be22b refactor: maintain 1 GeminiChat per GeminiClient (#710) 2025-06-02 19:10: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
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