**Cause:** Claude Code hardcodes `/tmp` for background tasks. Termux doesn't have `/tmp`.
**Fix:** Always start Claude via `clauded`, which uses `termux-chroot` to provide a working `/tmp`.
```bash
# Wrong
claude
# Right
clauded
```
**Why not proot?** `proot -b $PREFIX/tmp:/tmp` only affects the main process. Child processes (Bash tool, agents) run in separate shells without the binding. `termux-chroot` simulates a full FHS where `/tmp -> /usr/tmp` works for ALL processes.
---
## Native Binary Error (v2.1.113+)
**Error:** `claude native binary not installed`
**Cause:** Starting with v2.1.113, Anthropic migrated from `cli.js` (pure Node.js) to native binaries (SEA). Termux reports `process.platform === 'android'` which is not supported.
**Why no workaround:**
-`npm install --force` of linux-arm64 downloads the binary but needs `/lib/ld-linux-aarch64.so.1` (glibc) or `/lib/ld-musl-aarch64.so.1` (musl)