codexUI

Project Url: friuns2/codexUI
Introduction: ๐Ÿš€ Run Codex App UI Anywhere: Linux, Windows, or Termux on Android ๐Ÿš€
More: Author   ReportBugs   OfficialWebsite   
Tags:

๐Ÿš€ Run Codex App UI Anywhere: Linux, Windows, or Termux on Android ๐Ÿš€

npm platform node license

Codex UI in your browser. No drama. One command.

Yes, that is your Codex desktop app experience exposed over web UI. Yes, it runs cross-platform.

 โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•—  โ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•—   โ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•—
โ–ˆโ–ˆโ•”โ•โ•โ•โ•โ•โ–ˆโ–ˆโ•”โ•โ•โ•โ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•”โ•โ•โ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•”โ•โ•โ•โ•โ•โ•šโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•”โ•โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘
โ–ˆโ–ˆโ•‘     โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘  โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—   โ•šโ–ˆโ–ˆโ–ˆโ•”โ• โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘
โ–ˆโ–ˆโ•‘     โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘  โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•”โ•โ•โ•   โ–ˆโ–ˆโ•”โ–ˆโ–ˆโ•— โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘
โ•šโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ•šโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•”โ•โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•”โ•โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•”โ• โ–ˆโ–ˆโ•—โ•šโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•”โ•โ–ˆโ–ˆโ•‘
 โ•šโ•โ•โ•โ•โ•โ• โ•šโ•โ•โ•โ•โ•โ• โ•šโ•โ•โ•โ•โ•โ• โ•šโ•โ•โ•โ•โ•โ•โ•โ•šโ•โ•  โ•šโ•โ• โ•šโ•โ•โ•โ•โ•โ• โ•šโ•โ•

๐Ÿคฏ What Is This?

codexapp is a lightweight bridge that gives you a browser-accessible UI for Codex app-server workflows.

You run one command. It starts a local web server. You open it from your machine, your LAN, or wherever your setup allows.

TL;DR ๐Ÿง : Codex app UI, unlocked for Linux, Windows, and Termux-powered Android setups.


โšก Quick Start

The main event.

# ๐Ÿ”“ Run instantly (recommended)
npx codexapp

# ๐ŸŒ Then open in browser
# http://localhost:18923

By default, codexapp now also starts:

cloudflared tunnel --url http://localhost:<port>

It prints the tunnel URL, terminal QR code, and password together in startup output.
Use --no-tunnel to disable this behavior.

Linux ๐Ÿง

node -v   # should be 18+
npx codexapp

Windows ๐ŸชŸ (PowerShell)

node -v   # 18+
npx codexapp

Termux (Android) ๐Ÿค–

pkg update && pkg upgrade -y
pkg install nodejs -y
npx codexapp

Android background requirements:

  1. Keep codexapp running in the current Termux session (do not close it).
  2. In Android settings, disable battery optimization for Termux.
  3. Keep the persistent Termux notification enabled so Android is less likely to kill it.
  4. Optional but recommended in Termux:
termux-wake-lock
  1. Open the shown URL in your Android browser. If the app is killed, return to Termux and run npx codexapp again.

iPhone / iPad via Tailscale Serve

If you want to use codexUI from iPhone or iPad Safari, serving it over HTTPS is recommended.

A practical private setup is to run codexUI locally and publish it inside your tailnet with Tailscale Serve:

npx codexapp --no-tunnel --port 5999
tailscale serve --bg 5999

Then open:

https://<your-machine>.<your-tailnet>.ts.net

This setup worked well in practice for:

  • iPhone Safari access
  • Add to Home Screen
  • the built-in dictation / transcription feature in the app
  • viewing the same projects and conversations from the Windows host

Notes:

  • Tailscale Serve keeps access private to your tailnet
  • on iOS, HTTPS / secure context appears to be important for mobile browser access and dictation
  • some minor mobile Safari CSS issues may still exist, but they do not prevent normal use
  • depending on proxying details, authentication behavior may differ from direct remote access
  • if conversations created in the web UI do not immediately appear in the Windows app, restarting the Windows app may refresh them

โœจ Features

