[BUG] preferredNotifChannel: none does not suppress OSC notifications in Ghostty
Status Fixed / completed
Reported on v2.1.14
Maintainer reply None cached
Workaround ✓ Mentioned in thread ↓
Activity 4 comments · opened Jan 21, 2026 · closed Jan 21, 2026
Description
Setting preferredNotifChannel: none in ~/.claude.json does not prevent Claude Code from sending OSC 9 desktop notifications. Notifications still appear in Ghostty.
Environment
- Claude Code version: 2.1.14
- Terminal: Ghostty 1.x
- OS: macOS
- Ghostty config:
desktop-notifications = true
Steps to Reproduce
- Set
~/.claude.json:
``json``
{
"preferredNotifChannel": "none"
}
- Run Claude Code in Ghostty
- Complete a task or trigger a stop event
- Observe: "Claude Code Finished" notification still appears
Expected Behavior
With preferredNotifChannel: none, no OSC 9/777 notifications should be sent to the terminal.
Actual Behavior
Notifications still appear via Ghostty's OSC handling.
Workaround
Disable desktop-notifications in Ghostty config, but this also disables notifications from other apps.
4 Comments
Additional required info:
Found 3 possible duplicate issues:
This issue will be automatically closed as a duplicate in 3 days.
🤖 Generated with Claude Code
Update: Additional Issue Found
The
preferredNotifChannel: nonesetting is being ignored in two ways:terminal-notifierin PATH and uses it directly, completely bypassing thepreferredNotifChannelsettingEvidence from macOS notification database shows notifications with title "Claude Code Finished" coming from
fr.julienxx.oss.terminal-notifiereven withpreferredNotifChannel: none.Workaround: Move
terminal-notifierout of PATH. Custom hooks can still use it via absolute path.This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.