Roda o OpenCode nativamente dentro do Android — sem PC, sem SSH, sem container. Serve pra você pedir e editar código direto no celular, inclusive montar site, e ver rodando no próprio aparelho.
Testado num moto g32, Android 13, arm64: TUI abre, aceita prompt e o modelo responde.
curl -fsSL https://raw.githubusercontent.com/Ryanabcraft/opencode-for-celular/main/install-termux.sh | bashDepois:
opencode # ou opencode2 — os dois abrem o mesmo appRodar o mesmo comando de novo atualiza para a release mais nova.
Deu erro de repositório/mirror no
pkg? Rodepkg updatee repita o comando.
- Termux do F-Droid — o da Play Store está abandonado e quebra os pacotes
- Android 7+ e aparelho arm64 (todo celular atual;
uname -mprecisa daraarch64) - ~1 GB livre (o binário tem 173 MB + 22 MB de biblioteca)
- Pede a permissão de armazenamento (
termux-setup-storage) — só se você ainda não liberou, e negar não trava a instalação. É isso que deixa o OpenCode abrir projetos que estão no/sdcard. - Confere se
unzipecurlexistem (já vêm no Termux) e instala se faltar. - Descobre a release mais nova do guysoft/opencode-termux (o build Android do OpenCode).
- Baixa o zip e confere o SHA256 contra o manifesto da própria release.
- Instala em
$PREFIX/bin/opencode2+$PREFIX/libexec/opencode2/(o layout que o wrapper espera). - Roda
opencode2 --version— se o binário não rodar neste Android, ele grita em vez de fingir que deu certo. - Cria o atalho
opencode(só se você não tiver umopencodeinstalado, ex. a v1). - Instala o
ripgrepse faltar — é org, a busca de arquivos que o agente usa pra achar texto no seu projeto.
Offline / zip já baixado: OC_ZIP=<zip> OC_SUMS=<SHA256SUMS> bash install-termux.sh.
cd minha-pasta
opencodeJá vem com um modelo grátis selecionado (Nemotron 3.5 Super VL Free) — deu pra mandar prompt sem login nenhum.
Para usar seus provedores (Anthropic, OpenAI, OpenRouter...):
opencode auth loginJá tem OpenCode configurado no PC? Dá pra levar as credenciais:
# no PC
opencode auth export > creds.json # contém segredos, não cole em chat
# no celular
opencode auth import < creds.json && rm creds.jsonpkg install -y git nodejs-lts python
mkdir meu-site && cd meu-site && git init
opencodeO projeto está nos arquivos do celular (Downloads, Documentos)? O caminho é ~/storage/shared/...
— ex: cd ~/storage/shared/Download/meu-site. É pra isso que serve a permissão de armazenamento do passo 1.
Peça o site normal. Para ver o resultado, suba um preview e abra no navegador do próprio celular:
python -m http.server 8080 # abra http://localhost:8080Dica: termux-wake-lock antes de tarefa longa (senão o Android mata a sessão com a tela apagada).
Teclado: o Termux já traz a barra com ESC/CTRL/ALT — ajuda bastante.
# atualizar: rode o mesmo comando do topo
# desinstalar
rm -f "$PREFIX/bin/opencode2" "$PREFIX/bin/opencode" && rm -rf "$PREFIX/libexec/opencode2"- É a linha 2.x pré-release do build Android: a versão é
2.0.0-android-termux.2(o OpenCode oficial já está em 2.0.32). - File watcher desligado (o
@parcel/watchersó existe pra x86 — cai em polling). Funciona, gasta mais bateria. - Sem
bun upgradee sem auto-update pelo app: atualize rodando o comando do topo. - FFI/TinyCC pode gerar código inválido em ARM64 (raro; o OpenCode quase não usa).
- É TUI, não GUI.
O OpenCode oficial é um binário compilado com Bun, e Bun não suporta Android
(issue fechada como "not planned"). Além disso o seccomp do Android
mata com SIGSYS qualquer binário que chame close_range — que o Bun chama. O build usado aqui é o
Bun + WebKit/JSC cross-compilados para Android, com esse bug corrigido.
- OpenCode 1.x nativo (estável) — mesmo repo, pacote
opencode(v1). Use se o 2.x te travar. - bun-termux — shim do Bun +
replace_runtime.pypara trocar o runtime de um bundle oficial. - UDocker/Cortermux — Ubuntu em container dentro do Termux; pesa mais, roda o binário oficial Linux.
opencode serveno PC + web UI — o jeito mais leve de usar do celular; não é este projeto.
- Binários: guysoft/opencode-termux (MIT)
- OpenCode: anomalyco/opencode