dsh-commands: DeepSeek Harness Filesystem Slash Command Discovery

前言

在 DeepSeek Harness (DSH) 中,通过代码硬编码注册命令较为繁琐。dsh-commands 插件提供了一种基于文件系统的解决方案,通过扫描 Markdown 文件自动注册斜杠命令,简化了命令管理的流程。

插件概述

  • 名称:dsh-commands
  • 所有者:EtbyStudio
  • 核心价值:将 Markdown 文件直接映射为可执行的斜杠命令,支持 YAML frontmatter 描述和热重载。

安装与启用

该插件需要 DSH 版本 0.2.0-rc.2。安装命令如下:

dsh plugin add @etby-studio/dsh-commands

安装完成后,插件会在启动时扫描配置目录下的 Markdown 文件,将其注册为命令。

配置与文件格式

插件会在 <dshHome>/commands 目录下扫描 Markdown 文件。文件的结构决定了命令的行为:

  1. 命令名:文件名(去掉 .md 后缀)即为命令名。命名规则为小写 ASCII 字母、数字、下划线或连字符。
  2. 描述:必须在 YAML frontmatter 中包含 description 字段,用于在命令发现 UI 中显示。
  3. 正文:文件主体内容作为指令,在命令执行时提交给模型。

示例文件内容:

---
description: Execute the plan
---

## Steps

1. Review the plan
2. Create a task list

执行与热重载

  • 执行机制:插件不会隐式提交到模型。当触发命令(如 /name)时,它会读取当前文件正文,并根据参数配置将指令和参数附加到用户消息中。
  • 参数支持:
    • 类型化参数会追加在正文后的空行处(例如:/name <description>)。
    • 如果正文中包含 $ARGUMENTS 占位符,参数将替换该占位符。
  • 热重载:插件使用 Chokidar 监听目录变化。添加、修改或删除命令文件会自动更新注册表,无需重启 DSH。

注意事项

  • 优先级:文件命令优先级较低。如果已有插件通过程序化方式注册了同名命令,文件命令会被跳过并发出警告。
  • 文件有效性:包含以下情况的文件会被跳过并记录警告:缺少 frontmatter、描述为空、命令名无效或正文为空。
  • 观察者配置:支持配置观察者行为,包括轮询模式、稳定性阈值(watchStabilityThresholdMs)以及符号链接跟随(watchFollowSymlinks)。
羽毛球分组比赛记分
小程序二维码

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

Xiaoye