Desktop notifications for Claude Code - get notified when tasks complete
Project description
claude-code-notify
English | 中文
Desktop notifications for Claude Code - get notified when tasks complete, when permission is needed, or when Claude is waiting for input.
Features
- Task Completion Notifications: Get notified when Claude finishes a task, with a preview of the response
- Permission Prompts: Know immediately when Claude needs your approval
- Idle Prompts: Get alerted when Claude is waiting for your input
- Cross-Platform: Works on macOS, Windows, and Linux
Installation
Option 1: pip/uv install (Recommended)
pip install git+https://github.com/starpipi/claude-code-notify.git
Or with uv:
uv tool install git+https://github.com/starpipi/claude-code-notify.git
Then add to ~/.claude/settings.json:
{
"hooks": {
"Stop": [
{
"hooks": [
{
"type": "command",
"command": "claude-code-notify"
}
]
}
],
"Notification": [
{
"hooks": [
{
"type": "command",
"command": "claude-code-notify"
}
]
}
]
}
}
Option 2: Claude Code Plugin
Clone the repository to the plugins marketplace directory:
git clone https://github.com/starpipi/claude-code-notify.git ~/.claude/plugins/marketplaces/claude-code-notify
Then enable the plugin in ~/.claude/settings.json:
{
"enabledPlugins": {
"notify@claude-code-notify": true
}
}
Platform Requirements
macOS
No additional setup needed. Uses native osascript.
Windows
No additional setup needed. Uses PowerShell with Windows Forms.
Linux
Requires libnotify:
# Debian/Ubuntu
sudo apt install libnotify-bin
# Fedora
sudo dnf install libnotify
# Arch
sudo pacman -S libnotify
Manual Testing
Test notifications directly from the command line:
# If installed via pip/uv
claude-code-notify "Test Title" "Test message body"
# If installed via plugin
python3 ~/.claude/plugins/marketplaces/claude-code-notify/plugin/hooks/notify.py "Test" "Hello"
Debug Logs
Debug logs are written to /tmp/claude_code_notify_debug.log for troubleshooting.
License
Apache-2.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file claude_code_notify-1.0.2.tar.gz.
File metadata
- Download URL: claude_code_notify-1.0.2.tar.gz
- Upload date:
- Size: 10.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
83e80800786bc39fa7b6264e2546a5fedf3bb03b636950200988bca771159cc1
|
|
| MD5 |
c24d48b8b93a15f64ecaa014afa1ffd6
|
|
| BLAKE2b-256 |
948ba1e1d92a7994df827395dd9936665dbea98c898374bee622a8a05bc9461c
|
Provenance
The following attestation bundles were made for claude_code_notify-1.0.2.tar.gz:
Publisher:
publish.yml on starpipi/claude-code-notify
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
claude_code_notify-1.0.2.tar.gz -
Subject digest:
83e80800786bc39fa7b6264e2546a5fedf3bb03b636950200988bca771159cc1 - Sigstore transparency entry: 845736534
- Sigstore integration time:
-
Permalink:
starpipi/claude-code-notify@bb9f3d00e7d8706af0e4bf8f36c626d43552e868 -
Branch / Tag:
refs/tags/v1.0.2 - Owner: https://github.com/starpipi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@bb9f3d00e7d8706af0e4bf8f36c626d43552e868 -
Trigger Event:
release
-
Statement type:
File details
Details for the file claude_code_notify-1.0.2-py3-none-any.whl.
File metadata
- Download URL: claude_code_notify-1.0.2-py3-none-any.whl
- Upload date:
- Size: 11.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ebd1c37196962d451534e5b87f92fe9a6ccda445ebd49f77cc813740cef6472b
|
|
| MD5 |
f7db09e3c6a14f0b605e24c4654168fc
|
|
| BLAKE2b-256 |
d121f855bcce7834eda75bc5f2770bb288d3ef6577ab3d87c745dd7e0c490e61
|
Provenance
The following attestation bundles were made for claude_code_notify-1.0.2-py3-none-any.whl:
Publisher:
publish.yml on starpipi/claude-code-notify
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
claude_code_notify-1.0.2-py3-none-any.whl -
Subject digest:
ebd1c37196962d451534e5b87f92fe9a6ccda445ebd49f77cc813740cef6472b - Sigstore transparency entry: 845736537
- Sigstore integration time:
-
Permalink:
starpipi/claude-code-notify@bb9f3d00e7d8706af0e4bf8f36c626d43552e868 -
Branch / Tag:
refs/tags/v1.0.2 - Owner: https://github.com/starpipi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@bb9f3d00e7d8706af0e4bf8f36c626d43552e868 -
Trigger Event:
release
-
Statement type: