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.
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 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.
- The exact text, byte for byte
- The destination, named
- Context only if you attached it
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.
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 · 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