Commit Graph

2097 Commits

Author SHA1 Message Date
Akhilesh Kumar 164abf9d9b fix(core): resolve TypeScript compilation errors in LocalAgentExecutor 2026-03-11 21:47:31 +00:00
Akhilesh Kumar b132791cd2 test(core): add unit tests for subagent MCP tool isolation
Unit tests added:
1. Tool Registry Filtering: Verified that main registry hides all '__agent__' prefixed tools.
2. Subagent Tool Inheritance: Verified that agents correctly filter out other agents' MCP tools while retaining their own.
Verified with vitest in packages/core.
2026-03-11 20:55:10 +00:00
Akhilesh Kumar 5a020e7720 fix(core): avoid restarting subagent MCP servers
I've tactically refactored the `LocalAgentExecutor` so that it avoids shutting down and restarting subagent MCP servers for every agent execution, which mitigates the performance overhead caused by long startup times.

1. Leveraging the Global McpClientManager:
Instead of instantiating an entirely new `McpClientManager` instance within the `LocalAgentExecutor` per execution (and shutting it down in its `finally` block), we now use the single global `McpClientManager` available on `context.config`. Since the global manager deduplicates connection attempts by checking if the server is already active, subagent MCP servers will now naturally stay alive after their initial initialization.

2. Prefixing to Avoid Polluting the Global Namespace:
To isolate the agent-specific tools, we now register the subagent's MCP servers with a unique prefix: `__agent__${definition.name}__${name}`.

