DeepSeek Harness Hub
← 返回列表

lixun910/dsh-share

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

通过一个仅在你使用时才存在的安全、临时公共隧道,从你的手机、iPad 或任何浏览器访问你的 DeepSeek…

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/21 · 已提供中文文档

通过安全的公共隧道访问你的 DeepSeek Harness (dsh) 工作区——从你的手机,或从任何有公共 URL 的地方。

综合分
29.3
GitHub 分
29.3
用户评分
★ Stars
3
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add lixun910/dsh-share
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/19(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/cordis-plugin-group@deepseek-ai/cordis-plugin-hmr@deepseek-ai/cordis-plugin-include@deepseek-ai/cordis-plugin-loader@deepseek-ai/cordis-plugin-timer@deepseek-ai/cosmokit@deepseek-ai/dsh@deepseek-ai/dsh-agent@deepseek-ai/dsh-agent-default-model@deepseek-ai/dsh-agent-instructions@deepseek-ai/dsh-agent-loop
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

dsh-share

通过一个仅在你使用时才存在的安全、临时公共隧道,从你的手机、iPad 或任何浏览器访问你的 DeepSeek Harness(dsh)工作区。

dsh-share 是为你从自己的设备访问自己的 DeepSeek Harness 而构建的。它不是一个分享工具:URL 和生成的密码是给你自己用的,而不是用来分发给别人的。

免费、无需账户、无需注册。 dsh-share 使用 Cloudflare 快速隧道(cloudflared)通过 HTTPS 暴露你本地的 dsh Web 服务器。无需 Cloudflare 账户、无需 API 令牌、无需 ngrok authtoken —— 只需点击 Start,你就会得到一个公共的 https://.trycloudflare.com URL,可以在任何设备上打开。

dsh-share 控制窗口

使用 DeepSeek v4 Flash 构建。 本仓库中的代码由 DeepSeek v4 Flash 模型编写。

⭐ 如果 dsh-share 为你节省了一小时,请给仓库点个 star —— 这能帮助其他人发现它。

演示

下载

从发布页面获取适用于你平台的最新安装程序:

| 平台 | 格式 |
|---|---|
| macOS | DMG / zip |
| Windows | NSIS 安装程序 |
| Linux | AppImage |

工作原理

┌───────────────────────────────  Your desktop  ───────────────────────────────┐
│                                                                              │
│   dsh-share (Electron app)                                                   │
│     │                                                                        │
│     ├─ 1. starts dsh web  ──────────────►  dsh web server                    │
│     │        (--trusted-host )     127.0.0.1:              │
│     │                                                                        │
│     ├─ 2. local basic-auth proxy ───────►  forwards HTTP + WebSocket         │
│     │        (username / password)          to dsh on loopback               │
│     │                                                                        │
│     └─ 3. cloudflared quick tunnel ─────►  https://.trycloudflare.com │
│              (no account / token)                                            │
│                                                                              │
└──────────────────────────────────────────────────────────────────────────────┘
│
│  HTTPS (Cloudflare edge)
▼
┌───────────────────────────────  Cloudflare  ──────────────────────────────────┐
│   Free quick tunnel — terminates TLS, routes to your machine                 │
└──────────────────────────────────────────────────────────────────────────────┘
│
▼
┌───────────────────────────────  任意设备  ─────────────────────────────────┐
│   手机 / 笔记本电脑 / 远程浏览器                                            │
│     • 打开公开 URL,或                                                       │
│     • 使用 dsh-mobile 应用扫描二维码                                         │
│     • 使用生成的用户名 / 密码进行身份验证                                    │
└──────────────────────────────────────────────────────────────────────────────┘

该应用将你原本需要手动配置的各个部分打包在一起:

1. 启动一个指向 dsh Web 服务器的 Cloudflare 快速隧道(cloudflared)——
无需账户、无需令牌、无需注册。
2. 在 dsh 前面放置一个小型 本地基本身份验证代理(快速隧道本身不提供
身份验证)。
3. 以公开 URL 作为 --trusted-host 启动 dsh web,这样浏览器信任围栏
就能接受通过隧道发来的 /api 调用。
4. 在控制窗口中向你显示公开 URL、凭据和二维码。

功能特性

- 零摩擦启动 —— 只需点击 Start。无需 ngrok 账户、无需
authtoken、无需配置设置。
- 免费的 Cloudflare 快速隧道 —— 无需账户、令牌或注册。
- 首次运行安全警告 —— 在启动隧道之前,你必须确认一个模态对话框。
- 自动生成的凭据 —— 存储在 ~/.config/dsh-share/auth.json 中,
可从 UI 重新生成。
- 移动端访问 —— 控制窗口中有一个二维码;使用
dsh-mobile 应用扫描它即可从手机连接。
- 跨平台构建 —— DMG/zip(macOS)、NSIS(Windows)、AppImage
(Linux),并支持可选的代码签名 + 公证。
- 自动应用更新 —— 启动时检查 GitHub releases,在后台下载
新版本,并在退出时或通过一键点击安装。
- GitHub Actions CI —— 构建全部三个平台,并在 v 标签的
releases 中附加构建产物。

为什么需要它

dsh web 默认只信任回环地址。要从另一台设备访问它,你必须
将当前的隧道域名作为 --trusted-host 传入 —— 而免费套餐的
域名在每次重启时都会轮换。这个应用将整个流程自动化了。

从源码运行

npm install
npm start

构建安装程序

npm run dist          # 当前平台
npm run dist:mac      # macOS(DMG + zip)
npm run dist:win      # Windows(NSIS)
npm run dist:linux    # Linux(AppImage)

在 dist/ 中生成安装程序。应用图标由
node scripts/generate-icon.js 生成(无需图像工具)。

代码签名与公证

签名是可选的,由环境变量驱动,因此未签名的
构建开箱即用:

| 平台 | 环境变量 | 效果 |
|---|---|---|
| macOS | CSC_LINK, CSC_KEY_PASSWORD | 对应用签名 |
| macOS | APPLE_ID, APPLE_APP_SPECIFIC_PASSWORD, APPLE_TEAM_ID | 公证(通过 scripts/notarize.js) |
| Windows | CSC_LINK, CSC_KEY_PASSWORD | 对安装程序签名 |

GitHub Actions
.github/workflows/build.yml 会在每次 push/PR 时构建 macOS、Windows 和 Linux(AppImage),并在你推送 v 标签时创建一个包含所有产物的 GitHub release。将上面的签名密钥添加到仓库的 Actions secrets 中,即可获得已签名/已公证的构建。

自动 harness 更新

.github/workflows/update-dsh.yml 每天运行(也可手动触发),让捆绑的 DeepSeek Harness 保持最新,无需任何手动步骤:

1. scripts/update-dsh.js 检查 npm 上最新的 @deepseek-ai/dsh。如果存在新版本,它会升级所有 @deepseek-ai/ 依赖,将任何新的 harness 包添加为直接依赖(electron-builder 会丢弃 peerDependencies,因此它们必须作为直接依赖才能被提升),并将应用版本升级为最新 v 标签之后的下一个补丁版本。
2. 它会打开一个 PR;build.yml 会在该 PR 上构建全部三个平台。
3. 当构建通过后,PR 会被自动合并,切出一个 v release 标签(这会触发 release 任务),并更新 gh-pages 下载按钮以及“Bundled DeepSeek Harness”版本说明。

如果上一次运行合并了 PR 但未能切出 release,下一次运行会检测到缺失的标签并直接切出,而无需新建 PR。你可以随时通过 Actions → update-dsh → Run workflow 手动运行它。

自动应用更新

已安装的 dsh-share 副本会通过
electron-updater 自行更新。启动时应用会检查 GitHub releases 页面;当存在更新版本时,它会在后台下载并在退出时安装——或者通过控制窗口中的 Restart & install 按钮立即安装。更新会像初始安装一样经过签名和公证,因此 Gatekeeper 会接受它们。electron-updater 读取的 latest.yml 清单由 build.yml 上传到每个 release。

工作原理(底层机制)

Electron main
├─ pick a free port for dsh (never collides with a dsh already on 3080)
├─ createAuthProxy(port, user, pass)  → local basic-auth reverse proxy
│    └─ forwards to the app's dsh on 127.0.0.1: (HTTP + WebSocket)
├─ startTunnel(proxyPort)            → cloudflared tunnel --url http://127.0.0.1:
│    └─ parses the https://.trycloudflare.com URL from cloudflared's log
├─ startDsh(host, dshPort)           → node @deepseek-ai/dsh web --trusted-host  --port
└─ control window shows URL + credentials + the local dsh port + logs

凭据在首次启动时生成,存储在
~/.config/dsh-share/auth.json 中,并可从 UI 重新生成。

安全说明

- 隧道使用 HTTPS(Cloudflare)和 basic auth(本地代理)。
- 重新生成凭据会立即使旧密码失效。
- 该 URL 和密码让你可以从手机或 iPad 访问你的机器。
dsh-share 旨在让你访问自己的 DeepSeek Harness,而不是用于
分享——请将链接和凭据保密。隧道是临时的:
你一停下来它就被销毁了,所以没有永久的公共端点。
完成后停止隧道。
- 先在 http://localhost:3080 上添加工作区——文件选择器
(host.pickDirectory)在设计上仅限回环地址。
- 在使用该应用之前,停止任何你已经在运行的 dsh。 该应用会针对同一个
~/.dsh 配置运行它自己的 dsh;如果你的 dsh 已经启动,两者会冲突
(EPERM / 502)。该应用会检测端口 3080 上的 dsh 并警告你。

配置

| 环境变量 | 用途 |
|---|---|
| DSH_BIN | @deepseek-ai/dsh/lib/bin.js 的路径(覆盖自动检测) |
| CLOUDFLARED_BIN | cloudflared 二进制文件的路径(覆盖捆绑/PATH) |
| DSH_SHARE_CONFIG_DIR | 覆盖配置目录(默认 ~/.config/dsh-share) |

许可证

MIT

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群