Skip to main content

Notify

StopNotificationnotificationsEnabled by default

Fires a macOS notification and plays an audio alert when Claude finishes a turn or needs your attention.

Why use this

Watching the terminal waiting for Claude to finish is wasteful. This hook lets you context-switch freely — you'll hear the chime and see the banner the moment Claude needs you back.

Lifecycle

Where in the Claude Code session this hook fires.

SessionStart
PreToolUse
PostToolUse
Stop
Notification
Stop

Fires when Claude finishes its turn and hands back control.

Notification

Fires when Claude sends a notification asking for your attention.

How it works

Sends an osascript notification and afplay sound on Claude's Stop event ("Done — your turn") and Notification event ("Needs your attention"). Sound file and volume are configurable via ~/.config/tonone/config.json.

settings.json

What the hook configuration looks like in ~/.claude/settings.json after install.

~/.claude/settings.json
{
  "hooks": {
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "node ~/.claude/plugins/tonone-ai/tonone/tonone-notify.js"
          }
        ]
      }
    ],
    "Notification": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "node ~/.claude/plugins/tonone-ai/tonone/tonone-notify.js"
          }
        ]
      }
    ]
  }
}

Install

This hook

Install Notify

1. Add to marketplace

$ claude plugin marketplace add tonone-ai/tonone

2. Install this hook

$ claude plugin install notify@tonone-ai

Ready to use Notify?