Skip to content

Releases: Hope2333/opencode-termux

Push260828: glibc 1.18.15 + native 1.18.21 + native-upx (compressed) + standalone (transitional)

Choose a tag to compare

@Hope2333 Hope2333 released this 28 Aug 17:01

Push260828 — four runtime families, first co-appearance (transitional formal release)

Special formal release where all four runtime families appear together for the first time. Transitional in nature: the native bionic line is becoming the mainline, the glibc wrapper line is demoted to appendix maintenance, and opencode-glibc-standalone is introduced as a frozen single-version rollback package.

Family Assets Coexistence
glibc (wrapper line, stable appendix) opencode-glibc_1.18.15_aarch64.deb, opencode-glibc-1.18.15-1-aarch64.pkg.tar.xz mutually exclusive with native / compressed
native (bionic mainline) opencode_1.18.21_aarch64.deb, opencode-1.18.21-1-aarch64.pkg.tar.xz mutually exclusive with glibc / compressed
native-upx (compressed ELF) opencode-1.18.21-aarch64-android-native-tui-upx.xz manual ELF drop-in, not a package
standalone (frozen rollback) opencode-glibc-standalone_1.18.15_aarch64.deb, opencode-glibc-standalone-1.18.15-1-aarch64.pkg.tar.xz CAN coexist with opencode (independent lib path, entry opencode-glibc)

opencode-glibc-standalone ships a single frozen version (1.18.15) for rollback only. The glibc / native / compressed families remain mutually exclusive providers — installing one replaces the others.

Package-name inheritance: the native mainline now inherits the plain opencode package name (the -native suffix is retired); the opencode-native_* assets on the older Push260822 release remain as historical versions.

Assets

Asset Size (bytes) sha256
opencode-glibc_1.18.15_aarch64.deb 82387152 2867a2c7d975493842e283d1ca2441ba94895e4cfcc1cf5ab48e6fa907b20eb3
opencode-glibc-1.18.15-1-aarch64.pkg.tar.xz 82387104 b82549f4bc460d3927bfe243f8d60a10707ec349256cd3e21844bf333269fd41
opencode-glibc-standalone_1.18.15_aarch64.deb 41248544 fe136fb78de0580a907f1563c9c571aab18c09e3819026ae4184ab8d80db321d
opencode-glibc-standalone-1.18.15-1-aarch64.pkg.tar.xz 41254936 8e3684fd4821b70bba606cb6f086a1c6076b482f44f346bcecb4d7cfb27eb6d4
opencode_1.18.21_aarch64.deb 40699184 3bc040e95b49da085fe280e08b46558df5839d1d06ab5304c45ac98cf2508e76
opencode-1.18.21-1-aarch64.pkg.tar.xz 40705564 8fe5b1fcb591f2d31820650e371f43b33d62d8ef1fe6e3ac0557ef7f1f1d7311
opencode-compressed_1.18.21_aarch64.deb 50403208 6fd5956986ea17c7f56ff1371074f0facf1dd464eac667de28fb0858e5c0c5d3
opencode-compressed-1.18.21-1-aarch64.pkg.tar.xz 50407148 28523af40d222aad95cbbda10918a89d1391d461874063b02ff3817fbd9c0122
opencode-1.18.21-aarch64-android-native-tui-upx.xz 50362704 42a0ef39ca81d53d8bb0338a9e8ae4d7843d3bd636f4a5875dc98e420c5086cf
SHA256SUMS.txt 981 (checksum list itself)

Packed-ELF fingerprint chain

  • Unpacked ELF opencode-1.18.21-aarch64-android-native-tui (as published in native-beta-260826): sha256 02609002f4191a102255f29191299a89057a9c7d3d62222e48d75bc59334500d, 179,807,785 bytes
  • UPX-packed ELF (--best): sha256 30c074ab04d8c62dfad2f2fd6b53a629f4c05236a609684d84a0d9427a8be988, 51,891,796 bytes (retains 28.86% of original)
  • xz -9 container (this asset): sha256 42a0ef39ca81d53d8bb0338a9e8ae4d7843d3bd636f4a5875dc98e420c5086cf, 50,362,704 bytes

Size / startup tradeoff (measured, not marketing)

179,807,785 B → 51,891,796 B (UPX --best, 28.86% retained) → 50,362,704 B after xz -9 (UPX output is high-entropy, so xz gains only ~3%). Startup overhead: +0.7–1.1s (measured 1.9–2.3s vs 1.1s for the unpacked ELF). Choose the compressed ELF only if download size matters more than startup latency.

