DEV Community

Cover image for I built a mobile app to control Claude Code and Codex from my phone
K9i - Kota Hayashi
K9i - Kota Hayashi

Posted on

I built a mobile app to control Claude Code and Codex from my phone

I use Claude Code and Codex CLI for most of my side projects. The problem? Every time the agent needs approval or finishes a task, I have to walk over to my Mac. That's fine during work hours, but on weekends I just want to kick things off from the couch and check in from my phone.

There are terminal-sharing approaches and Claude Code now has /remote-control, but none of them felt right on a phone screen. So I built my own: CC Pocket — a mobile app designed specifically for controlling AI coding agents remotely.

CC Pocket overview

What makes it useful

Approve tool calls without opening a session

The #1 thing you do when monitoring Claude Code from your phone is tap "approve." CC Pocket puts the approval UI right on the session list — no need to open individual sessions. Running 3 agents in parallel? Just scroll and tap.

Approval UI on session list

Spin up new sessions from your phone

You're not limited to resuming sessions from your Mac. Pick a project, choose a permission mode and model, and go. You can even create a git worktree at session start — branch, worktree, and session, all without touching your laptop.

New session screen

Prompt input that doesn't suck on mobile

I spent a lot of time on this because phone keyboards + long prompts = pain. Here's what I built:

  • / command completion — Tap / to get an overlay of all available slash commands
  • @ file mentions — Browse and insert file paths instead of typing them
  • Bullet list mode — Auto-inserts - on newline with indent/dedent buttons. Handy for markdown-style prompts
  • Prompt history — Saved to SQLite, searchable by frequency or favorites. Stop retyping the same instructions

Rich prompt input

Name your sessions

Claude Code's session list shows IDs, which are useless for finding anything later. CC Pocket hooks into the CLI's /rename command so you can name sessions. Filter by named sessions only to quickly find the ones that matter.

Diff viewer (with image diffs!)

Review what the agent changed, right on your phone. Text diffs show in unified format with add/delete highlighting. Image diffs get three modes:

  • Side by side — Before and after, next to each other
  • Slider — Drag a divider across the image
  • Overlay — Adjust opacity to layer before/after

You can also select specific hunks and attach them to the chat — great for saying "change this part like so."

Diff viewer

Built with itself

Once CC Pocket could control Claude Code, I started developing CC Pocket through CC Pocket. The feedback loop is tight — I hit a UX annoyance, fix it through the app, and the fix ships in the same session. Dogfooding at its finest.

Architecture

Phone (CC Pocket) ←WebSocket→ Bridge Server (Mac) ←stdio→ Claude Code / Codex CLI
Enter fullscreen mode Exit fullscreen mode

CC Pocket talks to a lightweight bridge server on your Mac that manages agent processes via the Claude Code SDK and Codex CLI.

Setup (< 5 min)

1. Network: Your Mac and phone need to be reachable. Same Wi-Fi works. For anywhere-access, Tailscale is the easiest option — one-click mesh VPN, no port forwarding.

2. Bridge server: One command:

npx @ccpocket/bridge@latest
Enter fullscreen mode Exit fullscreen mode

It shows a QR code with connection details.

Bridge startup

Tip: Set BRIDGE_DEMO_MODE=true to strip sensitive info from the QR code — useful for screenshots and demos.

3. Connect: Scan the QR code from CC Pocket's launch screen. Then either tap + for a new session or pick one from your Mac's session history.

Launch and first connection

Install

Available on both stores:

The project is fully open source:

GitHub logo K9i-0 / ccpocket

Mobile client for Claude Code and Codex — control coding agents from your phone via WebSocket bridge

CC Pocket

CC Pocket lets you start and run Codex and Claude Code sessions entirely from your phone. No laptop needed — just open the app, pick a project, and code from anywhere.

日本語版 README | 简体中文版 README

CC Pocket screenshots

CC Pocket is not affiliated with, endorsed by, or associated with Anthropic or OpenAI.

Why CC Pocket?

AI coding agents are getting autonomous enough to write entire features on their own. Your role shifts from writing code to making decisions — approve this tool, answer that question, review the diff.

Decisions don't need a keyboard. They need a screen and a thumb.

CC Pocket is built for this workflow: start a session from your phone, let your machine's Codex or Claude Code do the heavy lifting, and make decisions from wherever you are.

Who It's For

CC Pocket is for people who already rely on coding agents and want an easier way…



Tech Stack

Component Tech
Mobile app Flutter (Dart), BLoC, SQLite, FCM
Bridge server TypeScript, Node.js, WebSocket, @anthropic-ai/claude-agent-sdk, @openai/codex-sdk
Networking Tailscale / local Wi-Fi, mDNS auto-discovery

Try it out

If you use Claude Code or Codex for side projects, give it a spin. Approve tool calls from bed, start sessions from a coffee shop, review diffs on the train. Your Mac doesn't need you sitting in front of it.

Feedback, issues, and PRs are welcome on GitHub. And if you find it useful, a star goes a long way.


Now if only Apple would make an iPhone Fold so I could see more code on this screen...

Top comments (0)

Some comments may only be visible to logged-in visitors. Sign in to view all comments.