dsh-skill-ui
No description
- Stars
- 0
- Language
- TypeScript
- Created
- Sep 1, 2026
- Updated
- Sep 1, 2026
Introduction
dsh-skill-ui
DSH(DeepSeek Harness)技能中心插件:浏览/管理本地技能 + 对接 skillhub.cn 技能市场 + 向导式创建 + AI 辅助生成。
基于 zhu1090093659/dsh-web 的 packages/dsh-skill-explorer(BSD-3-Clause)二次开发。
功能
- 技能 tab:按来源分组浏览已加载 skill(系统内置 / 项目 / 用户 / 自定义 / 运行时),卡片式展示,支持启用/禁用(改写 frontmatter
disable-model-invocation)、删除(移入.trash可恢复)。 - 市场 tab:对接 skillhub.cn 技能市场——
- 搜索 + 分类页签浏览(13 个分类,横向可滚动);
- 排序:推荐 / 星数 / 下载量 / 最新(服务端忽略 sort 参数,客户端本地排序);
- 卡片展示:图标、星数、下载量、作者、分类、来源、付费标记、已安装状态;
- 一键安装到
~/.agents/skills,含安全审计(zip-slip 防护、扩展名白名单、危险模式扫描、SKILL.md frontmatter 自动修复),冲突时可跳过 / 覆盖 / 另存。
- 创建 tab:3 步向导(基本信息 → 7 套内置模板 → 预览校验),实时 kebab-case 校验与重名检测;AI 辅助生成 SKILL.md 草稿。
安装(本地构建)
pnpm install
pnpm run build
# 产物在 lib/
部署到 DSH Desktop profile:
# 1. 替换插件 lib(先备份原 lib)
$target = "$env:USERPROFILE\.dsh\profiles\desktop\node_modules\@linxin666\dsh-client-ui-skill-explorer"
Copy-Item lib\index.js "$target\lib\index.js" -Force
Copy-Item lib\client.js "$target\lib\client.js" -Force
Copy-Item lib\client.js.map "$target\lib\client.js.map" -Force
# 2. 重启 DSH Desktop(运行中的进程持有旧模块,必须重启加载)
注意:修改
node_modules下插件package.json时,写入必须使用无 BOM 的 UTF-8(Windows PowerShell 5.1 的Set-Content -Encoding UTF8会写 BOM,导致 DSHJSON.parse失败)。
AI 辅助生成配置
草稿路由会从 ~/.dsh/settings.yaml 的 llm-pi-ai.providers 自动选择可用的 OpenAI 兼容 provider(api: openai-completions 且 apiKeyEnv 环境变量已设置),也可用环境变量覆盖:
DSH_AI_DRAFT_BASE_URL=https://.../v1
DSH_AI_DRAFT_API_KEY=sk-...
DSH_AI_DRAFT_MODEL=some-model
未配置时面板会禁用 AI 按钮并提示(接口返回 503 AI_UNAVAILABLE)。
路由
| 路由 | 方法 | 说明 |
|---|---|---|
/api/dsh-skill-explorer/list | GET | 分组技能列表 |
/api/dsh-skill-explorer/set-enabled | POST | 启用/禁用 |
/api/dsh-skill-explorer/create | POST | 创建(user/agents/project 根) |
/api/dsh-skill-explorer/delete | POST | 删除(移入 .trash) |
/api/dsh-skill-explorer/health | GET | 健康检查 |
/api/dsh-skill-explorer/hub/search | GET | skillhub 搜索(q/category/limit) |
/api/dsh-skill-explorer/hub/categories | GET | 分类列表 |
/api/dsh-skill-explorer/hub/detail | GET | 技能详情 |
/api/dsh-skill-explorer/hub/install | POST | 安装(下载+审计+落盘) |
/api/dsh-skill-explorer/ai-draft | POST | AI 生成草稿 |
所有路由默认 loopback 围栏(已配对 remote-web-ui 设备 cookie 为额外放行)。
安全
- 市场代理仅允许
https://api.skillhub.cn单一主机(SSRF 防护)。 - zip 安装前审计:zip-slip 拒绝、扩展名白名单、危险模式(eval/child_process/os.system/混淆 base64 等)扫描、SKILL.md 越狱指令扫描。
- 安装目标固定
~/.agents/skills/{slug},slug 白名单校验,冲突默认拒绝。 - AI 草稿仅作为文本回填,不自动落盘。
测试
pnpm test # 90 项(含 zip 解压/审计/frontmatter 修复)
pnpm run typecheck
License
BSD-3-Clause(上游 dsh-skill-explorer 同款)。