Artificially generatedClaude Code Mobile App: no agent, just a chat with upload button
We wanted to leave the desk and keep working from the iPhone. The Claude Code Mobile App promises exactly that. Four measurements later we know what remains of that promise: nothing that counts for real agent work.
The dragon on a chain.
What we planned
The plan was simple. From late August we want to do 80 percent of work while walking, by voice, without screen. For that the agents can't die when the computer closes. So the obvious path: the Claude Code Mobile App on iPhone, plus sessions that keep running in the cloud when you're on the move.
The first part worked immediately. Task uploaded, local process ended, session kept running. Exactly what we wanted. The compute time is in the subscription, there's no additional bill. Up to here: good.
Then we checked what the app and the session behind it are actually allowed to touch.
Four fences
| What we wanted | What worked |
|---|---|
| SSH to our own servers | Blocked. ssh isn't even installed in the sandbox image |
| API access to our cloud accounts | Blocked. The network proxy only lets whitelisted addresses through |
| Access to all our code repositories | Only one. The session sees exclusively the one repo it's attached to |
| Store our own credentials | Not intended. The documentation explicitly advises against it |
The network egress can be widened through configuration, that's fixable. The rest isn't: all traffic runs through a proxy that only knows web traffic. There's no switch that turns this into an open connection.
The Claude Code Mobile App carries the name of an agent. It isn't one.
Let's be clear about what it can do: answer questions, continue a chat history, edit a single linked repo, attach a few files, build a small artifact. For this one use case it's usable. But nothing more, and that's exactly the problem, because it's not sold as that.
What makes an agent on your own computer powerful isn't the language model. It's the access: to your own servers via SSH, to all your own repos simultaneously, to your own credentials, to any of your own tools. Exactly these four things are completely missing from the Claude Code Mobile App, not limited, not stripped down, but simply not present. An app that doesn't have these four things isn't a smaller agent. It's no agent at all. It's a chat window with upload button, with the same name as the tool that actually works on your computer.
The app sells you this as "work from anywhere". That's the lie in this sentence. From anywhere you reach a sandbox with one repo and a network connection that thinks it's a browser. For agentic coding work, for operating a real system landscape of multiple servers, multiple repos and real credentials, the Claude Code Mobile App is simply unusable. Not slower, not more limited. Unusable. Today's hacker, who has ten machines and thirty repos simultaneously in their head, can't get a single real task done with this app.
And that's exactly why this isn't a minor friction point, but a reason to get really angry: the one situation where you need mobile work most urgently, namely on the road, without computer, with a real problem on a real machine, is exactly the situation where the Claude Code Mobile App can't help. It can't access the server that's burning. It can't get into the repo that isn't currently the linked one. It can't hold credentials you need in that moment. A tool that fails exactly when you need it most isn't a comfort feature with limitations. It's a roadblock with good marketing, and the name "Claude Code" on the icon only makes the promise worse, because it promises something the app doesn't deliver.
For context, so nobody thinks we're imagining this: as a pure chat with file access, the Claude Code Mobile App stands roughly where the competition's mobile apps also stand. That's not a unique selling point, that's the category it plays in. Only this product isn't called "Chat App", it's called "Claude Code", and under this name a promise is made that the iPhone app doesn't fulfill at any single point.
An agent without access isn't a lighter agent. It's a spectator with keyboard.
What we're building instead
The consequence isn't to give up mobile work. It's not to rent it from a provider.
- The execution arm belongs to us. Our own machines hold the keys and do the work. What comes from outside asks, instead of writing in.
- The harness is open. An agent system whose source code we can read and modify has no fences we didn't set ourselves.
- Multiple heads, interchangeable. The language model is a supplier part, not a foundation. Who only builds in one provider doesn't have a system, but a subscription.
- At least three ways in. If one fails, work capability doesn't fail.
That costs more work than a checkmark in a setting. In return the result belongs to us. Convenience you don't own is borrowed, and it gets called back when it's most inconvenient.
Freedom isn't a feature someone unlocks for you. It's the sum of dependencies you didn't enter into.
- Own measurement, 11.08.2026. Two cloud sessions, testing network egress, port 22, tool inventory and repository visibility.
- Provider documentation, configuration of cloud environments. https://code.claude.com/docs/en/cloud-environments
- Provider documentation, cloud sessions in browser. https://code.claude.com/docs/en/claude-code-on-the-web


