Official Warp terminal integration for Gemini CLI.
Get native Warp notifications when Gemini CLI:
- Completes a task — with a summary showing your prompt and Gemini's response
- Needs your input — when Gemini has been idle and is waiting for you
- Requests permission — when Gemini wants to run a tool and needs your approval
Notifications appear in Warp's notification center and as system notifications, so you can context-switch while Gemini works and get alerted when attention is needed.
The extension keeps Warp informed of Gemini's current state by emitting structured events on every session transition:
- Prompt submitted — you sent a prompt, Gemini is working
- Tool completed — a tool call finished, Gemini is back to running
This powers Warp's inline status indicators for Gemini CLI sessions.
gemini extensions install <github-url-or-local-path>For local development:
gemini extensions link ~/gemini-warp
⚠️ Important: After installing, restart Gemini CLI for the extension to activate.
Once restarted, notifications will appear automatically.
- Warp terminal (macOS, Linux, or Windows)
- Gemini CLI v0.26.0+
jqfor JSON parsing (install viabrew install jqor your package manager)
The extension communicates with Warp via OSC 777 escape sequences. Each hook script builds a structured JSON payload (via build-payload.sh) and sends it to warp://cli-agent, where Warp parses it to drive notifications and session UI.
Payloads include a protocol version negotiated between the extension and Warp (min(plugin_version, warp_version)), the session ID, working directory, and event-specific fields.
The extension registers five hooks:
- SessionStart — emits the extension version on startup
- AfterAgent — fires when Gemini finishes a turn, sends a task-complete notification with your prompt and Gemini's response
- Notification — handles both idle notifications and tool-permission requests (Gemini merges these into one event, dispatched by
notification_type) - BeforeAgent — fires when you submit a prompt, signaling the session is active again
- AfterTool — fires when a tool call completes, signaling the session is no longer blocked
Notifications work out of the box. To customize Warp's notification behavior (sounds, system notifications, etc.), see Warp's notification settings.
gemini extensions uninstall warpThe extension version in gemini-extension.json is checked by the Warp client to detect outdated installations.
When bumping the version here, also update MINIMUM_PLUGIN_VERSION in the Warp client.
MIT License — see LICENSE for details.