Skip to content

warpdotdev/claude-code-warp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Claude Code + Warp

Official Warp terminal integration for Claude Code.

Features

🔔 Native Notifications

Get native Warp notifications when Claude Code:

  • Completes a task — with a summary showing your prompt and Claude's response
  • Needs your input — when Claude has been idle and is waiting for you
  • Requests permission — when Claude 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 Claude works and get alerted when attention is needed.

📡 Session Status

The plugin keeps Warp informed of Claude's current state by emitting structured events on every session transition:

  • Prompt submitted — you sent a prompt, Claude is working
  • Tool completed — a tool call finished, Claude is back to running

This powers Warp's inline status indicators for Claude Code sessions.

Installation

# In Claude Code, add the marketplace
/plugin marketplace add warpdotdev/claude-code-warp

# Install the Warp plugin
/plugin install warp@claude-code-warp

⚠️ Important: After installing, restart Claude Code or run /reload-plugins for the plugin to activate.

Once restarted, you'll see a confirmation message and notifications will appear automatically.

Requirements

  • Warp terminal (macOS, Linux, or Windows)
  • Claude Code CLI
  • jq for JSON parsing (install via brew install jq or your package manager)

How It Works

The plugin 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 plugin and Warp (min(plugin_version, warp_version)), the session ID, working directory, and event-specific fields.

The plugin registers six hooks:

  • SessionStart — emits the plugin version and a welcome system message
  • Stop — reads the transcript to extract your prompt and Claude's response, then sends a task-complete notification
  • Notification (idle_prompt) — fires when Claude has been idle and needs your input
  • PermissionRequest — fires when Claude wants to run a tool, includes the tool name and a preview of its input
  • UserPromptSubmit — fires when you submit a prompt, signaling the session is active again
  • PostToolUse — fires when a tool call completes, signaling the session is no longer blocked

Legacy Support

Older Warp clients that predate the structured notification protocol are still supported — they receive plain-text notifications for SessionStart, Stop, and Notification hooks.

Configuration

Notifications work out of the box. To customize Warp's notification behavior (sounds, system notifications, etc.), see Warp's notification settings.

Uninstall

/plugin uninstall warp@claude-code-warp
/plugin marketplace remove claude-code-warp

Versioning

The plugin version in plugins/warp/.claude-plugin/plugin.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.

License

MIT License — see LICENSE for details.

About

Official Warp terminal integration for Claude Code - native notifications and more

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages