Adam Weidman
d14b2a40c3
feat(core): composite sessionState key + duplicate agent name warning
...
Two changes:
1. RemoteSessionInvocation now uses a composite key (name::targetUrl)
for the static sessionState map. This ensures agents with the same
name but different endpoints maintain independent A2A state. Falls
back to name-only when no URL can be derived.
2. AgentRegistry.registerAgent now emits a visible warning when a
different definition tries to register under an existing name.
Override still proceeds to preserve existing precedence order
(user → project → extension). The warning surfaces potential
naming conflicts to users.
2026-04-13 22:37:55 -04:00
Adam Weidman
290839e30f
feat(core): add RemoteSessionInvocation — session-based remote agent invocation
...
New invocation class that delegates to RemoteSubagentSession instead of
directly managing A2A client streaming. Existing RemoteAgentInvocation is
untouched — this will be wired in behind a feature flag in a later PR.
Key behaviors:
- Static sessionState map persists A2A contextId/taskId across invocations
- Subscribes to session message events for live SubagentProgress updates
- Detects post-getResult abort and surfaces proper error state
- Includes partial output in error display via getLatestProgress()
- Properly cleans up abort listeners and subscriptions in finally block
Also adds initialState param and getSessionState() to
RemoteSubagentProtocol/RemoteSubagentSession for cross-invocation
state persistence.
2026-04-13 22:14:30 -04:00
Adam Weidman
d0eed7378d
feat(core): add RemoteSubagentProtocol wrapping A2A client behind AgentProtocol
...
Introduces RemoteSubagentProtocol (implements AgentProtocol) and
RemoteSubagentSession (extends AgentSession) to wrap the A2A remote
agent streaming client behind the unified agent session interface.
- Manages persistent session state (contextId, taskId) across sends
- Handles auth setup via A2AAuthProviderFactory per agent definition
- Uses A2AResultReassembler for response chunk processing
- Maps A2A streaming events to typed AgentEvent emissions
- Exposes getResult() and getLatestProgress() for result retrieval
- Guards against concurrent send() with clear error messaging
- Includes comprehensive test suite (776 lines)
Part of the AgentSession unification effort to expose all agents
(interactive, non-interactive, subagents) through the same contract.
Bug: b/22700
2026-04-13 13:02:34 -04:00
Mark Griffith
0179726222
Memory fix for trace's streamWrapper. ( #25089 )
2026-04-11 05:26:07 +00:00
Abhijit Balaji
0957f7d3e2
fix(cli): exclude update_topic from confirmation queue count ( #24945 )
2026-04-10 23:04:59 +00:00
M Junaid Shaukat
21e1c60922
fix: improve audio MIME normalization and validation in file reads ( #21636 )
...
Co-authored-by: Coco Sheng <cocosheng@google.com >
2026-04-10 21:46:24 +00:00
Coco Sheng
35907057ad
chore: switch from keytar to @github/keytar ( #25143 )
2026-04-10 21:20:26 +00:00
Emily Hedlund
e2a5231e30
perf(sandbox): optimize Windows sandbox initialization via native ACL application ( #25077 )
2026-04-10 20:50:21 +00:00
Spencer
128e3567cb
fix(core): resolve PTY exhaustion and orphan MCP subprocess leaks ( #25079 )
2026-04-10 18:57:09 +00:00
Jason Matthew Suhari
86f5a198bd
fix(core): preserve shell execution config fields on update ( #25113 )
2026-04-10 17:55:40 +00:00
Aishanee Shah
31069329bb
feat(core): add Strategic Re-evaluation guidance to system prompt ( #25062 )
2026-04-10 17:15:41 +00:00
Michael Bleigh
3b7c17a22c
refactor(core): consolidate execute() arguments into ExecuteOptions ( #25101 )
2026-04-10 17:11:17 +00:00
Abhi
1d36309f5f
chore(core): increase codebase investigator turn limits to 50 ( #25125 )
2026-04-10 16:56:07 +00:00
Abhi
7d1de3bccc
feat(core): persist subagent agentId in tool call records ( #25092 )
2026-04-10 16:47:25 +00:00
Spencer
f6c08a114b
fix(core): remove buffer slice to prevent OOM on large output streams ( #25094 )
2026-04-10 16:33:36 +00:00
Spencer
5fc8fea8d7
fix: resolve lifecycle memory leaks by cleaning up listeners and root closures ( #25049 )
2026-04-10 04:21:14 +00:00
June
69bf2d75ef
fix: decode Uint8Array and multi-byte UTF-8 in API error messages ( #23341 )
...
Co-authored-by: Coco Sheng <cocosheng@google.com >
2026-04-10 01:06:54 +00:00
Tommaso Sciortino
55db77bb91
fix(core): silently handle EPERM when listing dir structure ( #25066 )
2026-04-09 22:25:23 +00:00
Sri Pasumarthi
de628b04fc
feat(test): add high-volume shell test and refine perf harness ( #24983 )
2026-04-09 22:23:00 +00:00
Emily Hedlund
451edb3ea6
fix(sandbox): centralize async git worktree resolution and enforce read-only security ( #25040 )
2026-04-09 22:04:16 +00:00
Spencer
0f7f7be4ef
fix(core): clear 5-minute timeouts in oauth flow to prevent memory leaks ( #24968 )
2026-04-09 21:14:07 +00:00
Spencer
f744913584
feat(core): migrate chat recording to JSONL streaming ( #23749 )
2026-04-09 21:13:55 +00:00
Abhi
a7a091360e
fix(core): remediate subagent memory leaks using AbortSignal in MessageBus ( #25048 )
2026-04-09 20:22:26 +00:00
Yuna Seol
20113ee595
fix(core): honor retryDelay in RetryInfo for 503 errors ( #25057 )
2026-04-09 20:16:36 +00:00
ruomeng
2a5f798863
refactor(plan) Clean default plan toml ( #25037 )
2026-04-09 20:04:20 +00:00
Abhi
570f0235f8
refactor(core): remove legacy subagent wrapping tools ( #25053 )
2026-04-09 19:51:36 +00:00
Michael Bleigh
e406856343
feat(cli): implement useAgentStream hook ( #24292 )
...
Co-authored-by: Adam Weidman <adamfweidman@gmail.com >
Co-authored-by: Adam Weidman <adamfweidman@google.com >
2026-04-09 19:06:27 +00:00
MD. MOHIBUR RAHMAN
5bcb6b619d
fix(core): add explicit git identity env vars to prevent sandbox checkpointing error ( #19775 )
...
Co-authored-by: David Pierce <davidapierce@google.com >
2026-04-09 17:24:04 +00:00
Abhi
b238a453e3
feat(core): refactor subagent tool to unified invoke_subagent tool ( #24489 )
2026-04-09 16:48:24 +00:00
Emily Hedlund
5724d6be0f
refactor(core): use centralized path resolution for Linux sandbox ( #24985 )
2026-04-09 15:28:58 +00:00
Jarrod Whelan
faa7a9da30
feat(cli): refine tool output formatting for compact mode ( #24677 )
2026-04-09 03:30:52 +00:00
Emily Hedlund
5d589946ad
refactor(sandbox): use centralized sandbox paths in macOS Seatbelt implementation ( #24984 )
2026-04-09 01:29:38 +00:00
Jarrod Whelan
bc3ed61adb
feat(core): refine shell tool description display logic ( #24903 )
2026-04-08 23:40:43 +00:00
Tommaso Sciortino
d06dba3538
fix(core): dynamic session ID injection to resolve resume bugs ( #24972 )
2026-04-08 23:27:24 +00:00
Emily Hedlund
af3638640c
fix(core): resolve windows symlink bypass and stabilize sandbox integration tests ( #24834 )
2026-04-08 22:00:50 +00:00
ruomeng
15f7b24312
feat(plan): require user confirmation for activate_skill in Plan Mode ( #24946 )
2026-04-08 21:44:53 +00:00
Emily Hedlund
a39461718c
fix(core): ensure robust sandbox cleanup in all process execution paths ( #24763 )
...
Co-authored-by: Spencer <spencertang@google.com >
2026-04-08 19:03:36 +00:00
gemini-cli-robot
3df99d8bcb
chore(release): bump version to 0.39.0-nightly.20260408.e77b22e63 ( #24939 )
2026-04-08 18:10:28 +00:00
Sandy Tao
a837b39f8d
feat(memory): add /memory inbox command for reviewing extracted skills ( #24544 )
2026-04-08 18:08:49 +00:00
ruomeng
34b4f1c6e4
refactor(plan): simplify policy priorities and consolidate read-only rules ( #24849 )
2026-04-08 15:58:29 +00:00
Gaurav
e77b22e638
fix: isolate concurrent browser agent instances ( #24794 )
2026-04-08 14:31:10 +00:00
Gaurav Ghosh
e7f8d9cf1a
Revert "feat: Introduce an AI-driven interactive shell mode with new"
...
This reverts commit 651ad63ed6 .
2026-04-08 07:31:17 -07:00
Gaurav Ghosh
651ad63ed6
feat: Introduce an AI-driven interactive shell mode with new
...
`read-shell` and `write-to-shell` tools and a configurable mode setting.
2026-04-08 07:27:28 -07:00
Jacob Richman
7e1938c1bc
fix(cli): switch default back to terminalBuffer=false and fix regressions introduced for that mode ( #24873 )
2026-04-08 05:47:54 +00:00
Anjaligarhwal
b9f1d832c8
fix(core): dispose Scheduler to prevent McpProgress listener leak ( #24870 )
2026-04-08 03:05:53 +00:00
Jacob Richman
28efab483f
fix(cli): always show shell command description or actual command ( #24774 )
2026-04-08 01:52:33 +00:00
Michael Bleigh
16768c08f2
refactor(core): make LegacyAgentSession dependencies optional ( #24287 )
...
Co-authored-by: Adam Weidman <adamfweidman@gmail.com >
Co-authored-by: Adam Weidman <adamfweidman@google.com >
2026-04-07 23:45:22 +00:00
Yuna Seol
3c5b5db034
feat(core): use experiment flags for default fetch timeouts ( #24261 )
2026-04-07 22:35:04 +00:00
Michael Bleigh
986293bd38
feat(core): add agent protocol UI types and experimental flag ( #24275 )
...
Co-authored-by: Adam Weidman <adamfweidman@gmail.com >
Co-authored-by: Adam Weidman <adamfweidman@google.com >
2026-04-07 21:45:18 +00:00
David Pierce
adf7b3b717
Improve sandbox error matching and caching ( #24550 )
2026-04-07 21:08:18 +00:00