Update: v0.1.0 Released
Since my last post, everything changed.
The WebView terminal is gone. Termux is no longer required.
Claude Code and Codex now run natively on Android —
in the same process as your shell, with zero TCP, zero IPC.
This is what shipped.
The Problem I Kept Running Into
Claude Code broke in Termux. Codex broke in Termux.
Every update was a gamble.
So I directed the AI to throw away the entire architecture
and rebuild it from scratch.
What Changed
Before (Plan A):
WebView terminal via ttyd
Termux required
TCP socket between terminal and app
Died every time I switched apps
After (Plan B):
Native PTY via JNI forkpty — same process, zero IPC, zero TCP
Termux not required
bash, Node.js, Python 3, git, curl, ripgrep, jq, tmux, vim, sqlite3 bundled inside the APK as .so files
Executed via /system/bin/linker64 to bypass SELinux's execve restrictions on app_data_file context
As far as I know, this is the only React Native app in the
world with an embedded native terminal…