Featured image of post Nyral:开源、免 Root、自托管的 Android 智能体助手

Nyral:开源、免 Root、自托管的 Android 智能体助手

把大模型、端侧记忆、SSH 远程操作和语音多模态,全部收进一部手机里。

把大模型、端侧长期记忆、SSH 远程操作和语音、附件多模态,全部收进一部手机里。

它是谁

Nyral 是一款跑在 Android 上的开源智能体(Agent)助手。它不是那种套个聊天框就完事的"AI 外壳",而是把多模型对话、本地长期记忆、SSH 远程运维、联网工具、语音输入和附件多模态整合进了一部手机。

四个关键词说清它的立场:开源 · 免 Root · BYO 模型 · 数据自托管。

  • 对话、记忆、Token 统计、SSH 配置默认只存在本机,不注册账号;
  • 没有行为追踪,没有统计 SDK,也没有广告 SDK;
  • 不需要 Root,装上 APK 就能用;
  • 模型由你决定:任意 OpenAI 兼容端点,云端或自建都行;
  • 源码 MIT 许可,托管在 GitHub。

GitHub 仓库:https://github.com/aixtin/nyral

Nyral 实机主界面:对话、工具调用和输入栏

核心能力

对话与模型

  • 多供应商按需切换:MiMo 全模态 / DeepSeek / GLM / 任意 OpenAI 兼容端点,还支持自定义模型,并按模型分别勾选能力;
  • 流式输出:思考段打字机效果 + 正文流式 Markdown 渲染,思考和工具调用的过程都可以折叠;
  • 消息内 Markdown 表格:表格是气泡内独立的块级视图,流式输出时也能实时排版;
  • 思考强度分档:按供应商能力显示"自动 / 开关 / 低中高",不支持的档位不会出现;
  • 语音输入:长按说话、上滑取消、60 秒上限自动发送,微信式的语音气泡。

附件多模态

  • 图片:本地压缩(长边 2048)后发送,不白烧流量;
  • 视频:超过 37MB 的本地转码压缩,气泡里内嵌首帧缩略图;
  • 文档:PDF / txt / md / docx / xlsx 在本地解析成文本直接注入上下文,不占视觉 token;扫描版 PDF 会自动渲染成页面图片,走视觉通道;
  • 一条消息最多 6 个附件,App 内可全屏预览(图片缩放、视频播放、PDF 翻页、文本复制)。

长期记忆(端侧)

  • bge-small ONNX 端内语义向量 + 关键词双路召回,存储在 SQLite;
  • 三级分层:短期滚动窗口 → 单槽滚动摘要 → 长期全文 + 语义检索;
  • 可以单独配一个"辅助 AI"做记忆索引,不占用主对话模型;
  • 待处理队列持久化 + 原子消费事务,进程被杀也不丢消息、不重复归档。

工具调用(21 个内置工具,40 轮上限)

  • 联网:web_search(搜狗手机版 → Bing RSS → Bing → 百度四引擎轮转,国内可直连、免 key)/ web_fetch / web_download / site_auth;
  • SSH:ssh_run 与 file 远程读写、上传下载,支持跳板机、ED25519 密钥和双认证——手机就是随身的运维终端;
  • 执行:js_run(ClassShutter 沙箱限制类访问)/ sh_run(本地 Shell,危险命令拦截 + 提权);
  • 设备:app,通过无障碍控制第三方 App;
  • 文件:workdir,AI 把文件拉到本地目录改完再推回去,避开 SSH 引号地狱;
  • 浏览器接管:内置 Agent 浏览器原型,AI 全屏接管 WebView,逐步播报 + 高亮提示,遇到验证码会一键交还给你;
  • 定时任务:timer_task_create,先分析目标,再列出需要的危险工具授权清单,一次性批准后准时上班。

安全

  • 危险操作二次确认:确认后执行,同参数 5 分钟内免重复确认,拒绝立刻中止并给出回执,超时自动拒绝,全程留痕;
  • SSRF 防护(校验重定向目标)+ 日志脱敏(非 2xx 响应体、SSH 私钥内容不会明文落日志);
  • 沙箱执行、危险命令拦截、SSH 主机密钥校验,未知主机直接拒绝。

界面

  • 多会话管理(置顶 / 删除 / 搜索),会话全文搜索(正文 + 思考,按相关度排序);
  • Token 用量统计,主 AI / 辅助 AI 双通道,累计、每日、单会话都能看;
  • 运行日志、前台服务保活通知;
  • 聊天背景(预设渐变 / 自定义图片模糊)、全局动画体系。

谁适合用

  • 开发者:把 SSH 和文件操作装进手机,随时随地连回服务器;
  • 普通用户:想要一个真正自托管、不裸奔的 AI 助手,数据留在自己手里;
  • 开源爱好者:MIT 许可,随便读、随便改。

快速开始

  1. 安装 APK,打开「设置 → 模型配置」,填入任意 OpenAI 兼容端点的 Base URL 和 API Key;
  2. (可选)在 SSH 配置里添加远程主机,支持密码或私钥,也支持跳板机;
  3. 直接开聊,AI 会按需调用工具,工具调用的进度折叠在气泡里;
  4. 长期记忆会自动归档,说一句"记住 xxx"就会立刻归档。

系统要求:Android 10+(minSdk 29)、arm64-v8a,以及至少一个 OpenAI 兼容端点。

自己构建

git clone https://github.com/aixtin/nyral.git
./gradlew assembleDebug
# 产物:app/build/outputs/apk/debug/app-debug.apk

需要 JDK 17、Gradle 8.13、Android SDK 36。仓库内置了阿里云镜像配置,国内构建会快一些;不在国内的话把 settings.gradle.kts 里的 maven(...) 行删掉即可。

一点说明

项目从 2026-10-16 起进入维护模式:只修安全和稳定性问题,不再加新功能。这 54 天是怎么一点点做出来的,写在仓库的 END.md 里。

数据是用户的,代码也是用户的。