npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

opencode-termux

v1.18.14-0

Published

OpenCode AI assistant compiled for Android Termux (aarch64) with auto-update support

Downloads

8,642

Readme

opencode-termux packages OpenCode's official ARM64 musl build with the runtime required by Termux.

Install

On Termux aarch64:

npm install -g opencode-termux
opencode

The first run prepares everything needed by the runtime automatically. It installs missing Termux packages, downloads the matching release, verifies it, and starts OpenCode.

First-run experience

Installation is intentionally quiet. Instead of command logs, it only shows short status messages such as:

  ◇ Setting up Termux dependencies…
  ✓ Termux dependencies are ready
  ◇ Preparing OpenCode for Termux…
  ✓ OpenCode 1.18.4-8 is ready

Detailed command output is kept hidden unless an error occurs.

Screenshots

Automatic dependency setup

Before installing or starting OpenCode, the wrapper checks for the runtime prerequisites. When needed, it installs them through Termux's pkg command:

  • curl for release downloads
  • tar for archive extraction
  • patchelf for the Termux-compatible ELF interpreter
  • coreutils for the update timeout command
  • ca-certificates for HTTPS certificates
  • resolv-conf for the DNS configuration used by the packaged musl runtime

Node.js and npm are the only prerequisites because npm is used to install this package:

pkg install nodejs

How it works

| Feature | Behavior | | --- | --- | | Verified downloads | The installer checks the release SHA-256 against release-checksums.json bundled in npm. | | Complete runtime | The OpenCode binary, musl loader, libgcc, and libstdc++ are stored in ~/.opencode/. The packaged musl resolver uses Termux's DNS configuration, so API connections work natively on Android. | | Safe updates | A newer npm package is installed first. The working runtime is kept if npm or the network fails. | | Version matching | ~/.opencode/.opencode-termux-version ensures the runtime always matches the installed npm package. | | OpenCode updates | OpenCode's internal updater is disabled so it cannot replace the Termux-compatible binary. |

opencode
  │
  ├─ Check and install missing Termux dependencies
  ├─ Check the installed runtime and its version marker
  │   └─ If needed: download → verify SHA-256 → test → activate
  ├─ Check npm for a newer package (up to 10 seconds)
  │   └─ If newer: install package → restart wrapper → install matching runtime
  └─ Run ~/.opencode/opencode

Automated releases

The Build and publish Termux package workflow runs every six hours and can also be started manually.

  1. It detects the latest official OpenCode release through GitHub's API.
  2. It downloads opencode-linux-arm64-musl.tar.gz and verifies GitHub's SHA-256 digest.
  3. It packages the binary with ARM64 musl, libgcc, and libstdc++ runtime libraries. The musl runtime is built from pinned source with Termux's resolver path so it can use Android DNS without Proot.
  4. It creates the release archive and records its SHA-256 in release-checksums.json.
  5. It publishes the npm package, creates the GitHub Release, and commits the generated checksum metadata.

Publish jobs are serialized. If npm already has a version but its GitHub Release is missing, the workflow stops instead of generating an archive with a mismatched checksum.

Update or repair

Running opencode normally checks for updates automatically.

# Check the latest published version
npm view opencode-termux version

# Update immediately
npm install -g opencode-termux@latest
opencode

# Reinstall the managed runtime without deleting the current files first
rm -f ~/.opencode/.opencode-termux-version
opencode

Uninstall

npm uninstall -g opencode-termux
rm -rf ~/.opencode

The second command removes only the runtime managed by this package. OpenCode configuration, if any, is normally kept in ~/.config/opencode.

Project layout

bin/opencode                       Update and launch wrapper
install.js                          Quiet verified installer and dependency setup
release-checksums.json              SHA-256 for the release matching the npm package
scripts/build-android-release.sh    Reproducible ARM64/Termux package builder
.github/workflows/auto-update.yml   Automated detection and publishing workflow

License

MIT