背景:已知Openclaw的安全隐患实在是太严重了,所以我选择使用Android系统,在Termux中进行安装
写在前面:
-
本来是想正儿八经弄个教程的,但是要贴的图实在是太多太多了。所以只贴了一半的图,后面的图也差不多,就不贴了。
-
这个openclaw,因为安装在Termux上,跟默认的常驻模式(电脑上)不一样,是只能手动启动,手动停止,
-
为了避免在我不知情的情况下消耗token,我也没有设定进程一直运行(其实是可以做的,但是麻烦,而且没有必要,它只需要在我需要时todo即可)
-
运行效果是,我启动,则可以用,我关闭,则不能用。
-
为什么有这么多安全隐患,还是安装了openclaw?
这个就涉及到Android系统本身的安全权限管控,包括你的手机没有root/连数据线的情况下,是不能获取sudo之类的权限的。我个人还是比较信任Android系统的安全管理,而且openclaw又在termux中,一些东西它完全安装不了,so,越狱是不太可能了(PS:可能会有人说docker也安全啊,其实docker也有容器逃逸的风险,我就不弄了,主要是用手机安装,我想放在哪里,就放在哪里,便携,而且安全性,相对来讲我已经可以接受了)
目前这个环境来讲,已经受控很多了,但不清楚以后会不会有更多的技能投毒之类的,目前还是可以的。
有人可能不了解Termux(自行了解吧),软件的安装步骤:Termux 安装 - 人间春风意 - 博客园
- 因为这个是旧手机,Termux里的环境毕竟旧了,所以先执行
pkg update && pkg upgrade
作用是:更新本地的软件包列表 & 将系统中已安装的所有可升级软件包升级到最新版本

安装pnpm
npm install -g pnpm

初始化 pnpm 环境的命令
pnpm setup

使配置环境生效(毕竟,terminal中修改环境变量后,需要全关再开,才生效,这个命令就是让其立刻生效)

安装git
pkg install git

安装openclaw
pnpm add -g openclaw@latest

下面这个命令可以执行,也可以不执行(因为这个命令一直执行下去,会配置环境需要的一些参数 ,但最后会报错,提示Gateway service install not supported on android
但是,不支持是原因是因为它所需要的后台一直运行的一些命令它不支持,So,这也是我觉得使用这个环境更安全受控一点的原因)
报错最后忽略 就行,因为后面可以直接执行open onboard,在推荐选择安装gateway时,选择No,不安装gateway,然后直接使用openclaw gateway --port 10101(端口自定义,随便)就可以启动,飞书也可以正常发送接受消息。

这个是危险声明,但危险在所难免,选择Yes(Termux 在 Android 系统中运行在应用沙盒中,默认情况下无法访问其他应用的数据,So,一些软件,想卸载就卸载,不想卸载就不卸载。建议卸载,谨防权限越狱)
(这个Yes要用Termux的<-按钮选中)

选择快速启动(也可以选择Manual)

确认自己要使用的模型,以及配置认证信息,(已知默认里面的Qwen配置是网页登录认证,但termux是纯命令行,所以建议选择Custom Provider,自行配置模型地址,以及APIKey,也可以先跳过,后面再使用 openclaw config的命令修改model的配置使用在最后有贴图qwen是怎么获取key的)


选择暂时跳过

这个选择All providers

设定默认调用的模型,可以访问外网的,就默认,不可以的就自行设定,或者选择下列的模型,All is ok .

国内就自行设定默认模型了

软件选的飞书(PS:没有选择微信,是因为怕账号被封,毕竟微信里加的都是真人)

本来选择直接下载最新的,但是报错了,没空看,就直接用local的了。

使用飞书,文章的最后面,有配置飞书需要配置的内容,这里就假设你已经配好了,拿到了keyid,key sceret,以及机器人可以使用的群聊id

选择输入App密钥,并复制飞书页面(最下面飞书相关的图)中的AppSecret



飞书的连接模式,选择默认的即可

地域选择中国

聊天的策略,也选择默认(后面再配置群组)

配置chat_id(拿chat_id的方式,在最下面)

搜索引擎

选择搜索引擎提供商,默认即可(这个国内网默认不通),然后key设定跳过,这个搜索API有免费额度,但超过后会收费,就直接跳过,不用了,

技能就先不配置了


hook先跳过


然后到最后一步,安装gateway的时候,报错不支持android。

然后继续使用即可(但是没有这个,也是可以继续用gateway,但跟这个安装的gateway又不一样,不会系统常驻)
其中如果设定qwen 的 apikey又麻烦一点,需要openclaw config,选择model,依次配置模型所需的值。
说一下遇到的问题:
-
还没有设定模型的key ,先运行的openclaw,然后查看日志,我这边在飞书发消息,openclaw的日志是已经可以收到回调日志了。
-
设定qwen key详细方式我就不说了,网上一堆,方式多种多样,但建议不要直接修改json文件,太麻烦,就使用简单的openclaw的config命令,或者再快速走一遍onboard也行,设定模型时,选择自定义供应商即可,这个一定要配正确
-
配飞书,同一个群聊,发消息,要@机器人才行,不然不会回复(这个应该是跟我设定的机器人的权限有关。)
-
@机器人后,机器人会快速回复一个表情,然后自动撤回,这个问题,就写博客这一会儿时间就忘记了,感觉脑子不行,检查飞书的事件回调配置即可
模型相关:
国内我暂时选择Qwen


飞书相关:
先登录 飞书开放平台






这个事件回调,我需要额外说明一下,是需要先启动飞书client端成功后,才能配置长连接回调,所以我是先没有配模型key,启动的openclaw,然后client端启动后,这里再配置长连接才行,(PS:我看其它博客都没有介绍过这一点,不知道是不是我这个环境太特别导致的,还是什么。)



创建一个群聊,把这个bot加进来(这个需要自己在手机APP里建立一个群聊,把机器人加进来)
再访问 获取用户或机器人所在的群列表 - 服务端 API - 开发文档 - 飞书开放平台 获取chat_id,也就是群聊id

最后show一下正常启动的日志(PS:我前面有说过一些权限受限,所以,你如果通过这种方式配置,注意有一些命令,或者找/bin的目录不能正常执行)
