The full GLM-5.3 AI coding IDE โ running natively on your Android phone.
Quick Start ยท Features ยท How It Works ยท Environment Detection ยท Troubleshooting ยท Uninstall
ZCode is the official harness for GLM-5.3 โ a full-featured AI coding IDE built on Electron (Chromium + Node.js) with multi-agent orchestration, skills, MCP server support, and deep GLM integration.
It ships for desktop only (macOS / Windows / Linux).
This repo turns the official Linux ARM64 .deb into a one-shot install that runs inside Termux on your Android phone via proot-distro + Debian + Termux:X11. No APK, no rooting, no compilation โ just clone and run.
# 1. Install Termux from F-Droid (NOT Play Store โ that version is dead)
# โ https://f-droid.org/packages/com.termux/
# 2. Install git
pkg install git -y
# 3. Clone this repo
git clone https://github.com/NaustudentX18/zcode-termux.git
cd zcode-termux
# 4. Run the installer (takes 5-10 min)
bash install.sh
# 5. Launch ZCode
zcodeThat's it. The installer auto-detects your device, configures everything, and drops a zcode command in your PATH plus a home-screen widget shortcut.
- GLM-5.3 AI agent with multi-task orchestration
- Monaco code editor with syntax highlighting
- Integrated terminal (bash)
- Git integration (commit, diff, history)
- File explorer with full project awareness
- Extension marketplace access
- Skills system with auto-loading
- Touch targets โ all buttons enlarged to 44px minimum for finger taps
- Wider scrollbars โ 16px drag handles for touch
- Pinch-to-zoom enabled on the whole window
- Scaled fonts โ auto-scaled based on your screen DPI
- Virtual keyboard support in terminal and editor
- Compact sidebar โ 56px activity bar for thumb reach
- Gesture scrolling โ smooth momentum scroll
The installer runs a full device probe and writes a persistent config:
| Detected | Used For |
|---|---|
| Device model & brand | Bug report context |
| Android version + SDK level | Compatibility checks |
| CPU architecture & core count | Process limit tuning |
| Total RAM | Electron memory allocation (1.5GB โ 4GB tiers) |
| Screen DPI | UI scale factor + font size |
| GPU renderer (Adreno/Mali/PowerVR) | GPU acceleration vs software rendering |
| Available storage | Pre-flight check |
| Root status | Diagnostic info |
The Debian proot comes loaded with:
- Node.js 20 LTS + npm + TypeScript + ts-node
- Python 3 + pip + venv
- Git with auto-fetch enabled
- ripgrep, fd-find, bat, jq, htop โ modern CLI tools
- clang, make, cmake, pkg-config โ build tools
- MCP servers โ filesystem, git, fetch, memory
10 skills auto-load on first launch:
| Skill | Trigger Keywords | What It Does |
|---|---|---|
| Code Review | "review", "code review" | Severity-rated automated review |
| Git Master | "commit", "git", "rebase" | Atomic commits, rebases, history |
| TDD Mode | "tdd", "test", "red-green" | Test-first development loop |
| Architect | "architect", "design", "plan" | Architecture analysis (read-only) |
| Debugger | "debug", "fix", "broken" | Root-cause diagnosis loop |
| Refactor | "refactor", "rename", "extract" | Safe surgical refactoring |
| Security Scan | "security", "vulnerability" | OWASP Top 10 detection |
| Docs Generator | "document", "readme", "docs" | Auto-generate documentation |
| Deploy | "deploy", "build", "ship" | Build & deploy orchestration |
| Mobile Dev | "mobile", "android", "termux" | Termux/proot-aware dev context |
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Android (aarch64) โ
โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ Termux (terminal emulator) โ โ
โ โ โ โ
โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ
โ โ โ proot-distro โ Debian ARM64 (chroot) โ โ โ
โ โ โ โ โ โ
โ โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ โ
โ โ โ โ ZCode (Electron) โ โ โ โ
โ โ โ โ โโโ Chromium rendering engine โ โ โ โ
โ โ โ โ โโโ Node.js runtime โ โ โ โ
โ โ โ โ โโโ Monaco editor โ โ โ โ
โ โ โ โ โโโ GLM-5.3 agent โ โ โ โ
โ โ โ โ โโโ Skills (10 pre-loaded) โ โ โ โ
โ โ โ โ โโโ MCP servers (4 configured) โ โ โ โ
โ โ โ โ โโโ Mobile touch CSS (injected) โ โ โ โ
โ โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ โ
โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ
โ โ โ โ
โ โ Termux:X11 โ display server ( Wayland ) โ โ
โ โ PulseAudio โ audio server โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ZCode is an Electron app. Android can't run Electron natively (no desktop Chromium, no Node.js). This project bridges that gap by running a Debian ARM64 chroot inside Termux via proot-distro, installing the official Linux ARM64 .deb there, and launching it with Termux:X11 providing the display server.
No root required. proot uses ptrace to fake chroot without kernel privileges.
When you run install.sh, it probes your device and generates a persistent config:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ENVIRONMENT DETECTION REPORT โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Device: Samsung SM-S928B โ
โ Manufacturer: samsung โ
โ Android: v14 (SDK 34) โ
โ CPU: aarch64 (8 cores) โ
โ RAM: 12288 MB โ
โ Storage free: 84521 MB โ
โ Screen DPI: 480 โ
โ Rooted: false โ
โ Termux prefix: /data/data/com.termux/... โ
โ proot-distro: true โ
โ Debian proot: false โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
This config drives:
- Memory tiers โ 4GB / 6GB / 8GB+ RAM each get different Electron heap limits and renderer process counts
- GPU flags โ Adreno/Mali/PowerVR get hardware acceleration; unknown GPUs fall back to SwiftShader
- UI scaling โ DPI โ scale factor (160dpi=1.0, 480dpi=3.0), clamped to [1.0, 3.0]
- Font size โ 13px / 14px / 16px based on DPI tier
The config is written to ~/.config/zcode-termux/mobile-env.sh and sourced by the launcher on every zcode invocation.
| Requirement | Minimum | Recommended |
|---|---|---|
| Architecture | aarch64 (ARM64) | โ |
| Android | 10 (SDK 29) | 13+ |
| RAM | 4 GB | 8 GB+ |
| Storage | 2 GB free | 4 GB free |
| Termux | From F-Droid | + Termux:Widget add-on |
| Display | Termux:X11 (auto-installed) | โ |
| GLM API key | โ | z.ai/subscribe |
โ ๏ธ Do not install Termux from the Play Store โ Google's version is deprecated and broken. Use F-Droid or the direct APK from Termux's GitHub releases.
zcode- Install Termux:Widget from F-Droid
- Long-press your home screen โ Add Widget โ Termux:Widget
- Select the ZCode shortcut
- Tap to launch anytime
First launch takes 10-20 seconds โ proot spins up Debian, Termux:X11 initializes the display, and Electron loads. Subsequent launches are faster (Debian proot caches).
๐ฆ ZCode won't launch / blank screen
# Check if Termux:X11 is running
ps aux | grep termux-x11
# Kill stale processes and retry
pkill -f termux-x11
zcode
# Launch manually to see error output
proot-distro login debian --shared-tmp -- \
bash -c "DISPLAY=:0 /usr/bin/zcode --no-sandbox --enable-logging"๐ง dpkg dependency errors during install
proot-distro login debian -- bash -c \
"apt-get update && apt-get install -f -y && dpkg --configure -a"Then re-run bash install.sh.
๐พ Out of memory / crashes / OOM-killed
Electron is memory-heavy. The installer auto-tunes based on your RAM, but if you're still crashing:
# Reduce Electron memory in the launcher
sed -i 's/--max-old-space-size=[0-9]*/--max-old-space-size=512/' $PREFIX/bin/zcodeAlso: close other apps, disable other proot distros (proot-distro remove ubuntu etc).
๐ GLM API key not set / AI features not working
Get a key from z.ai/subscribe, then:
# Set it in ZCode's config
proot-distro login debian -- bash -c \
"echo 'export ZAI_API_KEY=your-key-here' >> /root/.bashrc"
# Or set it in ZCode Settings โ AI โ API KeyThe GLM Coding Lite plan is $12.6/month and includes 10,000 credits/week.
๐ฅ GPU rendering issues / flickering
The installer auto-detects your GPU. If you get artifacts:
# Force software rendering
sed -i 's/--enable-gpu-rasterization/--disable-gpu/' $PREFIX/bin/zcode๐ฑ Touch input not working properly
Make sure Termux:X11 is the latest nightly:
pkg uninstall termux-x11
pkg install termux-x11-nightlyThe mobile touch CSS is injected automatically. If it's not loading, verify:
cat ~/.config/zcode-termux/mobile-env.sh | grep GPU_FLAGS# Quick uninstall (removes ZCode, launcher, shortcuts)
bash uninstall.sh
# Full removal (also deletes Debian proot โ reclaims ~1.5GB)
bash uninstall.sh --fullOr manually:
rm $PREFIX/bin/zcode
rm ~/.shortcuts/ZCode
proot-distro remove debianzcode-termux/
โโโ assets/
โ โโโ logo.svg # Main logo (512ร512, animated)
โ โโโ logo-128.svg # Favicon size (128ร128)
โโโ scripts/
โ โโโ env-detect.sh # Device probe + mobile config generator
โ โโโ bootstrap-skills.sh # Pre-load skills, MCP, settings, dev tools
โ โโโ mobile-touch.css # Touch-optimized CSS injected into Electron
โโโ .github/
โ โโโ workflows/
โ โโโ release.yml # Auto-release on tag push
โโโ install.sh # โ You run this
โโโ uninstall.sh # โ Or this to remove
โโโ README.md # You are here
โโโ LICENSE # MIT
โโโ CHANGELOG.md # Version history
โโโ .gitignore
| Resource | URL |
|---|---|
| ZCode official site | zcode.z.ai |
| GLM API subscription | z.ai/subscribe |
| Termux (F-Droid) | f-droid.org/packages/com.termux |
| Termux:Widget | f-droid.org/packages/com.termux.widget |
| ZCode downloads | zcode.z.ai/en#all-downloads |
| Report issues | GitHub Issues |
This is an unofficial community project. ZCode is built by z.ai. This repo automates installing the official Linux ARM64 .deb inside a Termux proot environment โ it does not modify, crack, or redistribute ZCode itself. Not affiliated with or endorsed by z.ai.
Use at your own risk. The proot approach has ~10-15% CPU overhead vs native Linux.
MIT ยฉ 2026 NaustudentX18