dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
由于 dsh 的自定义范围太大,很难通过一个插件或者程序来完美备份自己的配置,所以我觉得可以通过 ai 来分析哪些配置需要备份、可以备份,以及在新的环境中如何恢复。有了这个 skills 导出的配置文件,任意 agent 都可以帮助恢复 dsh 的配置。
DeepSeek Harness (DSH) 环境备份与恢复技能。JSON 契约 + Node 单文件执行器 + 由契约渲染的 Markdown。
把 DSH 环境视为六类组件(配置 / 插件 / 本地依赖 / 环境补丁 / 自定义脚本与状态 / 数据),按类别检测、选择、打包、恢复。导出的包是自包含的:一个 manifest.json(唯一事实源)+ 由它渲染的 MANIFEST.md + 原始文件,另一个 agent 仅凭包就能恢复。
id)、可 diff、可重放。YAML 只作为载荷原样搬运,不参与格式转换。.mjs 三端同跑,零第三方依赖。plan 只读地产出 plan.json,agent 审阅后 apply --apply 才写盘,覆盖前一律 .bak-<时间戳>。把 SKILL.md、bin/、lib/、schema/ 放到 DSH 技能目录:
mkdir -p ~/.dsh/skills/dsh-backup
cp -r SKILL.md bin lib schema ~/.dsh/skills/dsh-backup/
DSH 会实时监听技能目录,新会话即可使用。
node bin/dsh-backup.mjs --help
# 备份
node bin/dsh-backup.mjs detect --json --out env.json
node bin/dsh-backup.mjs size --work ./w
node bin/dsh-backup.mjs patchscan --work ./w --export ./w/patches
node bin/dsh-backup.mjs patchscan --work ./w --registry https://registry.npmmirror.com # registry fallback
node bin/dsh-backup.mjs stage --work ./w --categories 1,2,3,4,5,6 --include-credentials
node bin/dsh-backup.mjs doc --pkg ./w/stage/<包名> --out ./w/manifest-recovery.md
node bin/dsh-backup.mjs pack --pkg ./w/stage/<包名> --out ./out
DSH_WEBDAV_USER=... DSH_WEBDAV_PASSWORD=... node bin/dsh-backup.mjs upload --file ./out/*.zip --url '<WebDAV 根>' --sub-dir Backup
# 恢复
node bin/dsh-backup.mjs plan --pkg <解压后的包> --out plan.json
node bin/dsh-backup.mjs apply --plan plan.json # dry-run
node bin/dsh-backup.mjs apply --plan plan.json --apply # 执行
node bin/dsh-backup.mjs verify --pkg <解压后的包>
退出码:0 成功 / 1 错误 / 20 验收失败 / 30 环境缺失。--json 时 stdout 只有一个 JSON 文档,诊断走 stderr。
| 文件 | 位置 | 说明 |
|---|---|---|
manifest.json | 包内 | 唯一事实源;结构见 schema/manifest.schema.json |
MANIFEST.md | 包内 | 由 manifest 渲染,人/agent 阅读;不手写 |
plan.json | 恢复时生成 | 针对目标机的具体计划,含 decisions[];结构见 schema/plan.schema.json |
node --test # patch 合并 + plan/apply/verify 集成测试
tar(Windows 10+ 自带 bsdtar;macOS/Linux 用系统 tar),脚本自动探测MIT