Adam Weidman
df81bfe1f2
feat: Google Chat bridge with YOLO mode, text-based approvals, and Add-ons support
...
- Add normalizeEvent() to convert Workspace Add-ons event format to legacy ChatEvent
- Add wrapAddOnsResponse() for Add-ons response wrapping
- Mount chat bridge routes BEFORE A2A SDK catch-all handler
- Replace card button approvals with text-based approve/reject/always allow
- Add /reset, /yolo, /safe slash commands for session control
- Add YOLO mode tool approval dedup (filter auto-approved surfaces)
- Add extractCommandSummary() for concise tool card display
- Delegate auth to Cloud Run IAM when K_SERVICE env var detected
- Add JWT debug logging for token claim inspection
2026-02-12 16:12:18 -05:00
Adam Weidman
1c926921ed
fix: delegate auth to Cloud Run IAM when K_SERVICE is set
...
Cloud Run strips the Authorization header after using it for IAM
validation, so our JWT middleware can never see the token. When
running on Cloud Run (detected via K_SERVICE env var), skip
app-level JWT verification since Cloud Run IAM already ensures
only authorized service accounts (chat@system.gserviceaccount.com )
can reach the container.
2026-02-12 12:19:35 -05:00
Adam Weidman
d1ca874dd1
fix: deduplicate agent response text from task history
...
Task history contains multiple status-update messages that may
reference the same A2UI surface. Use only the last non-empty
agent response to avoid duplicate text in Chat output.
2026-02-12 11:20:32 -05:00
Adam Weidman
470228e7a0
fix: extract A2UI content from task history in blocking mode
...
The blocking DefaultRequestHandler accumulates intermediate status-update
events into task.history. The A2UI response content from "working" events
lives there, while the final "input-required" status has no message.
Updated extractAllParts to check history. Reverted to blocking mode
since streaming had transport issues.
2026-02-12 11:10:50 -05:00
Adam Weidman
9d12980baa
feat: add JWT verification middleware for Google Chat webhook
...
Verifies Bearer tokens from Google Chat using google-auth-library.
Checks issuer (chat@system.gserviceaccount.com ) and audience
(CHAT_PROJECT_NUMBER). Verification is skipped when project number
is not configured, allowing local testing without tokens.
2026-02-12 10:56:42 -05:00
Adam Weidman
b85a3bafe5
feat: switch chat bridge to streaming for full A2UI content capture
...
Blocking mode only returns the final task state, missing intermediate
A2UI response content from working status-update events. Streaming
captures all events and aggregates parts into the response.
2026-02-12 10:36:58 -05:00
Adam Weidman
72ea38b306
fix: resolve agent card URL for A2A client initialization
...
ClientFactory.createFromUrl expects the full agent card URL
(/.well-known/agent-card.json), not just the base server URL.
Also adds CHAT_BRIDGE_A2A_URL to k8s deployment and test script.
2026-02-12 10:23:47 -05:00
Adam Weidman
57f3c9ca1a
feat: add Google Chat bridge for A2UI integration
...
Implements a Google Chat HTTP webhook bridge that connects Google Chat
to the A2A server. Each Chat thread maps to an A2A contextId/taskId
pair. The bridge converts A2UI tool approval surfaces to Google Chat
Cards V2 with Approve/Always Allow/Reject buttons, and handles
CARD_CLICKED events to forward tool confirmations back to the A2A server.
Components:
- chat-bridge/types.ts: Google Chat event/response types
- chat-bridge/session-store.ts: Thread -> A2A session mapping
- chat-bridge/a2a-bridge-client.ts: A2A SDK client wrapper
- chat-bridge/response-renderer.ts: A2UI -> Google Chat Cards V2
- chat-bridge/handler.ts: Event handler (MESSAGE, CARD_CLICKED)
- chat-bridge/routes.ts: Express routes mounted at /chat/webhook
2026-02-12 10:11:58 -05:00
Adam Weidman
5ea957c84b
feat: add A2UI extension support and GKE deployment infrastructure
...
Implement A2UI v0.10 protocol compliance for the a2a-server:
- Add a2ui-extension.ts with constants, Part helpers, extension detection
- Add a2ui-components.ts with standard catalog component builders
- Add a2ui-surface-manager.ts for tool approval, response, thought surfaces
- Integrate A2UI into task.ts and executor.ts
- Add configurable bind host (CODER_AGENT_HOST) for k8s compatibility
Add GKE deployment infrastructure:
- Dockerfile, cloudbuild.yaml, k8s deployment manifest, .dockerignore
2026-02-11 19:23:56 -05:00
Jacob Richman
f9fc9335f5
Code review cleanup for thinking display ( #18720 )
2026-02-10 19:12:40 +00:00
Sehoon Shon
9813531f81
Update Gemini.md to use the curent year on creating new files ( #18460 )
2026-02-10 19:06:17 +00:00
N. Taylor Mullen
55571de066
feat: redact disabled tools from system prompt ( #13597 ) ( #18613 )
2026-02-10 19:00:36 +00:00
Jack Wotherspoon
740f0e4c3d
fix: allow ask_user tool in yolo mode ( #18541 )
2026-02-10 18:56:51 +00:00
N. Taylor Mullen
b37e67451a
ci: shard windows tests and fix event listener leaks ( #18670 )
2026-02-10 18:46:42 +00:00
Aishanee Shah
262138cad5
test: add model-specific snapshots for coreTools ( #18707 )
...
Co-authored-by: matt korwel <matt.korwel@gmail.com >
2026-02-10 18:41:01 +00:00
Keith Guerin
5920750c24
ui: update & subdue footer colors and animate progress indicator ( #18570 )
2026-02-10 17:36:20 +00:00
Sandy Tao
f5b1245f51
feat(cli): defer devtools startup and integrate with F12 ( #18695 )
2026-02-10 16:54:23 +00:00
Sri Pasumarthi
f2ca0bb38d
feat: add extensionsExplore setting to enable extensions explore UI. ( #18686 )
2026-02-10 16:49:24 +00:00
Jack Wotherspoon
4e9bafdacd
chore: consolidate to green in ask user dialog ( #18734 )
2026-02-10 16:01:06 +00:00
N. Taylor Mullen
41bbe6ca0a
fix(core): standardize tool formatting in system prompts ( #18615 )
2026-02-10 15:30:08 +00:00
Shreya Keshive
eb5492f9b5
fix(ide): fix ide nudge setting ( #18733 )
2026-02-10 15:29:22 +00:00
matt korwel
37f128a109
feat(routing): restrict numerical routing to Gemini 3 family ( #18478 )
2026-02-10 14:25:21 +00:00
Jack Wotherspoon
79753ec5ec
fix: move toasts location to left side ( #18705 )
2026-02-10 13:39:28 +00:00
Adib234
e151b4890b
fix(plan): update persistent approval mode setting ( #18638 )
...
Co-authored-by: Sandy Tao <sandytao520@icloud.com >
2026-02-10 13:07:04 +00:00
Jerop Kipruto
e6b43cb846
feat(cli): update approval mode labels and shortcuts per latest UX spec ( #18698 )
2026-02-10 12:45:14 +00:00
N. Taylor Mullen
2ae5e1ae20
feat(core): optimize sub-agents system prompt intro ( #18608 )
2026-02-10 08:25:42 +00:00
N. Taylor Mullen
67d9b76e81
test(core): remove hardcoded model from TestRig ( #18710 )
2026-02-10 07:54:23 +00:00
N. Taylor Mullen
4a3c7ae8b7
docs(skills): enhance pr-creator safety and interactivity ( #18616 )
2026-02-10 05:38:10 +00:00
Christian Gunderman
bd2744031f
Fix layout rounding. ( #18667 )
2026-02-10 04:53:49 +00:00
N. Taylor Mullen
92a5f725a1
refactor(core): refine Security & System Integrity section in system prompt ( #18601 )
2026-02-10 04:32:36 +00:00
N. Taylor Mullen
4494f9e062
test(cli): fix AppContainer act() warnings and improve waitFor resilience ( #18676 )
2026-02-09 20:44:22 -08:00
N. Taylor Mullen
ece001f264
fix(ui): remove redundant newlines in Gemini messages ( #18538 )
2026-02-10 04:18:21 +00:00
Dmitry Lyalin
d3cfbdb3b7
Inline thinking bubbles with summary/full modes ( #18033 )
...
Co-authored-by: Jacob Richman <jacob314@gmail.com >
2026-02-10 03:24:41 +00:00
Jerop Kipruto
7a132512cf
docs: remove TOC marker from Plan Mode header ( #18678 )
2026-02-10 03:13:04 +00:00
Spencer
6dae3a5402
Feature/quota visibility 16795 ( #18203 )
2026-02-10 02:53:10 +00:00
N. Taylor Mullen
0a3ecf3a75
fix(cli): Improve header spacing ( #18531 )
2026-02-10 02:12:42 +00:00
Jack Wotherspoon
9081743a7f
feat: Ctrl+O to expand paste placeholder ( #18103 )
2026-02-10 02:04:34 +00:00
joshualitt
89d4556c45
feat(core): Render memory hierarchically in context. ( #18350 )
2026-02-10 02:01:59 +00:00
Aishanee Shah
5d0570b113
refactor(core): centralize core tool definitions and support model-specific schemas ( #18662 )
2026-02-10 01:29:52 +00:00
Tommaso Sciortino
eb94284256
Properly parse at-commands with narrow non-breaking spaces ( #18677 )
2026-02-10 00:51:24 +00:00
N. Taylor Mullen
cc2798018b
feat: handle multiple dynamic context filenames in system prompt ( #18598 )
2026-02-10 00:37:08 +00:00
g-samroberts
c9f9a7f67a
Change event type for release ( #18693 )
2026-02-10 00:26:20 +00:00
Christian Gunderman
fd65416a2f
Disallow unsafe type assertions ( #18688 )
2026-02-10 00:10:15 +00:00
Gal Zahavi
bce1caefd0
feat(cli): disable folder trust in headless mode ( #18407 )
2026-02-09 23:46:49 +00:00
Adib234
80057c5208
Fix number of lines being reported in rewind confirmation dialog ( #18675 )
2026-02-09 23:11:53 +00:00
Sandy Tao
14219bb57d
chore: remove unused exports and redundant hook files ( #18681 )
2026-02-09 23:01:23 +00:00
Sandy Tao
ef957a368d
feat(cli): add DevTools integration with gemini-cli-devtools ( #18648 )
2026-02-09 22:03:10 +00:00
N. Taylor Mullen
a3e5b564f7
fix(cli): correct 'esc to cancel' position and restore duration display ( #18534 )
2026-02-09 21:44:39 +00:00
Tommaso Sciortino
1b98c1f806
refactor: push isValidPath() into parsePastedPaths() ( #18664 )
2026-02-09 21:19:51 +00:00
Jerop Kipruto
9e41b2cd89
feat: enable plan mode experiment in settings ( #18636 )
2026-02-09 21:10:11 +00:00