手机里塞了个Linux,2.6K人决定把AI Agent关进沙盒

手机上的AI Agent,大部分是「远程指挥官」——你在微信里发条消息,远端的云Agent帮你干活,结果再传回来。延迟、隐私、断网就废,三个硬伤一个没解决。

7月25日,一个叫OpenMinis的项目开源了。它的思路完全不同:不调远端,直接在你手机里跑一个Linux沙盒,让AI在本地执行。

3天,2638颗星。

手机里怎么跑Linux

OpenMinis的核心架构,是在App内部嵌入一个完整的Alpine Linux环境。但iOS和Android的实现路径完全不同:

iOS:魔改iSH。 iSH是一个在iOS上通过用户态模拟运行Linux的开源项目,原版用GPLv3协议。OpenMinis fork了iSH的ARM64分支,把它从「终端模拟器」升级为「Agent运行时」——模型不再只是帮你敲命令,而是自己写脚本、自己执行、自己读结果。

Android:PRoot沙盒。 Android端用PRoot(用户空间chroot)构建沙盒,不需要root权限。底层依赖talloc(LGPLv3+)。

两端共享同一个Alpine Linux minirootfs,FFmpeg和LAME从源码构建而非提交二进制。这意味着整个沙盒环境是可审计的——你知道里面跑了什么。

沙盒能做什么? Python完全支持(推荐uv管理依赖),Node.js部分支持,Go/Rust支持,FFmpeg内置且支持硬件加速。模型可以在沙盒里安装包、运行脚本、操作文件。但文件系统被限制在/var/minis/下,按命名空间组织:

  • minis://workspace/ — 工作文件、脚本、数据
  • minis://attachments/ — 图片、音频、视频
  • minis://browser/ — 浏览器截图和提取内容
  • minis://offloads/ — 大型工具输出

它碰不到你手机的其他文件。这是限制,也是安全边界。

不只是终端:设备集成

如果只是个Linux终端,那跟Termux没什么区别。OpenMinis真正有价值的地方,是把iOS/Android的系统API包装成了Agent可调用的工具:

能力 iOS Android
健康数据 Apple Health读写 需Shizuku
日历/提醒 Calendar + Reminders 系统日历
联系人 Contacts 联系人
智能家居 HomeKit 需第三方
蓝牙 蓝牙 蓝牙
剪贴板 读写 读写
媒体控制 Media Player 媒体会话
闹钟 Alarms 闹钟
OCR 原生Vision框架 需模型
浏览器 内置,支持滚动截图 内置

iOS端有个杀手级优势:原生Vision框架做OCR。不需要额外OCR模型,直接调苹果的系统级文字识别。源文章作者说「对Minis来说,OCR根本不是个问题」——这不是吹牛,是iOS的Vision框架确实强。但看照片内容(不是文字)还是需要多模态模型。

Android端则几乎可以完全操控手机——前提是你给Shizuku权限。源文章说「Android几乎可以完全操控你的手机」,iOS则「权限受限」。这是两个平台系统设计哲学的根本差异,不是OpenMinis能改变的。

记忆系统:三层分离

OpenMinis的记忆架构最近做了重构,从两层变成三层:

  • Memory.md — 会话记忆,Agent主动记录
  • Soul.md — 人设/性格,独立按钮可编辑
  • Global.md — 全局指令,可当Tools.md用

源文章作者特别提到:「Minis很喜欢主动记录记忆,但凡你和它聊得投入一些,它就会主动记下来,这点甚至比很多第三方的记忆模块做得更好。」

这个设计比很多桌面端Agent都清晰——把「我是谁」「我知道什么」「我该怎么做」三层分离,而不是全塞进一个system prompt。

Skill兼容:一个被低估的生态位

OpenMinis的Skill系统有个容易被忽略的特性:Claude、Codex、OpenClaw、Hermes Agent的Skill可以直接运行。

这不是简单的格式兼容。OpenMinis的Skill定义是「一个包含SKILL.md的文件夹」,元数据常驻上下文用于触发,正文和资源按需加载——这跟Claude Code和Hermes的Skill架构几乎同构。适配了Minis工具的Skill运行更好(能直接调Linux shell和设备集成),但不适配的也能跑。

这意味着OpenMinis不是在造一个封闭生态,而是在接入已有的Agent Skill生态。官方维护了两个仓库:AwesomeMinis(用例集合)和MinisSkills(技能集合)。

MCP也支持了。源文章说「除了iOS系统本身的限制以外,几乎不会让你感到什么瓶颈」——但62个Open Issue提醒你,现实没那么丝滑。

