Notifications
Melta sends a push notification when an agent on your computer is blocked or finishes a turn. It comes from your computer, through a small Herdr plugin, not from the app watching in the background.
How it works
- The Melta plugin,
melta.notify, runs inside Herdr on your computer. Herdr calls it every time an agent's status changes. - When the new status is blocked or done, the plugin reads the pane's details from Herdr (its title and folder) and the part of its screen the notification needs, then sends one HTTPS request to
api.getmelta.app/notifythat carries this computer's token. - Melta's server looks up the computer by its token, checks your notification choices for it, and sends the push to every phone registered with your account, through Expo's push service, which hands it to Apple or Google.
Melta's server never connects to your computer. The plugin only makes outbound requests. It runs on macOS and Linux and needs Herdr 0.7.0 or later.
When the app connects to a computer whose plugin is older than the app expects, it updates the plugin there by itself, the same way Set Up Notifications does. It never installs the plugin on a computer that doesn't have it.
Setting it up
The setup command does it for you. Its Melta plugin (agent notifications) step downloads the plugin to ~/.local/share/melta/herdr-plugin, adds it to Herdr with herdr plugin link, and saves the computer's token in the plugin's config. See Setup command.
On the phone, Melta asks for permission to send notifications after you sign in. Allow it, or notifications cannot reach you.
The per-computer token
Each computer has its own token, starting with mlt_. Melta makes it on the phone when you add the computer and puts it in the setup command. It only lets the plugin post events for that one computer.
To see it again, open the computer, tap ⋯ › Edit Host, and look under Herdr and notifications: it is part of the command shown there. Generate New Token replaces it. The plugin stops working until you run the command again with the new token, either in a terminal on the computer or with Run It for Me.
Choose what to get
In Edit Host › Herdr, two switches control notifications for that computer. Both are on for a new computer.
- Notify when an agent needs input: blocked agents.
- Notify when an agent finishes: agents that are done.
What a notification says
The title names the agent and what happened, for example Claude needs your input or Claude finished. The body names the computer, the workspace and the pane. Claude Code names its terminal after the task, so the pane reads like Fix login redirect; other panes go by their title or folder. Under that, up to 300 characters:
- Needs your input: the question and its choices (Pick a database? Postgres · SQLite), what a permission prompt is for (Bash command: Run the test suite), or the plan approval.
- Finished: the start of Claude's last message, so you can tell from the lock screen whether it worked.
The same status from the same pane within 20 seconds is sent once. Every notification is also listed under ⋯ › Agent Activity on the computer's screen.
Allow, Deny and Open
A notification for a blocked agent has three actions. A notification for a finished agent has Open only.
- Allow: Melta connects to the computer from the phone in the background, without opening the app, and sends Enter to the pane.
- Deny: the same, but sends Esc.
- Open: opens the app on that pane's chat. Tapping the notification itself does the same.
Allow presses Enter on whatever the prompt has selected. For several options, use Open. See Approvals.
The connection notice on Android
On Android you also see Connected to your computer while Melta has a connection open. That is not an agent notification. It keeps the SSH connection alive when you switch to another app, so Android does not freeze it, and it goes away when the connections close.
If notifications do not arrive, see Fix notifications.