DSH Go
把 DeepSeek Harness(DSH)装进 Android 手机:既能本机运行,也能远程遥控电脑上的 DSH。
- Star 数
- ★ 9.3k
- 最近更新
- 今天
- License
- AGPL-3.0
- 主语言
- Dart
- FA 评分
- 55/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 兼容但需适配
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 手上只有 Android 手机、想在通勤或外出时继续用 DSH 写代码或跑工具调用的开发者。
- 不适合
- 不愿在手机上预留约 1 GB 空间跑本机 Linux 环境的人
- 期望从 Google Play 或 iOS 直接安装的用户
- 必须依赖 32 位 ARM 或 x86 32 位设备的团队
- 源码审查
- 55/100 · 缺口较多
这个 Agent 能做什么,适合哪些场景?
DSH Go 是 DeepSeek Harness 的社区非官方 Android 客户端,基于 Flutter 构建界面、Kotlin 实现 Android 平台能力,代码以 AGPL-3.0 发布。它有两种执行形态:一是在 App 内安装 Ubuntu、Node.js 与 DSH 运行环境,免 Root、免 Termux 直接在手机上跑 DSH 引擎;二是通过 SSH 或 DSH Remote 连接电脑、服务器上的 DSH。界面提供聊天、模型切换、图片与语音输入、工具审批与提问,支持原生界面与官方网页版一键切换。仓库还包含 packages/dsh_client(DSH Web API 的 Dart 客户端)、packages/dsh_remote(DSH Remote 的 Dart 客户端)、sdk/plugin-kit 原生插件工具包与 examples/plugins 示例。运行在手机上的是 DSH 引擎,模型请求仍发给你自己配置的模型提供方并按该账户计费。构建目标为 Android 8.0 及以上,通过 APK 侧载分发,不是 Google Play 发布配置;iOS 与鸿蒙仅在 README 中表示计划适配。
启动后先选择「本机安装运行环境」或「连接远程主机」,随后为主机配置模型与凭据即可对话。本机模式下,App 在设备内准备 Linux 运行时(默认以 PRoot 兼容方式启动,开发者选项中的直接启动默认关闭),并在其中运行 Node.js 与 DSH 引擎;聊天通过 packages/dsh_client 调用 DSH Web API,远程主机则通过 packages/dsh_remote 走 DSH Remote 或 SSH。对话过程中支持排队插话并「立即发送」、完成后把工具过程折叠成一行、在原生界面与官方网页版之间切换同一段对话。开启手机操控权限后,本机引擎可读取屏幕、点按与输入,遇到付款、密码、验证码和系统设置则交还用户确认。输出侧可把回复做成分享卡、把整段对话导出为端到端加密的回放链接,并可调整主题色、桌面图标与桌宠(Deepy、鲸娘)。插件作者通过 sdk/plugin-kit 提供原生工具卡、表单和面板,examples/plugins 给出可参考的示例。
- 手上只有 Android 手机、想在通勤或外出时继续用 DSH 写代码或跑工具调用的开发者。
- 办公室或家里已有跑着 DSH 的电脑/服务器,希望用手机通过 SSH 或 DSH Remote 接手同一工作流的用户。
- 想给团队或自己做一个带原生工具卡、表单与面板的 DSH 插件,需要 SDK 与示例起步的插件作者。
- 需要在手机上演示或分享一段 AI 编码对话,用分享卡或端到端加密回放链接发给同事的人。
- 希望在平板或横屏手机上用常驻侧栏、居中内容排版来阅读长对话的用户。
- 愿意用无障碍权限让本机引擎代为点按和输入、但仍希望敏感操作要人工确认的用户。
如何安装或部署这个 Agent?
安装要求 Android 8.0(API 26)及以上。常见 64 位手机用 Release 页面上的 arm64 包;x86_64 设备与模拟器用 x64 包,位于发布说明末尾的「其他版本下载」;仓库没有 32 位 ARM 构建。
- 从 GitHub Releases 或官网下载页取得对应架构 APK,并按系统提示允许该安装来源。
- 首次启动时选择在本机安装运行环境,或连接远程主机。仅连远程主机时不必在手机上安装本机运行环境;本机运行请预留约 1 GB 空间。
- 为所选主机配置模型与所需凭据后开始对话。
从源码构建面向 Linux x86_64,需预先准备 Bash、Git、curl、tar、unzip、xz、Python 3、zstd、file 与常见 GNU 命令:
git clone https://github.com/ccch1mneyyy/dsh-go.git
cd dsh-go
bash tooling/setup-toolchain.sh
source tooling/env.sh
flutter --version
java -version
bash runtime/build-runtime.sh arm64-v8a
DSH_BETA_TOKEN_FILE= bash tooling/build-apk.sh -f arm64 --keep-daemon构建产物为 app/build/app/outputs/flutter-apk/app-arm64-release.apk。未配置 app/android/key.properties 时,本地 release 构建使用 debug 签名,无法直接覆盖不同签名的官方安装包。
如何使用这个 Agent?
首次启动选择主机后,在 App 内为主机配置模型与提供方凭据,即可进入聊天界面开始对话。本机模式会先完成内置运行环境的安装,之后请求由手机上的 DSH 引擎处理;远程模式经由 SSH 或 DSH Remote 使用电脑或服务器上的实例。
常用操作包括:切换模型、发送图片与语音输入、处理工具审批与提问、生成中排队插话并选择「立即发送」、在原生界面与网页版之间切换、生成分享卡与端到端加密的对话回放链接。
手机操控需按界面说明开启无障碍等权限;「不打扰模式」另外要求 Android 14 及以上以及 Shizuku 或自连 ADB。首次配置可按使用指南 docs/guide/README.md 逐项完成。
插件作者从以下入口开始:
# 读取插件教程与 SDK 说明
docs/plugins/README.md
sdk/plugin-kit/README.md只查看 APK 构建命令可运行:
DSH_BETA_TOKEN_FILE= bash tooling/build-apk.sh --dry-run -f all这个 Agent 有哪些优点和局限?
- 真正把 DSH 引擎搬进 Android:内置 Ubuntu 与 Node.js 运行环境,免 Root、免 Termux,只连远程主机时还可以完全不装本机环境。
- 本机与远程两条路径并存,通过 SSH 或 DSH Remote 可以在手机和电脑之间接着同一份工作流,而非二选一。
- 对话过程管理细致:生成中可排队插话并立即发送,工具过程完成后折叠成一行,原生界面与官方网页版可停在同一段对话上切换。
- 分享链路考虑隐私:分享卡、对话回放链接端到端加密,密钥只在链接里;手机操控遇到付款、密码、验证码会交还用户。
- 为插件作者提供了 sdk/plugin-kit 与 examples/plugins,可做原生工具卡、表单与面板;sdk/ 与 examples/ 以 MIT 授权,比主体更宽松。
- 覆盖横屏、平板排版,六套主题色与可选桌面图标,界面完整支持中英文切换。
- 只有 Android 侧载 APK,没有 Google Play 发布配置,也没有 iOS 或鸿蒙版本;iOS 与鸿蒙仅为后续适配意向。
- 不提供 32 位 ARM 构建,设备架构必须匹配 arm64 或 x64。
- 从源码构建门槛高:需要 Linux x86_64、JDK 17、Flutter 3.47.7、Android SDK/NDK,还要先构建运行时并联网下载依赖。
- 未配置 key.properties 时本地 release 用 debug 签名,与官方包签名冲突时不能直接覆盖;早期不同签名测试包还需卸载重装,会清空对话、Linux 环境与设置。
- 功能随主机与连接方式分化:DSH Remote 只支持图片附件、不能在 App 内打开网页版、插件管理仅限开关,且不支持 DS Bot 与对话日志导出。
- 匿名使用统计默认开启,需自行到「设置 → 隐私与分享」关闭;手机操控开启后屏幕文字与截图可能发给模型。
- 是社区非官方项目,与 DeepSeek 无关联;名称、标识与 Deepy、鲸娘吉祥物不在 AGPL 授权范围内。
这个 Agent 与同类方案有什么区别?
README 明确对标官方 DeepSeek Harness:DSH Go 不重写引擎,而是把 DSH 搬上 Android 并增加远程接管。相比在电脑上直接用官方网页版或 DSH-TUI,它把同一套引擎带到手机端,并支持在原生界面与官方网页版之间切换。远程连接部分参考了 ds-harness-remote 的项目与服务器。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| DSH Go 当前 | 55 · 缺口较多 | 桌面应用免费 + 模型费 | ★ 9.3k | 今天 | Dart | — |
| Harness Remote | 69 · 存在缺口 | 桌面应用 | ★ 434 | 1 天前 | JavaScript | Codex · Claude Code |
| Lody | 75 · 表现良好 | 自托管服务 | ★ 1.7k | 今天 | TypeScript | Codex · Claude Code |
| Autoprompt Skill | 69 · 存在缺口 | 命令行工具免费 + 模型费 | ★ 1.2k | 1 个月前 | JavaScript | Codex · Claude Code |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
README 明确说明模型请求发往用户配置的提供商、手机操控会把屏幕文本/截图发给模型、匿名统计默认开启且可关闭,插件配置设计文档还专门做了白名单与默认拒绝、密钥只写不读、错误码不显示主机原文,这些是实打实的权限与数据流约束。但扣分点也很具体:手机操控需要无障碍权限并读取屏幕,属于高敏感能力,文档只以一句『支付、密码、验证码始终交给你』带过,没有给出可核验的拦截机制;匿名统计默认开启;依赖安全方面仓库只声明『版本与校验数据已固定』,未见锁文件或漏洞扫描证据;外部效应(分享链接、配套服务、go.dshtui.com 下载页)缺少服务端信任边界说明;回滚方面插件配置文档自己承认『取消不是事务回滚』、恢复失败时只能靠 App 计算逆操作,且 bridge 路由尚未实现。
设计文档对并发、代次、锁序、有界队列、临时文件清理、失败原因码的描述相当自洽,插件配置文档也逐条列出 400/404/409/422/503/500 的语义与 App 处理,失败信息设计是清楚的。扣分在于:构建依赖需要联网下载 SDK/NDK、Ubuntu 包与运行时资产,且明确要求 gpgv、zstd 等额外工具,依赖可得性只靠『固定版本』一句话;文档自承 bridge 路由尚未实现、ConfigEditor 存在路径规范化缺陷,说明当前状态与文档描述存在已知落差。
受众与场景写得清楚:Android 8+、arm64/x64、本机 PRoot 运行时或 SSH/DSH Remote 远程主机、平板与横屏布局、中英双语。能力边界也明确列出(DSH Remote 只接受图片附件、不支持 DS Bot 与对话导出、插件管理仅开关)。扣分在于触发精度:手机操控的触发条件、安全模式边界、非干扰模式需 Android 14 + Shizuku 等只在 README 一句话带过,缺少可核验的触发/停止规则;环境适配虽覆盖多机型省电策略,但仅描述『会提示并打开设置』,未给出具体判定。
README 结构完整(下载、特性、安装、数据与权限、FAQ、构建、仓库布局、贡献、社区、许可),安装说明区分 arm64/x64、签名不匹配需卸载、构建脚本与 dry-run,FAQ 与已知限制(远程能力限制、无 32 位 ARM、非 Google Play 分发)都写了,AGPL-3.0 与 sdk/examples 的 MIT 例外、ASSETS.md 商标说明也清楚。扣分:命名稳定性方面文档里同时出现 dsh-go、DSH Go、dsh-go-bridge、r13/r14 等版本代号,且插件配置文档标注日期与『待后端落地』,版本/变更日志缺失;维护责任方面只有 Issues、SECURITY.md 与社区群,无发布节奏或支持承诺,发布者身份未经验证。
输出可用性有具体证据:插件快速开始给出 5 分钟可跑通的视图函数、toolCard 兜底规则、check.mjs 自查与常见故障对照表,插件配置文档给出逐错误码的用户文案,属于能直接落地的产出。边际价值在于把 DSH 装进手机并支持远程主机切换,确有差异化。扣分:成本收益方面需要约 1GB 空间、内置 Linux 环境、无障碍权限与可能的 Shizuku/ADB,且当前 bridge 路由未实现、部分能力受限,收益与代价的权衡文档没有量化说明。
事实与推断的分离做得不错:设计文档明确区分『已测量』与『未验证』,声明不外推 Android 帧时间,要求未运行的设备路径保持未验证状态,插件配置文档也标注了哪些是实测夹具、哪些是待后端实现。扣分:README 中的安全与隐私主张(本地 Web 接口只响应 App 自身、分享链接端到端加密、密钥只在链接里)没有指向具体代码或测试;跨源印证有限,测试夹具是合成数据,无法与真实运行结果对照;发布者身份未经验证,外部下载页与配套服务无法在仓库内核实。
- 手机操控需要无障碍权限并读取屏幕内容,屏幕文本与截图可能发送给所配置的模型;启用前请确认提供商的数据政策,并注意 README 未给出可核验的支付/密码拦截机制。
- 匿名使用统计默认开启,需在引导流程或设置中手动关闭。
- 插件配置的 bridge 路由尚未实现,当前主机实际走 volatile 退路;文档中描述的完整配置能力尚不可用。
- 插件配置白名单目前只是客户端防线,任何持有 /api 凭据的客户端仍可直接写入核心配置(文档 §7.4 已自述),在服务端落地前不要依赖该隔离。
- APK 为侧载分发,早期测试版签名不同无法原地升级,卸载会清空聊天、Linux 环境与设置;请先备份。
- 发布者身份未经验证,下载页 go.dshtui.com 与配套分享服务无法在仓库内核实,建议仅从 Releases 获取并核对签名。
- 构建需联网下载 SDK/NDK、Ubuntu 包与运行时资产,并额外依赖 gpgv、zstd 等工具;依赖安全仅以『固定版本』声明,未见锁文件或扫描证据。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
v1.0.10 DSH Go 1.0.10
发布说明摘录
手机安装:只需下载 [dsh-go-1.0.10-arm64.apk](https://github.com/ccch1mneyyy/dsh-go/releases/download/v1.0.10/dsh-go-1.0.10-arm64.apk)。 update.json 和 SHA256SUMS 供自动更新与校验使用,无需手动下载。GitHub 自动生成的 Source code 是源码包,不是安装包。 Install on your phone: download [dsh-go-1.0.10-arm64.apk](https://github.com/ccch1mneyyy/dsh-go/releases/download/v1.0.10/dsh-go-1.0.10-arm64.apk). update.json and SHA256SUMS support automatic updates and verification. You do not need to download them manually. GitHub's Source code archives are not installers. 中文 …在 GitHub 查看 ↗ -
v1.0.9 DSH Go 1.0.9
发布说明摘录
手机安装:只需下载 [dsh-go-1.0.9-arm64.apk](https://github.com/ccch1mneyyy/dsh-go/releases/download/v1.0.9/dsh-go-1.0.9-arm64.apk)。 update.json 和 SHA256SUMS 供自动更新与校验使用,无需手动下载。GitHub 自动生成的 Source code 是源码包,不是安装包。 Install on your phone: download [dsh-go-1.0.9-arm64.apk](https://github.com/ccch1mneyyy/dsh-go/releases/download/v1.0.9/dsh-go-1.0.9-arm64.apk). update.json and SHA256SUMS support automatic updates and verification. You do not need to download them manually. GitHub's Source code archives are not installers. 中文 …在 GitHub 查看 ↗ -
v1.0.8 DSH Go 1.0.8
发布说明摘录
手机安装:只需下载 [dsh-go-1.0.8-arm64.apk](https://github.com/ccch1mneyyy/dsh-go/releases/download/v1.0.8/dsh-go-1.0.8-arm64.apk)。 update.json 和 SHA256SUMS 供自动更新与校验使用,无需手动下载。GitHub 自动生成的 Source code 是源码包,不是安装包。 Install on your phone: download [dsh-go-1.0.8-arm64.apk](https://github.com/ccch1mneyyy/dsh-go/releases/download/v1.0.8/dsh-go-1.0.8-arm64.apk). update.json and SHA256SUMS support automatic updates and verification. You do not need to download them manually. GitHub's Source code archives are not installers. 中文 …在 GitHub 查看 ↗