Request early access

A stateful VM terminal for iPhone. Built for AI coding agents.

Run Codex, Claude Code, Gemini CLI, or Cursor workflows in a real VM from your iPhone. Keep state, save named versions from iOS, and reconnect to the same runtime later.

Stateful workspaces, not throwaway sessions
Smooth terminal rendering on iPhone
Runs the agent CLIs you already use
Codem main terminal screen on iPhone
Native terminal
Swift-rendered

Smooth scroll, dense output, and reliable input on iPhone.

Agent support
CLI-native

Claude Code, Codex CLI, Gemini CLI, and Cursor workflows.

Version history
Filesystem snapshots

Restore workspace state, not just shell history.

Background runtime
Persistent

Agents keep running while the app is backgrounded.

Demo

See how Codem works.

Open a workspace, work in the terminal, then save or restore a named version from iOS when you need a clean checkpoint.

Features

Built for terminal-first development

Codem gives you direct access to a persistent VM from your iPhone, without changing how you work.

Workspaces
Workspaces
vm/ios
~/ios
├─ App.swift
├─ Views/
└─ Assets/
vm/api
~/api
├─ server.ts
├─ prisma/
└─ .env

Separate VMs per project

Keep each project in its own runtime.

Each workspace has its own filesystem, sessions, and state.

Terminal UX
Terminal UX
terminal / live
$ codex
working in /sprite
> native scroll
> responsive input
98% context left

A terminal that feels native

Fast scroll, responsive input, and readable output on iPhone.

Use a real terminal UI instead of a laggy web view.

Agent CLIs
Agent CLIs
workspace image
built in
Codex
Claude
Cursor
Gemini

Run the tools you already use

No wrapper layer. The CLI runs in the VM where the repo lives.

Start Claude Code, Codex CLI, Gemini CLI, or Cursor workflows directly.

Version history
Version history
before-democurrent
stable-mainready
claude-pass-2ready

Save and restore named versions

Create named versions in iOS and roll back cleanly.

Useful for risky edits, experiments, and long agent runs.

Auto-idle
Auto-idle
runtime state
NO INPUTRESUME
activeidlesleepwake

Sleep idle VMs automatically

Cut cost when nobody is using the workspace.

Idle workspaces sleep automatically and resume quickly.

Continuity
Continuity
session / restored
workspace: jimmy/devrestored
$ codex resume
reattached to prior session
agent output continues...
same session, same state

Agents keep running in the background

Leaving the app does not kill the work.

Switch apps, lock your iPhone, come back later, and reattach.

Waitlist

Request access

Share your use case, the agent tools you use, and the device you want to run from. That helps prioritize early access.

Early access goes to developers with clear workflows.
Submit again with the same email to update your details.
Joining the waitlist opts you into product and access emails.

Request access

Which agent tools do you use?
Primary device OS

Update your details anytime with the same email.

FAQ

FAQ

Is Codem a CLI?

The app is an iPhone terminal client for long-lived VMs. The CLIs run inside the VM.

Do you train models on my data or sell it?

No. Codem does not use your session or filesystem data to train models, and it does not sell that data.

Why use an iPhone at all?

For review, intervention, monitoring, and lightweight iteration when a laptop is unavailable or unnecessary.

Does the runtime keep state?

Yes. Workspaces preserve filesystem and process state, and snapshots let you checkpoint named versions.

What happens when the app backgrounds?

The VM keeps running. You reconnect to the remote session instead of restarting the task.