Repository navigation
Releases
Releases · cxc1344/OpenGrokBot-Android
v0.3.2 — 修复 PRoot 启动参数
v0.3.1 真机复测进展:rootfs 已能正确安装,失败点前移到 PRoot 启动。
- 根因:打包的 Termux PRoot 不接受命令前的
--分隔符(报 unknown option '--'),其余参数均被接受。已移除--,命令行构造抽成 ProotArgs 并加了回归测试 - PROOT_NO_SECCOMP=1 重试收窄:仅当报错含 seccomp / ptrace / 权限类关键字时才触发,参数类错误不再无谓重试
注意:
- PRoot 在 vivo 上能否真正进入 Alpine 仍待真机复测(-0、/proc 绑定、loader 路径等)
- 仍是调试签名且与旧版不同:安装前需先卸载旧版,会清空已建 Bot 与 Key
v0.3.1 — 修复 rootfs 安装检查
v0.3.0 的真机问题修复:解压其实是成功的,是完整性检查误判。
- 根因:Alpine 的 bin/sh 是指向 /bin/busybox 的绝对符号链接,旧检查用 File.exists() 会在宿主机路径上解析,安卓上必然不存在,于是误报「不完整」。检查改为在 rootfs 内部解析符号链接
- 解压不再依赖系统 tar:改用内置 tar.gz 解压器(ustar / GNU / pax),拒绝绝对路径与 ..,不跟随符号链接越界写入
- 下载链路加固:手动处理重定向(仅 HTTPS)、Content-Length 核对、官方 CDN 失败自动切 aliyun / tuna 镜像、校验过的压缩包本地缓存
- 报错分级透出:失败会写明步骤、底层异常与诊断信息(ABI、下载源、包大小、解压统计),自检失败时显示更长
- PRoot 启动失败时自动以 PROOT_NO_SECCOMP=1 重试一次(未验证)
- 重置 / 删除 Bot 的目录删除不再跟随符号链接
注意:
- 本版修复了安装误判,但 PRoot 在真机上能否完整跑通仍以复测为准
- 仍是调试签名且与旧版不同:安装前需先卸载旧版,会清空已建 Bot 与 Key
v0.3.0 — PRoot + Alpine Linux 环境
这次是真 Linux 环境上线:
- 每个 Bot 独立 Alpine 3.24.4 rootfs 与包数据库,工作目录挂载为 /workspace,可用 apk 安装软件;rootfs 压缩包按 ABI 共享缓存,首次执行 shell 或连接自检时自动下载初始化(约 4 MB)
- PRoot 在构建时按 ABI 下载、校验 SHA-256 后打包;全局最多同时运行两个 PRoot 任务
- 设置页新增「Linux 环境」说明,自检会实际进入 Alpine 检查
- 可靠性与安全加固:API 请求可取消并校验接口地址;Key 存储全程 fail-closed;状态文件原子写、保存失败有提示;Guard 路径规范校验(拦截路径逃逸与嵌套 shell);Guard 单元测试纳入 CI
- 明文 HTTP 改为每个 Bot 单独开关(默认关闭),不再一刀切禁止
注意:
- PRoot 是 GPL-2.0 第三方组件,来源与校验值见仓库 THIRD_PARTY_NOTICES.md
- PRoot 是用户态环境,不提供独立内核或强安全隔离;本版本未经真机完整验收,首次自检 / shell 会慢一些
- 仍是调试签名,且签名与旧版不同:安装前需先卸载旧版,会清空已建 Bot 与 Key
OpenGrokBot P0.1 · v0.2.1
P0.1 安全加固补丁,另含两项先行修复。由 GitHub Actions 云端打包。
本版变更:
- 审查失败关闭:总经理审查输出无法解析、或结论不是明确的 pass/rework 时,一律按未通过处理,不再默认放行
- Keystore 失败关闭:加密不可用时不再把 API Key 降级为明文保存(保存时加密失败则该 Key 存为空,需重新填写)
- 默认禁止 HTTP 明文请求:使用局域网 HTTP 模型接口的用户将无法连接,请改用 HTTPS 接口
- 修复:项目卡片消息不再串入 Bot 的对话上下文
- 优化:新建 Bot 默认预设改为「通用助手」,不再默认总经理
说明:
- 调试签名(debug)构建,且与 v0.2.0 的签名不同:从 v0.2.0 升级需先卸载旧版再安装,卸载会清掉已建的 Bot 与 Key。
- 包名 app.opengrok,可与 PocketGrok 并存。
OpenGrokBot P0 · v0.2.0
原生安卓多 Bot 应用 OpenGrokBot 的 P0 里程碑构建,由 GitHub Actions 云端打包。
包含:
- 总经理负责制流水线:立项 → 派活 → 员工执行 → 审查 → 打回返工(最多一次)→ 结项汇报
- 危险命令守卫 Guard:拦截 fork 炸弹、curl 管道执行、mkfs、写块设备等高危 shell 命令,拦截记录可在设置页查看
- API Key 经 Android Keystore 加密存储
- 连接自检(模型列表 / 对话探针 / 沙盒执行 / Keystore 探针)
- Bot 单聊、群聊、Bot 间私聊(全程可见)、原生工具调用、每 Bot 独立沙盒目录、14 个预设
未包含(后续里程碑):真 Linux 沙箱(proot/Alpine)、Bot 自有浏览器、收件箱、主动消息、例行任务、用量账本。
说明:
- 调试签名(debug)构建,未在真机完整验收,介意勿装。
- 包名 app.opengrok,可与 PocketGrok 并存;后续版本可能无法覆盖安装,需先卸载旧版。