deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
多机同步插件:让多台机器上的 dsh 通过一个私有 GitCode 仓库保持一致——技能、会话、设置、插件清单都能同步。除 Git 完整同步外,还支持 WebDAV 与 本地文件夹 两种纯备份协议,各协议一个页签一个开关。

~)即可;每次同步整目录原子镜像(tmp-swap,中断不留半截备份)backup/<实例ID>/…,本地永不被读回覆盖;单协议失败不影响其他协议~/.dsh/skills、~/.agents/skills、~/agents/skills 三个根;新增都收、双方改动交 AI 语义合并backup/<实例ID>/,各机云上独立,本地永不被覆盖~/.dsh/dsh-sync/snapshots/,滚动保留 30 份,超窗真删除真释放);勾选「上传到云端」才写入所有已启用的云端协议(git → backup/<实例ID>/snapshots/,WebDAV / 本地文件夹同布局),永久存档backup/<实例ID>/ 下每台机器的备份并标记本机;在树中勾选文件后「预览拉取」会给出安全判定(哪些可拉、哪些会被阻止及原因),确认后才写入本地——写入前自动拍一份 pre-remote-pull 安全快照refs/dshsync/browse),不触碰 FETCH_HEAD,与同步循环无竞争ps 全机看到),改为 GIT_ASKPASS 环境变量注入(0.4.1);conflictMode=manual 时所有 AI 入口(自动触发 + 手动按钮)一律关闭,ai 才放行settings.yaml 等文件内含其他机密(如模型 apiKey),这些值仍会进入模型上下文(这是语义合并功能的固有性质,无法在保留功能的前提下消除);介意者请把 conflictMode 设为 manual 或关闭对应同步开关dsh plugin --profile web add @weibaohui/dsh-sync -w
装完重启 dsh web 即生效。
在 Windows 的 Git Bash 里,MSYS2 runtime 会对传给原生 .exe 的参数做 POSIX→Windows 路径转换。
若路径中某个目录名带点(如 C:\Users\x\.dsh\dsh-sync\repo),这个点会被当成路径分隔符,
路径被改写成 C:\Users\x\dsh\dsh-sync\repo(点消失、多出一级),git 于是在不存在的目录里执行并报 fetch failed。
这是 Git for Windows 的既有行为,官方定性为 wontfix(git-for-windows#685)。 本插件自 0.4.2 起做了两层防护:
MSYS_NO_PATHCONV=1 与 MSYS2_ARG_CONV_EXCL='*'(仅该子进程,不写全局环境)git -C <影子仓库> rev-parse --show-toplevel 确认目录真实可达后才动手;验证失败即停止汇报⚠️ 请不要把
MSYS_NO_PATHCONV=1写进.bashrc或全局环境——全局设置会影响其它程序, Git for Windows 官方也专门警告过这一点(build-extra#376)。 只在你自己的终端里按"每条命令前置"的方式临时使用即可。

本插件与 DeepSeek Harness(@deepseek-ai/dsh)的版本对应关系:
| 插件版本 | 适配 dsh 版本 | 备注 |
|---|---|---|
| 0.4.2 | 0.1.7-rc.2 | 修复 issue #10(Windows):Git Bash 的 POSIX→Windows 路径转换会把目录名里的点拆成路径段(C:\Users\x\.dsh\... → C:\Users\x\dsh\...),git 于是在不存在的目录里执行而报 fetch failed。git 子进程在 win32 下注入 MSYS_NO_PATHCONV=1 + MSYS2_ARG_CONV_EXCL='*'(仅子进程,绝不写全局);三个 AI 提示词加入 Windows 前置保险(判定平台 → 路径自检 → 每条命令前置开关 → rev-parse --show-toplevel 验证目录可达,失败即停);离线测试 60 项全绿 |
| 0.4.1 | 0.1.7-rc.2 | 安全修复(issue #9):AI agent 提示词不再携带 GitCode 访问令牌(prepare/finalize 收归 host 侧);git 子进程改经 GIT_ASKPASS env 注入凭证,argv 不再出现 token;conflictMode=manual 现在关闭全部 AI 入口(含手动按钮端点);离线测试 52 项全绿 |
| 0.4.0 | 0.1.7-rc.2 | 新增 WebDAV / 本地文件夹备份协议(每协议一页签一开关)、快照多协议通用上云与恢复回退;离线测试 45 项全绿(含伪 WebDAV 服务器 wire 级集成测试) |
| 0.3.5 | 0.1.7-rc.2 | 新增 ~/agents/skills(无点目录)技能根,随技能开关与策略一起同步/快照 |
| 0.3.2 | 0.1.7-rc.2 | 修复宿主将 volatile 字段物化为 {} 导致的设置毒化(saneConfigValues 清洗 + 移除 Config 兼容字符串字段) |
| 0.3.1 | 0.1.7-rc.2 | 适配 0.1.7 settings 模型(导出 volatile Config,ctx.settings.update 持久化),面板改动重启不再丢失 |
| 0.2.3 | 0.1.7-rc.2 | 已在 @deepseek-ai/dsh@0.1.7-rc.2 下验证运行 |
| 0.3.0 | 0.1.7-rc.2 | 新增远端备份浏览+选择性拉取+AI对齐+文件预览;已在 @deepseek-ai/dsh@0.1.7-rc.2 下验证运行 |
发版约定:每次发布新版本时,请在上表追加一行,记录该插件版本实际验证所用的
@deepseek-ai/dsh版本。package.json的engines.dsh声明最低支持版本;本表记录实际验证版本,二者配合使用。
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。