AI Agents · Remote Ops

Control Your AI Agents From Your Phone — A Low-Bandwidth Playbook for Laptop & EC2

Your agent is running on a laptop or a cloud server. You're out with only a phone and a patchy 4G signal. Here's how to check on it, approve its next step, or give it new work — securely, without a remote desktop, and without opening a single port.

By KnowledgeWalaOctober 2026~12 min readLevel: Intermediate
TL;DR

1. The problem

AI agents are long-running. A research agent may take 20 minutes, a coding agent may run a test suite for an hour, and a reporting agent may run every night. Agents also pause: they ask for permission before writing files, running commands or calling an external API.

That creates a gap. The agent runs on your laptop or an EC2 instance, but you are in a meeting, travelling or at home with only your phone. The work either stalls waiting for an approval, or runs unsupervised with no way to steer it.

Problem statement

Give an engineer a simple, secure, low-bandwidth way to monitor, approve and instruct AI agents running on a personal machine or cloud server, using only a mobile phone — without exposing the machine to the internet and without building heavy infrastructure.

Why the obvious answers fall short

Remote desktop

RDP, VNC or AnyDesk stream the whole screen. That is heavy on mobile data, laggy on weak networks and painful to use on a 6-inch screen.

SSH from phone

Light on bandwidth, but you need an open port or VPN, and typing shell commands on a phone keyboard is slow and error-prone.

Custom web dashboard

Needs a tunnel or public endpoint, authentication, and ongoing maintenance — a whole project just to press "approve".

2. Requirements

TypeRequirementWhy it matters
FunctionalSee agent status and progressKnow whether it's working, stuck or finished
FunctionalApprove or reject an agent's pending actionAgents stall on permission prompts
FunctionalSend new instructions or start a taskRedirect work without being at the desk
FunctionalGet notified when something needs youNo need to keep checking
Non-functionalMinimal bandwidthWorks on weak 3G/4G and roaming data
Non-functionalNo inbound ports on the hostSmallest possible attack surface
Non-functionalLow setup and zero maintenanceMinutes to set up, nothing to keep patched
Non-functionalExecution stays on the hostLocal files, tools and secrets never move to the phone

3. The architecture pattern: "phone as remote, host as worker"

Every good solution here follows the same pattern. The agent and all its tools stay on the host. The host connects out to a relay service and waits for work. The phone talks only to the relay. Only small text messages travel — commands one way, status and results the other.

Phone sends text commands to a cloud relay; the host polls the relay over outbound HTTPS and runs the agent locally 📱 Your phone Claude app or Telegram / Discord ☁️ Relay Anthropic API or Telegram Bot API 💻 Host: Laptop / EC2 Claude Desktop · Dispatch Claude Code · Remote Control Claude Code · Channels Local files · MCP serverstools · secrets commands (text) status · approvals outbound HTTPS work items ✔ No inbound ports on the host ✔ Only text crosses the network
Figure 1 — Phone as remote control, host as worker. The host always dials out; nothing dials in.

What an approval looks like end to end

Sequence of a task started from the phone, paused for approval, and completed You (phone) Relay Agent (host) Local tools 1 · register & poll (outbound) 2 · "Run the weekly report" 3 · deliver task 4 · read files, run steps 5 · needs approval: write file? 6 · push notification 7 · Approve ✓ 8 · approval 9 · result summary 10 · "Done — 3 files updated"
Figure 2 — Every hop is a few kilobytes of text. The heavy work (step 4) never leaves the host.

4. Solution options, step by step

Pick the tab that matches where your agent runs. You can combine them — for example Remote Control for live work plus a Telegram channel for alerts.

What it is: a feature inside Claude Desktop's Cowork mode. It creates one ongoing conversation shared between your phone and your desktop. You message from the phone; Claude does the work on the desktop using your local files, connectors and plugins, and reports back.

Best for agents and workflows built in Claude Desktop · fire-and-forget knowledge tasks (reports, file organisation, spreadsheet analysis, meeting prep) that take several minutes.

Setup

  1. Update Claude Desktop on your laptop (macOS or Windows x64) and the Claude app on your phone (iOS or Android).
  2. In Claude Desktop, open Cowork and select Dispatch.
  3. Scan the QR code with the Claude app on your phone to pair the two.
  4. Set your laptop so it doesn't sleep while plugged in, and leave Claude Desktop open.
  5. From the phone, open Dispatch and send a task, e.g. "Summarise yesterday's agent logs and list anything that failed."

Pros

  • Two-minute setup, no terminal
  • Uses everything already connected on the desktop
  • Start brand-new tasks from the phone
  • Great for non-coding agent work

Cons

  • Desktop must stay awake with the app open
  • Desktop app only — not for a headless Linux server
  • Research preview; requires a paid plan
  • Scope its file access carefully — it can modify files

5. Side-by-side comparison

DispatchRemote ControlChannels
Agent runs inClaude Desktop (Cowork)Claude CodeClaude Code v2.1.80+
Host OSmacOS, Windows x64Any, incl. Linux / EC2Any, incl. Linux / EC2
Phone clientClaude appClaude app (Code tab) or browserTelegram, Discord, iMessage
BandwidthLowLowVery low
Interaction styleAsync tasksLive supervisionChat commands & alerts
Start new work from phoneYesContinue host-started sessionsYes, into the running session
Host must stay awakeYes, app openReconnects after wake; ~10 min outage limitYes, session running
Inbound portsNoneNone (outbound HTTPS)None (bot polling)
Setup effort~2 min, QR code1 command~10 min, bot + pairing
Status (Oct 2026)Research previewResearch previewResearch preview

