dshbase

插件目录 / Developer / dsh-lan-share

dsh-lan-share

未验证 WODE25500

✓ 持续维护 2 位贡献者 基于 2 个官方 DSH 包

查看 GitHub ↗ ← 返回插件目录

1Stars
0Forks
0未关闭 issue
语言
2026-08-19最近推送
跨平台平台

功能简介

DSH LAN file share: share the workspace over the local network - phones/tablets/other computers browse, download and upload files via browser, no DSH login. Token gate, path boundary, read-only mode, rate limit. Zero-dependency (node:http).

我们的评价
未验证 — 尚未实测

DSH LAN file share: share the workspace over the local network - phones/tablets/other computers browse, download and upload files via browser, no DSH login. Token gate, path boundary, read-only mode, rate limit. Zero-dependency (node:http). 尚未验证——请自行安装测试。

「未验证」表示我们的自动化 CI 尚未安装过该插件。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。

你是插件作者? 想拿到「已验证」标签——提交你自己的验证证据(截图、日志或短视频),我们审核通过后即改为「已验证」。

提交验证证据 ↗

README

dsh-lan-share

DeepSeek Harness 的局域网文件共享插件 —— 把工作区通过 HTTP 共享到同一局域网:手机 / 平板 / 其他电脑用浏览器直接浏览、下载、上传文件,不需要登录 DSH。零依赖(node:http)。

和现有方案的区别

  • dsh-lan-gate / dsh-plugin-remote-access:代理整个 DSH 网页(要登录/批准设备);
  • dsh-ssh远程服务器上的执行与 SFTP;
  • dsh-webfileS3/FTP 等远程存储;
  • 本插件:本机工作区文件的纯局域网 HTTP 共享——临时传个文件给手机、让同事浏览器拉取产物,开箱即用。

注册工具

工具 功能
lan_share_start 启动共享服务器(可指定端口/token/只读模式/子目录),返回访问地址
lan_share_status 查看共享状态(运行中/根目录/只读/URL/token/文件统计)
lan_share_stop 停止共享

快速开始

lan_share_start → {
  "ok": true,
  "running": true,
  "port": 3980,
  "root": "F:/work",
  "readOnly": false,
  "urls": ["http://192.168.1.5:3980/?token=9f2c...", "..."],
  "token": "9f2c..."
}

手机/其他电脑浏览器打开 http://192.168.1.5:3980/?token=9f2c... 即可:

  • 📂 浏览目录树(面包屑导航)
  • 📄 点击文件名下载
  • ✏️ 读写模式:拖拽/点击上传到当前目录、删除文件
  • 🛡️ 只读模式:仅浏览 + 下载

安全模型

  • token 门禁:启动时生成随机 token;访问需带 ?token=X-Token 头;无 token 访问首页显示输入框;
  • 路径边界:所有路径解析后必须位于共享根内,../ 与绝对路径越界拒绝(HTTP 400);
  • 只读模式readOnly: true 时上传/删除/移动全部拒绝;
  • 限流:每 IP 每分钟默认 120 请求,超限 429;
  • 敏感文件隐藏:默认隐藏 .env、凭据类(credentials.yaml.netrc)、密钥(*.pem/*.key/*.pfx)、node_modules.git 等;
  • 监听地址可收紧:settings 里 host: 127.0.0.1 可只让本机代理接入。

访问控制(口令 / 到期 / 权限)

除了启动时生成的随机 token(长期 + 最高权限),可额外设置固定口令,每个口令独立控制:

字段 说明
password 口令,允许弱口令(不做强度校验)
role read(仅浏览/下载)或 write(最高:可上传/删除/移动)
expiresIn 到期:8h / 3d / 2mo / long(缺省=长期)

lan_share_start 传入 passwords,或用 settings lan-share.passwords 预设:

lan_share_start → { passwords: [
  { password: "family", role: "read",  expiresIn: "3d" },
  { password: "admin",  role: "write", expiresIn: "long" },
] }

浏览器访问时输入对应口令即可(?password=X-Password 头)。

免口令全开(明确授权)allowOpenAccess: true(或 lan_share_startopen: true)时豁免口令门禁——局域网内任何设备免口令访问。默认关闭,仅在明确授权时开启。

安装

# cordis.yml / dsh.profile 引用
plugins:
  - id: tool-lan-share
    name: 'dsh-lan-share'

或本地路径:

plugins:
  ./src/index.ts: {}

settings(可选)

命名空间 lan-share

lan-share:
  port: 3980            # 监听端口
  host: 0.0.0.0         # 0.0.0.0=全局域网;127.0.0.1=仅本机
  readOnly: false       # 默认只读模式
  rateLimitPerMin: 120  # 每 IP 限流
  hideSensitive: true   # 隐藏敏感文件

开发

npm install
npm run check   # typecheck + test + build
  • Node 要求:^22.19.0 || >=24.0.0
  • 核心在 src/lan-share-core.ts(纯函数 + HTTP 处理,可单测),插件入口 src/index.ts
  • 测试覆盖:路径越界、token 门禁(query/header/错误 token)、敏感文件隐藏、列表/下载/上传/删除/移动、只读模式拒绝、目录排序。

许可

MIT

安装

🧩 让 Agent 自动装(推荐)

装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:

dsh plugin add dshbase-catalog

然后对 agent 说「帮我装 dsh-lan-share」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包

该插件是 GitHub 源码(未发 npm)——直接从仓库装:

Web profile:

dsh plugin --profile web add github:WODE25500/dsh-lan-share

Headless(CLI)profile:

dsh plugin --profile headless add github:WODE25500/dsh-lan-share

实测报告

尚未 L3 验证——若已跑过,见下方失败备注。

状态:pending · 最近测试 2026-08-26
备注:验证: runtime-fail 浏览全部待验证失败 →
安全:尚未扫描——我们的每日静态扫描将很快覆盖它。

分享徽章

Developer 里更多

浏览全部 7795 个插件 →