The payload.

  • ๐Ÿš€ One-command launch with npx codexapp
  • ๐ŸŒ Cross-platform support for Linux, Windows, and Termux on Android
  • ๐Ÿ–ฅ๏ธ Browser-first Codex UI flow on http://localhost:18923
  • ๐ŸŒ LAN-friendly access from other devices on the same network
  • ๐Ÿงช Remote/headless-friendly setup for server-based Codex usage
  • ๐Ÿ”Œ Works with reverse proxies and tunneling setups
  • โšก No global install required for quick experimentation
  • ๐ŸŽ™๏ธ Built-in hold-to-dictate voice input with transcription to composer draft
  • ๐Ÿค– Optional Telegram bot bridge: send messages to bot, forward into mapped thread, send assistant reply back to Telegram

Telegram Bot Bridge (Optional)

Set these environment variables before starting codexapp:

export TELEGRAM_BOT_TOKEN="<your-telegram-bot-token>"
export TELEGRAM_DEFAULT_CWD="$PWD" # optional, defaults to current working directory
npx codexapp

Bot commands:

  • /newthread create and map a new Codex thread for this Telegram chat
  • /thread <threadId> map current Telegram chat to an existing thread
  • Any other text message is forwarded to the mapped thread

๐Ÿงฉ Recent Product Features (from main commits)

Not just launch. Actual UX upgrades.

  • ๐Ÿ—‚๏ธ Searchable project picker in new-thread flow
  • โž• Inline "Add new project" input inside picker (no browser prompt)
  • ๐Ÿ“Œ New projects get pinned to top automatically
  • ๐Ÿง  Smart default new-project name suggestion via server-side free-directory scan (New Project (N))
  • ๐Ÿ”„ Project order persisted globally to workspace roots state
  • ๐Ÿงต Optimistic in-progress threads preserved during refresh/poll cycles
  • ๐Ÿ“ฑ Mobile drawer sidebar in desktop layout (teleported overlay + swipe-friendly structure)
  • ๐ŸŽ›๏ธ Skills Hub mobile-friendly spacing/toolbar layout improvements
  • ๐ŸชŸ Skill detail modal tuned for mobile sheet-style behavior
  • ๐Ÿงช Skills Hub event typing fix for SkillCard select emit compatibility
  • ๐ŸŽ™๏ธ Voice dictation flow in composer (hold to dictate -> transcribe -> append text)

๐ŸŒ What Can You Do With This?

๐Ÿ”ฅ Use Case ๐Ÿ’ฅ What You Get
๐Ÿ’ป Linux workstation Run Codex UI in browser without depending on desktop shell
๐ŸชŸ Windows machine Launch web UI and access from Chrome/Edge quickly
๐Ÿ“ฑ Termux on Android Start service in Termux and control from mobile browser
๐Ÿงช Remote dev box Keep Codex process on server, view UI from client device
๐ŸŒ LAN sharing Open UI from another device on same network
๐Ÿงฐ Headless workflows Keep terminal + browser split for productivity
๐Ÿ”Œ Custom routing Put behind reverse proxy/tunnel if needed
โšก Fast experiments npx run without full global setup

๐Ÿ–ผ๏ธ Screenshots

Skills Hub

Skills Hub

Chat

Chat

Mobile UI

Skills Hub Mobile Chat Mobile


๐Ÿ—๏ธ Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Browser (Desktop/Mobile)   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
               โ”‚ HTTP/WebSocket
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚         codexapp            โ”‚
โ”‚  (Express + Vue UI bridge)  โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
               โ”‚ RPC/Bridge calls
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚      Codex App Server       โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐ŸŽฏ Requirements

  • โœ… Node.js 18+
  • โœ… Codex app-server environment available
  • โœ… Browser access to host/port
  • โœ… Microphone permission (only for voice dictation)

๐Ÿ› Troubleshooting

โŒ Problem โœ… Fix
Port already in use Run on a free port or stop old process
npx fails Update npm/node, then retry
Termux install fails pkg update && pkg upgrade then reinstall nodejs
Canโ€™t open from other device Check firewall, bind address, and LAN routing

๐Ÿค Contributing

Issues and PRs are welcome.
Bring bug reports, platform notes, and setup improvements.


โญ Star This Repo

If you believe Codex UI should be accessible from any machine, any OS, any screen, star this project and share it. โญ

Built for speed, portability, and a little bit of chaos ๐Ÿ˜

Forked from pavel-voronin/codex-web-local by Pavel Voronin.

Apps
About Me
GitHub: Trinea
Facebook: Dev Tools