Create or update claude-code-notification configuration (global or per-project). Use when the user wants to set up notification backends like ntfy, system notifications, sound, or custom scripts.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-code-notification:configureThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Help the user create or update their notification configuration.
Help the user create or update their notification configuration.
Read the JSON schema at ${CLAUDE_PLUGIN_ROOT}/schema/config.schema.json before generating any config. The schema defines all valid fields, types, defaults, and descriptions. Always validate your output against it.
~/.config/claude-code-notification/config.json — applies everywhere.claude-code-notification.json in the project root — merges over global at field level (only set fields you want to override)Config loads in 3 layers: defaults -> global -> per-project. Each layer only overrides fields it explicitly sets. Omitting a field means "inherit from the layer below". Setting "enabled": false explicitly disables a backend that may be enabled globally.
system_notification.enabled is true by default (zero-config desktop notifications)ntfy.server defaults to https://ntfy.sh when not specified${CLAUDE_PLUGIN_ROOT}/schema/config.schema.json"$schema" pointing to the schema file for editor autocompletion:
"$schema": "https://raw.githubusercontent.com/berk-karaal/claude-code-notification/main/plugin/schema/config.schema.json"$schema valuemkdir -p ~/.config/claude-code-notification/)For macOS sound backend, prioritize /System/Library/Sounds/ for built-in sounds. Suggest:
If the user wants to enable ntfy, use the default server (https://ntfy.sh) unless user mentions using custom server. For the topic, if user not specified, use random long topic id to avoid collision. You can use openssl rand -base64 64 | tr -dc 'a-zA-Z0-9_-' | head -c $((RANDOM % 10 + 55)) bash command to generate topic id. After configuring ntfy, show the used topic and server to the user so they can subscribe it via web app, mobile app, or CLI.
When configuring a custom script backend, ask the user for the script path and ensure it's an absolute path. Also ask which events they want to trigger the script (on_notification, on_stop, on_stop_failure) and validate that the script exists and is executable.
$ARGUMENTS may contain hints like "enable ntfy", "disable sound", "per-project", "global". Use them to skip questions when the intent is clear.
npx claudepluginhub berk-karaal/claude-code-notification --plugin claude-code-notificationConfigures Bark push, WeChat, and system notifications for Claude Code projects. Enables persistent alerts and proactive sending via PowerShell scripts after tasks.
Configures Bark push, WeChat, and system notifications for Claude Code via .claude/claude-notification.local.md. Provides bash scripts for proactive task alerts.
Installs macOS TTS voice cues and clickable dialogs for Claude Code Stop and Notification events. Run once to wire up the hooks; afterward you'll hear "Task completed" or "Permission needed" and see a dialog with a Go button that refocuses your terminal.