Introduction¶
After running agents using DSH (DeepSeek Harness) for some time, the skill directory tends to accumulate many items. With a large number of skills, specific issues arise: identifying which skills belong to which category of work, selecting the correct one for a specific scenario, and knowing how to disable those that are not currently in use. DSH does not provide built-in organization tools, usually requiring manual editing of each skill’s frontmatter one by one.
dsh-skill-manager fills this gap: it organizes skills by category, tags, and collections, and provides a visual management panel within DSH Web. DSH’s philosophy is “everything is a plugin,” and skill management is provided as a plugin itself. Below is an introduction to its features, installation steps, and typical usage.
What is it¶
One-sentence positioning: A DSH skill classification manager that organizes agent skills by category, tags, and collections. Author: LIU20030725, MIT License, Current version: 0.5.0.
Its data is purely local with no service dependencies: categories and tags are written directly into the skill file itself (making it compatible with any agent capable of reading frontmatter), while collection relationships are stored in a local JSON file.
Core Features¶
Free-form Categories and Tags¶
Categories are written to the metadata.category field in the skill frontmatter; category names can be created freely and modified at any time. Tags are written to metadata.tags, separated by commas, supporting multiple tags. A skill file after writing looks like this:
---
name: ai-video-script
description: 生成 AI 视频脚本
metadata:
category: 视频创作
tags: [视频, 脚本]
---
Collection Folders¶
Multiple skills can be organized into named collections, and a single skill can belong to multiple collections. Clicking a collection chip in the top filter area of the panel causes the left list to display only the skills within that collection.
Browse, Filter, and Preview¶
It supports searching, filtering by category, and filtering by collection. Clicking a skill row on the left expands a brief card containing the description, applicable scenarios, tags, and enable status.
Enable and Disable¶
One-click writes to the disable-model-invocation field in the frontmatter, which is a field natively recognized by DSH. Once disabled, the model will no longer automatically load that skill, but the skill remains in the library and can still be invoked manually.
Collection Selection in Input Box¶
After typing / in the chat input box, continue typing the collection name (e.g., /AI视频); the “Collection Skills” dropdown group will display matching collection folders. Clicking it opens a popup showing the list of skills in that collection, complete with brief descriptions, a way to go back, and preserved scroll position. After selecting a skill, the input box automatically fills in /SkillName, and pressing Enter invokes it. If there are many skills and you can’t remember the name, you can browse and select them level by level through the folders.
Slash Commands¶
The /skillmgr series of commands covers all functions and can be used directly in the chat input box; these commands bypass the model.
Installation and Activation¶
Environment Requirements: DeepSeek Harness (dsh web) 0.1.0-rc.6 or higher, Node.js 20 or higher.
First, install the plugin itself:
dsh plugin --profile web add github:LIU20030725/dsh-skill-manager
If dependency resolution fails, you can manually install it in the web profile directory (usually ~/.dsh/profiles/web):
cd ~/.dsh/profiles/web
pnpm add github:LIU20030725/dsh-skill-manager
# Or use a full git URL
pnpm add git+https://github.com/LIU20030725/dsh-skill-manager.git
Next, mount the plugin. Edit cordis.patch.yml in the same directory and add the following to the top-level array:
- insert:
- id: skill-manager
name: 'dsh-skill-manager'
Finally, restart dsh web. This step cannot be skipped: the client panel bundle and host command registration are both loaded when the Web starts, so configuration hot-reloading cannot load new plugins.
After completing the steps above, refresh the page after restarting. A “Skill Management” panel will appear in the settings; you can confirm the command is registered by typing /skillmgr help in the chat input box.
Typical Usage¶
Settings Panel¶
The panel is divided into three sections:
- The left side displays the list of all skills; the top is a filter area with “All / Category Chips / Collection Chips”, and clicking a skill row expands a brief card;
- The right side is the edit area for the selected skill, allowing you to set the category (free input or select from existing), tags (comma-separated), check which collections it belongs to, and enable or disable it;
- The bottom is the collection area, where you can create new collections, and clicking one expands it to view and manage the skills within that collection.
Slash Commands¶
/skillmgr help
/skillmgr catalog # All skills + collections (JSON)
/skillmgr get <name> # Single skill details (JSON)
/skillmgr set-category <name> <category|-> # Set category; - to clear
/skillmgr set-tags <name> <tag1,tag2|-> # Set tags; - to clear
/skillmgr set-enabled <name> <on|off> # Enable / Disable
/skillmgr collection list # List collections
/skillmgr collection create <name> # Create collection
/skillmgr collection rename <old> <new> # Rename collection
/skillmgr collection delete <name> # Delete collection
/skillmgr collection add <name> <skill...> # Add skills to collection
/skillmgr collection remove <name> <skill...> # Remove skills from collection
/skillmgr collection clear <name> # Clear collection
Whatever the panel can do, the commands can also do; they are equivalent.
Scope of Management and Data Storage¶
The plugin can manage any skill with a writable disk path, i.e., the file containing SKILL.md. Typical locations are:
- User skills (Recommended):
~/.agents/skills/<name>/SKILL.md,$DSH_HOME/skills/<name>/SKILL.md - Project skills:
<Project Root>/.dsh/skills,<Project Root>/.agents/skills - DSH built-in skills: located in
node_modules, read-only, visible in the panel but will result in an error if you attempt to write to them
Data is stored in two locations: categories, tags, and disable-model-invocation are written into the SKILL.md frontmatter of each skill, belonging to the skill file itself; collections are stored in $DSH_HOME/skill-manager/collections.json (default ~/.dsh/skill-manager/collections.json).
Implementation (for Developers)¶
The plugin consists of two halves. The host side is a cordis plugin that injects two services, skills and commands, responsible for reading/writing frontmatter, maintaining the collection JSON, and registering the skillmgr command. The browser side is packaged according to the DSH client plugin bundle specification, registering settings.section (the “Skill Management” panel), and data operations call host commands via ctx.remote.commands.execute.
Uninstallation¶
cd ~/.dsh/profiles/web
pnpm remove dsh-skill-manager
Also delete the corresponding insert line from cordis.patch.yml, then restart dsh web.
Note: Uninstalling will not delete the categories and tags within the skill files (they belong to the skill itself), nor will it delete collections.json. If you no longer need this data, it must be deleted manually.
Suitable Scenarios and Precautions¶
Suitable for:
- A large number of skills requiring classification and tagging by workflow for retrieval;
- Organizing a set of skills commonly used in a specific scenario into a collection to select via folders in the input box;
- Skills that you don’t want the model to automatically load, but also don’t want to delete.
A few points to note:
- You must restart
dsh webafter installation; hot-reloading does not take effect; - DSH built-in skills are read-only and cannot be categorized or tagged; please place the skills you wish to manage in the user or project skill directories;
- This plugin runs with the permissions of the current
dshprocess, allowing it to read and write skill files and local configuration. It is recommended to review the source code and license (MIT for this project) before installation to ensure you accept the terms; - Uninstalling the plugin will not clean up the data it has written; a thorough cleanup requires manual handling.
Summary¶
dsh-skill-manager transforms skill organization from “manual file editing” to a few clicks within the panel, with all data residing in local files and no additional service dependencies. If your skills in DSH have become too numerous to manage, you can give this a try.
- Directory page: https://www.skillhub.cn/plugins/LIU20030725/dsh-skill-manager
- GitHub: https://github.com/LIU20030725/dsh-skill-manager
The directory page is an independently maintained community site and has no official affiliation with DeepSeek or Hypersphere.