Pick one to see it.
An agent on a GPU box, the iPhone in your pocket, the Mac switched off — the case that matters most. The host sends the notification itself; a tap opens the pane where it’s asking.
An agent that’s blocked or done, any program’s own notification (OSC 9 / 777 / 99), a long command that ended — sent by the host itself. No hook goes into an agent’s settings: the keeper reads the screen, so every program is covered.
A pattern you choose — “loss: nan”, “FAILED”, a deploy hash — turns any line of output into a mark and a notification while SpectaShell is open; a host never sends them. Triggers sync through your iCloud.
A notification goes out only when none of your devices is in front. What comes while you’re looking is held, so leaving the desk doesn’t lose it.
Apple delivers to an app only from the holder of its push key, so a relay of Calida Lab’s stands between your hosts and Apple. Each host seals what it sends to a key your device made; the relay passes sealed bytes on and keeps none of them.
Details: the Security page, “Notifications from hosts”.
Turn on Notify This Device and every host you use can reach it. No per-host settings to find, no thresholds to tune on each device.
| Property | ||
|---|---|---|
| Set-up on the server | moshi-hook, which writes itself into each agent’s settings | nothing — the keeper reads the screen |
| What can notify | agents with the hook; scripts through moshi-hook notify or a webhook | agents, any program’s own notifications, ended commands — nothing to install |
| Encryption | optional | always on |
| What its server sees | the agent, the event and your host’s IP; with encryption off, project names and parts of prompts too | when a host sends — never what, nor which host |
Agent alerts on your phone, as you know them — from any program, with nothing installed in the agent, sealed end to end.
Moshi as its documentation describes it on 2026-11-01.