安卓版 -OpenClaw
无需安装 Linux 系统
在 Android 上部署 OpenClaw 的传统做法是通过 proot-distro 安装完整的 Linux 系统,但这会占用 700MB 到 1GB 的额外空间。相比之下,OpenClaw on Android 的方案就巧妙得多——它只安装 glibc 动态链接器 (ld.so),省去了完整的 Linux 发行版,却同样能流畅运行 OpenClaw。
标准方案:通过 proot-distro 在 Termux 中安装完整的 Linux 发行版。
┌───────────────────────────────────────────────────┐
│ Linux Kernel │
│ ┌───────────────────────────────────────────────┐ │
│ │ Android · Bionic libc · Termux │ │
│ │ ┌───────────────────────────────────────────┐ │ │
│ │ │ proot-distro · Debian/Ubuntu │ │ │
│ │ │ ┌───────────────────────────────────────┐ │ │ │
│ │ │ │ GNU glibc │ │ │ │
│ │ │ │ Node.js → OpenClaw │ │ │ │
│ │ │ └───────────────────────────────────────┘ │ │ │
│ │ └───────────────────────────────────────────┘ │ │
│ └───────────────────────────────────────────────┘ │
└───────────────────────────────────────────────────┘
本项目的创新方案:无需 proot-distro,仅保留 glibc 动态链接器。
┌───────────────────────────────────────────────────┐
│ Linux Kernel │
│ ┌───────────────────────────────────────────────┐ │
│ │ Android · Bionic libc · Termux │ │
│ │ ┌───────────────────────────────────────────┐ │ │
│ │ │ glibc ld.so (linker only) │ │ │
│ │ │ ld.so → Node.js → OpenClaw │ │ │
│ │ └───────────────────────────────────────────┘ │ │
│ └───────────────────────────────────────────────┘ │
└───────────────────────────────────────────────────┘
| 标准版(proot-distro) | 这个项目 | |
|---|---|---|
| 存储开销 | 1-2GB(Linux + 软件包) | 约200MB |
| 设置时间 | 20-30分钟 | 3-10分钟 |
| 表现 | 较慢(根层) | 原生速度 |
| 设置步骤 | 安装发行版,配置 Linux,安装 Node.js,修复路径…… | 运行一条命令 |
爪子应用
除了命令行版本,还提供了独立的安卓应用。这个应用将终端模拟器和基于 WebView 的用户界面打包到一个 APK 文件中——完全不需要 Termux 环境。
- 一键安装:通过应用内即可完成 Bootstrap、Node.js 和 OpenClaw 的安装
- 内置仪表盘,用于网关控制、运行时信息和工具管理
- 独立于 Termux 运行——安装此应用不会影响现有的 Termux +
oa设置
直接从发布页面下载 APK 文件即可开始使用。
要求
- Android 7.0 或更高版本(推荐 Android 10+)
- 约 1GB 可用存储空间
- Wi-Fi 或移动数据连接
它的功能
安装程序会自动处理 Termux 和标准 Linux 之间的差异。用户无需手动执行任何复杂操作——一条安装命令就能搞定所有问题:
- glibc 环境— 安装 glibc 动态链接器(通过 pacman 的 glibc-runner),让标准 Linux 二进制文件无需修改即可运行
- Node.js (glibc)— 下载官方的 Node.js linux-arm64 版本,并用 ld.so 加载脚本对其进行封装(不使用 patchelf,因为 patchelf 会导致 Android 系统出现段错误)
- 路径转换— 自动将标准 Linux 路径(例如
/tmp、/bin/sh、/var/www/、/usr/bin/env)转换为 Termux 路径 - 临时文件夹设置— 配置一个可供 Android 访问的临时文件夹
- 服务管理器绕过— 配置无需 systemd 的正常运行
- OpenCode 集成— 如果选中,则使用 proot + ld.so 拼接方式安装 Bun 独立二进制文件的 OpenCode
逐步设置(从新手机开始)
- 准备好你的手机
- 安装 Termux
- Termux 初始设置
- 安装 OpenClaw——只需一条命令
- 开始 OpenClaw 设置
- 启动 OpenClaw(网关)
第一步:准备好你的手机
配置开发者选项、保持唤醒状态、充电限制和电池优化。有关分步说明,请参阅“保持进程运行”指南。
步骤 2:安装 Termux
重要提示:Play 商店版本的 Termux 已停止服务,无法使用。必须从 F-Droid 安装。
- 打开手机浏览器,访问 f-droid.org
- 搜索
Termux,然后点击“下载 APK”进行下载和安装- 当提示时,允许“安装来自未知来源的产品”
步骤 3:Termux 初始设置
打开 Termux 应用程序,粘贴以下命令安装 curl(下一步需要用到)。
pkg update -y && pkg install -y curl
第一次运行时,可能会被要求选择镜像源。随便选一个——地理位置更近的镜像速度会更快。
步骤 4:安装 OpenClaw
提示:使用 SSH 更方便输入。从这一步开始,就可以在电脑键盘上输入命令,而无需在手机屏幕上操作。详情请参阅 Termux SSH 设置指南。
将以下命令粘贴到 Termux 中。
curl -sL myopenclawhub.com/install | bash && source ~/.bashrc
所有程序都会通过一条命令自动安装。安装时间取决于网络速度和设备情况,通常需要 3 到 10 分钟。建议使用 Wi-Fi。
完成后,将显示 OpenClaw 版本以及运行说明 openclaw onboard。
步骤 5:开始 OpenClaw 设置
按照安装输出中的说明运行:
openclaw onboard
按照屏幕上的指示完成初始设置。
步骤 6:启动 OpenClaw(网关)
设置完成后,启动网关:
重要提示:请
openclaw gateway直接在手机上的 Termux 应用中运行,不要通过 SSH 运行。如果通过 SSH 运行,SSH 会话断开后,网关将停止工作。
网关运行时会占用终端屏幕,因此请为其打开一个新标签页。点击底部菜单栏上的汉堡图标 (☰),或从屏幕左边缘(底部菜单栏上方)向右滑动以打开侧边菜单。然后点击“新建会话”。
在新标签页中运行:
openclaw gateway
要停止网关,请按
Ctrl+C。不要使用Ctrl+Z- 它只会暂停进程而不会终止它。
保持流程活跃
屏幕关闭时,Android 可能会终止后台进程或限制其运行速度。有关所有推荐设置(开发者选项、保持屏幕唤醒、充电限制、电池优化和幽灵进程杀手),请参阅“保持进程运行”指南。
通过电脑访问控制面板
有关 SSH 访问和仪表板隧道设置,请参阅 Termux SSH 设置指南。
管理多个设备
如果在同一网络上的多台设备上运行 OpenClaw,可以使用 Dashboard Connect 工具从 PC 统一管理它们。
- 为每个设备保存连接设置(IP、令牌、端口)并为其命名
- 自动生成 SSH 隧道命令和仪表盘 URL
- 数据完全保留在本地——连接设置(IP、令牌、端口)仅保存在浏览器的 localStorage 中,绝不会发送到任何服务器
CLI 参考
安装完成后,oa 命令即可用于管理安装:
| 选项 | 描述 |
|---|---|
oa --update |
更新 OpenClaw 和 Android 补丁 |
oa --install |
安装可选工具(tmux、代码服务器、AI CLI 等) |
oa --uninstall |
在安卓设备上移除 OpenClaw |
oa --status |
显示安装状态和所有已安装组件 |
oa --version |
显示版本 |
oa --help |
显示可用选项 |
更新
oa --update && source ~/.bashrc
这条命令可以一次性更新所有已安装的组件:
- OpenClaw— 核心包 (
openclaw@latest) - 代码服务器— 浏览器集成开发环境
- OpenCode——人工智能编码助手
- AI CLI 工具——Claude Code、Gemini CLI、Codex CLI
- Android 补丁— 来自此项目的兼容性补丁
已是最新版本的组件将被跳过。尚未安装的组件不会被更新——只有设备上已有的组件才会更新。可以安全地多次运行。
如果
oa命令不可用(旧版本),请使用 curl 运行它:curl -sL myopenclawhub.com/update | bash && source ~/.bashrc
故障排除
请参阅故障排除指南以获取详细解决方案。
表现
类似 openclaw status 这样的命令行操作可能会感觉比在电脑上慢。这是因为每个命令都需要读取大量文件,而手机的存储速度比电脑慢,再加上安卓系统的安全处理也会增加额外的开销。
然而,一旦网关运行起来,就没有任何区别了。进程会驻留在内存中,因此无需重新读取文件,而人工智能的响应则在外部服务器上处理——速度与在 PC 上一样快。
Android 上的本地 LLM
OpenClaw 通过 node-llama-cpp 支持本地 LLM 推理。预编译的本地二进制文件(@node-llama-cpp/linux-arm64)包含在安装程序中,并且可以在 glibc 环境下成功加载——本地 LLM 在手机上技术上是可以正常工作的。
然而,实际操作中存在一些限制:
| 约束 | 细节 |
|---|---|
| 内存 | GGUF 机型至少需要 2-4GB 的可用内存(7B 机型,Q4 量化版本)。手机 RAM 与 Android 和其他应用共享。 |
| 贮存 | 模型文件大小从 4GB 到 70GB 以上不等,手机存储空间很快就会被占满。 |
| 速度 | 在 ARM 架构上,仅使用 CPU 进行推理速度非常慢。Android 不支持 llama.cpp 的 GPU 卸载。 |
| 用例 | OpenClaw 主要调用云端 LLM API(例如 OpenAI、Gemini 等),其响应速度与在 PC 端相同。本地推理是一项补充功能。 |
用于实验的小型模型,例如 TinyLlama 1.1B(Q4,约 670MB),可以在手机上运行。对于生产环境,建议使用云端 LLM 服务提供商。
为什么
--ignore-scripts?安装程序npm install -g openclaw@latest --ignore-scripts之所以这样做,是因为 node-llama-cpp 的安装后脚本会尝试通过 cmake 从源代码编译 llama.cpp——这个过程在手机上需要 30 分钟以上,并且会因为工具链不兼容而失败。预编译的二进制文件无需此编译步骤即可运行,因此可以安全地跳过安装后步骤。



