Skip to content

dsh-zh-skill

Verified

@zltianhen/dsh-zh-skill · v0.1.1 · MIT · Web UI

Chinese skill catalog for DeepSeek Harness: lists Chinese-named workspace skills in the / menu and exposes search/load tools.

Install

dsh plugin add @zltianhen/dsh-zh-skill

Confirm the layer applied with dsh --profile default --dump-config — see the install guide.

Source

Tags

Creators

Readme

dsh-zh-skill · 中文技能目录

给 DeepSeek Harness(DSH)用的插件:让工作区里名字带中文的技能出现在 / 菜单里,并且让模型能按中文关键词检索、加载它们。

DSH 内核只认 [a-z0-9-] 形式的技能名,中文名技能会被静默丢弃。本插件不改内核,自己扫磁盘建索引,提供菜单与两个工具。


装(两种任选)

A. 本地目录装(推荐,任何机器可用)

# 在 DSH 里执行(不是 shell),指向插件目录的绝对路径
plugin_manager install_bundle /绝对路径/plugins/dsh-zh-skill

然后 ⌘Q 完全退出 DSH 再打开(客户端模块必须重启才加载,刷新页面不够)。

B. 从 npm 装

plugin_manager install_bundle @zltianhen/dsh-zh-skill

同样需要 ⌘Q 重启。


装完怎么验(三步)

  1. 输入框打 / ——应该出现一组中文技能名,组名 zh-skill
  2. 打 /防错 ——应该收敛到 1–2 条,而不是全量
  3. 选中一条发出 ——模型应当读到技能正文,且能跑技能里的 scripts/

装不上怎么查

插件带自证:客户端一加载就向宿主写一行日志。

cat ~/.dsh/zh-skill-client.log
日志里有什么 含义 怎么办
loaded protocol=... + source-registered 客户端正常 看菜单是否真出现
loaded + catalog-failed ... 客户端在,但取数失败 看后面的报错
什么都没有 客户端模块没加载 ⚠️ 90% 是三处名字不一致,跑 npm run check
no-inputTriggers 宿主没提供菜单接口 DSH 版本不匹配

宿主侧两条路由可以独立验证:

curl "http://127.0.0.1:<端口>/zh-skill/catalog?cwd=<工作区绝对路径>"
# 期望 {"ok":true,"count":N,"items":[...]}

改名(发布到自己的 scope 时用)

三处名字必须逐字一致,否则插件装得上但客户端不加载,且不报错:

位置 字段
package.json name
cordis.patch.yml name
client.js __ModuleLoader__.load({ id })

用脚本改,不要手改:

npm run rename -- @your-scope/dsh-zh-skill   # 自动同步三处 + 自检
npm run check                                # 只自检
npm test                                     # 26 项单测

它做什么

能力 说明
/ 菜单 一组中文技能,按中文名搜索收敛
zh_skill_search 模型按关键词检索(中文可用),返回名字 + 80 字描述
zh_skill_load 按中文名加载完整指令,附带技能基目录
手势注入 菜单选中后插入 【技能:中文名】,发出即加载,走 user 消息层
系统段 常驻约 123 字符,催模型在对应场景先检索

技能目录自动发现这些位置,不需要配置:

  • <工作区>/.dsh/skills
  • <工作区>/.agents/skills
  • $DSH_HOME/skills(默认 ~/.dsh/skills)
  • $DSH_AGENTS_HOME/skills(默认 ~/.agents/skills)

它不做什么

  • 不保证模型照做。加载只是把正文送到模型眼前;「必须执行」要靠技能自带的脚本闸门(guard.py 这类)。把加载方式当服从保障,是最常见的误解。
  • 不覆盖 DSH 内置技能(office-*、agent-experience 等),它们名字合法、模型本来就能看见。
  • 不支持终端版的 / 菜单(终端没有菜单组件)。

依赖

宿主侧服务:tools、systemPrompt、workingDirectory、webServer 客户端服务:inputTriggers、sessions 纯函数包:@deepseek-ai/dsh-llm、@deepseek-ai/dsh-skill、@deepseek-ai/dsh-tools

任一服务缺失时插件自身跳过,不影响 DSH 启动。


已知坑(2026-10-26 踩过)

  1. 三处名字不一致 → 菜单空白且无报错。改名必须用 npm run rename。
  2. 桌面版协议是 dsh-app://,不是 http。前端 fetch 走 IPC 桥接,用相对路径(/zh-skill/catalog)即可,不要拼绝对地址。
  3. 客户端改动必须 ⌘Q 重开,刷新页面不加载新模块。
  4. 前端拿不到工作目录时,catalog 返回 400 missing-cwd 而不是静默返回少量数据(早先的静默降级会让技能凭空少掉 806 个)。