deepseek-harness-android-app
把 DeepSeek Harness(DSH)打包成可直接安装的 Android APK —— 装上就能用,还能让 AI 免 Root 真正操作手机。
🆕 最新版本 v1.20.1(2026-10-18)
本版在 v1.20.0(内核 0.2.1-rc.2)基础上,把五个自研插件逐个走完「真实使用 → 让设备上的 AI 提 3 条改进 → 采纳/不采纳 → 改 → 重编 → 真机验证」闭环:
- AI 浏览器:
snapshot{includeText}附带可见文本;click直接回newText;fromGeneration/toGeneration支持真差分;read命中输入框回tag/type/value/placeholder;type回via/dispatched。 - android:
overlay回真实窗口可见性;input回注入坐标/屏幕/前台包且越界明确失败;package/setting结构化返回。 - shizuku:
setting_app增加action=get/put与oldValue/newValue;notify回posted/visible/evidence。 - accessibility:
a11y_status回结构化状态(running / 服务组件 / 前台应用 / 可读控件数 / 读屏·手势·截图能力);tap回命中信息(matchedText/bounds/nodeIndex/clickableAncestor)与pageChanged/newTitle;scroll/swipe回changed/atEdge—— 「已经到底」不再被误判成「手势失效」。 - vscreen:
launch回package/component/displayId,并用启动前后截图 sha256 给screenChanged(命令成功但画面没变会被如实指出);see支持waitMs等待首帧并按真实状态回errorCode(no_display/not_rendered/no_frame);create接受orientation=0/1/"0"/portrait并回 displayId/尺寸/dpi;key支持KEYCODE_BACK等别名。 - 会话列表恢复:兼容内核 0.2.1 的
session.v4.jsonl.zstd(此前控制台「会话管理 / 会话修复」显示 0 条会话,数据其实都在)。
验证:三套包 verify-v1193.sh 各 109 PASS / 0 FAIL;official 全量回归 31 步 OK / 0 步 FAIL,判据合计 772 PASS / 0 FAIL。
下载与完整说明见 Releases。
✨ 核心亮点
- 🌐 AI 浏览器:AI 真的能操作网页(v1.19.1 → v1.19.6):给它一个地址,它就能打开页面 → 读出结构化元素表(含稳定 ref)→ 找到要点的东西 → 点/输入 → 确认这一下点没点动 → 读正文。定位靠DOM 语义快照而不是截图猜;
ref是元素身份指纹,跨快照保持不变;snapshot{since}支持真差分(页面没变只花几十 token)。v1.19.6 起还有三件事:① 浏览器搬进独立进程:browser—— 页面崩了不会带走控制台和引擎(一键「整套丢弃」后下一次操作自动拉起全新进程);② 多页签(第 10 个工具browser_tabs:列出 / 新建 / 切换 / 关闭;拿 A 页签的 ref 去点 B 页签会被拦下并提示先切换);③ 控制台多了**「AI 浏览器」页** —— 看它正在哪一页、页签列表、「同屏查看」开关(把画面显示在屏幕上;v1.19.1 起画面可直接点、拖顶部小条搬窗、点小条关闭);浏览器插件在「插件」页可以随时开关。工具共 10 个(caps/open/snapshot/find/click/type/read/nav/scroll/tabs),只允许 http/https 且禁止访问本机回环地址 - 🗂️ 会话管理 + 会话级自愈(v1.19.3 / v1.19.4):控制台里第一次能删会话 —— 「删除」= 先进回收站(随时一键恢复回原位),「彻底删除」只在回收站里提供且单独红框确认(写死:任何修复都不靠删掉整条会话解决);坏附件毒死的会话可在「会话修复」页只降级那一条消息里的坏附件(正文与上下文一字不动,先备份 → 写盘 → 立刻复检 → 写账本)
- 🩺 内核自检 + 自愈账本(v1.19.1):控制台新增「内核自检」——随包带一份内核清单(每个文件的路径/大小/sha256),点一次就告诉你到底哪个文件缺失或内容不符(快速自检约 1 秒 / 全量逐个 sha256);每次自检与修复都写进
/sdcard/<包名目录>/heal-ledger/的 JSON 账本,修过什么、依据什么,可查。自检只读;清理只碰内核自己的@deepseek-ai命名空间里dsh*陈旧条目,用户数据与第三方插件永不删 - 🔒 本地服务统一鉴权(v1.18.0):App 内 4 个绑
127.0.0.1的服务(通知 / 无障碍 / 虚拟屏桥 / 虚拟屏核心)一律要求令牌、拿不到就拒绝;虚拟屏 jar 增加随包 SHA-256 校验,被篡改即拒绝启动并自动重新提取 - 📦 APK 一键安装:不用 Termux、不用敲命令,下载安装即用(包名
com.deepseek.harness) - 🔓 免 Root 系统特权:通过 Shizuku 打通系统 shell —— AI 能装应用、点屏幕、改系统设置、截图、模拟输入,这是"手机上的 AI Agent",不只是聊天窗口
- 🟢 可选特权,不授予也能正常用(v1.4.0):不装 Shizuku/无 root 也能用——文件读写、预览、编辑只需「所有文件访问」权限;未授权时 AI 不会反复尝试系统操作,需要时会引导你授权
- 🔀 Root 优先,Shizuku 备用(v1.4.0):有 root 走 su 通道,无 root 走 Shizuku,自动选择
- 👁️ 无障碍屏幕助手(v1.7.0):系统设置开启「DeepSeek Harness 屏幕助手」后,AI 能读屏、点击、输入、滚动、无障碍截图理解——不需要 root / Shizuku,与特权通道互补
- 🖥️ 虚拟屏 vscreen(v1.10+):AI 可以创建一块独立于主屏的真·虚拟屏,把 App 启动进去、在里面点击/滑动/输入,你的主屏照常用;右上角悬浮窗实时显示虚拟屏画面(H.264 视频流,可拖动、可双指缩放),AI 在干什么全程可见。实现移植自开源项目 Operit(LGPL-3.0,详见 THIRD_PARTY_NOTICES.md)
- 🎛️ 原生控制台(v1.12+):冷启动先进 App 自己的控制台(解压 / 权限 / 插件开关 / 日志 四页),不必先等引擎起来;引擎状态判定全面重做——探测不再吃掉一次性 token、不再误报“未启动”、不会重复拉起两个引擎
- 🎨 控制台「一切皆自定义」(v1.17.3 → v1.19.6):一份
/sdcard/<包名目录>/console/console.json就能改控制台的外观(配色 / 字号 / 圆角 / 照片背景,含压暗·模糊·视差)、布局(卡片显隐顺序,甚至整页自己拼控件树)、文案(五十多个键)、行为(自定义按钮 + 动作,含 shell);主题包可导出/导入 zip(v1.19.6 起导入导出往返已按真实用户路径验过:导出 → 删掉 → 再导入,配置与图片逐字节还原),主题页内置 5 条「让 AI 做主题包」提示词与离线自检工具。坏配置自动回退、救援面不可移除、长按品牌字一键回默认 —— 永不因为配置打不开 App。v1.19.1 起默认界面也吃主题:layout.hidden/cardOrder与actions[]自定义按钮在精简骨架上同样生效,behavior五个字段(自动解压/自动起引擎/直进主界面/隐藏按钮/双击退出)也真生效 - 🐋 悬浮球动作可配置(v1.20.0,#54):桌面小鲸鱼的单击 / 长按 / 双击各自可配 —— 展开状态面板 / 打开指定应用 / 创建虚拟屏并启动指定应用 / 销毁虚拟屏 / 收起 / 无动作;控制台「系统 → 悬浮球」三行改完立即生效,classic 布局在运行环境卡片里也有入口;「收起」后还能从控制台「恢复显示悬浮球」找回(ColorOS 通知栏动作有时不显示)
- 💻 终端能用了(v1.19.1):终端页以前基本不可用,这一版把三个根因一起修好 —— ① 打不开(默认 shell 指向 Termux 死路径、进程检查不认
android、终端后端依赖原生node-pty、App 注入的bash包装脚本被套上 bash 专用 rc);② 键盘弹一下就掉(xterm 的 0×0 隐藏输入框被「防自动聚焦」误判);③ 打进去的字上不了屏(用普通管道冒充伪终端 ⇒ 不打提示符、不回显、全缓冲)。现在命令真执行、输出真回流。⚠ 如实说明:手机上没有真伪终端,resize是空操作、没有 job control - 🧩 「我的补丁」:自己改过的内核文件重启 / 重装都不丢(v1.19.1):控制台「运行环境」→「我的补丁」可以保存我的修改为补丁 / 清空补丁(回到出厂)。判据是出厂基线(不是随包清单,否则 App 自己运行时改的几十个文件会被当成你的改动);每次启动引擎在所有官方同步之后自动回放;只收源码/配置/图片,不收 .so/.dex/.sh,单文件 ≤8MB,回放失败绝不让引擎起不来。「清空」会立刻从随包 payload 精确还原出厂文件
- 🩹 混装树自愈(v1.17.3):升级后引擎起不来(
cosmokit does not provide an export named …那一类)不用再清数据 —— 控制台点一次「重新解压」即可修好;清理只发生在内核自己的@deepseek-ai命名空间、只删dsh*陈旧包,绝不碰用户数据与第三方插件 - 🌐 兼容版自带浏览器引擎(v1.17.3):compat 内嵌 GeckoView,不再依赖系统 WebView(Chromium 91~93 的老设备也能跑);代价是体积约 250MB、minSdk 提升到 26
- 🚑 救援能力(v1.15+):控制台提供「安全模式启动 / 退出」与「导出全部数据 / 从备份导入还原」。插件把配置写成非法 YAML 会导致引擎拒启(历史上只能清数据),安全模式把用户层整体旁置后用出厂配置启动、不动会话与凭证;备份导出把会话/插件/配置打成 zip 存到
Download,换机或彻底重装可还原 - 🔐 Shizuku 通道改走 App 进程(v1.13.1+):特权命令执行从“引擎内
rish子进程”改为经 App 进程内的 Shizuku API(新增本地/shell路由 + 随机令牌鉴权),根治手机上偶发的Request timeout. The connection between the current app … and Shizuku app … - ⏰ 前台保活(v1.4.0):AI 干活时挂后台/锁屏不被杀,任务完成推送通知
- 🔔 AI 发通知(v1.4.0):只需通知权限,任务完成/需要关注时推送到通知栏
- 🧠 完整 DSH 内核:
@deepseek-ai/dsh0.2.1-rc.2(v1.20.0 升级,上游当前 next),保留插件生态 + RPC API,前端用 DSH 原生界面 - 🐍 内置 Python 3.14.6 + pip(v1.16.0/1.16.1):AI 可直接写脚本做数据处理、解析、统计;
pip install可用、venv可用,免安装免配置 - 📦 内置 npm / npx 11.20.0(v1.16.0/1.16.1):AI 可自己装 node 包,装出来的 CLI 可直接执行(已适配 Android 没有
/usr/bin/env这件事) - 🔌 插件三条输入全通(v1.15.3→v1.15.8):本地目录 / 包名 / GitHub 地址 —— 内置 pnpm 与 git 2.55.0,并把 curl / git 的证书链修好(启动时用系统 CA 合成 bundle)
- 📱 移动端适配:触摸优化 + 软键盘适配 + 首次启动权限引导页(9 项权限一站式配置)
- 💾 卸载不丢数据:dshroot 外置到
/sdcard/DeepSeekHarness,重装/升级不清空 AI 的运行时改动 - 🐋 鲸鱼品牌图标,横竖屏自由旋转
📸 界面预览
截图于 v1.2.0(2026-08-17)与 v1.4.0(2026-08-20),完整文件见
docs/screenshots/。
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
v1.4.0(Lite 共存版)实测截图:
![]() |
![]() |
![]() |
🛠️ 手机端插件(本项目的核心特色)
| 插件 | 能力 |
|---|---|
dsh-tool-shizuku |
特权 shell:任意系统命令(pm/am/settings/dumpsys…),异步执行 + 环境消毒 + dex 只读自愈 |
dsh-tool-android |
结构化系统操作:包管理 / 应用管理 / 系统设置 / 截图 / 模拟输入 |
dsh-tool-accessibility |
无障碍读屏 + 模拟操作(v1.7.0):读控件树 / 点击 / 输入 / 返回主页 / 滚动 / 无障碍截图理解 |
dsh-tool-vscreen |
虚拟屏(v1.10+):建屏 / 把 App 启动到虚拟屏 / 看虚拟屏画面 / 在虚拟屏上点击·滑动·按键 / 关屏(8 个工具) |
dsh-tool-browser |
AI 浏览器(v1.19+):结构化 DOM 快照 + 稳定 ref + 真差分 + 检索式定位 + 动作后置校验;v1.19.6 起跑在独立进程 :browser、支持多页签(10 个工具:caps/open/snapshot/find/click/type/read/nav/scroll/tabs),可在控制台「插件」页随时开关 |
通过这五个插件,AI 不再只是"聊聊天",而是能真正控制你的手机——特权通道(root/Shizuku)负责系统级操作,无障碍通道(无需授权)负责读屏与交互,虚拟屏通道让 AI 在不打扰主屏的前提下跑自动化任务,AI 浏览器通道让它真的能打开网页、点进去、读完正文。
👁️ 无障碍屏幕助手(v1.7.0)
让 AI 看着屏幕操作手机:读屏、点击、输入、滚动、截图理解——不需要 root / Shizuku。
开启方式
- 系统设置 → 无障碍 →(已下载的服务/服务)→ 开启「DeepSeek Harness 屏幕助手」
- 在 App 里让 AI:先用
android_screen读屏 → 用android_tap/android_type/android_scroll操作 → 需要看图时用android_see截图理解
AI 可用工具
| 工具 | 能力 |
|---|---|
android_a11y_status |
查询无障碍服务状态(未开启时返回引导文案) |
android_screen |
读当前屏幕控件树(文字 / 坐标 / 可点击性 / 可输入性) |
android_tap |
按文字 / 描述 / 坐标点击 |
android_type |
输入文本到输入框(WebView / 网页输入框用 paste:true 走剪贴板粘贴) |
android_back / android_home |
系统返回键 / 回桌面 |
android_scroll |
上 / 下 / 左 / 右滚动 |
android_see |
无障碍截图并发送给视觉模型理解(需 Android 11+ 与支持图片的模型,如 deepseek-v4-flash-vision-exp) |
无障碍通道与特权通道互补:无障碍不依赖授权、擅长读屏与点击;Shizuku/root 通道擅长系统级操作(装应用 / 改设置 / 系统输入)。
🖥️ 虚拟屏 vscreen(v1.10+)
让 AI 在一块独立于主屏的虚拟屏里干活:你的主屏照常用,AI 在自己的屏里启动 App、点击、滑动、输入;右上角悬浮窗实时显示虚拟屏画面,AI 在干什么全程可见。
用法(3 步)
- 安装 APK(正式版或 Lite 共存版)
- 装好并授权 Shizuku(或设备有 root)—— 虚拟屏服务端必须以 shell 身份运行,没这一步虚拟屏用不了
- 打开一次 App —— 虚拟屏桥自动启动(此时它会拉起 shell 身份的服务端)
- 让 AI 建屏(或直接调
android_vscreen_create)→ 右上角自动弹出预览悬浮窗(可单指拖动、双指缩放)
尺寸:一律手机比例
- 竖屏 9:16(默认 1008×1792)、横屏 16:9(1792×1008)
- 即使显式传了非手机比例的宽高(如 1520×720),服务端也会归一化成 16:9(v1.11 修复)
- 切换横竖屏需先关屏再建屏
AI 可用工具
| 工具 | 能力 |
|---|---|
android_vscreen_create |
建虚拟屏(orientation 可选 portrait / landscape) |
android_vscreen_status |
查询当前虚拟屏(displayId / 宽高 / 是否在跑) |
android_vscreen_launch |
把指定 App 启动到虚拟屏 |
android_vscreen_see |
截虚拟屏画面发给视觉模型(返回换算系数,供坐标换算) |
android_vscreen_tap / swipe / key |
在虚拟屏上点击 / 滑动 / 按键 |
android_vscreen_close |
关闭虚拟屏 |
权限
| 权限 | 用途 | 必需? |
|---|---|---|
| Shizuku 或 root | 整个虚拟屏功能——服务端(现役核心 vscreen/Main.java)必须以 shell 身份运行:建屏、截图、把 App 启动到虚拟屏、注入触摸/按键全在它身上 |
必需。没有 Shizuku/root 就拉不起服务端,虚拟屏完全不可用(不是“能看不能点”) |
| 悬浮窗(显示在其他应用上层) | 虚拟屏预览窗 | 要看预览必须授权 |
| 存储(所有文件) | 虚拟屏截图保存 | 截图必需 |
| — | 不需要。虚拟屏与无障碍服务无关(不读控件树、不走 dispatchGesture),插件/服务端/桥都没有引用无障碍 |
技术要点
预览不是轮询截图,而是 服务端 MediaCodec H.264 编码 → App 内解码 → 渲染到悬浮窗的实时视频流。 该视频流方案与虚拟屏创建机制移植/对齐自开源项目 Operit(LGPL-3.0)。
已知限制
- 需要 Android 11+;
- 需要 Shizuku 或 root(原因见上表:服务端跑在 shell 身份下);
- 正式版与 Lite 共存版同时启动时 8999 端口互斥 → 虚拟屏实际二选一;
- 虚拟屏为 PUBLIC 类型显示,部分系统弹窗(如输入法)行为与主屏有差异。
📦 安装
下载 Releases 里的 APK 安装即可:
DeepSeekHarness.apk(正式版,推荐):包名com.deepseek.harness,从旧版本同签名升级DeepSeekHarnessLite.apk(Lite 共存版):包名com.deepseek.harness.beta(端口 3082),与正式版完全独立、可同时安装;数据独立在/sdcard/DeepSeekHarnessLite/,API Key 需单独填DeepSeekHarnessCompat.apk(兼容版):包名com.deepseek.harness.compat(端口 3084),内置 GeckoView(不依赖系统 WebView),老设备可用;体积约 250MB、要求 **Android 8.0(API 26)**及以上
⚠️ 从任何旧版本升级,请直接装 v1.20.0(内核已升到 0.2.1-rc.2): ① 内核 0.2.1-rc.2(旧法重建,16 个补丁全部合并;终端协议换成上游新的 attach 双向流,界面无感); ② #44「插件安装失败 / 没有写入权限」真根因修掉 —— 内置 git 读 Termux 的 gitconfig 触发 EACCES; ③ #53 并发 fork 重复会话 —— 同一(会话 + 位置)的 fork 5 秒内只建一个; ④ #54 悬浮球动作可配置 —— 单击 / 长按 / 双击 可绑 打开应用 / 建虚拟屏 / 销毁 / 收起; ⑤ 补齐 Lite / 兼容版的悬浮窗图标主题化(此前只有正式版有)。 覆盖安装不会丢配置(模型/供应商、API Key、会话、插件都保留);同签名可直接覆盖,无需卸载。 ⚠️ versionCode 57(上一版 56):覆盖安装不会自动重新解压,建议装完在控制台「系统」→「运行环境」→「重新解压」点一次。 完整变更见 CHANGES.md。
ℹ️ 内核仍是 DSH 0.2.0-rc.2,并移除了自研定时任务(0.2.0 内核自带
@deepseek-ai/dsh-schedule,到点作为 follow-up 投递回原会话,可在 控制台 →「插件」页启用)。v1.17.1 另修了两个社区报告的缺陷:虚拟屏入口闪退(#36)、平板分屏界面白闪(#37)。 v1.17.3 起另含:compat 内嵌 GeckoView(老设备不白屏)、控制台「一切皆自定义」(主题包)、混装树自愈(引擎起不来一键「重新解压」)。 更早的 v1.15.3 → v1.16.1 修掉了「插件装不上 / GitHub 装插件不通 / 证书报错 / 插件重启后消失 / 每次开机配置被重置」,并新增内置 Python 与 npm。完整变更见 CHANGES.md。
要求:
- Android 7.0(API 24)及以上
- 系统操作能力需配合 Shizuku(免 Root 授权)或有 root;都不授予也能正常使用(文件操作只需「所有文件访问」权限)
- API Key 在 App 内页面填写,只存本机,绝不打包进 APK
🆘 打不开 / 白屏 / 连接失败? 先看 启动排查(常见问题都能自助解决)。
🐞 遇到问题?日志在哪 / 怎么反馈
- v1.12 及以后(有控制台):打开 App → 控制台 →「日志」页 —— 「查看日志」看
dsh-web.log末尾 200 行(可截图发来),「分享」把日志以文件形式发出(QQ / 微信 / 邮件都能选;启动失败时还会带上startup-diag.txt) - 不用 App 也能取(v1.7.1 起,无需 root / adb):用文件管理器进手机存储根目录 ——
正式版
/sdcard/DeepSeekHarness/dsh-web.log、Lite 共存版/sdcard/DeepSeekHarnessLite/dsh-web.log、兼容版/sdcard/DeepSeekHarnessCompat/dsh-web.log; 启动失败时同目录另有startup-diag.txt(错误 + 端口 + node 是否存活 + 日志尾部) - v1.7.0 及更早:既没有控制台也没有外部日志镜像 → 只能
adb logcat | grep -i deepseek(引擎日志在 App 私有目录,无 root 一般读不到);建议先升级到 v1.12+ - 反馈请附:日志 + 机型 / Android 版本 + 用的哪个包(正式版 / Lite / 兼容版)+ 复现步骤
📁 目录结构
CHANGES.md 版本改动记录(含 @Suyi222 贡献的 v1.1.1 稳定基线)
android-app/ APK 构建工程(正式版源码;Lite = 同一份源码改包名)
├── build.sh 一键打包脚本
├── env.sh 编译工具链环境(可 export PREFIX 覆盖)
├── AndroidManifest.xml 包名/targetSdk(28)/横竖屏自由旋转/Shizuku 声明
├── libs/ Shizuku 官方 aar(api/provider/aidl 13.1.5)
├── res/ 图标 + 字符串资源
├── sdk/ 放 platform android.jar(见 sdk/README.md)
├── compat/ **兼容版差异文件**(内嵌 GeckoView):只放与上面不同的 4 个文件 + 说明 → compat/README.md
└── src/.../ 原生壳:MainActivity(权限引导/控制台/引擎启停)、ConsoleTheme(主题包解析)、
AccessibilityService(无障碍)、OverlayService(鲸鱼悬浮球)、
VsreenBridgeService(虚拟屏桥)、EngineService、LogShareProvider(日志分享)等
mobile-patch/ 移动端适配(注入 DSH 前端,不覆盖原生代码)
├── inject.sh 注入脚本(mobile.css + mobile.js 到 dist)
├── mobile.css 触摸优化 + 竖屏适配 + 插件管理页 UI 适配
└── mobile.js 软键盘适配(VisualViewport 方案,横竖屏通用)
plugins/ 手机端自定义 DSH 工具插件
├── dsh-tool-shizuku/ 特权 shell(Shizuku 通道)
├── dsh-tool-android/ 结构化系统操作(包管理/应用/设置/截图/输入)
├── dsh-tool-accessibility/ 无障碍读屏/模拟操作(v1.7.0)
├── dsh-tool-vscreen/ 虚拟屏工具(create/status/launch/see/tap/swipe/key/close,v1.10+)
└── dsh-tool-browser/ AI 浏览器工具(caps/open/snapshot/find/click/type/read/nav/scroll,v1.19+)
tools/ 构建期小工具
└── manifest-gen.mjs 生成内核树清单(assets/kernel-manifest.tsv,供 App 侧「内核自检」用,v1.19.1)
console-theme/ 控制台主题包规范与工具链(v1.17.3,随 APK 分发到设备)
├── THEME-PACK-SPEC.md 自包含规范(字段速查 / 卡片·积木·动作三张 id 表 / 5 条提示词模板)
├── console.schema.json 机器可读 schema(与 App 侧解析同一套规则)
├── console.example.json 可直接用的示例主题
├── theme_pack_check.py 零依赖离线校验器(AI 生成主题包后自检用)
├── test-checker.py 校验器自测(6 用例)
└── make-demo-theme.py 扮演"生成主题包的 AI":现画背景图 → 写配置 → 打包 → 自检
dsh-patches/ DSH 源码补丁归档 + overlay
├── README.md 补丁说明(适配原因/升级 DSH/打包)
├── apply.sh 重新应用源码补丁
└── overlay/ 改好后的源码文件
config/cordis.patch.yml DSH 组合配置(禁原生模块 + 插入 bash-local/shizuku/android 插件)
docs/开发指南.md 项目开发指南(架构/常用命令/注意事项)
🔨 构建说明
详见 docs/开发指南.md 第六节「常用命令」与第七节「注意事项」。
关键点:
targetSdk必须保持 28(≥29 会导致 node 二进制 EACCES 起不来)- 需准备
runtime/(node v26 + 依赖库)和dshroot/(DSH 内核)才能打完整 APK build.sh会自动注入 mobile.css/mobile.js,并做 API Key 安全检查
⚠️ 这是源码与配置仓库,不含 APK 二进制、签名密钥(release.jks)、node 运行时、payload.zip、凭证文件。 📦 安装包(DeepSeekHarness.apk)、node 运行时与 DSH 内核分块包见 Releases;构建源码前需准备 runtime/ 与 dshroot/(分块包合并方法见 Release 说明)。
💬 交流讨论
遇到问题、想提建议、或想交流用法?欢迎加入 QQ 群 / QQ 频道:
| QQ 群 | QQ 频道 |
|---|---|
![]() |
![]() |
也可以直接在 Issues 反馈,我会尽快回复。
🙏 致谢与开源许可
- Operit(AAswordman)—— 本项目虚拟屏(vscreen)功能移植/对齐自 Operit 的 shower 模块(虚拟屏创建、H.264 视频流预览、反射/隐藏 API 规避等)。Operit 采用 LGPL-3.0,因此本仓库的虚拟屏相关文件同样按 LGPL-3.0 分发。完整致谢与许可说明见 THIRD_PARTY_NOTICES.md。
- Shizuku(RikkaApps,Apache-2.0)—— 免 Root 特权通道。
- DeepSeek Harness(
@deepseek-ai/dsh) —— 本项目的运行内核。 - Node.js(MIT)—— APK 内置运行时。
📄 许可证
本项目源码主体采用 MIT 许可证。
- ⚠️ 例外:
android-app/src/com/deepseek/harness/vscreen/(虚拟屏)移植自 Operit,按 LGPL-3.0 分发。 这部分及其衍生修改必须继续以 LGPL-3.0 分发并保留原始声明,详见 THIRD_PARTY_NOTICES.md(LGPL-3.0 / GPL-3.0 全文见licenses/)。 - 依赖的 DSH 内核(@deepseek-ai/dsh)为 MIT;Shizuku SDK 为 Apache-2.0;node 运行时为 MIT。
- 仓库不含签名密钥与凭证;安装包与运行时见 Releases。











