Now available — desktop app included

AI coding tools.
Anywhere.

Run Claude, Gemini & Codex from your phone. Connect to your computer instantly — no SSH keys, no VPN, no setup.

> _
RemoteAI
Codex ×
Claude ×
Gemi... ×
Update(package.json)
dependencies updated
Read 1 file
Bash(cd ~/project && npm test)
> remoteai@2.1.89 test
> jest --coverage
PASS src/auth.test.ts
PASS src/relay.test.ts
Update(src/auth.ts)
14 - const token = getToken();
14 + const token = await refreshToken();
15 + if (!token) throw new AuthError();
Read 3 files
I've refactored the auth module to use
async token refresh with proper error
handling. The changes include:
- Token refresh on expiry
- Retry logic with backoff
- Better error messages
Update(src/config.ts)
8 - timeout: 5000,
8 + timeout: 10000,
9 + retries: 3,
>
Claude
[remoteai] 0:zsh 1:claude* 2:npm
Message

Up and running in minutes.

RemoteAI.dmg 26 MB · Universal
01 · Download

Install the desktop app

Get RemoteAI for your Mac or Linux computer. Install it like any other app — no terminal, no scripts.

Paired
02 · Scan

Pair with your phone

The desktop app shows a QR code. Scan it from the mobile app to securely link the devices — no passwords on desktop.

MacBook Pro Online · just now
$ claude
03 · Connect

Tap and you're in

Open RemoteAI on your phone — your computer appears automatically. Tap to connect and run claude.

Encrypted end to end.

Your terminal content never touches our servers. The relay only passes encrypted bytes between your devices.

Your phone Mobile app
Relay TLS 1.3
Your computer Desktop app
  • Never decrypted in transit
  • Relay sees ciphertext only
  • Device-to-device keys

Everything you need.

Claude
Gemini
Codex

Multi-tab sessions

Run multiple independent AI sessions simultaneously — Claude, Gemini, Codex, or plain shell. Tabs persist across app restarts.

Seamless OAuth

Claude, Gemini & Codex authentication flows work natively on your phone. No copy-pasting tokens or switching apps.

Esc
Ctrl
Tab
|
~
/

Custom keyboard

A fully customizable terminal keyboard with drag-to-reorder keys across three pages — built for real terminal work.

> deploy to prod
Built image
Pushed tag

Landscape mode

Rotate to landscape for distraction-free viewing — just you and the terminal.

Claude finished working
Refactored auth module — 3 files changed

Push notifications

Get notified the moment Claude, Gemini, or Codex finishes — even when the app is in the background.

Encrypted by default

No VPN, no port forwarding, no SSH keys. Everything is TLS-secured end to end through our relay.

Your terminal, in your pocket.

RemoteAI
Claude ×
Gemini ×
> Shell ×
Update(src/api/routes.ts)
31 - app.get('/users', handler);
31 + app.get('/users', auth, handler);
32 + app.get('/users/:id', auth, getUser);
Read 4 files
Bash(cd ~/app && npm test)
> app@1.4.2 test
> jest --coverage
PASS src/api/routes.test.ts
PASS src/auth/middleware.test.ts
PASS src/db/queries.test.ts
Update(src/db/pool.ts)
12 - const pool = createPool(5);
12 + const pool = createPool(20);
13 + pool.on('error', handleErr);
Read 2 files
I've added auth middleware to all
user routes and increased the DB
connection pool with error handling.
- Auth guard on GET /users
- New GET /users/:id endpoint
- Pool size 5 -> 20 + error cb
>
Claude
[remoteai] 0:claude* 1:gemini 2:zsh
Message
Run AI sessions
Claude, Gemini, Codex, or shell — all in separate tabs that persist.
RemoteAI
Claude ×
Gemini ×
Update(src/sync.py)
refactoring sync logic...
Read 2 files
Update(src/queue.py)
42 - self.retry_count = 3
42 + self.retry_count = 5
43 + self.backoff = 2.0
Bash(python -m pytest)
PASS tests/test_sync.py
PASS tests/test_queue.py
Waiting for confirmation...
>
Claude finished
Refactored auth — 3 files changed
[remoteai] 0:claude* 1:gemini
Message
Push notifications
Know when your AI finishes or needs your attention.
RemoteAI
Codex ×
> Shell ×
Codex v0.1.4
> optimize database queries
Read src/db/queries.ts
Found 4 N+1 query patterns
Update(queries.ts)
23 - const users = await db.query(
23 + const users = await db.batch(
Indexed users table
Added query cache layer
Latency reduced 3.2x
>
Message
Ctrl+C
Ctrl+D
Ctrl+Z
Ctrl+L
Ctrl+A
Ctrl+E
Ctrl+R
Ctrl+W
Home
End
PgUp
PgDn
Custom keyboard
Three pages of configurable keys. Drag to reorder.

Built for many sessions.

The desktop app is designed for developers juggling multiple agents, branches, and terminals at once.

01

Tile every window, in one keystroke.

Overlapping terminals, stacked browsers, half-resized editors. Press the shortcut and every window snaps to a clean, equal grid.

  • Works across every app on screen
  • Respects your monitor's aspect ratio
  • Configurable keyboard shortcut
02

Sessions that sort themselves.

Needs-attention rises to the top. Finished work quietly moves aside. You never lose track of what needs you next.

  • Real-time status for every AI session
  • Auto-reorder by priority
  • Color-coded pills, at a glance
03

Hands-free, with a nod.

Turn your head to switch between sessions. Coffee in one hand, whiteboard in the other — code still on screen.

  • Uses your existing webcam
  • Fully on-device — video never leaves your computer
  • Toggle on and off with a keystroke

Install, scan, done.

Install the desktop app on your computer and the mobile app on your phone. Sign in on the phone, then scan the QR code your desktop displays — they're linked.

Desktop

Mobile

iOS iPhone · App Store
Get on App Store
Android Coming soon
Coming soon