DeepSeek Harness Android Vibe 项目
官方 DeepSeek Harness 移植安卓,真终端 + 本地文件夹工作区
DeepSeek Harness Android:把官方 DeepSeek Harness 装进 Android 平板和手机
项目简介
DeepSeek Harness Android 是一个社区开源的非官方项目,目标是让 Android 平板或手机也能跑起官方 DeepSeek Harness(npm 包 @deepseek-ai/dsh)的完整 Web UI 与 Agent 引擎。它不是重写,也不是「远程网页壳」:项目把官方 npm 包原样装进设备内置的 Debian 13 arm64 用户态,通过 proot 在 Android 应用沙箱内运行,Android 端只负责三件事——解压并守护 Linux 运行时、用 WebView 加载官方 Web UI(127.0.0.1 + 启动 token)、把用户选定的共享存储目录 bind 成 Linux 会话的工作区。于是会话、文件面板、终端、插件、自动化任务全部来自上游官方实现,本项目只提供运行环境、原生交互与更新通道。官方主界面里除了远程连接场景外的一切都完整保留。
核心功能
- 完整官方 Web UI:会话、工作区、文件树与预览编辑、真实终端、插件、自动化任务、模型设置,全部由官方 dsh 提供。
- 本地文件夹即工作区:通过系统授权打开 /storage/emulated/0 下任意目录,proot 直接 bind 到 /workspaces/default,AI 的修改实时写回原目录,不复制、不同步。
- 真实终端:Node-pty 在 Debian 内工作,bash、git、rg、node、npm/pnpm 可直接使用,并已处理 Android 目录所有权与 core.fileMode 差异。
- 离线可用:Debian rootfs、Node 24、官方 dsh 与常见工具链全部打包进 APK,首次启动解压约 1.2GB,之后无需联网下载运行时。
- 自动跟随上游:每日 CI 检查 npm latest,自动升级 dshVersion 并开 PR,合并后自动构建、签名、发布;每次 main 构建成功都会创建 Release,应用内「检查更新」直接读取 GitHub Releases 的 update.json。
- 无标题栏悬浮球:十字球展开工作区、刷新、设置,可全屏拖动、吸附侧边成半透明半球,不占用屏幕空间。
- 后台常驻:specialUse 前台服务加 WakeLock,息屏后引擎继续运行,通知栏可停止或重启。
- 账号登录可用:官方登录流程使用 window.open(),已通过多窗口加子 WebView 支持,手机号与验证码登录页可正常显示。
技术实现
整体是三层结构:上层为 Android App(Kotlin、WebView、specialUse 前台服务),包含 MainActivity、FloatingMenuView、SettingsActivity;中层通过 http://127.0.0.1:3080/?token=… 访问官方 UI;下层是随 APK 分发、首次启动解压的运行时 Debian 13 arm64 → Node 24 → 官方 @deepseek-ai/dsh。官方引擎本身不做源码修改,所有适配都通过 $DSH_HOME/profiles/web/cordis.patch.yml 的受管块(fs-sandbox.cwd、sandbox-policy、permission.defaultPreset)加上启动环境变量完成。proot 主机二进制放在 jniLibs/arm64-v8a/lib*.so,配合 useLegacyPackaging 解压到 nativeLibraryDir 执行,CI 会校验所有 ELF 的 p_align 不小于 16 KB。会话、配置与工作区独立挂载,APK 升级不会清空 dsh-home,卸载应用才会删除全部本地数据。实测性能上,proot 对系统调用密集操作约有 40% 额外开销,Node 冷启动约 10 秒;作者在小米 Pad 6 Pro(Android 15)上完成了官方 UI、文件面板、终端、账号登录页与悬浮球的完整验收。
快速上手
- 下载:从仓库 Releases 取最新的 harness-android-*.apk。环境要求为 Android 8.0(API 26)及以上、arm64 设备、WebView 111 以上、至少 2.5GB 可用空间,APK 约 349MB。
- 安装:在系统设置中允许当前文件管理器或浏览器「安装未知应用」后安装;也可以走 adb:
adb install -r harness-android.apk。 - 首次启动:阅读安全说明,授予通知权限与「所有文件访问」权限(用于直接打开工作区),等待运行时解压完成(约 30 至 60 秒,显示文件数与百分比),随后自动进入官方 UI。
- 配置模型:进入设置里的「模型」填写 API Key,或点击「登录」通过 DeepSeek 账号授权。
- 绑定工作区:点击悬浮球选文件夹图标,选择 /storage/emulated/0/... 下的目录,引擎自动重启并绑定该目录,当前工作区会在设置页持久化显示。
- 打开终端与更新:在官方 UI 右侧边栏点「新建终端」即在会话工作区内运行 bash;设置页「检查更新」下载并校验 SHA-256 后调起系统安装器。
适用人群
手里有 Android 平板、经常在外通勤却要改代码的开发者;希望用「平板加云端 CICD」跑通全流程开发的人;习惯在移动设备上使用 DeepSeek 账号与模型 API 的用户;关注本地优先与离线可用的 AI 工具尝鲜者。
项目地址:https://github.com/Luqijian/DeepSeek_Harness_Android
项目说明:本项目为独立的社区作品,与 DeepSeek 无隶属关系,采用 Developer Edition 侧载方式分发。因 Android 上官方 Landlock 与 bwrap 不可用,运行时使用 danger-full-access,proot 本身不构成安全边界,应用沙箱是唯一隔离层,请只打开可信项目并为 API Key 设置用量上限。
评论与建议
登录 后参与评论或提建议