dsh 插件 · WebDAV 服务器:把一个目录变成 Windows/macOS/Linux…
30.6/100
综合分
1
GitHub 星标
432
npm 周下载
—/5
用户评分
数据截至 2026/9/29 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add @weibaohui/dsh-webdav-servernpm 源 · @weibaohui/dsh-webdav-server 的发布者账号已校验与本仓库一致
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · tool
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 37 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包@weibaohui/dsh-webdav-server @ 0.1.4
✓Node 引擎要求 >=22.5 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/13 09:40:24
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 14 处,展示前 14 条)
- 读取本地文件src/index.js:164
tokenFileCache = fs.readFileSync(engine.tokenFile(), 'utf8').trim() - 写入本地文件src/index.js:173
fs.mkdirSync(path.dirname(engine.tokenFile()), { recursive: true }) - 写入本地文件src/index.js:174
fs.writeFileSync(engine.tokenFile(), token + '\n', { mode: 0o600 }) - 发起网络请求client/bundle.js:198
const r = await fetch(url) - 发起网络请求client/bundle.js:280
const r = await fetch(API + '/settings', { - 发起网络请求client/bundle.js:295
const r = await fetch(API + '/token', { method: 'POST' }) - 写入剪贴板client/bundle.js:306
try { navigator.clipboard.writeText(text); onToast(t('copied'), 1800) } catch {} - 写入本地文件src/server.js:145
fs.mkdirSync(root, { recursive: true }) - 读取本地文件src/um-auth.js:84
const st = fs.statSync(file) - 读取本地文件src/um-auth.js:93
const doc = JSON.parse(fs.readFileSync(file, 'utf8')) - 发起网络请求client/index.js:188
const r = await fetch(url) - 发起网络请求client/index.js:270
const r = await fetch(API + '/settings', { - 发起网络请求client/index.js:285
const r = await fetch(API + '/token', { method: 'POST' }) - 写入剪贴板client/index.js:296
try { navigator.clipboard.writeText(text); onToast(t('copied'), 1800) } catch {}
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 目录挂载为本地磁盘
- 令牌认证
- 只读模式
展开完整介绍(77 字)↓
dsh 插件 · WebDAV 服务器:把一个目录变成 Windows/macOS/Linux 都能挂载成本地磁盘的服务(令牌认证/只读模式/热更新配置)
最近更新
在 GitHub 查看全部 →v0.1.52026-10-29
API 基址改由 document.baseURI 推导(与宿主官方客户端同口径):子路径反代(如 /dsh-webdav-server/api 会丢前缀打到站点根而 404;根路径部署行为不变。dsh-sync#14 同款修复,全插件批次落地。
v0.1.22026-09-23
HTTP API 路由接入宿主 connection 信任栅栏(Host/Origin 校验 + 浏览器认证),防止本机任意网页跨站调用。同源问题修复见 dsh-tasks#7 / skills-management#9。
数据来自仓库的 GitHub Release,可能与插件实际版本不一致。
README
由 DeepSeek 最新模型翻译生成@weibaohui/dsh-webdav-server
npm version
license
dsh 插件 · WebDAV 服务器:把一个共享目录变成 Windows / macOS / Linux 都能挂载成本地磁盘的 WebDAV 服务。独立端口 + 访问令牌认证,可选只读,共享根目录/端口/令牌全部可视化配置,设置页自带三平台挂载指南。
这是干什么的
mount 协议选型的结论是:WebDAV 是三平台都能挂载、服务端又最容易自研的方案(SMB 三端原生但服务端无法嵌入;NFS 的 Windows 客户端在 Home 版缺失)。本插件用 nephele(RFC 4918 全量实现的 Node.js WebDAV 框架)+ 官方文件系统适配器,把 dsh 里的一个目录变成标准 WebDAV 共享:
- 挂载后它就是一块本地盘:资源管理器 / Finder / 文件管理器里直接拖拽、双击编辑、另存,所有改动实时落到 dsh 机器上的共享目录;
- 与 dsh 网页、其他插件完全独立(自己的端口、自己的认证),宿主挂了它也跟着挂(插件生命周期内运行);
- 典型用法:把 dsh 会话工作区/知识库目录共享给局域网里的其他电脑、iPad(Files.app 原生支持 WebDAV)、手机等。
展开完整文档(README 剩余 1 节)
@weibaohui/dsh-webdav-server npm version license dsh 插件 · WebDAV 服务器:把一个共享目录变成 Windows / macOS / Linux 都能挂载成本地磁盘的 WebDAV 服务。独立端口 + 访问令牌认证,可选只读,共享根目录/端口/令牌全部可视化配置,设置页自带三平台挂载指南。 这是干什么的 mount 协议选型的结论是:WebDAV 是三平台都能挂载、服务端又最容易自研的方案(SMB 三端原生但服务端无法嵌入;NFS 的 Windows 客户端在 Home 版缺失)。本插件用 nephele(RFC 4918 全量实现的 Node.js WebDAV 框架)+ 官方文件系统适配器,把 dsh 里的一个目录变成标准 WebDAV 共享: - 挂载后它就是一块本地盘:资源管理器 / Finder / 文件管理器里直接拖拽、双击编辑、另存,所有改动实时落到 dsh 机器上的共享目录; - 与 dsh 网页、其他插件完全独立(自己的端口、自己的认证),宿主挂了它也跟着挂(插件生命周期内运行); - 典型用法:把 dsh 会话工作区/知识库目录共享给局域网里的其他电脑、iPad(Files.app 原生支持 WebDAV)、手机等。 安装 dsh plugin add github:weibaohui/dsh-webdav-server 重启 dsh 后,打开 设置 → WebDAV 服务器。 快速上手 1. 设置页确认服务运行中(默认已启用); 2. 复制设置页里的局域网地址(默认 http://:19087/)和访问令牌; 3. 在另一台电脑按设置页的挂载指南挂载:用户名随便填(如 dsh),密码 = 令牌。 三平台完整挂载步骤(含 Windows WebClient 服务与注册表修复命令、Linux davfs2 免交互配置)都内置在设置页的「挂载指南」卡片里,地址和凭据会自动代入,可直接复制执行。 首次启动令牌自动生成并持久化(settings 服务持久化到 ~/.dsh/settings.yaml 的 dsh-webdav-server 节;服务缺席时退回 ~/.dsh/dsh-webdav-server/token 文件),可随时在设置页重新生成。 共享目录(根目录) | 配置 | 默认 | 说明 | | 共享根目录 | ~/.dsh/dsh-webdav-server/share | 挂载盘看到的就是这个目录的内容;目录不存在自动创建;支持 ~ 展开 | | 监听地址 | 0.0.0.0 | 局域网可挂载;改 127.0.0.1 则仅本机 | | 端口 | 19087 | 1024–65535 | | 认证模式 | 独立令牌 | 见下节「认证:独立令牌 or user-management 账号」 | | 只读模式 | 关 | 开启后上传/删除/改名一律 403 | | 跟随软链接 | 开 | 关闭后共享根外的软链接会被拒绝 | 想共享别的东西,把根目录指过去即可,例如 dsh 会话工作区、~/.dsh/kb(知识库)、任何 absolute path。 ⚠️ 安全提示:根目录指到哪,挂载者(持有凭据的人)就能读写到哪。别把整个 HOME 指出去;只读共享公开目录时记得开只读模式。 认证:独立令牌 or user-management 账号 两种认证模式,设置页一键切换: - 独立令牌(默认):用户名任意,密码=访问令牌(首次启动自动生成,可随时重新生成)。零依赖,开箱即用。 - user-management 账号:直接复用 user-management 的登录用户名密码,不用另发凭据。注意事项: - 开启两步验证(TOTP)的账号无法挂载——Basic 认证没有地方输入动态码,这类用户请用独立令牌模式; - 被禁用的账号同样拒绝; - 密码修改后,已验证的旧凭据最多再有效 5 分钟(凭据判定缓存); - user-management 未安装或用户库损坏时自动回退令牌认证,不会把人锁死在外面。 三平台挂载速查 设置页里也有一份带实际地址和令牌的版本。 macOS - Finder 按 ⌘K(前往 → 连接服务器)→ 输入 http://:19087/ → 连接 → 用户名任意、密码填令牌; - 或终端 open http://:19087/ 直接唤起连接窗口; - 卸载:Finder 侧栏弹出,或 diskutil unmount /Volumes/。 Windows 1. 文件资源管理器 → 此电脑 → 映射网络驱动器 → 文件夹填 http://:19087/,勾选「使用其他凭据」→ 用户名任意、密码填令牌。 2. 失败先看这里(WebDAV 重定向器的历史包袱,均为一次性配置): | 症状 | 解法(管理员 PowerShell / 注册表) | | Win11 23H2+ 映射无反应 | WebClient 服务默认停用:sc config WebClient start= auto && net start WebClient | | 明文 HTTP 弹密码框后反复要求重输 | Basic 认证默认只走 HTTPS,HTTP 需 HKLM\SYSTEM\CurrentControlSet\Services\WebClient\Parameters\BasicAuthLevel = 2(DWORD)后重启 WebClient | | 大于 50MB 的文件拷不动 | 同路径 FileSizeLimitInBytes = 4294967295(默认 47185664)后重启 WebClient | | 改完不生效 | net stop WebClient && net start WebClient(改注册表后必须重启服务) | 3. 嫌麻烦的替代路线:RaiDrive、rclone mount(rclone mount :webdav: X: --vfs-cache-mode writes)都能挂同一个地址。 Linux sudo apt install davfs2 # 或对应发行版包管理器 sudo mkdir -p /mnt/dsh sudo mount -t davfs http://:19087/ /mnt/dsh 用户名任意,密码 = 令牌 免交互:把 http://:19087/ dsh 写入 /etc/davfs2/secrets(chmod 600)。 iOS / iPadOS 的「文件」App → 连接服务器 原生支持同样的地址和凭据。 配置持久化与热生效 设置存在宿主 settings 服务的 dsh-webdav-server 节(~/.dsh/settings.yaml),也可直接手改——插件每 3 秒做一次指纹比对,目录/端口/令牌/只读任一变化都会自动重建监听器,无需重启 dsh。 开发 npm install npm run build:client # 生成 client/bundle.js npm test # 引擎全链路(真实 nephele 监听器)+ 客户端契约 协议正确性由 nephele 保证(RFC 4918 全量),本仓测试覆盖认证门禁、只读 403、PROPFIND/PUT/GET/MKCOL/COPY/MOVE/DELETE 全链路与配置清洗。 许可 MIT 版本兼容性 本插件与 DeepSeek Harness(@deepseek-ai/dsh)的版本对应关系: | 插件版本 | 适配 dsh 版本 | 备注 | | 0.1.4 | 0.1.7-rc.2 | 当前版本;修复降级路径 Config 导出 null——宿主 settings schema() 不排除 null,会炸 settings.describe() 拖垮整份设置文档(同 dsh-continue#4) | | 0.1.3 | 0.1.7-rc.2 | 已在 @deepseek-ai/dsh@0.1.7-rc.2 下验证运行 | 发版约定:每次发布新版本时,请在上表追加一行,记录该插件版本实际验证所用的 @deepseek-ai/dsh 版本。package.json 的 engines.dsh 声明最低支持版本;本表记录实际验证版本,二者配合使用。
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
weibaohui/dsh-webdav-server
dsh 插件 · WebDAV 服务器:把一个目录变成 Windows/macOS/Linux…
相关插件 · 工具 / 效率
破甲管控台kingcharleslzy-ai/dsh-purge
dsh-purge Community · DeepSeek Harness 社区维护版:宿主兼容、状态诊断、提示词管理、更新与本机备份回滚。基于小杨 / YuJunZhiXue 的 dsh-purge。
★ 4,330已汉化DeepSeek 客户端
74.5
网文长卷lingfengQAQ/webnovel-writer
基于 Claude Code 的长篇网文辅助创作系统,解决 AI 写作中的「遗忘」和「幻觉」问题,支持 200…
★ 7,636已汉化DSH
72.2
多智能体协作HKUDS/AutoSwarm
AutoSwarm: Unify Your Agents. Unify Your Context (Codex · Claude Code · DeepSeek Harness · Muse · Grok · WorkBuddy· nanobot · and more)
★ 2,349已汉化DSH
71.6
Vox 拼贴视频生成Alisa0808/vox-director
🎬 Vox Director拼贴动效导演
★ 2,129已汉化DSH
71.4
Agent 演化引擎Q00/ouroboros
智能体 OS:智能体自己变聪明,我们只守住底线:面试准入、分阶段评估、带预算的进化循环。MCP 服务器,14 种运行时:Claude Code、Codex CLI、Gemini CLI、OpenCode、Copilot、Kiro 等。
★ 6,311已汉化DSH
71.4
智能体运行框架路由HarnessRouter/harnessrouter
智能体 harness 的统一接口。
★ 3,984已汉化DSH
71.3
这是你的仓库?认领条目