OpenAI

Codex on your phone, from any Linux server

Remote in the ChatGPT app is the official way to reach Codex from a phone, and it is built around a Mac or Windows host. Maude runs Codex CLI on a Linux or macOS server you own and drives it from iOS or Android.

Codex on your phone, from any Linux server

Quick answer

OpenAI's official phone path is Remote in the ChatGPT app, which controls a Mac or Windows computer running the ChatGPT desktop app. Maude takes another route: it installs a pinned Codex CLI on any Linux or macOS server over SSH and signs it in with your ChatGPT plan by device code. Codex then runs there around the clock while you approve commands from your phone.

OpenAI has an official answer to "Codex on my phone": Remote, in the ChatGPT app for iOS and Android. It's polished and comes with your plan. Its host, though, is a computer running the ChatGPT desktop app on macOS or Windows, and that computer has to stay awake. If your code lives on a Linux VPS, that's where Maude comes in.

Official options today

Codex Remote. You pair your phone with a host by QR code and run Codex chats on it from the ChatGPT app. The desktop app can also add projects from an SSH host, so a Linux server can be reached through a Mac or Windows machine. OpenAI's docs are clear about the trade-off: "If that computer sleeps, loses network access, or closes the app, remote access stops until it's available again." They suggest a dedicated always-on Mac or PC.

Experimental codex remote-control. The Codex CLI command reference lists codex remote-control start and codex remote-control pair as experimental. They run the local app-server with remote control on and create a short-lived pairing code. Users running headless Linux hosts have reported trouble pairing them from current mobile clients (issue #31183), and that the remote connections guide and the CLI reference disagree on Linux (issue #35928). Both issues were open when we checked on 2026-10-01. This is moving quickly, so check OpenAI's docs before you rule it out.

The full comparison is in Maude vs Codex Remote.

Codex on a Linux VPS from your phone

Maude starts from the server rather than a desktop app. You add a machine by address, by pasting an ssh … command, or by scanning the QR code that curl -fsSL https://maude.pilotdev.fr/setup | sh prints. Debian, Ubuntu, Alpine, Fedora and other Linux distributions work, as does macOS, on x86-64 or ARM. Then:

  1. The app deploys its daemon over SSH. You don't install anything by hand.
  2. The daemon installs Codex CLI at a version we have tested, checksum-verified, and keeps it updated.
  3. The daemon talks to Codex through its native app-server protocol, so you get streaming output, tool cards, diffs and approval requests rather than a scraped terminal.
  4. The server dials out to Maude's relay, end-to-end encrypted, so it needs no open inbound port. SSH is the fallback.

Sessions run on the server 24/7. Lock the phone, close the app, lose signal, and Codex keeps working. For the manual version of this setup, with tmux, the CLI and a login over SSH, see our Codex CLI VPS setup guide. To pick a machine, read the best VPS for coding agents.

Signing in with ChatGPT (device code)

A server has no browser, so Codex's normal sign-in, which opens one, doesn't fit. Maude uses Codex's device-code flow, codex login --device-auth:

  1. In Maude, open the agent sign-in and choose Sign in with ChatGPT.
  2. The app shows a short code and a link to OpenAI's sign-in page. Open it on your phone, sign in to ChatGPT and enter the code.
  3. Codex on the server picks up the login, and Maude confirms it.

One step catches people out: OpenAI's auth docs say device code login has to be enabled first, in your ChatGPT security settings on a personal account or by an admin in workspace permissions. If the code is refused, check that setting. You can also sign in with an OpenAI API key instead, which is billed at API rates.

OpenAI's pricing page says Codex is included in ChatGPT Free, Go, Plus, Pro, Business, Edu and Enterprise, with usage limits that vary by plan. Maude doesn't include any Codex usage. You bring your own plan or key.

Approvals and sandbox modes

Codex pairs an approval policy with a sandbox. Maude exposes four modes as a chip in the composer:

Maude modeCodex sandboxWho approves
Read-onlyRead-onlyYou, when Codex asks for more
DefaultWorkspace-write (your project directory)You, when Codex asks for more
AutoWorkspace-writeCodex's own auto-review
Full access (yolo)No sandboxNobody; Codex never asks

In the read-only and default modes, Maude tells Codex explicitly that you are the reviewer. Without that, a server-side ~/.codex/config.toml set to auto-review could approve requests on your behalf. Approval requests reach you three ways: as a card in the chat, inline in the inbox, and as a push notification with Allow and Deny buttons. Our guide to approving agent permissions from your phone covers how this works across agents.

Model and reasoning effort are chips too, using the models your account offers. /compact and /goal work, and you can steer a running turn. Every session also has Files, Git (hunk-by-hunk review, commit, push, pull requests through gh) and a real terminal.

Hand a Codex task to Claude Code

Because Maude runs five agents, a session doesn't have to stay with Codex. When it's idle, switch it to Claude Code, OpenCode, Grok Build or Antigravity. The new agent gets a brief with the plan, the files touched, the git state, the recent conversation and your last instruction. If you switch back, Codex resumes its own thread. People use this for a second opinion on a diff, or to keep going when one plan's usage window runs out. We cover it in handing off tasks between coding agents. To decide which agent to start with, see Claude Code vs Codex vs OpenCode.

Who should use what

If you work on a Mac or Windows machine that stays on, Codex Remote is official, included in your plan, and the simplest choice. If your Codex work lives on a Linux server, or you want Codex next to Claude Code and other agents in one inbox, Maude is built for that.

Frequently asked questions

Can I control Codex CLI from the ChatGPT app?
Officially, OpenAI's route is Remote in the ChatGPT app, which controls a host computer running the ChatGPT desktop app on macOS or Windows. The CLI also has an experimental codex remote-control command with a pairing step, but users report pairing problems on headless Linux. Maude drives Codex CLI on your server from its own app instead.
Does Codex Remote work with a Linux server?
Not as the host. OpenAI's remote connections docs list macOS and Windows hosts, but the desktop app can add a Linux machine as an SSH project, so you reach it through a Mac or PC that stays awake. Maude connects to the Linux server directly.
Which ChatGPT plans include Codex?
OpenAI's pricing page lists Codex in the Free, Go, Plus, Pro, Business, Edu and Enterprise plans, with usage limits that differ by plan. You can also use an OpenAI API key. A Maude subscription doesn't include Codex usage.
How do I log in to Codex on a headless server?
Use device code login: codex login --device-auth prints a code, and you enter it on OpenAI's page from any device. Device code login has to be enabled in your ChatGPT security settings first, or by a workspace admin. Maude runs this flow for you and shows the code in the app.
Does Codex keep running if my phone locks?
Yes. With Maude, Codex runs in a daemon on your server, not on the phone, so locking it or closing the app changes nothing. You get a push notification when Codex needs an approval or finishes.

What changed

  • — Page published. Codex Remote host support, device-code requirements, plan inclusion and the state of codex remote-control (issues #31183 and #35928, both open) checked on this date.

Run your agents from your phone

Maude puts Claude Code, Codex, OpenCode, Grok Build and Antigravity on a server you own — 7 days free on iPhone, iPad and Android.

Download Maude on the App Store Get Maude on Google Play