# Claude Code on Android with Termux: what works

> Claude Code broke on plain Termux in April 2026: it became a glibc binary Android can't run. Ubuntu in proot-distro works; a remote computer works better.

Source: https://shuriken.sh/guides/claude-code-android-termux

Plain Termux can't run current Claude Code, because since 2.1.113 it ships as a glibc Linux binary and no Android build exists. Ubuntu inside proot-distro runs the official installer, slowly; running Claude Code on a computer and steering it from the phone is steadier.

By Shuriken Updated 27 October 2026 7 min read

**Contents**

Claude Code in plain Termux broke on 17 April 2026, when version 2.1.113 replaced the JavaScript CLI with a native Linux binary built for glibc. Android's C library is Bionic, Anthropic publishes no Android build, and claude is left printing Error: claude native binary not installed. Two routes still work: Ubuntu inside proot-distro, which is slower, and Claude Code on a computer with the phone as its remote.

Anthropic's [setup page](https://code.claude.com/docs/en/setup) doesn't list Android at all. Its systems are macOS 13+, Windows 10 1809+ or Windows Server 2019+, Ubuntu 20.04+, Debian 10+ and Alpine Linux 3.19+, with 4 GB of RAM and an x64 or ARM64 processor. So whatever below runs on the phone itself is a community route, and we mark it where it matters.

## Why Claude Code fails in plain Termux #

Termux is a Linux-like shell, but every program in it is built against Bionic. Claude Code up to 2.1.112 (published 16 April 2026) was a cli.js file that Node.js 18 or later could run, so npm install -g @anthropic-ai/claude-code worked in Termux. From 2.1.113 the package downloads a compiled binary instead, and the docs now list the npm platforms it ships for: darwin-arm64, darwin-x64, linux-x64, linux-arm64, linux-x64-musl, linux-arm64-musl, win32-x64 and win32-arm64.

Under Termux, Node's process.platform is android. We read install.cjs in 2.1.310, the newest release on 24 October 2026, and it turns that into a request for linux-arm64-android. npm has no such package. The script prints Native binaries for linux-arm64-android are not available on this release channel., links nothing, and the claude you're left with is a stub whose only output is Error: claude native binary not installed.

