DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Lan — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
L

dsh-lan

Lan

把只监听 127.0.0.1 的 dsh web 暴露到局域网,并带上移动端适配 —— 一个包,手机连上就能用。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:xiazhi88/dsh-lan#021903e3c15d8d37127521843e765911259d7b43
README兼容性版本

兼容性与来源证明

Lan 以 dsh-lan 发布,当前版本为 1.0.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
any
发布来源
github
Registry 更新时间
2026/9/15

版本

1.0.0stable
2026/9/15

相关插件

正在加载相关插件…

最新版
1.0.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
any
许可证
MIT
发布源
github
周下载
0
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 integrations-communication 分类下经过校验的插件。

Remote Web Ui@linxin666/dsh-remote-web-ui通过扫码配对访问 dsh Web GUI,共享一个官方界面:设置按钮旁的二维码可将手机和 PC 配对到同一个 Web GUI(手机采用竖屏触控适配层,PC 使用完整桌面界面),通过一次性令牌和 rIm@xmanrui/dsh-im将十一种 IM 渠道和一个公网 AI Office 接入本地 DeepSeek Harness。DSCODE@toddzheng024/dscode-bundle完整的 DeepSeek 编码代理,支持持久化 shell、Ultra 协作和自动权限审查。Acp App@deepseek-ai/dsh-acp-appdsh ACP 配置文件包:基于 dsh-base 的仅限自动化的 JSON-RPC stdio 和进程生命周期管理

README

dsh-lan

把只监听 127.0.0.1 的 dsh web 暴露到局域网,供手机客户端连接。

一个包、一个插件、一件小事。不做移动端 CSS、不做公网隧道、不管访问密码 —— 界面怎么呈现、要不要通知,那是客户端自己的事。

为什么需要它

dsh web 有三道限制,手机端一条都绕不过去:

限制说明
只绑 loopbackdsh web 固定监听 127.0.0.1。官方明确禁了 --host 0.0.0.0:"it would expose remote code execution to the network"
/api 有 Host/Origin 栅栏只认 loopback(127/8、localhost、::1)或 --trusted-host 白名单,且 Origin 必须与 Host 同源
会话 cookie 绑定 authoritycookie 名是 dsh-auth-<authority 的 hash>,校验时比对签发时的 authority

所以手机即使能连上 3080,也会被栅栏 401。本插件把入站请求的 Host/Origin 统一改写成 127.0.0.1:<dshPort> 再转发 —— 栅栏永远看到 loopback,cookie 的 authority 也始终一致。

另外它还补两件小事:

  • 首屏注入一次 launch token:token 每次 dsh web 启动都会变,不带就永远拿不到会话 cookie
  • 注入两个 polyfill:crypto.randomUUID 在 http://<IP>(非安全上下文)里原生不可用, 而 DSH 连接层拿它生成 RPC id;AbortSignal.any 在旧 WebView 上缺失会让发送消息直接失败

安装

一个包,装完就能用:

# 从 GitHub 安装
dsh plugin --profile web add github:xiazhi88/dsh-lan -w
# 然后重启 dsh web

已发布到 npm 之后可以简写成 dsh plugin --profile web add dsh-lan -w。

dsh plugin add 会把声明了 dsh.bundle 的包自动加进 profile 的 bundles, 所以你不用手改配置文件。

装上后它自动挂两件事:

网络桥(本包)把只监听 127.0.0.1 的 dsh web 暴露到局域网
移动端适配dsh-web-mobile(MIT,独立维护)—— 抽屉布局、移动端 CSS、触控优化

第二条是依赖,不是 vendored 代码:dsh-web-mobile 在 npm 上独立迭代,本包只是把它一起挂进来。 dsh plugin add 会把声明了 dsh.bundle 的包自动加进 profiles/*/package.json 的 bundles, 而 profile 的模块回退会为整个依赖闭包建链接 —— 所以装一个包,两行插件都到位。

它在宽屏 / 非触摸设备上不会激活(自己的媒体查询带 pointer: coarse), 所以桌面浏览器通过局域网访问不受影响。

重启后终端会打印局域网地址:

dsh-lan: 局域网地址 http://192.168.1.100:3081  (上游 127.0.0.1:3080)

手机连同一 WiFi,把地址填进客户端即可。

配置(可选)

在 profile 的 cordis.patch.yml 里:

- id: dsh-lan
  config:
    port: 3081        # 对外端口,默认 3081
    bind: 0.0.0.0     # 对外绑定地址

端口被占用时(比如 dsh-pocket 还在跑)插件只会打一条警告,不影响 dsh web 本身。

自描述端点

GET http://<你的IP>:3081/__dsh_lan__/info
→ {"name":"dsh-lan","port":3081,"addresses":["http://192.168.1.100:3081"]}

客户端可以据此做地址自动发现。该端点不转发、不需要认证(只回本机地址,不含敏感信息)。

安全

它把能执行任意代码的 DSH 暴露到了局域网。 请确认:

  • 只在可信网络里开(家里 / 自己的 WiFi)
  • 不要把地址或端口转发到公网
  • 需要公网访问时,用带认证的隧道,别直接暴露这个端口

插件本身不做认证 —— 如果需要访问密码,那是另一个层面的需求,请用 dsh-pocket 或自己的反向代理。

移动端 UI 是从哪来的

DSH 核心是纯桌面 Web UI —— max-width: 1023px 这个断点在核心里一次都没出现。 抽屉布局、移动端 CSS、触控优化全部来自 dsh-web-mobile(MIT,作者 mexiaosqwq)。

本包把它作为依赖一起挂上(见上方 cordis.patch.yml 的第二行),所以用户装一个包就够。 它是独立维护的上游项目,不是本仓库的代码,出问题请先看 上游 issues。

移动端适配生效强制宽屏
角落切换按钮、无侧栏、输入框满宽DSH 原生桌面布局

与 dsh-pocket 的关系

两者定位不同,可以并存:

dsh-landsh-pocket
定位只做局域网转发,给客户端用完整的手机访问方案
公网隧道✗✓(cloudflared)
访问密码✗✓
二维码 / 设置页✗✓
移动端 UI 适配✗(DSH 核心也没有)✓(移植自 MIT 的 dsh-web-mobile)
依赖无qrcode 等

需要扫码、公网、密码就用 dsh-pocket;只需要「让手机连得上」就用本插件。

许可

MIT