Agenton Pocket

your phone, not a pricey pocket gadget

AgentOn, to go.

Start claude or codex at the desk, scan a QR, and the phone in your pocket drives the same live session — from the couch or across town. Free and open source. No cloud in the middle.

get started ↓

$curl -fsSL https://agenton.nduwork.com/install.sh | bash

how it goes

Desk to pocket, four frames.

Cartoon of a developer starting Agenton from the daemon session screen at their desk
01 · start

One command at the desk

agenton vpn (or lan) starts the daemon, the web server, and the TUI — and prints a QR on screen.

Cartoon of a developer pairing an iPhone by scanning a QR code on the Agenton screen
02 · pair

Scan the code on screen

Point the iOS app at it — or your plain camera for the web client (agenton qr --web). Connected. Nothing to type.

Cartoon of an iPhone controller pad driving a live Agenton terminal on a desktop monitor
03 · drive

The phone is the desk gadget

Lay it on the desk and it's a button pad for the big screen — accept, reject, arrows, hold-to-talk. Tap a key and the session reacts.

Cartoon of a developer walking away while the live Agenton session continues between their home computer and iPhone
04 · to go

Walk out mid-run

Pocket the phone and leave. Over your tailnet the session follows you anywhere — nothing stops, nothing reconnects.

get started

From zero to pocket.

Four steps. Copy, run, scan — you're driving from your phone in about a minute.

  1. 1

    Install

    $ curl -fsSL https://agenton.nduwork.com/install.sh | bash

    Drops one small binary on your PATH — macOS or Linux.

  2. 2

    Start it — and pick how your phone reaches you

    $ agenton vpnanywhere · Tailscale, free plan
    $ agenton lansame Wi-Fi · nothing to set up

    Either one starts the daemon, web server, and TUI, then prints a QR. For vpn, Tailscale (free plan) is a prerequisite — install it on both devices once, same account, phone toggle on. lan needs nothing beyond agenton.

  3. 3

    Open a session

    In the TUI, press n for a fresh shell, then run claude, codex, or anything else inside it.

  4. 4

    Scan with your phone

    $ agenton qrreprint the connect code anytime

    Scan it with the iOS app and the session is in your pocket. Moved to another desk? Just run it again there. No app? Add --web for a code your plain camera opens in the browser.

why this shape

Your agent stays at the desk. You don't.

$0 gadget

Your phone is the device

A dedicated pocket AI gadget runs hundreds of dollars. The phone you already carry does the job — AgentOn just hands it the keys.

no cloud

Nothing leaves your computer

The phone sends keystrokes and reads the screen; sessions, code, and credentials stay behind your boundary. Direct over your tailnet or LAN — no relay, no public port, no subscription.

daemon

Sessions outlive every screen

A daemon on your computer owns each session, so it survives detach, replays full scrollback, and hands off between desk and phone without reconnecting.

on your phone

Two modes. One live session.

Attached from your phone, agenton works two ways — hands-on in a full terminal, or as a pure landscape controller for the session running on your computer.

phone mode

The whole session in your pocket

A native terminal with real scrollback, a thumb-friendly button pad, and press-to-talk in the message bar — everything you'd do at the keyboard, on glass.

It's fully drivable, not a viewer: type or tap and the agent reflows to your phone.

controller mode

A landscape remote for your desk

Flip to Controller and it locks to landscape — a pure button pad, no terminal to squint at. Every tap drives the exact session your computer is showing: accept, reject, stop, arrows to move. A rotate button flips orientation by hand, and the mic sends voice.

controller mode — landscape pad, drive by tap or hold-to-talk

agenton, to go

Flip without stopping.

One tap on the toggle swaps between them — the session never pauses, never reconnects. Drive hands-on at the desk; flip to the controller when you stand up to leave.

no text field on the controller — you drive with the pad or hold-to-talk. One tap on the header toggle and the session keeps running, no reconnect.

the idea

One daemon. Every screen is a view.

Sessions don't live in your terminal — they live in a background daemon on your computer. The desk TUI and the phone are just views onto the same running agent, so walking away never interrupts anything.

claude · codex · shell ◆ agenton daemon TUI  ·  iOS watch one session from both at once ⟲

two screens, one session

Hand off cleanly.

Attach from the desk and the phone at once — one drives, the other watches. Whoever types owns the screen; the other side parks instead of garbling.

the takeover

The desk freezes; the phone drives

Drive the same session from your phone and the desk terminal freezes its last frame, showing a takeover hint instead of a garbled, wrong-sized screen. Press any key at the keyboard to grab it back — the phone drops to the Controller pad on its own.

Sit back down and attach the TUI and the reverse happens: it reclaims the session and the phone parks to Controller automatically.

ctrl+t → switch sessions  ·  Option/Shift+mouse drag to select text I'll add jittered exponential backoff to the webhook sender. Update(internal/webhook/sender.go) ⎿ Added retryWithBackoff — 18 lines added Bash(go test ./internal/webhook/...) ok acme-api/internal/webhook 0.41s
Phone active — press any key to activate

the fine print, minus the fine

What you get.

Small surface, few moving parts — the daemon and its wire protocol do the work, every client is just a view.

Sessions survive detach

Quit any client and the daemon and every agent keep running. Come back with a single agenton.

Watch or drive

Attach from the desk and the phone at once. Drive from either; the other watches. Tap the toggle and your phone becomes a pure controller without disturbing the terminal.

Rebindable button pad

Long-press a custom key to rebind it with a tap-to-compose picker — pick a key, a combo, or a literal string. No chording on a touchscreen.

Press-to-talk

Hold the mic in the message bar and dictate — on-device speech drops the transcript in to review, then send. Skip thumb-typing long prompts.

Tailnet is the auth

agenton rides the Tailscale app you already run — no extra node to approve, free plan is fine. Only devices on your tailnet can reach it — that's the whole model. In vpn mode your security is Tailscale's: agenton adds no auth of its own, so it's only as strong as your tailnet.

Scan to pair

agenton qr prints a code; the iOS app reads it and you're connected. No IP addresses, no typing.

One-command install

./install.sh fetches a prebuilt release (or builds from source if Go's present) and puts one small binary on your PATH — no daemon to configure. Then agenton vpn.

Take it to go

Get up mid-run and the same session flips to the pocket controller — nothing stops, nothing reconnects. Land back at the desk and pick up where you left off.