dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
Persistent token-gated LAN access for DeepSeek Harness Web
为 DeepSeek Harness Web 提供可持久开启的局域网访问入口,面向当前 DSH 0.1.5-rc.1。
插件不实现第二套反向代理或自定义认证,而是配置并展示 DSH 0.1.5 自带的:
0.0.0.0 WebServer LAN 监听;trustedHosts 信任栅栏;| 项目 | 版本 |
|---|---|
| DeepSeek Harness CLI | 0.1.5-rc.1 |
| 插件 | 0.2.0 |
| Node.js | >=22.19.0 |
本插件以实际全局 dsh --version 和安装目录为基线,而不是旧源码 checkout。package.json 中的 dsh.engines.dsh 精确声明为 0.1.5-rc.1。
git clone https://github.com/advance-lion/dsh-lan-link.git
cd dsh-lan-link
dsh plugin --profile web add .
然后重启当前 dsh web 进程。
卸载:
dsh plugin --profile web remove dsh-lan-link
进入:
设置 → 插件 → 插件配置 → LAN Link
设置卡提供:
3080;30 天,可设 1–3650 天;一键重启复用当前 profile 已安装的 DSH Market 安全重启端点:它重放当前 DSH 的入口、参数、环境与工作目录,并等待端口释放后拉起新进程。端点只接受本机同源请求;通过 LAN 打开的远程页面不能重启主机进程。点击前会确认,并提示当前模型响应和后台任务会被中断。若 profile 未安装或已禁用 dshmarket,按钮会显示端点返回的错误,此时需手工重启。
DSH 0.1.5 的 WebServer 和 BrowserAuth 在进程启动时读取配置:监听地址不能在运行中把 127.0.0.1 安全热切换为 0.0.0.0,Cookie 有效期也在 BrowserAuth 初始化时确定。因此开关、端口和授权天数使用 applies: restart:设置立即持久化,但重启 dsh web 后生效。授权天数的修改只影响重启后新签发的 Cookie,不会追溯改变已签发 Cookie 的到期时间。
127.0.0.1,仅本机访问;0.0.0.0,由 DSH Web Runtime 自动发现 LAN IPv4 并加入 trustedHosts;--host / --port 仍优先于插件设置,方便临时覆盖。开启 LAN 并重启 DSH;
设置卡或启动日志显示类似:
http://192.168.1.20:3080/?token=...
远程浏览器第一次打开完整链接;
DSH 原生 BrowserAuth 校验该进程的随机 token;
成功后返回重定向,并写入绑定 hostname 和 port 的签名 Cookie;
此后可直接访问不含 token 的干净 URL;
Cookie 默认有效 30 天。
launch token 每次 DSH 启动都会变化。Cookie 签名密钥保存在 $DSH_HOME/.credentials.yaml,所以已经授权的浏览器 Cookie 可以跨 DSH 重启继续使用,直到过期、清除浏览器 Cookie,或删除/替换对应 credential 后重启。
Path=/、SameSite=Strict;sec-fetch-site 仍由 DSH 原生信任栅栏检查;如果需要撤销某个浏览器:清除其 Cookie。若要撤销全部已授权浏览器,需要删除或替换 client-connection/browser-session credential 并重启 DSH。
lib/config.js:在 WebServer 绑定前读取并注册持久设置,提供启动快照;cordis.patch.yml:让原生 WebServer 根据快照选择 loopback/LAN 地址,并保持 DSH 原生 Connection 认证;lib/index.js:向已认证设置页返回原生授权链接并处理配置写入;lib/client.js:Settings → Plugins 中的配置卡。插件没有自建 HTTP/WebSocket 代理,也没有自行存储长期 token。
已在全局 DSH 0.1.5-rc.1 上完成真实测试:
0.0.0.0;401;200 且包含 window.__DSH_BOOT__;开发检查:
pnpm test
npm pack --dry-run
main 与 v0.2.5:主要支持 DSH 0.1.5-rc.1,设置卡提供完整中文界面、清晰的局域网访问开关,保存端口前自动检测冲突;compat/dsh-0.1.5-rc.2 与 v0.2.5-rc.2.4:经隔离端到端验证的 DSH 0.1.5-rc.2 中文兼容预发布;compatibility.json 记录主版本与已验证组合;dsh.engines.dsh 安装官方 DSH 并执行原生认证 smoke test;MIT