Native Codex CLI for Termux / Android ARM64. Built from upstream OpenAI Codex
rust-v0.121.0. Maintained by Aryan Gupta (Aryanispe Host) — aryanispehost.in
- Package →
@aryanxispe/codex-termux - Upstream base →
rust-v0.121.0 - Current release target →
v0.121.0-termux - Current limitation → voice and realtime audio stay disabled in the Termux latest package
# If you see "dpkg was interrupted" error, run this first:
# dpkg --configure -a
pkg update && pkg upgrade -y
pkg install nodejs-lts -y
# Grant storage permission
termux-setup-storage
# Install (Works on both Phone and BlueStacks)
npm install -g @aryanxispe/codex-termux@latest
# Verify
codex --version
codex login| Package | Architecture | Devices |
|---|---|---|
@aryanxispe/codex-termux |
Universal (ARM64 / x86_64) | Phones & BlueStacks / Emulators |
Requirements:
- Android 7+ / API 24+
- Node.js >= 18
If you see this error during pkg update or pkg upgrade, run:
dpkg --configure -aThen re-run the install steps.
After installation, if codex is not found, restart Termux or run:
source ~/.bashrcIf it still doesn't work, check npm's global bin is on your PATH:
npm config get prefix
export PATH="$(npm config get prefix)/bin:$PATH"Make sure you ran termux-setup-storage and tapped Allow when the Android permission dialog appeared. If you missed it, run it again:
termux-setup-storage- Native ARM64 Android build for Termux
- Tracks upstream OpenAI Codex closely
- Minimal compatibility delta only
- Fork update checks and release links point to
aryanxispe/codex-termux
- Uses the official OpenAI Codex source as upstream
- Builds native Android ARM64 binaries for Termux
- Applies only compatibility patches that upstream does not carry
- Publishes release artifacts on GitHub and npm for Termux users
- Maintain a broad feature fork
- Replace upstream Codex
- Carry unrelated product behavior changes
Current Termux-specific carry patches include:
- browser login via
termux-open-url - launcher hardening for helper re-exec
RUNPATH=$ORIGINon Android ELF binaries- fork-specific update channel and release links
Current published limitation:
- voice and realtime audio remain disabled in the Termux latest package
This keeps the packaged binaries free of Android audio linker dependencies while preserving the rest of the upstream CLI flow.
- Latest published GitHub release: releases/latest
- Upstream release base: rust-v0.121.0
- npm package:
@aryanxispe/codex-termux
Maintainer release flow:
- trigger
.github/workflows/termux-npm-build-publish.ymlonmain - run once with
create_release=trueto publish GitHub release assets - run again with
publish_npm=truewhen the release artifacts are validated
- Changelog
- Patch inventory
- Runtime validation report
- Building from source
- GitHub Actions maintainer build
- Install and build docs
- Authentication
- Configuration
This project remains under the Apache 2.0 license inherited from OpenAI Codex.
- Original work: OpenAI
- Termux port and Android ARM64 packaging: Aryan Gupta (Aryanispe Host)
See LICENSE.
