# Notifications

> How nsq tells you an agent needs you or finished — desktop notifications with sound, or the terminal itself over SSH.

Source: https://docs.neurosquad.ai/en/cli/notifications

When an agent **needs you** or **finishes**, nsq shows a desktop notification with a short sound —
for "needs you", with the question itself ("Allow Bash: npm test?").

- **One notification per agent.** A newer one replaces the old one instead of piling up.
- **"Needs you" stays** until you answer; it is taken down the moment the agent works again.
- Works while the dashboard is closed: the daemon sends them.

## Where they come from

| System | Notifications | Sound |
| --- | --- | --- |
| Windows 10 and 11 | native toasts | yes |
| macOS | `terminal-notifier` if installed (`brew install terminal-notifier`), otherwise the built-in `osascript` (shown as Script Editor; allow it in System Settings → Notifications) | yes |
| Linux | the desktop's notification service (`gdbus` or `notify-send`) | `paplay`, `pw-play` or `aplay` |

On macOS `terminal-notifier` is the better choice: its notifications can be replaced and taken down,
the `osascript` ones cannot.

## No desktop? The terminal rings

On a server, in a container or over SSH there is no desktop to show a notification. Then the
dashboard rings its own terminal instead: a bell, plus a notification sequence your terminal may
turn into a real notification (iTerm2, WezTerm, Ghostty, kitty, foot, urxvt; tmux passes it on).
So keep `nsq` open in a terminal tab, even over SSH, and you will still hear it.

## Turning them off

In `~/.neurosquad-cli/config.json`:

```json
{ "notifications": false, "sound": false }
```

`"sound": false` keeps the notifications silent. `NSQ_NO_NOTIFY=1` in the daemon's environment turns
desktop notifications off as well. See [Configuration](https://docs.neurosquad.ai/en/cli/configuration).