The report is [anthropics/claude-code#50270](https://github.com/anthropics/claude-code/issues/50270), opened on 18 April 2026 and still open on 24 October 2026, labelled platform:android and regression. On 23 April a Claude Code collaborator replied there: "We may add support for Android in the future - this requires either a bun target for android-arm64 or static musl." No date was given, and none has appeared in the thread since.

## Install Claude Code in Termux with proot-distro Ubuntu #

proot-distro runs a regular Linux distribution on top of Termux without root. Ubuntu inside it has glibc, so Anthropic's standard linux-arm64 build and the official installer work there. This is a community route: Anthropic doesn't document it, and the reports that it works come from users in issue #50270.

- Get Termux from F-Droid or its GitHub releases. The Google Play build is a different one (next section).
- pkg update, then pkg install proot-distro.
- proot-distro install ubuntu sets Ubuntu up; proot-distro login ubuntu opens a shell in it.
- Inside Ubuntu, apt update && apt install -y curl git, because Anthropic's docs note that a fresh Ubuntu may not have curl.
- Run Anthropic's installer: curl -fsSL https://claude.ai/install.sh | bash. If claude isn't found afterwards, add ~/.local/bin to your PATH.
- Start claude in your project folder. If no browser opens at the sign-in prompt, press c to copy the login link, open it in the phone's browser, sign in, and paste the code it shows at Paste code here if prompted ([authentication docs](https://code.claude.com/docs/en/authentication)).

proot is slow by design. The [proot-distro README](https://github.com/termux/proot-distro) says it "intercepts every system call via ptrace" and calls filesystem-heavy work "noticeably slower than native execution", and reading and writing files is most of what a coding agent does. Reports in the issue differ: one user who later moved to a native launcher wrote that it had "no ptrace tax, instant keyboard, no startup lag" compared with proot, while another wrote that "Claude works pretty much the same in either environment" for them. Releases can also break in new ways: in June 2026 some versions crashed on Android because a system call Bun relies on is blocked there ([Bun #32489](https://github.com/oven-sh/bun/issues/32489)), and Bun merged a fix on 21 June.

## The other routes people use in Termux #

npm install -g @anthropic-ai/claude-code@2.1.112 installs the last JavaScript release, and that one still runs in plain Termux. Users in the thread found the auto-updater replacing the pin, so add "DISABLE_AUTOUPDATER": "1" to the env block of ~/.claude/settings.json. You're then on a build from April 2026 that misses every fix since, and Anthropic's setup page notes that a newly launched model can need a newer Claude Code than even the week-old stable channel serves. Installing @stable stopped being a shortcut: the tag pointed at 2.1.112 in April, and on 24 October 2026 it points at 2.1.308, a native build.

Community launchers posted in the thread download Anthropic's linux-arm64 binary and patch it to run on Termux's glibc packages. Some users run current versions this way. Others report it fails on their phone, because their Android build ignores the patched loader, and one user who runs it called it "one upstream ELF/bun change away from breaking". Anthropic doesn't support a modified binary, and section 3 of its [Consumer Terms](https://www.anthropic.com/legal/consumer-terms) bars reverse engineering its services, so read them before you choose this.

Some Pixel phones also have a Linux terminal: a Debian virtual machine you turn on under Developer options, which [The Register reported](https://www.theregister.com/software/2025/03/13/google-slips-built-in-linux-terminal-into-android-15-update/865830) reaching Android 15 Pixels with the March 2025 feature drop. Debian 10+ is on Anthropic's list, but we haven't tested Claude Code in it.

## Termux install errors: "signatures do not match" and mixed sources #

F-Droid, GitHub and Google Play each sign Termux and its plugins with their own key, says the [Termux README](https://github.com/termux/termux-app). Mix sources and Android refuses with App not installed, INSTALL_FAILED_UPDATE_INCOMPATIBLE or signatures do not match previously installed version. Moving to another source means uninstalling Termux and every Termux plugin, then installing them all from the new one. Uninstalling wipes the app's home folder, so back it up first.

The Google Play build is the README's "Experimental branch": built from a separate repository, for Android 11 and later, with "missing functionality and bugs" compared with F-Droid. A user on the Play build reported in issue #50270 on 21 October 2026 that its package repository lacks the glibc-repo package the patched launchers need. That is one device, but it matches what the README warns about.

With Shuriken you follow and answer your agents' chats from your phone.

[Download](https://shuriken.sh/download)

## Battery and background limits #

Android 12 and later kill Termux's processes on their own. Per the Termux README, the system kills "phantom" processes once there are more than 32 of them across all apps, plus any process using excessive CPU, and Termux then shows [Process completed (signal 9) - press Enter] though you never exited. An agent that runs builds and tests for an hour is that kind of load. The README links ways to turn the trimming off.

Run termux-wake-lock before a long session. Its help text says it will "Acquire the Termux wake lock to prevent the CPU from sleeping", and termux-wake-unlock releases it. If battery optimisation is still on for Termux, taking the wake lock also asks Android to turn it off ([TermuxService source](https://github.com/termux/termux-app/blob/master/app/src/main/java/com/termux/app/TermuxService.java)): allow it. Even then, a phone in a pocket on mobile data is a poor host for a session that runs for an hour.

## Run Claude Code on a computer and steer it from Android #

The steadier way to use Claude Code on an Android phone leaves the agent on a Mac, PC or Linux server and makes the phone the remote. The code, the build tools and the session history stay on a machine that doesn't sleep in your pocket.

Anthropic's own answer is [Remote Control](https://code.claude.com/docs/en/remote-control). Start claude remote-control, claude --remote-control or /remote-control on the computer, then open the session in the Claude app for Android or at claude.ai/code. It needs a Pro, Max, Team or Enterprise plan, and API keys are not supported. If the session never shows up on the phone, the fixes are in [Claude Code Remote Control not working](https://shuriken.sh/guides/claude-code-remote-control-not-working).

Happy is an open-source app for iOS, Android and the web: install its CLI on the computer with npm install -g happy, start Claude Code with happy claude, and the phone follows it ([GitHub](https://github.com/slopus/happy)). And Termux is still useful here, as the SSH client. Run pkg install openssh, connect to the computer, and attach to a tmux session that keeps Claude Code alive after you disconnect. Signing in on a headless box and giving the server its own Git access are covered in [running Claude Code over SSH](https://shuriken.sh/guides/claude-code-over-ssh), and all four phone options are compared in [how to run Claude Code from your phone](https://shuriken.sh/guides/run-claude-code-from-your-phone).

## How Shuriken does it on Android #

Shuriken is a harness: Claude Code, Codex, Gemini CLI and the other agents run in chats on your own computers and servers, Linux servers included. On an Android phone you open app.shuriken.sh in Chrome, sign in, and add it to the home screen from the ⋮ menu (some versions say Install app). Browsers never count as linked devices.

The phone then shows every chat on every machine you've added. You answer an agent's questions there, read the changes in the chat's branch, and type or say the next message; it waits in the queue until the agent is free. Traffic between your devices is end-to-end encrypted, so our cloud relays it but can't read it ([what the phone web app can do](https://shuriken.sh/blog/phone-web-app)). The phone runs no agent; your computers do, and they have to stay awake.

Two limits. The web app gets account alerts by push, not "a chat needs you" alerts. And the native Android app is still coming, planned for November 2026 (our post on what the Shuriken Android app will feel like describes it). If you want one place for every agent on every machine, [download Shuriken](https://shuriken.sh/download) for the computer that does the work.

Share

[X](https://x.com/intent/post?url=https%3A%2F%2Fshuriken.sh%2Fguides%2Fclaude-code-android-termux&text=Claude%20Code%20on%20Android%20with%20Termux%3A%20what%20works)[LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fshuriken.sh%2Fguides%2Fclaude-code-android-termux)[Hacker News](https://news.ycombinator.com/submitlink?u=https%3A%2F%2Fshuriken.sh%2Fguides%2Fclaude-code-android-termux&t=Claude%20Code%20on%20Android%20with%20Termux%3A%20what%20works)[Reddit](https://www.reddit.com/submit?url=https%3A%2F%2Fshuriken.sh%2Fguides%2Fclaude-code-android-termux&title=Claude%20Code%20on%20Android%20with%20Termux%3A%20what%20works)[E-mail](mailto:?subject=Claude%20Code%20on%20Android%20with%20Termux%3A%20what%20works&body=https%3A%2F%2Fshuriken.sh%2Fguides%2Fclaude-code-android-termux)

## Sources

- [Claude Code docs: Advanced setup (system requirements, npm platforms, auto-updates)](https://code.claude.com/docs/en/setup) (accessed 24 October 2026)
- [Claude Code docs: Authentication](https://code.claude.com/docs/en/authentication) (accessed 24 October 2026)
- [Claude Code docs: Remote Control](https://code.claude.com/docs/en/remote-control) (accessed 24 October 2026)
- [anthropics/claude-code issue #50270: v2.1.113+ broken on Termux/Android](https://github.com/anthropics/claude-code/issues/50270) (accessed 24 October 2026)
- [npm: @anthropic-ai/claude-code (dist-tags, versions, install.cjs of 2.1.310)](https://www.npmjs.com/package/@anthropic-ai/claude-code) (accessed 24 October 2026)
- [Termux app README (installation sources, Android 12+ notice)](https://github.com/termux/termux-app) (accessed 24 October 2026)
- [PRoot-Distro README](https://github.com/termux/proot-distro) (accessed 24 October 2026)
- [termux-tools: termux-wake-lock](https://github.com/termux/termux-tools/blob/master/scripts/termux-wake-lock.in) (accessed 24 October 2026)
- [termux-app: TermuxService.java (wake lock asks to disable battery optimisation)](https://github.com/termux/termux-app/blob/master/app/src/main/java/com/termux/app/TermuxService.java) (accessed 24 October 2026)
- [oven-sh/bun issue #32489: epoll_pwait2 segfault on Android](https://github.com/oven-sh/bun/issues/32489) (accessed 24 October 2026)
- [Anthropic Consumer Terms of Service](https://www.anthropic.com/legal/consumer-terms) (accessed 24 October 2026)
- [The Register: Android gets a Linux terminal (13 March 2025)](https://www.theregister.com/software/2025/03/13/google-slips-built-in-linux-terminal-into-android-15-update/865830) (accessed 24 October 2026)
- [Happy (slopus/happy) on GitHub](https://github.com/slopus/happy) (accessed 24 October 2026)

## Frequently asked questions

**Does Claude Code officially support Android?**

No. Android isn't among the systems on Anthropic's setup page (macOS 13+, Windows 10 1809+ or Server 2019+, Ubuntu 20.04+, Debian 10+, Alpine 3.19+), and npm carries no Android build. GitHub issue #50270 asks for one; it was still open on 24 October 2026.

**Why does npm install of Claude Code fail in Termux?**

Termux's Node reports the platform as android, so Claude Code's install script asks npm for linux-arm64-android. That package isn't published, and what's left is a stub whose only output is Error: claude native binary not installed.

**Is the proot-distro route slow?**

It can be. proot routes every system call through ptrace, and its README calls filesystem-heavy work noticeably slower than native. Users in issue #50270 disagree on how much: one who left proot praised the native route for having no startup lag, another found Claude Code much the same in both.

**Can I use Claude Code from the Claude app on Android?**

Yes, through Remote Control, with the agent running on your computer rather than the phone. Run claude remote-control or /remote-control there and pick the session in the Claude app. Pro, Max, Team and Enterprise plans have it; API keys don't work.

**Does the npm stable tag still install a version that works in Termux?**

No. It pointed at 2.1.112, the last JavaScript release, in April 2026, and on 24 October 2026 it points at 2.1.308, a native build. If you take the npm route, pin 2.1.112 by its number.

On your phone

Your agents in your pocket.

Follow every chat from your phone: the queue, the changes and your voice, end-to-end encrypted.

[Download](https://shuriken.sh/download)

[Other platforms](https://shuriken.sh/download#main)

## Keep reading

- [We're building native iOS and Android apps: Planned 27 Oct 2026 3 min read Two native phone apps for Shuriken, iPhone and Android, are planned for November 2026. Until then, phones use the web app at app.shuriken.sh.](https://shuriken.sh/blog/native-ios-android-apps)
- [Install Claude Code on Linux: Ubuntu, Fedora, Alpine: Guide 27 Oct 2026 8 min read To install Claude Code on Linux, run curl -fsSL https://claude.ai/install.sh | bash, or add Anthropic's signed apt, dnf or apk repository.](https://shuriken.sh/guides/install-claude-code-on-linux)
- [Get Claude Code notifications on your phone: Guide 27 Oct 2026 6 min read Get a phone push when Claude Code finishes or needs approval: Remote Control's built-in push, or a Stop and Notification hook with ntfy. Codex too.](https://shuriken.sh/guides/claude-code-notifications-on-your-phone)
- [How to use Claude Code on an iPad: Guide 27 Oct 2026 7 min read Claude Code doesn't run on iPadOS. On an iPad you drive it remotely: Remote Control, cloud sessions at claude.ai/code, or SSH and tmux to your computer.](https://shuriken.sh/guides/claude-code-on-ipad)
- [Claude Code on Telegram, Discord or iMessage: Guide 27 Oct 2026 8 min read Claude Code reaches Telegram, Discord and iMessage through channels, a research preview: an official plugin and claude --channels, on your own computer.](https://shuriken.sh/guides/claude-code-telegram-discord-channels)
- [Codex remote control: run Codex from your phone: Guide 27 Oct 2026 7 min read Codex remote control runs through the ChatGPT mobile app and a paired Mac or Windows PC. Linux works only as an SSH host; the CLI command is experimental.](https://shuriken.sh/guides/codex-remote-control-from-phone)
- [A notification when a chat needs you: Update 27 Oct 2026 3 min read Get a desktop notification when Claude Code or Codex finishes, asks a question or wants approval. The DIY hooks route, and what Shuriken does for you.](https://shuriken.sh/blog/desktop-notifications)
- [Shuriken vs Claude Code Desktop (2026): Comparison 27 Oct 2026 5 min read Anthropic's desktop app is official and comes with your plan. Shuriken runs the same Claude Code CLI and adds several accounts, other agents and servers.](https://shuriken.sh/compare/claude-code-desktop)

## Free tools

- [Claude limit reset tracker](https://shuriken.sh/tools/limit-resets/claude)
- [Codex limit reset tracker](https://shuriken.sh/tools/limit-resets/codex)
