Skip to content
dsh.fish
Skill

skill-creator

测试、验证、优化 dsh skill 时用。当用户想验证一个 skill 有没有用、触发准不准、或改进现有 skill 的效果时,加载本 skill。要「写」新 skill 的格式和字段,用 dsh-creator。

Source
syOPV
installs
3 installs
stars
1 stars
License
MIT
Updated
Updated 14 days ago

Readme

# dsh-skill-creator

测试、验证、优化 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness)(`dsh`)skill 的 skill——用「带 / 不带 skill 对比」,数据驱动地判断一个 skill 到底有没有用。

## 有什么用

写 skill 的人都会遇到两个问题:

1. **不知道写的 skill 有没有用**——花时间写了个 skill,但它到底让结果变好了,还是根本没用?
2. **不知道触发准不准**——skill 写得再好,`description` 触发写烂了,dsh 根本不会加载它,等于白写。

靠「感觉」判断不可靠。本 skill 用**对照实验**解决:同一个任务,跑「带这个 skill」和「不带这个 skill」两次,对比结果差异。差异明显 = skill 有用;没差异 = 要么没触发,要么正文没约束力。

**适用场景**:

- 刚写了一个 skill,想验证它值不值得用
- skill 触发不准,想找出原因
- 想优化现有 skill,但不知道怎么改

## 定位(和 dsh-creator 分工)

dsh 生态里已有 `dsh-creator`(教「写」扩展),本 skill 补上「验和改」这一环:

| | [dsh-creator](https://github.com/KiWi233333/dsh-creator) | 本 skill |
|---|---|---|
| 职责 | 写 dsh 扩展(插件/工具/skill/MCP 的格式、字段、discovery) | 验证 / 优化 skill(带/不带对比) |
| 触发 | 「帮我写一个 skill / 插件」 | 「这个 skill 有没有用」「触发不准」「帮我优化 skill」 |

两者独立、按对话场景自动加载、先后配合(先写后验)。

## 快速开始

### 1. 安装

前置:已安装 DeepSeek Harness(Node.js 22.19+ 或 24+)。

```sh
git clone https://github.com/syOPV/dsh-skill-creator.git ~/.dsh/skills/skill-creator
```

`~/.dsh/skills/` 是 dsh 的用户级 skill 发现根(项目级则放 `.dsh/skills/`)。

### 2. 使用(对话方式,最简单)

直接在 dsh 里说:

| 你说 | dsh 做什么 |
|---|---|
| 「帮我验证 XX 这个 skill 有没有用」 | 写测试 prompt,跑带/不带对比,告诉你结论 |
| 「XX 这个 skill 触发不准,帮我优化」 | 跑对比找触发问题,改 description,再测 |
| 「刚写的 skill 帮我看看效果」 | 按「测试 → 评估 → 重写」循环验证 |

dsh 会自动加载本 skill 并执行。

### 3. 使用(命令行方式,手动跑对比)

```sh
cd <项目目录,含 .dsh/skills/>
~/.dsh/skills/skill-creator/scripts/eval-skill.sh "测试 prompt 1" "测试 prompt 2"
```

脚本会把带 / 不带 skill 两份结果存到 `.skill-eval/`。

## 一个真实例子

写了一个「写 git commit message」的 skill 后,验证它的效果:

- **测试 prompt**:「帮我把这次改动写成 commit message,我修复了登录页面密码错误提示的 bug」
- **带 skill 的结果**:

  ```
  fix(login): correct password error prompt
  
  The wrong-password hint on the login page was not displayed
  correctly; show the error message as expected.
  ```

  (标准 conventional commits 格式,祈使句、有正文)

- **不带 skill 的结果**:先跑偏输出一堆「测试用例」,最后才不确定地提「如果你希望用 Conventional Commits 风格…」

对比一眼看出:skill 让结果从「跑偏 + 不确定」变成「标准 + 规范」,证明它有用。这就是本 skill 的核心价值——**用数据代替感觉**。

## 目录结构

```
dsh-skill-creator/
├── SKILL.md                        # 主文件:流程 + 路由表
├── references/
│   ├── writing-guide.md            # 写法规范(frontmatter 字段、渐进披露、description 触发)
│   └── testing-guide.md            # 测试方法(带/不带对比、怎么判断结果)
├── scripts/
│   └── eval-skill.sh               # 自动跑对比(支持多 prompt、自动检测 dsh/npx)
├── README.md
└── LICENSE
```

## 依赖

- DeepSeek Harness(`dsh` 或 `npx @deepseek-ai/dsh`)
- `DEEPSEEK_API_KEY`(headless 对比测试需要,配置在 `~/.dsh/.credentials.yaml` 或环境变量)

## License

[MIT](LICENSE)

Install

# Skills are files: copy them into $DSH_HOME/skills/skill-creator (defaults to ~/.dsh/skills/skill-creator)

Profile: web

Source