Antivirus false-positive notice

UPX-packed executables may trigger antivirus heuristics. This is a known phenomenon with packed binaries, not malware. Trust the sha256 values above / SHA256SUMS.txt, not AV verdicts.

Install examples

# glibc line (stable appendix; needs glibc + openssl-glibc)
dpkg -i opencode-glibc_1.18.15_aarch64.deb
pacman -U opencode-glibc-1.18.15-1-aarch64.pkg.tar.xz

# native bionic line (mainline; zero glibc, Android API >= 28; plain opencode package name)
dpkg -i opencode_1.18.21_aarch64.deb
pacman -U opencode-1.18.21-1-aarch64.pkg.tar.xz

# standalone rollback (coexists with opencode; entry command: opencode-glibc)
dpkg -i opencode-glibc-standalone_1.18.15_aarch64.deb
pacman -U opencode-glibc-standalone-1.18.15-1-aarch64.pkg.tar.xz

# compressed ELF (manual drop-in)
xz -d -k opencode-1.18.21-aarch64-android-native-tui-upx.xz
chmod +x opencode-1.18.21-aarch64-android-native-tui-upx

Verification

SHA256SUMS.txt covers all 9 payload assets in standard sha256sum format. It is unsigned; GPG signing is planned for a future release.

Native Beta 260826

Native Beta 260826 Pre-release
Pre-release

Choose a tag to compare

@Hope2333 Hope2333 released this 26 Aug 12:30

Native Beta 260826(BETA 渠道首发)

BETA 渠道首发:功能与稳定性达标(TUI 完整渲染、watcher E2E、bin 直放、goldens 4/4),由 ALPHA 渠道晋级。

Crash fix

修复 thinking 块展开时 OpenTUI bufferDrawChar@intCast(u32→i32) SIGABRT(负坐标越界)。
patch:patches/opentui/fix-drawchar-negative-coords.patch,commit 342d68d

资产

  • opencode-1.18.21-aarch64-android-native-tui:主二进制(bin-direct 真 ELF,无 wrapper)
  • SHA256SUMS.txt:校验和

安装

dpkg -i opencode-native_*.deb   # 或直接下载上方二进制 chmod +x 运行
opencode --version              # -> 1.18.21

诚实声明

  • 仍为 pre-release;稳定维护主线仍是 pure/glibc 双轨包,不受影响。
  • CI 绿 ≠ 可跑:最终验收以真机终验为准。

native-alpha 260825 — TUI preview

Pre-release

Choose a tag to compare

@Hope2333 Hope2333 released this 25 Aug 06:13

native-alpha 260825 — TUI preview

⚠️ ALPHA / EXPERIMENTAL

This is the native revival line (transplant pipeline) of opencode-termux.
Per project policy, native-line assets stay pre-release permanently; the
stable / maintenance mainline remains the pure/glibc wrapper line. Expect
rough edges, no stability guarantees, and breaking changes at any time.

What it is

  • OpenCode 1.18.21 module graph grafted onto the official bun 1.4.0
    android
    base, with the bionic-built libopentui.so equal-swap injected —
    so this build has a working TUI.
  • Zero glibc dependency (pure Bionic). Requires Android API >= 28
    (aarch64 only).

Validation

  • --version1.18.21, exit 0
  • TUI deep smoke T1–T5: 5/5 PASS — chat roundtrip (~24s), resize,
    clean-exit, 5-minute soak (RSS −224MB, CPU → 5%), terminal-query responder
    harness v7
  • Golden regression 4/4 PASS

Usage

Install the deb provider, or run the raw ELF directly:

chmod +x opencode-1.18.21-aarch64-android-native-tui
./opencode-1.18.21-aarch64-android-native-tui --version

If the TUI misbehaves on your terminal, use the web UI fallback:
opencode web.

Evidence

  • TUI deep smoke log: .omo/evidence/task-w10a-tui-deep-smoke.log
  • Transplant surgery details: docs/transplant.md

Push260822

Push260822 Pre-release
Pre-release

Choose a tag to compare

@Hope2333 Hope2333 released this 23 Aug 01:55

Dual-track OpenCode for Termux. Track 1 (default recommended): glibc wrapper packages opencode_aarch64.deb / opencode--aarch64.pkg.tar.* - full TUI. Track 2 (experimental): opencode-native* / *-android-native assets - zero-glibc headless run/serve only, TUI broken, Android API>=28.

