codexapp
v0.1.22
Published
A lightweight web interface for Codex that runs on top of the Codex app-server, allowing remote access from any browser
Readme
🔥 codexapp
🚀 Run Codex App UI Anywhere: Linux, Windows, or Termux on Android 🚀
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:18923By 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 codexappWindows 🪟 (PowerShell)
node -v # 18+
npx codexappTermux (Android) 🤖
pkg update && pkg upgrade -y
pkg install nodejs -y
npx codexappAndroid background requirements:
- Keep
codexapprunning in the current Termux session (do not close it). - In Android settings, disable battery optimization for
Termux. - Keep the persistent Termux notification enabled so Android is less likely to kill it.
- Optional but recommended in Termux:
termux-wake-lock- Open the shown URL in your Android browser. If the app is killed, return to Termux and run
npx codexappagain.
✨ 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
🧩 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
SkillCardselect 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

Chat

Mobile UI

🏗️ 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. ⭐
