Introduction

In DSH (DeepSeek Harness) agent development, user-level skills are typically placed under $DSH_HOME/skills. Each skill relies on SKILL.md to define its name, description, and content. As the number of skills grows, manually opening directories to view and modify frontmatter, and toggling model visibility becomes tedious.

The following introduces dsh-skill-manager. It moves the management of user-level skills into the DSH Web settings, supporting viewing, enabling/disabling, editing, adding, deleting, and renaming.

What is it

dsh-skill-manager is a plugin for DeepSeek Harness (DSH) designed to manage user-level skills.

The license is MIT. It provides a Skill Manager section in the Web settings, allowing developers to view and handle skills located under $DSH_HOME/skills directly from the settings panel.

Core Features

  • List View: Lists all skills under $DSH_HOME/skills in Settings → Skill Manager, displaying the name and description.
  • Expand Details: Click any row to expand/collapse details to view the skill name and SKILL.md content.
  • Enable/Disable: Each skill has a toggle switch that takes effect immediately.
  • Edit and Rename: Inline editing of the name and SKILL.md content; renaming synchronizes the directory name.
  • Add and Delete: Inline addition of skills; deletion requires a confirmation step.
  • Disable Mechanism: Disabling a skill adds disable-model-invocation: true to the SKILL.md frontmatter; DSH’s skill-filesystem watcher immediately excludes the skill from the model directory without requiring a restart.

Installation and Usage

First, install the plugin:

dsh plugin --profile web add @wanghailong0419/dsh-skill-manager

After installation, start DSH Web to make the Skill Manager in the settings panel available:

dsh web

The plugin runs with the permissions of the current dsh process. You should check the source code and license before installing.

Typical Usage

  1. Start dsh web and open Settings → Skill Manager.
  2. The list displays the status indicator, name, and description for each skill; green means enabled, gray means disabled.
  3. Use the switch on the right to enable or disable a specific skill.
  4. Click a row to expand details to view the skill name and SKILL.md content, which can be edited or deleted.
  5. Click Add Skill, fill in the name and content inline to create a new skill.

Use Cases and Notes

Suitable for developers who need to centrally manage DSH user-level skills in Web settings, especially in scenarios where the enablement status, content, or directory names are frequently adjusted.

Notes:

  • Disabling a skill does not equal deleting the directory; it adds disable-model-invocation: true to the SKILL.md frontmatter, which is then excluded by DSH’s skill-filesystem watcher.
  • Editing the name and SKILL.md directly changes the skill definition; renaming synchronizes the directory name.
  • This plugin targets the Web client, where client.platform in package.json is web.
  • peerDependencies requires react, @deepseek-ai/dsh-typert-protocol, @deepseek-ai/dsh-client-ui-primitives, @deepseek-ai/dsh-client-locale, @deepseek-ai/dsh-api-remotes, @deepseek-ai/dsh-client-runtime, @deepseek-ai/dsh-client-ui-settings, @deepseek-ai/cordis, js-yaml, and other version ranges.

Conclusion

The value of dsh-skill-manager lies in centralizing the viewing, enabling/disabling, and editing of user-level skills into the Web settings, reducing the steps required to manually modify directories and SKILL.md.

GitHub Repository: LongSir0419/dsh-skill-manager