🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

Tailscale 远程访问 YYDLR/dsh-remote-access

DeepSeek Harness
YYDLR30 天前有提交已提供中文文档扫描:无法判定

把电脑上的 DSH 发布到私网,手机在外随时使用

29.9/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/5 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add YYDLR/dsh-remote-access
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:需留意
是什么[目录]—
dsh 原生插件 · other
暂无时间戳·判据 →
装得上吗[实装验证]!
实装验证未通过(unknown),装前请到仓库确认最近更新与 issue
L4 · 真实安装等级说明 →
数据截至 2026/11/05·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/04·判据 →
还在维护吗[仓库]✓
活跃:最近一次提交在 30 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

⚠︎ 实装验证未通过(unknown · 2026/11/5) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
安全扫描自动 · 静态分析源码
v2.7.0
⚪ 扫描:无法判定尚无人工评估
展开查看扫描说明与证据 ↓

已尝试扫描但取不到可分析的源码:仓库或包不存在、已删除,或为非 JS/TS 实现、未随包发布源码。无法判定,不代表安全。

  • · 包内无可扫 JS
  • · TS 源码(可能为非 JS 实现或未发布源码),无法判定
扫描于 2026/11/4(0 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 发布DSH到私网
  • 手机远程访问
  • 自动释放会话写锁

把电脑上的 DSH 发布到 Tailscale 私网,手机在外面也能用;用完自动释放会话写锁,电脑端照常打开

README

由 DeepSeek 最新模型翻译生成
让手机在外面也能用家里电脑上的 DSH 把电脑上的 DSH(DeepSeek Harness) 发布到你的 Tailscale 私网,用手机浏览器随时随地使用;用完之后自动释放会话写锁 —— 回到电脑前照常打开,两端不打架。 ⚠️ 先读这一段:边界与风险 这是一套民间方案,不是官方做法。 在动手之前,请确认你接受下面这四件事: | 🔴 依赖未公开承诺的内部实现 | 整套方案建立在 DSH 的若干内部行为上:会话写锁是内核信号量、名字由路径 sha256 派生、锁只在进程退出时释放、会话目录的布局、--trusted-host 只校验 Host 头…… 这些都不是公开 API,上游改掉它们时不会当成破坏性变更,方案会静默失效(不报错,只是不再工作) | | 🔴 只实测于一种环境 | Windows 10/11 + DSH 桌面版 0.2.0-rc.2。只针对 DSH,其他 AI 工具未验证 | | 🔴 凭据等价于那台电脑的控制权 | dsh web 的启动 token / 30 天 Cookie 会同时出现在日志和浏览器历史里。拿到它的人可以在那台电脑上执行命令、读写文件 | | 🟡 锁的释放不是瞬间的 | 设计为最长约 20 分钟的自愈窗口(5 分钟会话文件静默 + 15 分钟无连接)。
展开完整文档(README 剩余 1 节)
让手机在外面也能用家里电脑上的 DSH

把电脑上的 DSH(DeepSeek Harness) 发布到你的 Tailscale 私网,用手机浏览器随时随地使用;用完之后自动释放会话写锁 —— 回到电脑前照常打开,两端不打架。

⚠️ 先读这一段:边界与风险

这是一套民间方案,不是官方做法。 在动手之前,请确认你接受下面这四件事:

| 🔴 依赖未公开承诺的内部实现 | 整套方案建立在 DSH 的若干内部行为上:会话写锁是内核信号量、名字由路径 sha256 派生、锁只在进程退出时释放、会话目录的布局、--trusted-host 只校验 Host 头…… 这些都不是公开 API,上游改掉它们时不会当成破坏性变更,方案会静默失效(不报错,只是不再工作) |
| 🔴 只实测于一种环境 | Windows 10/11 + DSH 桌面版 0.2.0-rc.2。只针对 DSH,其他 AI 工具未验证 |
| 🔴 凭据等价于那台电脑的控制权 | dsh web 的启动 token / 30 天 Cookie 会同时出现在日志和浏览器历史里。拿到它的人可以在那台电脑上执行命令、读写文件 |
| 🟡 锁的释放不是瞬间的 | 设计为最长约 20 分钟的自愈窗口(5 分钟会话文件静默 + 15 分钟无连接)。做不到「用完即释放」,因为 DSH 故意没提供超时释放 |

升级 DSH 之后,请重跑一遍指南第 7 节的验证。 这是这套方案唯一的「体检」。

问题是什么

DSH 用一个内核级的排他锁保护会话写入。它的设计是:

"A live but wedged holder keeps the lock until its process exits: there is
deliberately no expiry that could expropriate a stalled writer whose resumed
appends would tear the log."
—— dsh-session-persistence-jsonl/lib/index.js

翻译:只要进程活着,锁就不放,而且故意不做过期释放。

于是形成一个死结:

关掉浏览器 ≠ dsh web 进程退出 ≠ 锁释放 ↑ 只有"进程结束"才释放

你在手机上用过某个会话之后,回家打开电脑桌面版 → 「该会话已被占用」。

怎么解决

不是「用完退出」,而是「用完重启」。

| 动作 | 效果 |
| 杀掉进程 | 锁被内核立刻回收 |
| 再启动新进程 | 新进程没打开任何会话 → 不占锁,静静待命 |

手机浏览器 ↓ https://<你的设备名>.<你的tailnet>.ts.net/ (仅 tailnet 内可达) Tailscale 加密隧道 ↓ 电脑 tailscale serve(443) ↓ 127.0.0.1:3081 ← dsh web(只绑回环,尊重 DSH 的安全设计) ↑ guard 守护脚本 —— 自启 / 保活 / 空闲后重启以释放锁

守护脚本(dsh-web-guard.ps1)负责:

1. 自启:计划任务在登录时拉起
2. 保活:keepalive 每 5 分钟敲一次门
3. 释放:无连接 且 会话文件静默 5 分钟,持续 15 分钟 → 杀掉 dsh web 并重启(锁随之释放)
4. 待命:没追踪到任何会话文件时不计空闲、永不重启 —— 此时那个进程不可能持有锁

快速开始

完整步骤见 docs/GUIDE.md(约 30 分钟)。

大致是:

1. 装 Tailscale(电脑 + 手机,同账号)
2. (可选)开 SSH,让手机上的 AI 能代你操作电脑
3. 写 dsh-web-start.bat ← 启动 dsh web
4. 写 dsh-web-guard.ps1 ← 守护脚本(核心)
5. 建两个计划任务 ← onlogon 自启 + 每 5 分钟保活
6. tailscale serve --bg 3081 ← 发布到 tailnet
7. 验证(含"用手机蜂窝流量打开一次"这一步)

实测数据

这套方案在作者机器上跑过完整验证:

| 层面 | 结果 |
| 链路通 | Tailscale → serve → 127.0.0.1:3081,正常响应 |
| 锁能释放 | 手机停止使用后 19 分 32 秒自动释放(上限 20 分钟) |
| 锁状态可验证 | 锁探针(scripts/dsh-lock-probe.ps1)双向对照:持有 → LOCK IS HELD;空闲 → LOCK IS FREE |
| 真正在门外可用 | 关掉手机 Wi-Fi、改用蜂窝流量,正常访问 |
| 待命不折腾 | 无人使用时连续 3 小时零重启(v4 时代会每 15 分钟自杀一次) |

关于「锁探针」:它读取 DSH 用的那个具名内核信号量的状态。
注意它必须正反各跑一次才算数 —— 只看到一次 NOT FOUND 什么也证明不了(名字算错也会稳定输出 NOT FOUND)。详见指南 7⑤。

仓库内容

README.md 这份文件 docs/GUIDE.md 完整复现指南(约 1,700 行,含源码与实测数据) docs/BLIND-REVIEW-METHOD.md 这份指南是怎么被改到"零提问可复现"的(通用方法论) scripts/dsh-web-guard.ps1 守护脚本(全 ASCII 注释,避免 PowerShell 编码坑) scripts/dsh-lock-probe.ps1 会话锁探针(带健康检查,防假阴性)

已知限制

- 电脑睡眠后远程会断 —— 指南 1.4 检查项 1 给了处理办法
- 重启后若无人登录,onlogon 任务不触发 —— 指南 1.4 检查项 3
- 守护脚本可能追踪到「别人的」会话文件(需要三个条件同时满足才触发,指南第 9 节)
- 失败退避逻辑未在真实故障下实测
- 手机端用不了「仅限本机」的管理功能 —— 提供商目录、凭据、部分设置会被拒(isLoopback=false)。
这是 DSH 的刻意设计,也是本方案的有意取舍:配置类操作请回到电脑本机做。
- 本方案定位是「个人自用」(一个 tailnet 里只有你自己的设备)。要分享给别人,先把 Tailscale ACL 和 SSH 权限收紧。
- 装了火绒 / 360 等安全软件时,它们可能把守护脚本的行为当成可疑活动 —— 指南第 6 节有说明

许可

MIT

致谢

感谢 DSH 作者把「绝不静默破坏会话日志」放在便利之上 —— 这套方案的全部复杂度,都源于尊重那个设计。
预览分享卡片长什么样 ↓YYDLR/dsh-remote-access
分享 · DeepSeek Harness Hub
YYDLR/dsh-remote-access

把电脑上的 DSH 发布到私网,手机在外随时使用

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部