DSH Plugins
返回列表
🖥️

dsh-hardlink-publish-fallback

客户端 更新于 2026.09.25

在终端中运行以下命令:

dsh plugin install Mushroomcowisheggs/dsh-hardlink-publish-fallback

将以下提示词粘贴到 DeepSeek Harness 对话框中:

在 DeepSeek Harness 中执行 dsh plugin install Mushroomcowisheggs/dsh-hardlink-publish-fallback,或从 https://github.com/Mushroomcowisheggs/dsh-hardlink-publish-fallback 安装并加入 profile。

插件介绍

在 Windows 上,DSH 本地文件服务发布「新文件」时常用硬链接把暂存文件挂到目标路径,这既完成写入,也避免覆盖在此期间已出现的同名文件。但 exFAT、FAT32 以及部分网络共享不支持硬链接,调用会被拒绝,且错误形态类似 EISDIR,于是「新建文件」会反复失败,而「编辑已有文件」往往仍正常——工具看起来半坏半好,很难一眼判断原因。

本插件不改变默认写入路径:先让真实 write 照常执行;仅当失败信息同时带有 .tmpdir 暂存标记与 link 动词、符合硬链接发布失败特征时,才再次确认目标仍不存在,然后用卷本身支持的重命名发布方式完成创建,并记录与成功写入相同的观测结果。若回退过程中任一步失败,则原样返回最初的错误。检测严格,不会误伤目录目标、路径错误等其它 EISDIR。

它只修复「新建文件」场景;更新与编辑本来就不走硬链接路径,无需介入。逻辑按失败签名识别,并非绑定某一操作系统,凡拒绝 link() 且表现一致的环境都可受益。需要说明的是:DSH_HOME 若放在不支持符号链接的卷上,profile 仍可能无法启动,本插件不解决该问题;直接写在盘符根目录的新文件也可能因其它限制仍失败,应使用子目录。

适合在 U 盘、移动硬盘、exFAT/FAT32 分区或受限网络盘上使用 DSH、又需要 agent 正常创建新文件的用户。它是 dsh-fs-local 发布逻辑缺陷的运行时变通方案,而非上游永久修复;在可 symlink 的本机盘上可不必安装。

使用场景

  • 工作区在 exFAT 或 FAT32 U 盘上,agent 无法创建新文件
  • 编辑已有文件正常,但每次新建都报 EISDIR/link 相关错误
  • 在不支持硬链接的网络共享或移动硬盘上使用 DSH 写文件

适合人员

  • 在 Windows 上将 DSH 工作区放在 exFAT/FAT32 的用户
  • 需要修复「能改不能建」写入问题的 DSH 客户端用户
  • 经常在 U 盘或移动硬盘上跑 agent 的开发者