6. Which one should you use?

Answer three questions and get a recommendation.

1. Where does your agent run?
2. What's your usual mobile network like?
3. How do you want to work with the agent?

7. Best-fit setup: always-on EC2 + Remote Control + Telegram

Laptops sleep, lose Wi-Fi and get their lids closed. If your agents matter, move them to a small always-on server. This is the most reliable combination for most engineers:

EC2 instance running tmux with two Claude Code sessions, one for Remote Control and one with a Telegram channel Claude applive work, approvals Telegramalerts, quick commands EC2 instance · security group: no inbound rules needed tmux session "agents" window 1claude --remote-controlreport-agent window 2claude --channelsplugin:telegram@…
Figure 3 — Two sessions in one tmux: one for rich live control, one for low-bandwidth alerts. (Arrows show logical control; all connections are opened outbound by the host.)
  1. Launch a small instance (Ubuntu or Amazon Linux). Allow SSH only from your own IP, or use AWS Systems Manager Session Manager so even port 22 stays closed.
  2. Install Claude Code, log in, and clone or copy your agent project onto the instance.
  3. Start a persistent tmux session so agents survive SSH disconnects:
    tmux new -s agents
  4. Window 1 — live control:
    claude --remote-control report-agent
  5. Window 2 — alerts and quick commands (press Ctrl-b c for a new window), after the one-time Telegram setup from tab ③:
    claude --channels plugin:telegram@claude-plugins-official
  6. Detach with Ctrl-b d and log out. Both sessions keep running; manage them from your phone.
  7. Pre-approve safe actions in the project's Claude Code permission settings (e.g. reading files, running tests) so the agent only stops for genuinely risky steps.
Prefer your laptop? Same steps work on Windows or macOS. Set the power plan to never sleep on AC power and make closing the lid "do nothing". Use Dispatch for agents built in Claude Desktop.

Laptop vs EC2 — the trade-off

LaptopEC2 / cloud server
AvailabilitySleeps, travels, loses Wi-FiAlways on, stable network
Access to local files & appsFull — your real desktopOnly what you copy or sync there
CostFree (already owned)Small monthly instance cost
SupportsDispatch, Remote Control, ChannelsRemote Control, Channels
Best forPersonal workflows on your own filesLong-running or scheduled agents

8. How this compares with other approaches

ApproachBandwidthSecurity exposureMobile UXEffort
RDP / VNC / AnyDeskHigh — continuous screenFull desktop exposedPoor on small screensLow
SSH + tmux (Termius etc.)LowOpen port or VPNTyping commands is slowLow
Tunnel + web dashboardMediumPublic endpoint, auth to buildGood if built wellHigh
Custom chat botVery lowOutbound onlyGoodMedium, you maintain it
Dispatch / Remote Control / ChannelsVery low – lowOutbound onlyPurpose-builtMinutes

When to build your own

Build a custom controller only if you need something the built-in options don't give you — for example a single status board across many agents, or control of agents written in another framework. If you do, copy the same proven design:

That is essentially a custom Channels plugin — which is a good sign the built-in route covers most needs.

9. Security best practices

🔒 Keep ports closed

All three options connect outbound. Don't add inbound rules "just in case".

👤 Lock down who can talk to it

Use the allowlist policy for Telegram/Discord bots, and protect your Claude account with a strong sign-in.

📁 Least privilege

Give agents access to the project folder only, not your whole home directory or drive.

✋ Approve the risky stuff

Pre-approve reads and tests; keep deletes, deploys and external writes behind a human approval.

🔑 No secrets in chat

Keep API keys in the host's environment or a secret manager, never in messages.

📱 Secure the phone

Your phone is now a control panel. Use a screen lock and app lock.

10. Setup checklist

Your progress0 / 8

11. FAQ & limitations

Does my code or data move to my phone?

No. Execution and file access stay on the host. The phone only sends instructions and receives text responses.

What happens if my laptop goes to sleep?

Dispatch and Channels need the machine awake and the app or session running. A Remote Control session reconnects when the machine wakes, but an outage of roughly ten minutes ends it and you'll need to restart it.

Can I control several agents at once?

Yes. Start one named Remote Control session per agent; each appears as its own thread in the Claude app.

Will this work on a weak 2G/3G connection?

Channels over Telegram is the most forgiving because it is plain chat. Remote Control and Dispatch are also text-based and light, but load inside the Claude app.

Which plan do I need?

These features are research previews tied to paid Claude plans, and availability changes as they roll out. Check the current Claude documentation for your plan before you rely on them.

Can I use this with agents built on LangChain, CrewAI or similar?

Not directly — these features control Claude sessions. For other frameworks, build a small outbound-polling bot using the pattern in section 8, or run the agent as a tool that a Claude Code session calls.

Key takeaways

Sources & further reading

Features described here were in research preview as of October 2026; commands and plan availability may change. Always check the official documentation before production use.