模型分组:Agent的多脑架构

OpenMinis对模型的管理逻辑很特别,源文章花了不少篇幅讲这个。核心是模型分组

  • 文本模型放一组
  • 图像生成模型放一组
  • 音频生成模型放一组

Agent在会话中通过minis-model-use命令调用分组里的模型。想生图?Agent自动从图像组里挑模型。想TTS?从音频组里调。

但有个坑:模型标签必须手动设置正确。 img(图像读取)、img-out(图像生成)、audio-out(音频输出)——如果标签没标,即使模型支持,OpenMinis也会报错。源文章原话:「你需要清楚地知道模型到底支持什么模态的输入和输出,就像某些模型你需要手动把上下文长度拉满一样。」

子Agent也是通过minis-model-use实现的——不是显式的多Agent架构,而是后台拉起分组里的模型跑完再输出。简单,但不够灵活。

代价清醒:62个Open Issue

开源3天2638星很漂亮,但62个Open Issue才是真实的使用体验:

最严重的Bug:

  • #61 Tool calling参数被序列化为空对象——Agent调工具时参数丢了
  • #113 流式JSON片段泄漏到聊天文本——你看到的回复里混着原始JSON
  • #73 未分类Bug,4条评论
  • #64 强制引号字符转换——中文引号被自动替换,写代码时很烦

功能缺失:

  • #67 OpenAI兼容端点的音频内容块被静默丢弃——音频能力打了折扣
  • #80 MCP服务器不同步iCloud——多设备用户配置不互通
  • #111 社区要求自动压缩、自动继续、自定义重试——长任务支持不够

架构级问题:

  • Compact死循环——长会话反复压缩,卡死
  • SQLite大消息OOM——大型聊天触发SQLITE_TOOBIG

还有一个更根本的限制:**沙盒文件系统只到/var/minis/**。MacStories的Federico Viticci在播客里说得很直白:「It's not reaching into the entire iOS file system. It is its own little operating system almost that is confined to the application sandbox.」——它碰不到iOS的完整文件系统,这是苹果的沙盒设计决定的,不是Bug。

竞品横评:手机Agent赛道

维度 OpenMinis OpenClaw AutoGLM Hermes Agent
运行位置 手机本地 电脑Gateway+手机通信 云端 服务端
Linux环境 Alpine沙盒
设备集成 iOS/Android原生API 有限 Android为主 无(服务端)
Skill兼容 Claude/Codex/OpenClaw/Hermes 自有生态 自有生态
MCP支持
开源 GPL-3.0 MIT 部分 开源
离线能力 有限(需模型API)
隐私 本地执行 数据经Gateway 数据上云 数据上云

OpenClaw是「手机当遥控器」,OpenMinis是「手机当电脑」。前者轻量但依赖网络,后者重但自主性强。AutoGLM在Android上操控能力强,但源文章作者吐槽「做出来的东西编码很规范问题多」。Hermes是服务端Agent,跟手机Agent不在一个赛道。

谁做的

创始人Ethan(GitHub: wsvn53),杭州独立开发者,GitHub账号2011年注册,46个公开仓库。7月25日在X上宣布开源时说:「After 3-4 months of iteration, Open Minis has stabilized into a mature architecture, now powering tens of thousands of users' daily workflows.」

3-4个月,tens of thousands用户,然后开源。这个节奏很独立开发者——先跑通再开源,不是先开源再找方向。

MacStories的Federico Viticci评价:「the most impressive indie app I've seen in a while」。知乎上有人写:「在很大程度上实现甚至局部超越了Apple Intelligence」。

但巴士因子=1。Ethan一个人6次contribution,291个fork里有多少是活跃的贡献者?如果Ethan停更,这个项目能活多久?

谁该用

适合:

  • iOS重度用户,想用Agent操控Health/Calendar/Reminders/HomeKit
  • 有API Key的开发者,想用自己选的模型
  • 需要本地执行、隐私敏感的任务
  • 已经在用Claude Code/Hermes Skill生态的人

不适合:

  • 期望开箱即用、不想配置API Key的人
  • 需要完整文件系统访问的人(沙盒限制)
  • Android用户且不想折腾Shizuku权限的
  • 需要稳定长会话的人(Compact死循环还没完全修)

免费,但不是零成本。 你需要自己提供模型API Key,按token付费。OpenMinis自带Token统计,但分类不细——所有走OpenAI协议的都混在一起。


相关链接:

评论

暂无评论。

登录后可发表评论。