In development — not yet on the App Store

Your agent, where you’re already writing.

One half of everything stays on the phone. The other half is your own machine. Nothing lives in between.

Agent Mode open over a text field: the agent named on the bar, the written request, three context actions and a Review button.

The keyboard

Type as always. Ask when you choose.

Normal typing never leaves the phone — with or without Full Access. The Agent key opens a small field above the letters; what you write there is a request to your agent, not a keystroke.

Available in text fields that support third-party keyboards.

The keyboard mid-word, suggestion bar active, the Agent key in the bottom row.

The review

The seam is where you decide.

Review shows the exact text and the destination by name — your machine, nothing else. The confirm under your thumb is the only crossing.

Agent Mode: the request written, plus Selection, plus Field text, plus Clipboard, and the wide Review button.
  • The exact text, byte for byte
  • The destination, named
  • Context only if you attached it
The answer under a selection in another app, with Replace selection, Copy and Close.

The answer

It lands where you were typing.

The result is text in your hands, not a chat to switch into. Replace the selection, copy it, or close it and keep typing — your agent keeps working on its own machine either way.

Replace selection Copy Close

The app

Built for the runs. Not for your data.

Connect the agent, watch a run, get asked before anything risky happens. No account, no feed, no server of ours behind it.

Home: the agent online at 78 milliseconds, a finished run below.
Home. Your agent, its status, the latest runs.
Runs: three runs from three places, one still running.
Runs. From the keyboard, the app or chat.
Privacy: what leaves this device, written out in the app.
Privacy. The boundary, where you can check it.

Home · Runs · Privacy — one list, one boundary.

Bring your own agent

Your machine is the other half.

SHALL is a client. There is no server of ours in the middle — it connects to the agent you already run, over a network that is yours end to end.

01

A running hermes-agent

On a computer you own, listening on your private network — nowhere the open internet can reach.

02

Tailscale on both ends

The computer and the iPhone on the same tailnet.

03

The full address

The complete MagicDNS name, with scheme and port — the short machine name will not resolve from iOS.

http://your-machine.your-tailnet.ts.net:8642