DSH Plugins Marketplace

DSH Plugins

Plugins

/

Development & Infrastructure

/

dsh-skill-ui

x

dsh-skill-ui

Manifest valid

No project description is available for this repository yet.

UI (client)hasBundlePatch

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\@xusuyang030218\dsh-skill-ui"
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,导致 DSH JSON.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/listGET分组技能列表
/api/dsh-skill-explorer/set-enabledPOST启用/禁用
/api/dsh-skill-explorer/createPOST创建(user/agents/project 根)
/api/dsh-skill-explorer/deletePOST删除(移入 .trash)
/api/dsh-skill-explorer/healthGET健康检查
/api/dsh-skill-explorer/hub/searchGETskillhub 搜索(q/category/limit)
/api/dsh-skill-explorer/hub/categoriesGET分类列表
/api/dsh-skill-explorer/hub/detailGET技能详情
/api/dsh-skill-explorer/hub/installPOST安装(下载+审计+落盘)
/api/dsh-skill-explorer/ai-draftPOSTAI 生成草稿

所有路由默认 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 同款)。

Comments

Loading…

From the same category

awesome-dsh-plugin

by awesome-dsh-plugin

A curated list of plugins for DeepSeek Harness (dsh) · DeepSeek Harness 插件精选列表

Development & Infrastructure

★ 18.3k

CC0-1.0

Python

Oct 10, 2026

Index only — not installable

by 0xsline

DeepSeek Harness (DSH) ecosystem: curated plugins, tools, and infrastructure from dsh-external/hub and the public dsh-plugin topic.

Development & Infrastructure

★ 1.2k

CC0-1.0

Python

Oct 10, 2026

Index only — not installable

by pax-beehive

Open-source CLI, schemas, resolver, and DSH agent tools for DSH Plugin Hub

Development & Infrastructure

★ 450

MIT

TypeScript

Oct 6, 2026

Index only — not installable

by xiajiajun516

DeepSeek Harness (DSH) backup & restore plugin — export, import, migrate and sync your complete DSH configuration, plugins, MCP servers, skills and workspace. One-click migration to another machine.

Development & InfrastructureManifest valid

★ 176

MIT

TypeScript

Oct 8, 2026

dsh plugin --profile web add dsh-config-manager

by yjh051108

推荐组件(非必须):DeepSeek Harness 运行时注入器;已随 dsh-routing-suite 单仓库化保留,本仓库继续维护/发布。

Development & InfrastructureManifest valid

★ 164

TypeScript

Sep 18, 2026

dsh plugin --profile web add @dsh-external/dsh-super-injector

by jigjoy-ai

A CLI that turns a goal into a pull request - and a sandbox for testing concurrent AI coding agents on the Mozaik runtime.

Development & Infrastructure

★ 124

MIT

TypeScript

Oct 2, 2026

Index only — not installable