v1.18.15 v1.18.[8-14]

Choose a tag to compare

@Hope2333 Hope2333 released this 02 Aug 20:15

BUILD LOG

20260808: v1.18.[14-15]
20260805: v1.18.[8-13]
Lasted: v1.18.15

OpenCode for Termux

Real OpenCode AI wrapped for Android/Bionic via bun-termux-loader.

Assets (latest: v1.18.15)

Format Versions
DEB opencode_1.18.{8-15}_aarch64.deb
Pacman opencode-1.18.{8-15}-1-aarch64.pkg.tar.xz

Dependencies

  • glibc + openssl-glibc — runtime requirements
  • bash + ncurses — launcher and TUI support

Install

apt install -y glibc-repo && apt update && apt install -y glibc openssl-glibc
dpkg -i /path/to/opencode_1.18.15_aarch64.deb

Run: opencode --version

v1.18.[3-7]

Choose a tag to compare

@Hope2333 Hope2333 released this 19 Jul 13:45

BUILD LOG

260728: v1.18.4-1.18.7
260719: v1.18.3 (maintenance baseline — Push260719)

OpenCode for Termux

Real OpenCode AI coding assistant, wrapped for Android/Bionic via bun-termux-loader.

Assets (latest: v1.18.7)

Format Versions
DEB opencode_1.18.{3,4,5,6,7}_aarch64.deb
Pacman opencode-1.18.{3,4,5,6,7}-1-aarch64.pkg.tar.xz

Dependencies

  • glibc + openssl-glibc — runtime requirements
  • bash + ncurses — launcher and TUI support

Install

apt install -y glibc-repo && apt update && apt install -y glibc openssl-glibc
dpkg -i /path/to/opencode_1.18.7_aarch64.deb

Run: opencode --version