3. Strict Filtering for True Isolation (ToolRegistry):
- Main CLI context: Added a block in the global `ToolRegistry.getFunctionDeclarations()` that strictly hides any tool belonging to a server prefixed with `__agent__` if the registry `isMainRegistry`. This prevents internal subagent tools from leaking to the main agent.
- Subagent context (`LocalAgentExecutor`): When inheriting tools from the parent registry (the fallback when an agent doesn't explicitly define `tools: []`), the agent now ignores `__agent__` prefixed tools that belong to *other* agents, ensuring strict tool isolation while keeping the actual underlying server processes alive and reusable.
2026-03-11 20:43:25 +00:00
AK eb5d22848c Merge branch 'main' into fix-subagent-tool-isolation 2026-03-11 13:02:45 -07:00
Sehoon Shon b7578eba7d fix(core): preserve dynamic tool descriptions on session resume (#18835)
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-03-11 19:38:54 +00:00
Spencer b87718d1ff fix(policy): remove unnecessary escapeRegex from pattern builders (#21921) 2026-03-11 19:31:55 +00:00
Aishanee Shah 067e09a40b feat(telemetry): implement retry attempt telemetry for network related retries (#22027)
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-03-11 18:55:48 +00:00
Sehoon Shon 36ce2ba96e fix(core): enable numerical routing for api key users (#21977) 2026-03-11 18:54:52 +00:00
Yuna Seol df8b399bb4 feat(core): include initiationMethod in conversation interaction telemetry (#22054)
Co-authored-by: Yuna Seol <yunaseol@google.com>
2026-03-11 18:38:15 +00:00
Sehoon Shon 41f1ea4672 fix(core): handle EISDIR in robustRealpath on Windows (#21984) 2026-03-11 18:22:10 +00:00
Sehoon Shon 58557ba786 perf(core): parallelize user quota and experiments fetching in refreshAuth (#21648) 2026-03-11 18:00:16 +00:00
Gal Zahavi 6900fe5527 feat(policy): add --admin-policy flag for supplemental admin policies (#20360) 2026-03-11 17:35:45 +00:00
Akhilesh Kumar 2e6c81e7ad chore: address PR feedback by adding inline comments 2026-03-11 17:13:32 +00:00
Akhilesh Kumar d4b7d358c5 feat(core): support inline MCP server definitions in subagent markdown 2026-03-11 17:10:36 +00:00
Akhilesh Kumar c68a2cb933 feat(core): implement configuration-based tool isolation for subagents 2026-03-11 17:09:46 +00:00
Yuna Seol 50384ab3c9 fix(core): update language detection to use LSP 3.18 identifiers (#21931) 2026-03-11 16:05:52 +00:00
Manav Sharma eaf6e8bbb1 fix(core)#20941: reap orphaned descendant processes on PTY abort (#21124)
Co-authored-by: Spencer <spencertang@google.com>
2026-03-11 15:36:25 +00:00
Jack Wotherspoon b804fe9662 fix: clean up /clear and /resume (#22007) 2026-03-11 15:23:23 +00:00
Krrish Verma c2d38bac54 test(core): add missing tests for prompts/utils.ts (#19941)
Co-authored-by: Jacob Richman <jacob314@gmail.com>
2026-03-11 07:00:37 +00:00
Sehoon Shon e54c450bc1 fix(core): remove OAuth check from handleFallback and clean up stray file (#21962) 2026-03-11 04:56:06 +00:00
Aishanee Shah f8ad3a200a Feat/retry fetch notifications (#21813) 2026-03-11 03:33:50 +00:00
gemini-cli-robot 3a0c9a0d39 chore(release): bump version to 0.35.0-nightly.20260311.657f19c1f (#21966) 2026-03-11 02:36:40 +00:00
joshualitt 20a226a5ab feat(core): Thread AgentLoopContext through core. (#21944) 2026-03-11 01:12:59 +00:00
Tommaso Sciortino daf3701194 feat(cli): customizable keyboard shortcuts (#21945) 2026-03-11 01:05:50 +00:00
Gal Zahavi 524679d23c feat: implement background process logging and cleanup (#21189) 2026-03-11 00:13:20 +00:00
Shyam Raghuwanshi 7c4570339e fix: robust UX for remote agent errors (#20307)
Co-authored-by: Adam Weidman <adamfweidman@google.com>
2026-03-10 23:50:25 +00:00
gemini-cli-robot a9500d6a6c chore/release: bump version to 0.34.0-nightly.20260310.4653b126f (#21816) 2026-03-10 21:22:37 +00:00
Coco Sheng 519c75f410 fix: prevent hangs in non-interactive mode and improve agent guidance (#20893)
Co-authored-by: Keith Schaab <keith.schaab@gmail.com>
2026-03-10 20:30:58 +00:00
Gaurav 3ff68a9e55 fix: patch gaxios v7 Array.toString() stream corruption (#21884) 2026-03-10 20:25:24 +00:00
kevinjwang1 5b8ad9cd65 Add extensionRegistryURI setting to change where the registry is read from (#20463) 2026-03-10 20:22:03 +00:00
Aditya Bijalwan 5caa192cfc feat: add pulsating blue border automation overlay to browser agent (#21173)
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Gaurav <39389231+gsquared94@users.noreply.github.com>
2026-03-10 20:15:03 +00:00
Ayush Debnath 9eae91a489 feat(voice): implement speech-friendly response formatter (#20989)
Co-authored-by: Spencer <spencertang@google.com>
2026-03-10 19:57:23 +00:00
Coco Sheng 1b69637032 feat(a2a): switch from callback-based to event-driven tool scheduler (#21467)
Co-authored-by: Abhi <abhipatel@google.com>
Co-authored-by: Adam Weidman <adamfweidman@google.com>
2026-03-10 19:36:17 +00:00
Adib234 e5615f47c4 fix(plan): prevent plan truncation in approval dialog by supporting unconstrained heights (#21037)
Co-authored-by: jacob314 <jacob314@gmail.com>
2026-03-10 19:34:10 +00:00
N. Taylor Mullen 5d213764fb feat(cli): enable skill activation via slash commands (#21758)
Co-authored-by: matt korwel <matt.korwel@gmail.com>
2026-03-10 19:24:54 +00:00
Alisa be67470432 feat(a2a): implement standardized normalization and streaming reassembly (#21402)
Co-authored-by: matt korwel <matt.korwel@gmail.com>
2026-03-10 19:19:48 +00:00
Adam Weidman 00a39b3da9 refactor: remove agent_card_requires_auth config flag (#21914) 2026-03-10 19:16:46 +00:00
Abhi 0d60d68cf9 docs(mcp): standardize mcp tool fqn documentation (#21664) 2026-03-10 19:13:00 +00:00
Yongrui Lin 4da0366eed feat(core): add per-model token usage to stream-json output (#21839) 2026-03-10 17:39:04 +00:00
Prasanna Pal 0b78de9601 fix(core): handle AbortError when ESC cancels tool execution (#20863) 2026-03-10 17:11:08 +00:00
Spencer a220874281 feat(policy): support auto-add to policy by default and scoped persistence (#20361) 2026-03-10 17:01:41 +00:00
Sandy Tao b158c96465 feat(core): add OAuth2 Authorization Code auth provider for A2A agents (#21496)
Co-authored-by: Adam Weidman <adamfweidman@google.com>
2026-03-10 15:24:44 +00:00
Coco Sheng e91f86c248 feat(telemetry): add specific PR, issue, and custom tracking IDs for GitHub Actions (#21129) 2026-03-10 14:59:13 +00:00
Gaurav 47e4f6b13f fix(ui): handle headless execution in credits and upgrade dialogs (#21850) 2026-03-10 14:54:15 +00:00
Gaurav 94ab449e65 fix(core): treat retryable errors with >5 min delay as terminal quota errors (#21881) 2026-03-10 14:53:51 +00:00
Yuna Seol 0486a1675a refactor(core): improve API response error logging when retry (#21784) 2026-03-10 14:29:35 +00:00
Adam Weidman f9fc83089c fix(core): update @a2a-js/sdk to 0.3.11 (#21875) 2026-03-10 14:14:39 +00:00
Jerop Kipruto 5dd2dab189 fix(core): ensure correct flash model steering in plan mode implementation phase (#21871) 2026-03-10 13:30:41 +00:00
Gaurav 02d4451e77 fix(core): override toolRegistry property for sub-agent schedulers (#21766) 2026-03-10 07:41:54 +00:00
Nicholas Bardy 4653b126f3 fix(core): destroy PTY on kill() and exception to prevent fd leak (#21693)
Co-authored-by: Jacob Richman <jacob314@gmail.com>
2026-03-10 00:08:16 +00:00