Michael Bleigh
2a8918c72f
feat: achieve rich tool call display parity for agent stream
...
This change ensures that tool execution in the Agent Protocol experiment
reaches visual parity with the legacy implementation by passing rich
metadata and objects (like FileDiff) through the AgentEvent stream.
Key changes:
- Core 'LegacyAgentSession' now builds temporary invocations for tool requests
to capture rich, argument-aware descriptions (e.g. 'Writing to poem.md').
- Core 'LegacyAgentSession' now attaches the raw 'resultDisplay' object and
'outputFile' path to the 'tool_response' event metadata.
- Core 'LegacyAgentSession' now passes the rich description through 'tool_update'
events to ensure dynamic descriptions are updated during execution.
- UI 'useAgentStream' hook now extracts these rich values from event metadata
to populate the local 'trackedTools' state, allowing 'mapToDisplay' to
correctly trigger bespoke rendering components (like the diff viewer).
2026-03-27 15:02:25 -07:00
Michael Bleigh
6975224e45
feat: implement tool display parity for agent stream
...
This commit achieves visual parity for tool execution in the interactive stream when using the experimental 'useAgentProtocol' flag. It removes direct UI dependency on the tool scheduler's internal state.
Key changes:
- Core 'LegacyAgentSession' now attaches display metadata (displayName, description, etc.) to 'tool_request' AgentEvents.
- Core 'LegacyAgentSession' listens to the MessageBus to emit 'tool_update' AgentEvents for live output (e.g., shell commands).
- UI 'useAgentStream' now maintains its own 'trackedTools' local state, constructed entirely from incoming 'tool_request', 'tool_update', and 'tool_response' events.
- The local 'trackedTools' state is mapped to 'pendingToolGroupItems' using the existing 'mapToDisplay' function for seamless visual parity.
2026-03-27 15:02:18 -07:00
Michael Bleigh
d3a7fc39e3
feat: implement experimental useAgentStream with unified agent protocol
...
This change introduces an experimental 'useAgentProtocol' flag to interactive mode.
When enabled, the UI uses the new 'useAgentStream' hook which leverages
the core 'LegacyAgentSession' (AgentProtocol) instead of the custom
'useGeminiStream' logic.
Key changes:
- Added 'useAgentProtocol' experimental setting to CLI and Core config.
- Implemented 'useAgentStream' hook with basic interaction and thought support.
- Modified 'useToolScheduler' to expose its internal Scheduler instance to ensure implementation parity.
- Updated 'AppContainer' to conditionally branch between implementations via ternary operator.
- Added comprehensive unit tests for the new hook.
2026-03-27 14:55:11 -07:00
Michael Bleigh
3b317f9198
feat: add experimental useAgentProtocol flag
2026-03-27 14:55:11 -07:00
Michael Bleigh
6a80311a37
Merge branch 'main' into pr4-cli
2026-03-27 11:08:15 -07:00
Emily Hedlund
29031ea7cf
refactor(core): improve ignore resolution and fix directory-matching bug ( #23816 )
2026-03-27 17:12:26 +00:00
Spencer
f3977392e6
revert(core): support custom base URL via env vars ( #23976 )
2026-03-27 17:10:14 +00:00
Emily Hedlund
535667baf6
feat(core): add forbiddenPaths to GlobalSandboxOptions and refactor createSandboxManager ( #23936 )
2026-03-27 16:57:26 +00:00
Abhi
104587bae8
feat(core): subagent isolation and cleanup hardening ( #23903 )
2026-03-27 03:43:39 +00:00
Yuna Seol
aca8e1af05
fix(core): explicitly set error names to avoid bundling renaming issues ( #23913 )
2026-03-27 03:40:49 +00:00
Sri Pasumarthi
750dec5d8d
fix(acp): Update allow approval policy flow for ACP clients to fix config persistence and compatible with TUI ( #23818 )
2026-03-27 01:42:17 +00:00
Jacob Richman
b5ba88b001
dep(update) Update Ink version to 6.5.0 ( #23843 )
2026-03-26 23:49:51 +00:00
Tommaso Sciortino
8868b34c75
refactor(core): delegate sandbox denial parsing to SandboxManager ( #23928 )
2026-03-26 22:10:15 +00:00
Aditya Bijalwan
73dd7328df
feat(core): implement persistent browser session management ( #21306 )
...
Co-authored-by: Gaurav <39389231+gsquared94@users.noreply.github.com >
Co-authored-by: cynthialong0-0 <82900738+cynthialong0-0@users.noreply.github.com >
2026-03-26 21:33:37 +00:00
Spencer
d25ce0e143
fix(core): remove shell outputChunks buffer caching to prevent memory bloat and sanitize prompt input ( #23751 )
2026-03-26 21:16:07 +00:00
David Pierce
30397816da
feat(sandbox): implement secret visibility lockdown for env files ( #23712 )
...
Co-authored-by: Tommaso Sciortino <sciortino@gmail.com >
2026-03-26 20:35:21 +00:00
Gen Zhang
84f1c19265
feat(cli): enable notifications cross-platform via terminal bell fallback ( #21618 )
...
Co-authored-by: Sandy Tao <sandytao520@icloud.com >
2026-03-26 20:10:49 +00:00
Gal Zahavi
d33170931c
fix(core): allow disabling environment variable redaction ( #23927 )
2026-03-26 20:04:44 +00:00
Sehoon Shon
c92ae8a359
feat(core): define TrajectoryProvider interface ( #23050 )
2026-03-26 19:24:06 +00:00
Keith Schaab
bf03543bf6
fix(a2a-server): A2A server should execute ask policies in interactive mode ( #23831 )
2026-03-26 19:10:18 +00:00
Adib234
9762bf2965
fix(plan): after exiting plan mode switches model to a flash model ( #23885 )
2026-03-26 18:45:03 +00:00
ruomeng
c888da5f73
fix(core): replace hardcoded non-interactive ASK_USER denial with explicit policy rules ( #23668 )
2026-03-26 18:35:12 +00:00
Aditya Bijalwan
5755ec2dcf
fix(browser): keep input blocker active across navigations ( #22562 )
...
Co-authored-by: cynthialong0-0 <82900738+cynthialong0-0@users.noreply.github.com >
2026-03-26 16:54:49 +00:00
Adam Weidman
6fb7bcf868
fix(core): preserve first-turn display content
2026-03-26 11:51:15 -04:00
Sehoon Shon
49534209f2
fix(cli): prioritize primary name matches in slash command search ( #23850 )
2026-03-26 12:18:57 +00:00
Gal Zahavi
30e0ab102a
feat(sandbox): dynamic Linux sandbox expansion and worktree support ( #23692 )
...
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-03-26 01:58:45 +00:00
Yuna Seol
ae3dbab38a
fix(core): strip leading underscores from error types in telemetry ( #23824 )
...
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-03-25 23:34:18 +00:00
Jacob Richman
a86935b6de
fix(cli): allow ask question dialog to take full window height ( #23693 )
2026-03-25 23:26:34 +00:00
Steven Robertson
20fd405f9c
fix: Chat logs and errors handle tail tool calls correctly ( #22460 )
...
Co-authored-by: Abhi <43648792+abhipatel12@users.noreply.github.com >
2026-03-25 22:17:30 +00:00
nirali
8595b07f6d
fix(cli): show helpful guidance when no skills are available ( #23785 )
2026-03-25 22:06:44 +00:00
christine betts
3ada29fb51
feat(core,ui): Add experiment-gated support for gemini flash 3.1 lite ( #23794 )
2026-03-25 20:28:49 +00:00
Prasanna Pal
fd0893c346
fix(ui): prevent escape key from cancelling requests in shell mode ( #21245 )
2026-03-25 20:25:13 +00:00
Tommaso Sciortino
20aa695ac4
Revert "perf(cli): optimize --version startup time ( #23671 )" ( #23812 )
2026-03-25 19:59:23 +00:00
Jerop Kipruto
6d3437badb
docs: clarify policy requirement for general.plan.directory in settings schema ( #23784 )
2026-03-25 19:37:48 +00:00
cynthialong0-0
86111c4d54
feat(browser): dynamically discover read-only tools ( #23805 )
2026-03-25 19:16:48 +00:00
Keith Guerin
fe92a43e31
fix(ui): cleanup estimated string length hacks in composer ( #23694 )
2026-03-25 19:15:08 +00:00
Coco Sheng
830f7dec61
fix(cli): resolve TTY hang on headless environments by unconditionally resuming process.stdin before React Ink launch ( #23673 )
2026-03-25 18:18:43 +00:00
Tommaso Sciortino
1b052df52f
feat(core): implement Windows sandbox dynamic expansion Phase 1 and 2.1 ( #23691 )
2026-03-25 17:54:45 +00:00
Shaswat Raj
f11bd3d079
fix(core): thread AbortSignal to chat compression requests ( #20405 ) ( #20778 )
...
Co-authored-by: Tommaso Sciortino <sciortino@gmail.com >
2026-03-25 16:57:59 +00:00
Sri Pasumarthi
c06794b3c6
fix(acp): allow attachments by adding a permission prompt ( #23680 )
2026-03-25 16:52:21 +00:00
Adib234
028d0368d5
fix(policy): relax write_file argsPattern in plan mode to allow paths without session ID ( #23695 )
2026-03-25 16:06:45 +00:00
tony-shi
6deee11449
fix(browser): add proxy bypass constraint to domain restriction system prompt ( #23229 )
...
Co-authored-by: cynthialong0-0 <82900738+cynthialong0-0@users.noreply.github.com >
2026-03-25 15:59:21 +00:00
tony-shi
bbf5c2fe95
fix(browser): detect embedded URLs in query params to prevent allowedDomains bypass ( #23225 )
...
Co-authored-by: cynthialong0-0 <82900738+cynthialong0-0@users.noreply.github.com >
2026-03-25 15:26:00 +00:00
Emily Hedlund
109a7dc531
test(core): install bubblewrap on Linux CI for sandbox integration tests ( #23583 )
2026-03-25 14:29:46 +00:00
cynthialong0-0
5e186bfb22
fix(cli): skip console log/info in headless mode ( #22739 )
2026-03-25 13:46:00 +00:00
Adam Weidman
0c919857fa
feat(core): support inline agentCardJson for remote agents ( #23743 )
2026-03-25 04:03:51 +00:00
kevinjwang1
d78f54a08a
Fix dynamic model routing for gemini 3.1 pro to customtools model ( #23641 )
...
Co-authored-by: Sehoon Shon <sshon@google.com >
2026-03-25 03:16:44 +00:00
Keith Guerin
46aa3fd193
fix(ui): prevent over-eager slash subcommand completion ( #20136 )
2026-03-25 03:11:09 +00:00
Emily Hedlund
5b7f7b30a7
refactor(core): standardize OS-specific sandbox tests and extract linux helper methods ( #23715 )
2026-03-25 02:37:32 +00:00
Gal Zahavi
a6c7affedb
fix(core): conditionally expose additional_permissions in shell tool ( #23729 )
...
Co-authored-by: Sandy Tao <sandytao520@icloud.com >
2026-03-25 01:46:15 +00:00