Make Claude Code Notify You When It Finishes in Warp – Stop Staring at the Terminal
This guide explains why Claude Code lacks terminal notifications, how Warp’s official Claude Code plugin uses event‑driven hooks to deliver desktop alerts, provides step‑by‑step installation and configuration instructions, and offers fallback methods for other terminals.
Problem: No Notification from Claude Code
Claude Code runs as a foreground long‑living process, so the command never terminates from the system’s perspective. Users have to keep watching the terminal to know whether the task finished or is waiting for input, which wastes time.
How the Plugin Detects Completion
The Warp plugin does not guess; Claude Code itself reports its state through six lifecycle hooks. When a hook fires, the plugin packages the event as JSON with build-payload.sh and sends it via an OSC 777 escape sequence to warp://cli-agent, which then shows a native desktop notification. The events are: Stop – Claude finishes a reply → completion notification with prompt/response summary. Notification (idle_prompt) – Claude is idle, waiting for user input → "Your turn" notification. PermissionRequest – Claude needs permission for an operation → approval prompt. SessionStart – session start → internal telemetry. UserPromptSubmit / PostToolUse – after submitting a prompt or tool call → internal telemetry.
This event‑driven approach ensures notifications appear only at the correct moments.
Installation Options
Prerequisite: install jq for JSON parsing. brew install jq Method A (quick) : run claude inside Warp; Warp detects the plugin and offers a one‑click install chip.
Method B (manual) :
claude plugin marketplace add warpdotdev/claude-code-warp
claude plugin install warp@claude-code-warpOr use the slash commands inside a Claude Code session:
/plugin marketplace add warpdotdev/claude-code-warp
/plugin install warp@claude-code-warpAfter installation, restart Claude Code or run /reload-plugins to activate the plugin.
Enabling Desktop Notifications in Warp
Open Settings → Features → Notifications and enable the global switch "Receive desktop notifications from Warp" plus the following four options:
Notify when an agent completes a task (hook Stop).
Notify when a command or agent needs your attention (hooks Notification / PermissionRequest).
Notify when a command runs longer than 30 seconds (adjustable).
Play notification sounds (optional).
Also enable "Show in‑app agent notifications" to get toast messages inside the Warp window.
On macOS, the first notification will trigger a system permission request; you must click Allow , otherwise all notifications remain silent. After granting permission, you can adjust the system‑level settings at System Settings → Notifications → Warp.
No Changes Needed in Claude Code
You do not have to edit ~/.claude/settings.json or write custom hooks; the plugin handles all required hooks and notification logic. Just install the plugin and reload.
Fallback Solutions for Other Terminals
If you use a different terminal or want full control over notification style, two generic approaches exist:
Terminal bell : add {"preferredNotifChannel": "terminal_bell"} to ~/.claude/settings.json. Any terminal will emit a sound when the event occurs.
Custom hook + system notification : attach an osascript command to the Stop or Notification hook to display a macOS notification, e.g.:
{
"hooks": {
"Stop": [{
"hooks": [{
"type": "command",
"command": "osascript -e 'display notification \"Done\" with title \"Claude Code\" sound name \"Submarine\"'"
}]
}]
}
}However, the official Warp plugin already provides richer notifications with prompt and response summaries, so custom scripts are rarely needed.
Conclusion
By installing the Warp‑Claude Code plugin and enabling the appropriate notification settings, you can offload the "finished?" and "need approval?" checks to desktop alerts, freeing you to work on other tasks without staring at the terminal.
Related Links
Plugin repository: https://github.com/warpdotdev/claude-code-warp
Integration docs: https://docs.warp.dev/agent-platform/cli-agents/claude-code/
Notification settings: https://docs.warp.dev/terminal/more-features/notifications/Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Tech Ocean
Focused on AI programming, sharing ready-to-use development efficiency solutions.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
