Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions plugins/notify-hooks/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Desktop sound notifications for ECA events — never miss when ECA finishes or n

Two hooks that play system sounds:

- **`notify-finished`** — Plays a completion sound when ECA finishes responding (postRequest).
- **`notify-finished`** — Plays a completion sound when the primary ECA chat finishes responding (postRequest). Subagent completions are ignored when ECA provides `parent_chat_id`.
- **`notify-approval`** — Plays a notification sound when ECA needs tool call approval (preToolCall).

## Platform support
Expand All @@ -18,6 +18,6 @@ Two hooks that play system sounds:

- **Linux:** `sudo apt install libcanberra-gtk3-module` (Debian/Ubuntu) or equivalent
- **macOS:** No additional setup needed
- **`jq`** must be installed for the approval notification filter
- **`jq`** must be installed for notification filters

Credits: Based on the config shared by @ericdallo.
2 changes: 1 addition & 1 deletion plugins/notify-hooks/hooks/hooks.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"actions": [
{
"type": "shell",
"shell": "jq -e '.hook_type == \"postRequest\"' > /dev/null && (canberra-gtk-play -i complete 2>/dev/null || afplay /System/Library/Sounds/Glass.aiff 2>/dev/null || true)"
"shell": "jq -e 'has(\"parent_chat_id\") | not' > /dev/null && (canberra-gtk-play -i complete 2>/dev/null || afplay /System/Library/Sounds/Glass.aiff 2>/dev/null || true)"
}
]
},
Expand Down