Repository navigation
Releases
Releases · paayton/dsh-link
dsh-link v0.1.0
dsh-link v0.1.0
DeepSeek Harness 移动端 H5 桥接插件:在桌面版设置页新增「Link」栏,手机浏览器经内网 / Tailscale 用连接密钥接入桌面版正在运行的会话。
包含
- host 段(TypeScript,对
@deepseek-ai/*@0.2.0-rc.2类型做tsc检查)- 自建 LAN 监听(默认
127.0.0.1:19388,可配0.0.0.0),不复用桌面版主 webServer(官方禁止主服务绑0.0.0.0) - 三类受众隔离路由:
/m静态公开、/m/api/*连接密钥保护、/m/link/*仅回环 + cookie - 零第三方依赖的 RFC 6455 WebSocket 实现(文本帧 / 分片 / ping-pong / close)
- 连接密钥:
sha256摘要 +timingSafeEqual常数时间校验,存于ctx.credentials
- 自建 LAN 监听(默认
- 客户端段:桌面版设置页「Link」栏(Tailscale / 内网 IP 状态、连接密钥生成、手机地址与操作指引)
- H5 客户端(零构建、零第三方运行时依赖)
- 移动优先、深浅色主题、安全区与软键盘适配、PWA 可加到主屏
- Markdown 正文、思考块、工具调用卡片(可展开参数 / 输出)、流式增量、发送即插话
- 更早历史分页、断线重连、会话边栏(筛选 / 折叠 / 侧滑手势 / 设置面板)
- 图片上传:相册 / 拍照 → 长边 1568px 压缩 →
fileUploads收据 → 随 prompt 发送,历史图片可回显 - 静态资源内容哈希 ETag,无感自动升级
- 测试:6 组 149 项(WebSocket 协议 10 / host 集成 33 / 客户端契约 6 / H5 UI 61 / Markdown 19 / 事件归约 20),语句覆盖率 84.4%;CI 跑 typecheck → build → coverage
兼容性
| dsh-link | DeepSeek Harness 桌面版 |
|---|---|
| 0.1.x | 0.2.0-rc.2 |
插件依赖 DSH 内部 API(sessionController 门面、fileUploads 收据、cordis 上下文),与桌面版版本强绑定。升级桌面版后先跑 pnpm typecheck,并把 @deepseek-ai/* devDependency 的精确版本号同步改掉。
安装
git clone https://github.com/paayton/dsh-link.git
dsh plugin --profile desktop add ./dsh-link
# 再把 "dsh-link" 加进 ~/.dsh/profiles/desktop/package.json 的 dsh.profile.bundles 数组手机接入前务必先在「设置 → Link」生成连接密钥;bindHost 默认仅回环,要让手机连入需改成 0.0.0.0 或走 Tailscale。
完整说明见 README。