mirror of
https://github.com/samsonjs/vibetunnel.git
synced 2026-04-14 12:46:05 +00:00
Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Alex Fallah <alexfallah7@gmail.com>
38 lines
1.9 KiB
Markdown
38 lines
1.9 KiB
Markdown
# Push Notifications in VibeTunnel
|
|
|
|
VibeTunnel provides real-time alerts for terminal events via native macOS notifications and web push notifications. The system is primarily driven by the **Session Monitor**, which tracks terminal activity and triggers alerts.
|
|
|
|
## How It Works
|
|
|
|
The **Session Monitor** is the core of the notification system. It observes terminal sessions for key events and dispatches them to the appropriate notification service (macOS or web).
|
|
|
|
### Key Monitored Events
|
|
- **Session Start/Exit**: Get notified when a terminal session begins or ends.
|
|
- **Command Completion**: Alerts for long-running commands.
|
|
- **Errors**: Notifications for commands that fail.
|
|
- **Terminal Bell**: Triggered by programs sending a bell character (`^G`).
|
|
- **Claude "Your Turn"**: A special notification when Claude AI finishes a response and is awaiting your input.
|
|
|
|
## Native macOS Notifications
|
|
|
|
The VibeTunnel macOS app provides the most reliable and feature-rich notification experience.
|
|
|
|
- **Enable**: Go to `VibeTunnel Settings > General` and toggle **Show Session Notifications**.
|
|
- **Features**: Uses the native `UserNotifications` framework, respects Focus Modes, and works in the background.
|
|
|
|
## Web Push Notifications
|
|
|
|
For non-macOS clients or remote access, VibeTunnel supports web push notifications.
|
|
|
|
- **Enable**: Click the notification icon in the web UI and grant browser permission.
|
|
- **Technology**: Uses Service Workers and the Web Push API.
|
|
|
|
## Troubleshooting
|
|
|
|
- **No Notifications**: Ensure they are enabled in both VibeTunnel settings and your OS/browser settings.
|
|
- **Duplicate Notifications**: You can clear old or duplicate subscriptions by deleting `~/.vibetunnel/notifications/subscriptions.json`.
|
|
- **Claude Notifications**: If Claude's "Your Turn" notifications aren't working, you can try forcing it to use the terminal bell:
|
|
```bash
|
|
claude config set --global preferredNotifChannel terminal_bell
|
|
```
|
|
|