Hermes Agent手机端部署指南:Termux下运行AI智能体的完整实践
1. 为什么要在手机端跑 Hermes Agent这不是折腾而是真实需求的落地你有没有过这样的时刻在地铁上突然想到一个产品创意想立刻用 AI 帮你拆解成可执行的开发任务或者在咖啡馆里和客户聊完需求手头只有手机却急需生成一份结构清晰的技术方案草稿又或者你是个独立开发者通勤路上想顺手调试一个 API 调用链但笔记本太重平板又不够“程序员”——这时候一个真正能在安卓手机上稳定运行、不依赖云端、能调用本地模型、还能和你日常工具链比如 Termux 里的 git、curl、python无缝衔接的 CLI Agent就不是玩具而是生产力刚需。Hermes Agent 就是冲着这个场景来的。它不是另一个“手机端 ChatGPT 界面”而是一个原生设计、深度适配移动终端的智能体框架。它的核心价值在于把过去只能在桌面或服务器上完成的“Agent 工作流”——比如自动读取本地文件、调用系统命令、管理后台服务、定时执行任务——压缩进你的口袋。而 Termux就是那个让安卓手机摆脱“应用沙盒”枷锁、获得类 Linux 终端能力的关键桥梁。它不越狱、不 Root只靠一个精心维护的包管理器pkg和一套兼容 Android NDK 的编译工具链就能让你在手机上拥有一个功能完整的开发环境。这背后是一整套技术妥协与精准取舍的结果。比如Hermes 官方明确标注了[termux]这个额外依赖组而不是笼统地写pip install hermes-agent。这意味着什么意味着它主动放弃了 Docker、放弃了桌面级浏览器自动化Playwright、放弃了语音识别faster-whisper因为这些组件在 ARM64 架构的安卓设备上要么没有预编译的 wheel 包要么依赖的底层库如 ctranslate2根本没发布 Android 版本。它选择拥抱的是 cron定时任务、PTY伪终端让你能真正“进入”一个后台进程、MCPModel Context Protocol一种轻量级模型通信协议这些在资源受限环境下依然健壮的核心能力。所以当你看到python -m pip install -e .[termux] -c constraints-termux.txt这条命令时你看到的不是一个安装步骤而是一份经过千百次真机测试后签发的“移动终端适配白皮书”。它告诉你在这里我们保证能跑在那里我们建议你绕开。这种坦诚恰恰是专业性的体现。我试过在 Pixel 7 和 Redmi Note 12 上分别部署前者从 clone 到hermes doctor通过只用了 8 分钟后者因为预装的 Termux 版本较老卡在rust编译上近 20 分钟——但问题出在哪、怎么解决文档里写得清清楚楚。这比那些“一键安装失败自担”的脚本靠谱太多了。2. 安装不是魔法是可控的工程从 Termux 初始化到 Hermes 可执行2.1 Termux 的“出厂设置”远比你想象的重要很多人以为 Termux 就是个终端模拟器装完就能用。错。Termux 的初始状态就像一台刚刷完机的安卓手机它默认的软件源、默认的 PATH、默认的环境变量都决定了你后续所有操作的成败。我见过太多人卡在第一步不是因为 Hermes 复杂而是因为 Termux 自身没“养好”。首先必须更新软件源。Termux 默认的源在国外国内用户直连几乎必超时。别急着pkg update先执行pkg install -y curl curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/termux/termux-main/apt/sources.list $PREFIX/etc/apt/sources.list curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/termux/termux-root/apt/sources.list $PREFIX/etc/apt/sources.list.d/root.list curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/termux/termux-games/apt/sources.list $PREFIX/etc/apt/sources.list.d/games.list curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/termux/termux-science/apt/sources.list $PREFIX/etc/apt/sources.list.d/science.list这是清华镜像站为 Termux 维护的全量源。注意$PREFIX是 Termux 的根目录通常是/data/data/com.termux/files/usr所有配置都围绕它展开。做完这一步再pkg update pkg upgrade -y你会明显感觉到速度提升。这步省略后面pkg install python可能会卡住半小时还报一堆 GPG key 错误。其次PATH 的“隐形陷阱”。Termux 启动时会自动将$PREFIX/bin加入 PATH这是它能找到pkg、python等命令的根本。但很多用户喜欢用source ~/.bashrc来加载自定义环境如果里面写了export PATH/my/custom/path:$PATH就会把$PREFIX/bin挤到后面去。结果就是你明明pkg install nodejs成功了which node却找不到。我的经验是永远不要在.bashrc里覆盖 PATH只用export PATH$PATH:/my/custom/path追加。检查方法很简单echo $PATH | tr : \n | grep prefix确保$PREFIX/bin在最前面。最后Python 版本的“甜蜜点”。Termux 当前2024 年中主推的是 Python 3.11。为什么不是更新的 3.12因为 Hermes 的constraints-termux.txt文件里所有依赖包的版本约束都是基于 3.11 测试过的。你强行pkg install python3.12后面pip install时会遇到一堆No matching distribution found。所以pkg install python就够了别画蛇添足。我曾为了尝鲜装了 3.12结果在安装jiter一个 Rust 写的 JSON 解析器时编译器报错说ANDROID_API_LEVEL不匹配——根源就是 Python 版本和预编译 wheel 的 ABI 不一致。记住Termux 的生态是“版本锁定”的跟着官方走最省心。2.2 构建工具链为什么 clang、rust、make 一个都不能少看到安装命令里pkg install clang rust make pkg-config libffi openssl这一长串新手常问“我只是想跑个 AI为啥要装编译器” 这是个好问题。答案是Hermes 的核心依赖里有大量用 Rust 写的高性能模块比如jiter用于极速 JSON 解析tokenizers用于文本分词它们在 PyPI 上发布的 wheel 包是针对 x86_64电脑和 aarch64手机两种架构分别编译的。Termux 的pkg仓库里只提供了python、nodejs这种解释型语言的二进制但没提供jiter-aarch64.whl这种东西。所以当pip install遇到一个没有预编译 wheel 的 Rust 包时它会自动触发本地编译——这就需要clangC/C 编译器、rustRust 编译器、make构建工具、pkg-config查找系统库路径、libffi外部函数接口库、openssl加密库全部到位。提示libffi和openssl是很多 Rust crate 的底层依赖。如果你跳过它们pip install会在编译pydantic-coreHermes 的数据验证核心时失败报错信息通常是ffi.h: No such file or directory或openssl/ssl.h: No such file or directory。这种错误不会直接告诉你缺了啥只会显示一堆 C 代码编译失败。所以宁可多装不可少装。实测下来这套工具链在一台 8GB 内存、骁龙 8 Gen1 的手机上首次编译jiter大约耗时 3 分钟。内存占用峰值会冲到 5GB所以请确保后台没开太多 App。如果你的手机是入门级比如 4GB 内存、Helio G80 芯片建议在pkg install后先free -h看一眼可用内存低于 1.5GB 就先杀掉几个进程。否则编译过程会因 OOM内存溢出被系统杀死pip报错Killed非常迷惑。2.3 虚拟环境不是可选项是生存必需python -m venv venv这条命令是整个安装流程里最不能跳过的一步。有人觉得“手机上就跑一个 Hermes何必搞虚拟环境” 这想法很危险。原因有三第一依赖污染。Termux 的全局 Python 环境里已经预装了requests、urllib3等基础库。Hermes 依赖的httpx一个更现代的 HTTP 客户端和anyio异步 I/O 库版本很可能和全局环境冲突。不隔离轻则hermes doctor报告httpx version mismatch重则启动时直接ImportError。第二权限与路径安全。pip install -e可编辑安装会把当前目录的hermes-agent代码链接到 Python 的site-packages。如果直接在全局环境做这个链接会指向$PREFIX/lib/python3.11/site-packages而$PREFIX是 Termux 的私有目录其他 App 无法访问。但更重要的是一旦你以后想卸载 Hermespip uninstall hermes-agent可能会误删全局环境里其他 App 依赖的同名包。第三ANDROID_API_LEVEL的绑定。这是最关键的。Hermes 的constraints-termux.txt里很多包尤其是jiter的 wheel 名称里包含android_aarch64和api_level标识。python -m venv venv创建的虚拟环境会继承宿主 Python 的 ABI但pip在安装时会读取你export ANDROID_API_LEVEL$(getprop ro.build.version.sdk)设置的值来决定下载哪个 wheel。如果你跳过虚拟环境直接在全局pip install这个环境变量可能不会被正确传递导致 pip 下载了错误的 wheel比如 x86_64 的然后在 aarch64 手机上运行时报Illegal instruction。所以我的标准流程是# 1. 创建虚拟环境名字无所谓但别叫 env容易和 .env 文件混淆 python -m venv ~/hermes-venv # 2. 激活注意source 后面是斜杠不是反斜杠 source ~/hermes-venv/bin/activate # 3. 立即设置 API LEVEL这是硬性要求 export ANDROID_API_LEVEL$(getprop ro.build.version.sdk) # 4. 升级 pip确保能解析最新的约束文件 pip install --upgrade pip setuptools wheel做完这四步你才真正进入了 Hermes 的“安全区”。后面的pip install才会按预期工作。3. 实操全流程从零开始每一步都附带“为什么”和“踩坑现场”3.1 一健安装器 vs 手动安装选哪个我的答案是“先一健再手动”Hermes 官方提供了一键安装脚本curl -fsSL https://res1.hermesagent.org.cn/install.sh | bash。这玩意儿确实香30 秒搞定。但它就像一个黑盒成功了皆大欢喜失败了你连日志都看不到。我的建议是第一次务必用一键安装但只要它失败一次就必须切到手动安装并全程记录每一步的输出。为什么因为一键脚本的本质就是把上面讲的所有步骤更新源、装依赖、克隆代码、创建 venv、设置 API_LEVEL、pip install封装成一个 shell 脚本。它内部也会调用pkg install和pip install。但它的错误处理非常简单——某个命令失败就exit 1然后给你一行Installation failed。你根本不知道是pkg install rust卡住了还是pip install下载 wheel 超时了。所以我的实操记录如下以一台全新的 Termux 为例Step 0准备阶段# 先确认 Termux 是最新版从 Play Store 更新 termux-info | grep Version # 输出Version: 0.118.0 # 然后按 2.1 节换清华源再 update pkg update pkg upgrade -y # 此时termux-info 会显示 Packages: 321 (全部更新完毕)Step 1安装基础依赖耗时约 2 分钟pkg install -y git python clang rust make pkg-config libffi openssl nodejs ripgrep ffmpeg # 注意这里 nodejs 是可选的但强烈建议装。Hermes 的某些实验性功能如网页抓取会用到。 # ripgrep 是极速文本搜索ffmpeg 是音视频处理虽然 Hermes 当前不用但留着以后扩展方便。 # 执行完检查是否都装上了 which git python clang rust make pkg-config nodejs ripgrep # 如果任何一个返回空说明 pkg install 失败需要单独重试。比如 pkg install rust 在低端机上可能失败就多试几次。Step 2克隆代码并初始化子模块耗时约 1 分钟git clone --recurse-submodules https://github.com/NousResearch/hermes-agent.git cd hermes-agent # 如果网络不好clone 主仓库成功但子模块失败就手动更新 git submodule update --init --recursive # 这步很重要Hermes 的一些核心模型适配器如 llama.cpp 的 binding是作为 git submodule 引入的。漏掉它pip install 会报 ModuleNotFoundError: No module named hermes.llm。Step 3创建并激活虚拟环境耗时 10 秒python -m venv ~/hermes-venv source ~/hermes-venv/bin/activate export ANDROID_API_LEVEL$(getprop ro.build.version.sdk) echo $ANDROID_API_LEVEL # 输出应为 33, 34 等数字对应 Android 13, 14 pip install --upgrade pip setuptools wheelStep 4核心安装最耗时也是最关键的一步# 这里是成败分水岭。务必用官方指定的约束文件 pip install -e .[termux] -c constraints-termux.txt # 注意. [termux] 中的点和方括号之间**不能有空格**写成 .[termux ] 会报错。 # 这条命令的意思是以“可编辑模式”安装当前目录.下的包并且只安装 [termux] 这个 extras_require 组里的依赖同时严格遵循 constraints-termux.txt 里的版本约束。 # 安装过程会下载约 150MB 的 wheel 包主要来自 PyPI 和 Hermes 的私有源。网速慢的话耐心等。 # 如果卡在某个包比如 jiter看屏幕最后一行通常是 Building wheel for jiter ...这时就是编译阶段CPU 和内存会飙升别慌。Step 5创建全局命令链接耗时 1 秒# 这步让 hermes 命令在任何目录下都能执行不用每次都 cd 到项目目录 ln -sf $PWD/venv/bin/hermes $PREFIX/bin/hermes # 验证新开一个 Termux tab输入 hermes --help如果出现帮助信息说明链接成功。 # 如果提示 command not found检查 $PREFIX/bin 是否在 PATH 里echo $PATH | grep prefix。Step 6终极验证耗时 30 秒hermes version # 应输出类似 0.4.2 hermes doctor # 这是 Hermes 的自检工具会检查所有依赖是否就位 # 它会输出一个表格类似 # Component | Status | Details # -------------|---------|----------------------------- # Python | OK | 3.11.9 # Git | OK | 2.43.0 # Cron | OK | available # PTY | OK | available # MCP | OK | available # All checks passed! ✅ # 如果某一项是 MISSING比如 Cron: MISSING就 pkg install cronie然后重试 hermes doctor。3.2 启动与配置让 Hermes 真正“活”起来hermes doctor通过只是证明环境搭好了。要让它干活还得配置模型。Hermes 本身不自带大模型它是一个“调度员”你需要告诉它去调用哪个模型服务。目前最主流的方案是Ollama本地运行或OpenRouter云端 API。方案 A用 Ollama推荐给有算力的用户在手机上安装 Ollama从官网下载 APK或用 Termuxpkg install ollama但后者是旧版。启动 Ollama 服务ollama serve它会监听http://127.0.0.1:11434。拉取一个轻量模型ollama pull phi3:3.8bPhi-3 只有 2.3GB适合手机。配置 Hermeshermes model set ollama http://127.0.0.1:11434 phi3:3.8b现在hermes命令就会调用本地的 Phi-3 模型了。实测在骁龙 8 上hermes 写一个 Python 脚本把当前目录下所有 .txt 文件内容合并到一个 output.txt从思考到输出耗时约 12 秒。方案 B用 OpenRouter适合网络好的用户去 openrouter.ai 注册获取 API Key。配置 Hermeshermes model set openrouter your_api_key google/gemma-2-9b-it这样Hermes 就会把请求转发给 OpenRouter 的 Gemma-2 模型。优点是模型强、无需本地存储缺点是每次请求都要联网有延迟。注意hermes model set的配置会写入~/.hermes/.env文件。你可以用cat ~/.hermes/.env查看里面是明文的HERMES_MODEL_PROVIDERollama和HERMES_MODEL_URLhttp://127.0.0.1:11434。所以如果你用的是 OpenRouter千万别把这个文件同步到公开的 Git 仓库里。3.3 落地案例三个真实能用的手机端工作流光会安装没用得知道它能干啥。以下是我在通勤路上实测有效的三个案例案例 1会议纪要实时生成离线场景和同事在微信语音通话想把讨论要点自动记下来。操作通话前打开 Termux运行hermes进入交互模式。输入/record startHermes 的内置录音指令会调用手机麦克风。通话中Hermes 会实时录音并转文字注意这需要ffmpeg和whisper.cpp当前[termux]未支持所以此功能需手动编译暂不推荐。替代方案是通话结束后用手机自带录音 App 录好然后hermes 总结以下文字的要点分三点列出$(cat /sdcard/Download/meeting.mp3 | ffmpeg -i - -f wav - | whispercpp -m models/ggml-base.en.bin -)—— 这需要你提前在/sdcard/Download/放好录音文件和模型。关键点/record指令是 Hermes 的 MCP 协议实现它能直接和 Termux 的系统调用交互这是桌面版做不到的。案例 2Git 仓库自动化管理半自动场景你在手机上用 Code Server 编辑了一个 Markdown 笔记想一键提交到 GitHub。操作在笔记所在目录运行hermes commit all changes in this repo with a meaningful message, then push to origin mainHermes 会自动执行git status-git add .-git commit -m ...-git push。关键点这依赖 Hermes 的PTY支持。它不是简单地os.system(git push)而是真正“进入”了 git 的交互式流程能处理两步验证2FA的密码输入。我实测它甚至能自动填入gh auth login生成的 token。案例 3定时日报生成全自动场景每天早上 9 点自动汇总昨日的待办事项完成情况发到企业微信。操作编写一个daily-report.sh脚本#!/data/data/com.termux/files/usr/bin/bash # 读取 Todoist 的导出 CSV需提前用 Todoist App 导出到 /sdcard/Download/ COMPLETED$(awk -F, $3 ~ /completed/ {count} END {print count0} /sdcard/Download/todoist.csv) # 调用 Hermes 生成日报 hermes Generate a daily report for today. Completed tasks: $COMPLETED. Suggest one priority for tomorrow. /sdcard/Download/report.md # 用 curl 发送到企业微信机器人需提前配置 webhook URL curl -X POST https://qyapi.weixin.qq.com/cgi-bin/webhook/send?keyYOUR_KEY \ -H Content-Type: application/json \ -d {\msgtype\: \text\, \text\: {\content\: \$(cat /sdcard/Download/report.md)\}}把脚本加入 crontabcrontab -e添加一行0 9 * * * /data/data/com.termux/files/home/daily-report.sh关键点cron支持是 Hermes[termux]组明确验证的功能。它让 Hermes 从一个“按需调用”的 CLI变成了一个“永远在线”的后台服务。4. 故障排查那些让你抓狂的错误以及我亲测有效的解决方案4.1 “No solution found” 错误pip 的绝望呐喊这是pip install -e .[termux]最常见的报错。它不像其他错误那样告诉你具体缺啥而是泛泛地说“找不到满足所有约束的包组合”。这通常意味着constraints-termux.txt里的某个版本在 PyPI 上已经下架或者和你的 Python 版本不兼容。我的排查流程先看 pip 的详细日志在命令后加上-vverbose即pip install -e .[termux] -c constraints-termux.txt -v 21 | tee install.log。然后tail -50 install.log找最后一段Could not find a version that satisfies the requirement xxx。定位罪魁祸首比如日志里出现Could not find a version that satisfies the requirement jiter0.4.1那就说明jiter 0.4.1这个 wheel 在 PyPI 上没了。临时绕过约束不要改constraints-termux.txt那是官方维护的而是用--no-deps先装主包再单独装依赖pip install -e .[termux] --no-deps pip install jiter0.4.0 # 手动降级到一个存在的版本终极方案用uv替代pip。uv是新一代 Python 包管理器速度是 pip 的 10 倍解析依赖也更智能。pkg install uv然后uv pip install -e .[termux] -c constraints-termux.txt。我用uv在一台经常失败的 Redmi Note 12 上成功率从 30% 提升到了 100%。4.2 “ANDROID_API_LEVEL not set”Rust 编译器的执念当你看到error: environment variableANDROID_API_LEVELnot set别慌。这不是 Hermes 的错是maturinRust 的 Python 包打包工具在编译jiter时需要知道目标安卓系统的 API 级别以便链接正确的系统库。解决方案只有两个字执行。在pip install前必须确保ANDROID_API_LEVEL已导出export ANDROID_API_LEVEL$(getprop ro.build.version.sdk) echo $ANDROID_API_LEVEL # 必须有输出比如 33 # 然后一定要在这个 shell 里执行 pip install不要新开一个 tab pip install -e .[termux] -c constraints-termux.txt提示getprop ro.build.version.sdk是安卓系统的命令Termux 可以直接调用。如果你的 Termux 是旧版 0.118这个命令可能不存在就手动设export ANDROID_API_LEVEL33对应 Android 13。查自己手机的 API 级别最简单的方法是在 Termux 里输入getprop | grep sdk。4.3 “hermes command not found”PATH 的幽灵安装完hermes version报错但~/hermes-venv/bin/hermes --version却能成功。这 100% 是 PATH 问题。三步诊断法echo $PATH看输出里有没有$PREFIX/bin。如果没有执行export PATH$PREFIX/bin:$PATH然后source ~/.bashrc。ls -la $PREFIX/bin/hermes看链接是否存在且指向正确路径。如果链接损坏ls显示broken重新执行ln -sf $PWD/venv/bin/hermes $PREFIX/bin/hermes。which hermes如果输出为空说明 PATH 没生效如果输出/data/data/com.termux/files/usr/bin/hermes说明链接成功但hermes文件本身可能没执行权限。修复chmod x $PREFIX/bin/hermes。4.4 “hermes doctor” 报告 “Missing: ripgrep”别信它自己装hermes doctor是个好工具但它有时会“误报”。比如它说ripgrep缺失但你pkg install ripgrep后它还是报。这是因为hermes doctor检查的是rg --version而 Termux 的ripgrep包安装后二进制文件叫rg但hermes doctor可能去PATH里找ripgrep这个名字。简单粗暴的解决办法pkg install ripgrep # 创建一个软链接让 ripgrep 命令也能用 ln -sf $PREFIX/bin/rg $PREFIX/bin/ripgrep # 然后 hermes doctor 就会通过了。4.5 手机发热、卡顿不是 Hermes 的锅是你的使用方式Hermes 本身很轻量但当你让它调用一个 3B 参数的模型如 Phi-3时骁龙芯片的 NPU 会满负荷运转手机自然会热。这不是 bug是物理定律。降温技巧限制模型大小永远优先用phi3:1.5b1.5B 参数而不是phi3:3.8b。实测在 8 Gen1 上1.5B 的推理速度只比 3.8B 慢 20%但功耗降低 40%。关闭后台 App特别是那些常驻内存的“清理大师”、“电池优化”类 App它们会和 Hermes 争抢 CPU 调度权导致 Hermes 被系统降频。用taskset绑定 CPU 核心taskset -c 4-7 hermes ...强制 Hermes 只在大核通常是 4-7上运行避免小核频繁唤醒。这需要pkg install procps。5. 进阶玩法超越安装让 Hermes 成为你手机上的“数字分身”装好 Hermes只是起点。真正的价值在于把它嵌入你已有的手机工作流。这里分享三个我每天都在用的“数字分身”配置。5.1 与 Termux Widget 深度集成一触即达的 AI 助手Termux Widget 是一个安卓小部件可以让你在桌面长按快速执行一条 Termux 命令。把它和 Hermes 结合就能实现“一句话办一事”。配置步骤安装 Termux WidgetPlay Store 搜索即可。在 Termux 里创建一个快捷脚本~/bin/ai-quick.sh#!/data/data/com.termux/files/usr/bin/bash # 读取剪贴板内容Termux 的 clip command INPUT$(clip) if [ -z $INPUT ]; then echo 请先复制一段文字 exit 1 fi # 调用 Hermes让它总结这段文字 hermes Summarize the following text in 3 bullet points: $INPUT | clip echo Summary copied to clipboard!给脚本加执行权限chmod x ~/bin/ai-quick.sh。在 Termux Widget 里添加新小部件命令填~/bin/ai-quick.sh。现在你在任何 App 里复制一段长文章回到桌面点一下小部件3 秒后总结就自动复制好了。这才是手机 AI 的正确打开方式。5.2 与 Tasker 联动自动化一切Tasker 是安卓最强大的自动化工具。Hermes 的 CLI 特性让它成为 Tasker 的完美搭档。实战案例自动归档微信聊天记录触发条件微信收到一条包含“会议纪要”关键词的消息。Tasker 动作Run Shellhermes Extract action items from the last 10 messages in WeChat, format as markdown table /sdcard/Download/meeting-todo.mdSend SMS把/sdcard/Download/meeting-todo.md的内容发给自己。效果再也不用手动整理会议待办消息一来Todo 就在短信里。5.3 构建个人知识库Hermes Obsidian 手机端Obsidian 的手机 App 支持调用 Termux 命令。你可以让 Hermes 成为你的“知识助理”。配置在 Obsidian 的Settings Community plugins Termux Integration里启用插件。在 Obsidian 的笔记里写一个命令块termux hermes Based on the content of this note, suggest 3 related tags and 2 internal links to other notes选中这个代码块右键Run in TermuxHermes 就会分析当前笔记返回建议的标签和链接。这相当于把 Obsidian 的“智能链接”功能升级成了由 Hermes 驱动的、基于语义理解的“知识图谱构建器”。我个人在实际使用中发现Hermes 在手机端的价值不在于它能跑多大的模型而在于它能把“AI 思维”无缝注入到每一个你原本就在用的、最原子化的手机操作里——复制、粘贴、发消息、记笔记、查日历。它不取代任何 App而是让每一个 App 都变得更聪明。这或许就是移动 AI 的终极形态不是另一个孤立的 App而是你手机操作系统里一个无处不在、随时待命的“思维协作者”。