We make Melta, so read this with that in mind. We tried to describe Moshi the way its own site and App Store listing do, and we link to them at the end so you can check. If we got something wrong, tell us and we'll fix it.
Short version. Moshi is the more complete, more mature app. It works with tmux, Zellij and Herdr over SSH, Mosh or ET, and it has voice input, a diff viewer, a file browser and Apple Watch approvals.
Melta does one thing. It's a phone-first client for Herdr: every pane gets the whole screen, you switch panes with a list instead of key chords, and one pasted command sets up your computer, keys and notifications included. Nothing extra keeps running on your computer.
If you want one terminal app for everything, pick Moshi. If you live in Herdr and mostly check on agents from your phone, Melta is built for exactly that.
At a glance
| Moshi | Melta | |
|---|---|---|
| Platforms | iPhone, iPad, Mac, Apple Watch, Vision Pro, Android | iPhone and Android (launching soon) |
| Connection | SSH, Mosh, ET | SSH, reconnects when you return to the app |
| Multiplexers | tmux, Zellij, Herdr | Herdr only |
| Moving between Herdr panes | Herdr's own UI in the terminal, with swipes, pinch-to-zoom and a shortcut panel | Native pane list, Jump To across computers, one-key jump back to the last pane |
| Agent chat view | Many agents; experimental; part of Moshi Pro | Claude Code and Codex |
| Notifications | moshi-hook on your computer, webhooks, Live Activities, Apple Watch | Herdr plugin, installed by the setup command; blocked and finished alerts with Allow/Deny |
| Runs on your computer | moshi-hook, a helper that runs alongside your agents and serves chat and notifications | Nothing extra running. Chat is read over the SSH connection; notifications use a small Herdr plugin script |
| Setup | Add a host with your SSH key, install moshi-hook for agent features | Phone makes the key; one command adds it and installs Tailscale, Herdr and the plugin |
| Voice input | Yes, on-device or cloud | No |
| Extras | Diff viewer, file browser, browser preview, image paste | Slash-command menu, reorderable key bar, one-button Herdr prefix |
| Price | Free to start; Pro $7.99/month, $69.99/year or $249 lifetime (US) | Free |
| Track record | 4.7 stars from 546 ratings on the US App Store | New |
Where Moshi is ahead
Moshi has been shipping for a while, and it shows.
- Connections that survive anything. Mosh keeps a session alive across network switches and sleep. Melta uses plain SSH and reconnects when you come back to the app, which is fine at a desk or on Wi-Fi but not the same on a train.
- Every multiplexer, not just one. If you use tmux or Zellij, Moshi works with your setup today. Melta only speaks Herdr.
- More ways in. Voice input, an iPad and Mac app, Apple Watch approvals, Live Activities and Dynamic Island. Melta has none of these yet.
- More tools around the agent. A diff viewer, file browser and browser preview for local dev servers. With Melta you'd open a terminal pane for those.
- A long list of supported agents. Claude Code, Codex, OpenCode, Cursor and several more. Melta's chat view covers Claude Code and Codex; other agents run fine in a terminal pane.
- Maturity. Hundreds of reviews and frequent releases. Melta is new, and you will find rough edges.
Where Melta is different
Melta starts from a different question: what if the phone didn't try to be a small desktop at all?
Mobile first: each pane gets the whole screen
A mobile terminal usually shows your multiplexer the way your laptop does: tabs, splits and a status bar, shrunk onto a phone and steered with key chords and gestures. Moshi makes that about as good as it gets, with swipes to change tabs and pinch-to-zoom on a pane.
Melta talks to Herdr's API instead of drawing its UI. Your workspaces, tabs and panes become a native list, and opening a pane gives that one pane the full width of your phone. No splits to squint at, no prefix-key choreography to move around.
Switching panes is a tap, and jumping back is one key
Jump To lists every pane on every computer you've added. The panes that need you sit at the top, then the ones working, then the ones finished. Search narrows it as you type.
The ⇄ key takes you back to the last pane you were in, in the view you left it: chat for the agent you were talking to, terminal for the shell next to it. Flipping between an agent and the dev server it's working on becomes one tap each way. This is the thing we use most.
Chat or terminal, per pane
Moshi and Melta both read the agent's own session log to build a chat view, rather than scraping the screen. That gives you real messages, tool calls and questions. In Melta, chat and terminal are two views of the same pane, and Melta remembers which one you prefer for each pane.
Setup is one pasted command
Melta makes an SSH key on your phone, then shows one command to paste into your computer's terminal. It adds the key, installs Tailscale and signs the computer in, installs Herdr or updates it, installs the notification plugin and prints the user name and Tailscale IP to type into the app. Run it again any time; finished steps are skipped. There's no separate helper to install and no private key to move from your laptop.
Nothing extra running on your computer
Moshi's chat view and notifications depend on moshi-hook, a helper you install on the computer. It keeps running there, watches your agents, and the app reaches it through a gateway over your SSH connection.
Melta keeps the computer side to what's already there. Your phone connects straight to your computer over SSH, over Tailscale if you use it, with no relay in between. The chat view reads the agent's session log over that same connection, with ordinary shell commands, and stops when you close it. There's no daemon to install, update or keep alive.
The one addition is for notifications: a small Herdr plugin, a shell script that Herdr itself runs when an agent is blocked or finishes. The setup command installs it; skip it and everything else still works. Notifications are also the only thing that passes through our server, because a push has to come from somewhere when your phone isn't connected.
Notifications come from Herdr's agent state
Herdr already knows when an agent is blocked or done. Melta's plugin listens for exactly that and sends a push with the question the agent is asking. Allow or deny straight from the notification, or tap it to land in that pane.
Which one should you use?
Pick Moshi if you use tmux or Zellij, work on flaky mobile connections, want voice input or an Apple Watch, or want one app that also covers diffs, files and previews. It's the more complete tool, and it has a free tier to try.
Pick Melta if your agents live in Herdr and your phone is mostly for checking on them: seeing what needs you, answering, and hopping between a few panes. It trades breadth for a phone-first layout and a setup you can finish in a couple of minutes, and it's free.
Nothing stops you from using both: they connect the same way, to the same computer.
Sources
- Moshi website, features and supported platforms
- Moshi docs: Herdr, gestures and shortcut panel
- Moshi docs: Chat View, how chat is built and its requirements
- Moshi on the US App Store, pricing and ratings as of September 29, 2026