AnyClaw APK를 통해 Android에서 OpenClaw와 Codex CLI를 네이티브로 실행하기

✍️ OpenClawRadar📅 게시일: February 25, 2026🔗 Source
AnyClaw APK를 통해 Android에서 OpenClaw와 Codex CLI를 네이티브로 실행하기
Ad

AnyClaw는 Android용 임베디드 Linux 환경 내에 OpenClaw와 Codex CLI를 번들로 포함한 APK입니다. 설치 후 일회성 OpenAI OAuth 인증을 거치면 게이트웨이와 Control UI가 기기에서 로컬로 실행됩니다.

기술 구현상의 어려움

Android 환경으로 인해 설정 과정에서 상당한 어려움이 있었습니다:

  • 네이티브 FFI: OpenClaw는 koffi에 의존하는데, 이는 사전 빌드된 Android 바이너리가 없습니다. 해결책으로 약 20개의 Termux 패키지(clang, cmake, make, lld, NDK sysroot)를 다운로드하고 휴대폰에서 직접 koffi를 소스에서 빌드해야 했습니다.
  • 바이너리 패치: make와 cmake 바이너리의 ELF 헤더에 하드코딩된 Termux 경로가 있어, 실행 전에 바이너리 패치가 필요했습니다.
  • 게이트웨이 충돌: Xiaomi 기기에서는 Android의 ccmni 셀룰러 인터페이스에 대해 homebridge/ciao(mDNS 라이브러리)가 AssertionError를 발생시켜 게이트웨이가 충돌했습니다. OpenClaw의 unhandledRejection 핸들러는 인식되지 않는 오류에 대해 process.exit(1)을 호출합니다. 수정 방법은 minified된 runner-*.js를 패치하여 "interface"를 포함하는 오류를 잡아 종료 대신 경고로 기록하도록 하는 것이었습니다.
  • 기기 식별: Control UI는 subtle을 통해 토큰을 생성하는데, Android의 Chrome은 보안 컨텍스트(HTTPS 또는 localhost)에서만 이를 노출합니다. 게이트웨이 URL에 http://127.0.0.1을 사용하면 기능이 조용히 중단되었습니다. http://localhost로 전환하여 클라이언트 측을 수정했습니다. 또한, gateway-cli-*.js의 evaluateMissingDeviceIdentity()를 패치하여 dangerouslyDisableDeviceAuth가 설정된 경우 우회를 허용하도록 했는데, 이는 다양한 기기에서 새 설치 시 토큰 협상이 실패했기 때문입니다.
  • DNS 해석: Codex 네이티브 바이너리는 musl에 정적으로 링크되어 있으며, /etc/resolv.conf가 없어 Android에서 호스트 이름을 해석할 수 없습니다. Node.js CONNECT 프록시가 이 격차를 메꾸며, Node.js의 네이티브 Android Bionic 리졸버 사용을 활용합니다.
  • Bionic 호환성 심: bionic-compat.js 심은 process.platform을 'android'에서 'linux'로 패치하고, Android의 다른 /proc/cpuinfo 형식을 처리하도록 os.cpus()를 수정하며, Android의 인터페이스가 오류를 발생시킬 때 가짜 루프백을 반환하도록 os.networkInterfaces()를 래핑합니다.
Ad

설정 및 사용법

  • 게이트웨이는 포트 18789에서, Control UI는 19001에서, codex-web-local 프론트엔드는 18923에서 실행되며, 모두 앱의 개인 저장 공간 내에서 동작합니다.
  • 인증은 기존 Codex OAuth 토큰을 사용합니다; ~/.codex/auth.json의 access_token이 auth-profiles.json에 openai-codex:codex-cli 프로필로 기록됩니다.
  • 기본 모델은 openai-codex/gpt-5.3-codex입니다.
  • 루트 액세스 없이 ARM64 Android 7.0+ 기기에서 작동합니다.

이 프로젝트는 Android 기기에서 직접 OpenClaw와 Codex CLI를 실행하여 로컬 AI 코딩 에이전트 워크플로우를 원하는 개발자에게 유용합니다.

📖 전체 소스 읽기: r/openclaw

Ad

👀 See Also

WhatsApp AI 어시스턴트, Claude Code로 구축된 OpenClaw 대안
Tools

WhatsApp AI 어시스턴트, Claude Code로 구축된 OpenClaw 대안

한 개발자가 Claude Code를 에이전트형 두뇌로 활용하여 WhatsApp AI 어시스턴트를 구축했습니다. 이 프로젝트는 WhatsApp 웹훅을 위한 로컬 릴레이 서버와 MCP 서버 브리징을 포함하며, Arcade를 통해 Google 캘린더, Gmail, Slack에 대한 범위 지정 인증을 제공합니다.

OpenClawRadar
루미아: 지속적 메모리를 갖춘 원클릭 로컬 AI 동반자 시스템
Tools

루미아: 지속적 메모리를 갖춘 원클릭 로컬 AI 동반자 시스템

루미아는 Ollama와 로컬 모델을 사용하여 로컬에서 실행되는 모듈식 시스템으로, 에피소드 메모리, 감정 메모리, 신념, 욕구, 정체성, 관계 모델링 및 반성 주기를 갖춘 지속적인 AI 동반자를 생성합니다.

OpenClawRadar
SynapsCAD: Claude AI 통합 기능을 갖춘 OpenSCAD용 오픈소스 데스크톱 애플리케이션
Tools

SynapsCAD: Claude AI 통합 기능을 갖춘 OpenSCAD용 오픈소스 데스크톱 애플리케이션

SynapsCAD는 OpenSCAD 코드 편집기, 실시간 3D 뷰포트, AI 어시스턴트를 결합한 오픈소스 데스크톱 애플리케이션입니다. Bevy 0.15와 egui를 사용해 Rust로 완전히 구축되었으며, 자연어 3D CAD 코딩을 위한 Claude API 통합을 지원합니다.

OpenClawRadar
OpenClaw 공유 메모리 플러그인: SQLite 기반 다중 에이전트 조정
Tools

OpenClaw 공유 메모리 플러그인: SQLite 기반 다중 에이전트 조정

한 개발자가 OpenClaw 다중 에이전트 설정을 위한 플러그인을 개발하여, 에이전트들이 SQLite를 사용해 메모리를 공유할 수 있도록 하여 외부 서비스 필요성을 제거했습니다. 이 플러그인은 도구를 통한 명시적 메모리 공유, 자동 컨텍스트 추출, 접근 제어, 엔티티 추적, 모순 감지 기능을 제공합니다.

OpenClawRadar