Thanks

  • Install command corrected from apt install to dpkg -i for local .deb paths (Termux's apt cannot install a local deb by path) — thanks to @luisadha for the fix (PR #7).

v1.18.3 v1.18.[0-2] v1.17.[0-20] v1.16.[0-2] v1.15.[1-13]

Choose a tag to compare

@Hope2333 Hope2333 released this 22 May 02:44

BUILD LOG

260522: v1.15.[1-7]
260524: v1.15.[8-10]
260530: v1.15.[11-12]
260604: v1.15.13
260607: v1.16.[0-2]
260615: v1.17.[4-7]
260624: v1.17.[8-9]
260627: v1.17.[10-11]
260704: v1.17.[12-13]
260710: v1.17.[14-18]
260714: v1.17.[19-20]
260717: v1.18.[0-3]
Lasted: v1.18.3

OpenCode for Termux

Real OpenCode AI coding assistant, wrapped for Android/Bionic via bun-termux-loader.

Assets

Format Versions
DEB opencode_1.15.{1..13}_aarch64.deb, opencode_1.16.{0..2}_aarch64.deb, opencode_1.17.{0..20}_aarch64.deb, opencode_1.18.{0..3}_aarch64.deb
Pacman opencode-1.15.{1..13}-1-aarch64.pkg.tar.xz, opencode-1.16.{0..2}-1-aarch64.pkg.tar.xz, opencode-1.17.{0..20}-1-aarch64.pkg.tar.xz, opencode-1.18.{0..3}-1-aarch64.pkg.tar.xz

Dependencies

  • glibc + openssl-glibc — runtime requirements
  • bash + ncurses — launcher and TUI support

Install

apt install -y glibc-repo && apt update && apt install -y glibc openssl-glibc
dpkg -i /path/to/opencode_1.18.3_aarch64.deb

Run: opencode --version

Thanks

  • Install command corrected from apt install to dpkg -i for local .deb paths (Termux's apt cannot install a local deb by path) — thanks to @luisadha for the fix (PR #7).

Push260521

Choose a tag to compare

@Hope2333 Hope2333 released this 21 May 12:52

BUILD LOG

260521: v1.15.0
Lasted: v1.15.0

native-android Line Matured

After extensive research and iteration, the native-android build pipeline is now operational:

What's New

  • GitHub Actions CI workflow (build-native-android.yml) fully automated:
    • Downloads opencode from npm
    • Wraps with bun-termux-loader using pre-built aarch64 artifacts
    • Produces Android/bionic-wrapped binary automatically
  • Git history cleaned: ~425MB of binary blobs removed
  • Pre-built wrapper+shim committed at tools/prebuilt/ — no cross-compilation needed on CI
  • Bun v1.3.14 research completed: Native Android Bun confirmed working on Termux
    • Research doc: docs/native-android-research.md

Fixes in This Release

  • Wrap step corrected: --wrapper and --shim paths now point to pre-built aarch64 binaries
  • Bun marker detection: searches entire binary (marker position varies by version)
  • Cache key collision fixed: uses first+last 64KB for classifer
  • All CI steps validated (17/17 passing)

Build Pipeline

# Local Termux build (glibc route — stable)
cd opencode-termux
make all VER=1.15.0 PKG=both

# CI automated build (native-android route — experimental)
# Trigger: GitHub Actions workflow_dispatch

Notes

  • This is still the glibc-wrapper route for runtime (bun-termux-loader wrapping)
  • Native Android Bun binary is downloaded for diagnostics only (entry point incompatibility)
  • Future: switch to native Android Bun when bun build --compile supports Android target

v1.15.0 v1.14.[21-51]

Choose a tag to compare

@Hope2333 Hope2333 released this 25 Apr 20:32

BUILD LOG

260426: v1.14.[21-25]
260429: v1.14.[26-29]
260501: v1.14.[30,31]
260505: v1.14.[32-39]
260507: v1.14.40
260508: v1.14.41
260510: v1.14.[42-46]
260512: v1.14.[47,48]
260516: v1.14.[49-51] v1.15.0
Lasted: v1.15.0

Issues Fixed

Issue #2: Bun-Termux-Loader Validation Logic Outdated

  • Problem: Upstream Bun v1.3.13+ changed binary marker from ---- Bun! ---- to packages by bun, causing loader to fail recognition
  • Fix: Updated bun-termux-loader to support both markers, search range extended to 64KB
  • Commit: Hope2333/bun-termux-loader@a96e74e

Batch Build Version Number Bug

  • Problem: make batch VERS='1.14.[22-25]' produced packages with wrong version numbers (all showing 1.14.22)
  • Root Cause: Versions 1.14.22-1.14.24 share identical first 4096 bytes, causing wrapper.c cache key hash collision
  • Fix: Cache key changed to first 64KB + last 64KB + file size
  • Commit: Hope2333/bun-termux-loader@a96e74e (wrapper.c: cache_bun_elf)

Version Selection Guide

This repository provides prebuilt packages from a unified build system, often covering multiple upstream versions in a single release batch.

  • For most users:
    Simply choose the latest release. It is generally the most up-to-date and works as a rolling snapshot of upstream.

  • If you prefer stability:
    Look for releases labeled LTS or similar. These are built with fewer changes and are intended to be more conservative.

  • If you see multiple versions in one release (e.g. [21–25]):
    You can usually pick the highest version number unless you have a specific reason to stay on an older one.


For Advanced / Power Users

# Clone locally
git clone https://github.com/Hope2333/opencode-termux
cd opencode-termux

# Single version build
make clean
make all VER=1.14.25 PKG=both

# Batch build (now fixed!)
make batch VERS='1.14.[21-25]' PKG=both ODIR=~/oct-out MIX=1

Notes

This repository acts as a distribution/build layer, not the primary source of change logs.
For detailed upstream changes, please refer to the original upstream project releases.

v1.14.[17-20] v1.4.[0-17] v1.3.[13-17]

Choose a tag to compare

@Hope2333 Hope2333 released this 01 Apr 02:22

BUILD LOG

260401: v1.3.13
260407: v1.3.[14-17]
260408: v1.4.0
260413: v1.4.[1-3]
260420: v1.4.[4-17] v1.14.[17-19]
260426: v1.14.20
Lasted: v1.14.20

Version Selection Guide

This repository provides prebuilt packages from a unified build system, often covering multiple upstream versions in a single release batch.

  • For most users:
    Simply choose the latest release. It is generally the most up-to-date and works as a rolling snapshot of upstream.

  • If you prefer stability:
    Look for releases labeled LTS or similar. These are built with fewer changes and are intended to be more conservative.


For Advanced / Power Users

If you prefer more control or want faster updates than the release cycle:

  • It is recommended to clone this repository locally
  • Then build packages yourself, similar to how you would use AUR:
git clone <repo>
cd opencode-termux
# build using provided scripts / PKGBUILD-like workflow

This approach allows you to:

  • Track upstream changes immediately
  • Apply your own patches
  • Avoid waiting for batch releases

Notes

This repository acts as a distribution/build layer, not the primary source of change logs.
For detailed upstream changes, please refer to the original upstream project releases.