dsh-skill-sync:本地 skills 镜像的 git pull 与符号链接同步

前言

在 DSH 里通过文件系统 skill provider 加载技能目录时,目录在 git pull 之后可以被 watcher 热重载(默认会跟随符号链接)。但 DSH 本身不会定期拉取镜像仓库,也不会自动维护 skill 根目录下的符号链接:新增技能要建链、移动要修链、删除或弃用后要清掉过期链接。若你本地维护的是类似 mattpocock/skills 的镜像,需要有人把「拉代码」和「对齐 symlink」这两步串起来。社区插件 dsh-skill-sync(维护者 mi-lu-uncle,SkillHub 分类为工作流)把 mattpocock 的 skills sync 脚本包成 DSH 命令,并可选定时执行。

这是什么

dsh-skill-sync 是围绕 mattpocock skills sync 脚本的薄封装:暴露 /skills-sync 命令用于立即同步,以及默认关闭、需显式开启的周期性定时器。插件当前版本为 0.1.1(MIT),在 package 元数据中声明与 DSH 0.2.0-rc.2、0.2.1-rc.2 兼容。

核心功能

同步脚本承担两件事:

  1. 对镜像仓库执行 git pull --ff-only;
  2. 在 skill 根目录 reconcile 符号链接:为新技能建链、修复移动后的链、移除已删除或弃用技能对应的过期链接。

插件在此基础上提供:

  • /skills-sync:立刻运行同步脚本并展示其报告;
  • 可选定时器:在配置里将 auto 设为 true 后按 intervalMs 周期执行(默认不启用)。

安装与配置

安装

从本地插件目录安装(路径需换成你机器上的绝对路径):

dsh plugin --profile desktop add /absolute/path/to/dsh-skill-sync

SkillHub 目录页:https://www.skillhub.cn/plugins/mi-lu-uncle/dsh-skill-sync。源码与说明见 GitHub:https://github.com/mi-lu-uncle/dsh-skill-sync。

配置

在 profile patch(cordis.patch.yml)里找到 skill-sync 条目,按需设置 config:

- id: skill-sync
  config:
    script: /Users/you/.dsh/bin/mattpocock-skills-sync.sh  # default: ~/.dsh/bin/mattpocock-skills-sync.sh
    intervalMs: 1800000                                     # default: 30 minutes
    auto: false                                             # default: false (set true to opt in)
  • script:同步脚本路径,默认 ~/.dsh/bin/mattpocock-skills-sync.sh;
  • intervalMs:定时间隔,默认 1800000 毫秒(30 分钟);
  • auto:是否启用周期同步,默认 false,需要定时拉取时设为 true。

典型用法

在 DSH 中执行:

/skills-sync        # run the sync script now, show its report

即立即跑一次同步并查看脚本输出。若已开启 auto: true,则除手动命令外还会按 intervalMs 自动执行同一脚本。

适用场景与注意

适合已经在本地用 git 镜像 skills 仓库、并希望与 DSH 文件系统 skill 加载方式配合的开发者。插件以当前 dsh 进程的权限运行同步与 git 操作,安装前请阅读仓库源码与 MIT 许可证,确认脚本路径与镜像仓库配置符合你的环境。

SkillHub 为社区插件目录,与 DeepSeek / 幻方无官方从属关系;DSH 生态强调「一切皆插件」,本插件属于工作流类辅助,不负责替代你对镜像源与 skill 目录结构的自行管理。

结尾

dsh-skill-sync 把「镜像 git pull + symlink 对齐」固定为 /skills-sync 与可选定时任务,补上 DSH 热重载之前缺少的同步触发环节。进一步了解可访问 SkillHub 插件页 与 GitHub 仓库。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye