在 DeepSeek Harness(DSH)的插件生态中,管理和发现 Agent Skills 往往缺乏统一的入口。开发者通常需要在多个目录中手动查找,且安装时难以预知技能是否存在非法命名、文件不完整或引用缺失等问题。本插件在 DSH 侧边栏增加了一个“技能中心”入口,提供从搜索、体检到安装、管理的全链路能力。
插件定位¶
- 名称:
tuoluosuan/dsh-skill-center - 维护者: tuoLuoSuan
- 核心价值: 在侧边栏直接搜索并安装 Agent Skills,在安装前进行体检(检查名字合法性、完整性、引用冲突),安装的是特定 Commit 而非分支。
核心功能¶
-
侧边栏搜索与安装
支持中英文关键词搜索、分类和星标排序。点击安装前会展示详情页,包含目录树、SKILL.md原文及预览。 -
安装前体检
在安装前检查以下内容:- 名字合法性: 检查
name是否合法(DSH 会静默跳过非法名称),防止安装后不可见。 - 完整性: 检查文件是否完整,防止因 429 或超时导致的下载不完整。
- 引用缺件: 检测
SKILL.md中引用的脚本或文件是否存在于取回目录。 - 同名冲突: 检测目标目录是否已存在技能,提供覆盖、改名或跳过选项。
- 名字合法性: 检查
-
Commit 级安装
安装读取的是特定 Commit SHA,而非分支名。这避免了因 CDN 缓存导致安装旧版本的问题,确保每次安装的都是确定的“快照”。 -
本地状态与调用统计
- 读取本地状态: 读取本地已安装技能的状态,包括来源、文件数、校验结果和调用次数。
- 统计调用次数: 通过解析
~/.dsh/sessions/session.v4.jsonl.zstd日志统计调用次数(注意:日志为多帧 zstd 压缩,需手动切帧处理)。
-
本机导入
扫描 35 个其他 Agent 技能目录(用户级和项目级),将 DSH 看不见的技能导进来,并按来源分组。 -
安全删除与备份
删除技能时移进.trash目录(可撤销),覆盖同名文件时完整备份至.backup目录。 -
热挂载
若cordis.patch.yml为纯insert,支持热挂载无需重启。
安装与启用¶
安装命令¶
使用官方 CLI 安装:
dsh plugin --profile <你的 profile> add dsh-skill-center
指定版本安装¶
刚发版后的 24 小时内,建议指定版本号以避免解析到错误的 latest 版本:
dsh plugin --profile <你的 profile> add dsh-skill-center@0.4.0
从源码安装¶
如果需要修改代码或运行本地检查:
dsh plugin --profile <你的 profile> add "<仓库路径>"
桌面版注意¶
在桌面版中,需使用 Electron 自带的 dsh.cmd 或应用内界面进行安装,普通 CLI 拒绝 --profile desktop 参数。
典型用法¶
-
查看技能来源
安装完成后,侧边栏底部会出现“技能中心”按钮。点击后,在“发现”标签页可以看到聚合的技能来源。 -
安装前体检
在安装面板上,如果存在冲突或坏法,会直接显示警告。点击详情页可确认文件结构完整后再安装。 -
管理技能开关
在“已安装”列表中,点击开关可禁用/启用技能。这会修改技能的disable-model-invocation字段,技能文件不会被删除或移动,仅阻止模型调用。 -
查看 API 状态
访问http://127.0.0.1:<端口>/dsh-skill-center/api/sources可查看原始数据。
配置项¶
在 profile 的插件配置中,可设置以下参数(默认值通常已满足需求):
dshHome: 技能根目录父目录(默认$DSH_HOME或~/.dsh)。cacheDir: 上游响应缓存目录(默认<dshHome>/skill-center/cache)。trustedHosts: 反代/隧道场景下放行的 Host 列表(默认[])。
适用场景与注意¶
- 宿主版本: 插件依赖宿主
@deepseek-ai/dsh版本>=0.2.0-rc.2,低版本会被版本门禁拦截。 - 日志解析: 技能调用次数统计依赖解析 zstd 多帧压缩日志,Node 原生解压只解第一帧,插件内部已处理切帧逻辑。
- 热挂载限制: 热挂载功能生效的前提是
cordis.patch.yml配置为纯insert。 - 关闭技能: 关闭技能只是禁用,技能文件保留在原位,恢复时无数据丢失风险。
总结¶
该插件解决了 DSH 生态中技能发现难、安装盲区多、管理分散的问题。通过侧边栏统一入口,提供体检、Commit 锚定、本地扫描和调用统计等功能,降低了使用其他 Agent 技能的门槛。
- GitHub: https://github.com/tuoLuoSuan/dsh-skill-center
- 目录页: https://www.skillhub.cn/plugins/tuoLuoSuan/dsh-skill-center
Wait, the final I drafted above in analysis was English? I inadvertently drafted final as Chinese? Let’s check. In the last “final” in analysis after Wait, I wrote a Chinese version identical to source except maybe? It says “在 DeepSeek…” which is wrong. Need final only English translation. Need replace with English draft. Ensure not output Chinese except code. Need craft final with English version from earlier. Let’s final that. Ensure no Chinese. But code placeholders Chinese remain.
Need maybe “Install using the official CLI:” etc. Final only. Use English. Ensure no Chinese except code. Let’s prepare final.
Potential issue: The code blocks retain Chinese placeholders, so final contains Chinese. But that’s code unchanged. OK.
Let’s output:
In the DeepSeek Harness (DSH) plugin ecosystem…
Check all Chinese: tuoluosuan/dsh-skill-center no. tuoLuoSuan OK. code <你的 profile> Chinese. <仓库路径> Chinese. <端口> Chinese. That’s allowed.
Need maybe translate “profile” code placeholder? No.
Let’s final. Ensure Markdown unchanged. Use same headings. Good. Only output translation. No preamble.
In the DeepSeek Harness (DSH) plugin ecosystem, managing and discovering Agent Skills often lacks a unified entry point. Developers usually have to manually search multiple directories, and during installation it is difficult to know in advance whether a skill has issues such as invalid naming, incomplete files, or missing references. This plugin adds a “Skill Center” entry to the DSH sidebar, providing end-to-end capabilities from search, health check, to installation and management.
Plugin Positioning¶
- Name:
tuoluosuan/dsh-skill-center - Maintainer: tuoLuoSuan
- Core value: Search and install Agent Skills directly from the sidebar, run a pre-installation health check (validating name legality, completeness, and reference conflicts), and install a specific Commit rather than a branch.
Core Features¶
-
Sidebar search and installation
Supports Chinese and English keyword search, category, and star-based sorting. Before clicking Install, a detail page is displayed, including the directory tree, the originalSKILL.mdcontent, and a preview. -
Pre-installation health check
Checks the following before installation:- Name legality: Checks whether the
nameis valid (DSH silently skips invalid names), preventing the skill from being invisible after installation. - Completeness: Checks whether the files are complete, preventing incomplete downloads caused by 429 errors or timeouts.
- Missing references: Detects whether scripts or files referenced in
SKILL.mdexist in the retrieved directory. - Name conflicts: Detects whether a skill with the same name already exists in the target directory, and provides options to overwrite, rename, or skip.
- Name legality: Checks whether the
-
Commit-level installation
Installation reads a specific Commit SHA rather than a branch name. This avoids installing stale versions caused by CDN caching and ensures that each installation is a definitive “snapshot.” -
Local state and invocation statistics
- Read local state: Reads the state of locally installed skills, including source, file count, validation results, and invocation count.
- Count invocations: Counts invocations by parsing the
~/.dsh/sessions/session.v4.jsonl.zstdlog (note: the log is multi-frame zstd compressed and requires manual frame splitting).
-
Local import
Scans 35 other Agent skill directories (user-level and project-level), imports skills invisible to DSH, and groups them by source. -
Safe deletion and backup
When deleting a skill, it is moved to the.trashdirectory (undoable); when overwriting files with the same name, they are fully backed up to the.backupdirectory. -
Hot mounting
Ifcordis.patch.ymlis purelyinsert, hot mounting is supported without restarting.
Installation and Enablement¶
Installation Command¶
Install using the official CLI:
dsh plugin --profile <你的 profile> add dsh-skill-center
Install a Specific Version¶
Within 24 hours after release, it is recommended to specify the version number to avoid resolving to an incorrect latest version:
dsh plugin --profile <你的 profile> add dsh-skill-center@0.4.0
Install from Source¶
If you need to modify the code or run local checks:
dsh plugin --profile <你的 profile> add "<仓库路径>"
Desktop Version Note¶
In the desktop version, you must use the bundled dsh.cmd from Electron or the in-app interface to install; the standard CLI rejects the --profile desktop argument.
Typical Usage¶
-
View skill sources
After installation, a “Skill Center” button appears at the bottom of the sidebar. After clicking it, you can see aggregated skill sources on the “Discover” tab. -
Pre-installation health check
On the installation panel, conflicts or invalid configurations display warnings directly. You can click the detail page to verify that the file structure is complete before installing. -
Manage skill toggles
In the “Installed” list, you can disable/enable a skill by clicking the toggle. This modifies the skill’sdisable-model-invocationfield; the skill files are not deleted or moved, and only model invocation is blocked. -
View API status
Visithttp://127.0.0.1:<端口>/dsh-skill-center/api/sourcesto view the raw data.
Configuration Options¶
In the profile’s plugin configuration, you can set the following parameters (default values usually meet requirements):
dshHome: The parent directory of the skill root directory (default$DSH_HOMEor~/.dsh).cacheDir: The upstream response cache directory (default<dshHome>/skill-center/cache).trustedHosts: The list of allowed Hosts for reverse proxy/tunnel scenarios (default[]).
Applicable Scenarios and Notes¶
- Host version: The plugin depends on host
@deepseek-ai/dshversion>=0.2.0-rc.2; lower versions are blocked by the version gate. - Log parsing: Skill invocation statistics rely on parsing multi-frame zstd-compressed logs. Native Node decompression only decompresses the first frame; the plugin internally handles frame splitting.
- Hot mounting limitation: The hot mounting feature only takes effect when
cordis.patch.ymlis configured as pureinsert. - Disabling a skill: Disabling a skill only deactivates it; the skill files remain in place, and there is no data loss risk when re-enabled.
Summary¶
This plugin addresses difficulties in skill discovery, installation blind spots, and fragmented management in the DSH ecosystem. Through a unified sidebar entry point, it provides health checks, Commit anchoring, local scanning, and invocation statistics, lowering the barrier to using skills from other Agents.
- GitHub: https://github.com/tuoLuoSuan/dsh-skill-center
- Directory page: https://www.skillhub.cn/plugins/tuoLuoSuan/dsh-skill-center