Introduction

The DeepSeek Harness (DSH) ecosystem advocates the principle of “everything is a plugin.” Skills, as an important part of client-side capabilities, usually exist as local files. During development, developers often need to frequently enable or disable specific skills to test different configurations, while directly modifying configuration files typically requires restarting the DSH Web process.

The dsh-skill-manager plugin solves this pain point. It integrates local skill management into the DSH Web settings page, allowing dynamic control of skill states without restarting.

What Is This

dsh-skill-manager is a local skill management plugin for DSH Web. It is maintained by SiriusWJ and released under the MIT license.

Core Features

This plugin provides the following capabilities:

  1. Skill Discovery
    Scans the following directories:

    • User directory: ~/.dsh/skills, ~/.agents/skills
    • Current active workspace: .dsh/skills, .agents/skills
  2. UI Interaction

    • Displays a “Skill Management” card on the “Settings → Plugins → Plugin Configuration” page.
    • The card style is consistent with official plugins and supports expanding and collapsing.
    • Supports searching skills by name, description, or path.
  3. Control and Refresh

    • Supports toggling the “Model Auto-Invocation” switch for each skill.
    • Disabling a skill sets the disable-model-invocation field in SKILL.md under the skill root directory to true.
    • Changes take effect through DSH’s skill directory hot-refresh mechanism, without requiring a restart.
  4. Conflict Handling

    • When skills with the same name exist, the plugin displays only the currently effective item, following DSH’s official priority order (project .dsh → project .agents → user .dsh → user .agents).

Installation and Enabling

Installing this plugin requires DSH version >= 0.1.5-rc.1.

Use the following command to install it from GitHub:

dsh plugin --profile web add github:SiriusWJ/dsh-skill-manager

After installation is complete, restart dsh web to see this card on the plugin configuration page.

Typical Usage

  1. Restart dsh web.
  2. Go to “Settings → Plugins → Plugin Configuration”.
  3. Click the title bar of the “Skill Management” card to expand the view.
  4. Use the search box to locate a skill.
  5. Click the switch on the right side of a skill list item to enable or disable “Model Auto-Invocation”.

Applicable Scenarios and Notes

  • Compatibility: Requires DSH version >= 0.1.5-rc.1. The plugin depends on @deepseek-ai/schemastery.
  • Security Boundaries: The API only accepts loopback requests, and write operations require a same-origin browser. Paths submitted by the client are treated only as identity claims; before writing, the plugin rescans and verifies the skill name and full path.
  • File Update Mechanism: When updating SKILL.md, it uses a temporary file followed by an atomic rename operation to prevent file watchers from reading a half-written state.
  • Symbolic Links: Symbolic links in skill root directories are considered explicitly mounted by the user. Enabling or disabling a skill follows the link and atomically rewrites the actual target.

Conclusion

dsh-skill-manager enables instant management and hot configuration updates for local skills, reducing maintenance costs during development and testing. The full code and catalog are available here: GitHub | Community Catalog