Skip to content

About

DSH Skills Manager — 在 DeepSeek Harness 中统一加载并安全管理本机 Agent Skills · Load and safely manage local Agent Skills in DSH

Topics

Resources

Stars

323 stars

Watchers

0 watching

Forks

Repository files navigation

DSH Skills Manager

DSH Skills Manager

Manage local and project skills, install from GitHub, preview updates and restore backups

简体中文 · Changelog · Apache-2.0

License: Apache-2.0 npm package npm downloads DSH Web Plugin DSH supported through 0.2.1-rc.3

DSH Skills Manager is a community-maintained DeepSeek Harness (DSH) plugin, not an official DeepSeek AI product.

This README describes 1.2.18. Released changes are in the changelog.

Features

Bring skills from your computer and projects into DSH without switching between Agent folders.

  • Unified multi-view management: Browse Global Skills, Project Skills, Discover, and Trash in unified tabs with instant search, status filtering, and collapsible source groups.
  • Broad ecosystem support: Full coverage for 20+ tools and CLI environments including DSH, Shared Agent, Codex, Claude Code, Copilot, Cursor, Google Antigravity, Windsurf, Qoder, and Trae without touching third-party files.
  • Categorization and drag & drop: Create category folders inside sources, drag skill rows (⋮⋮) to organize and order them, batch assign skills, and toggle entire categories with a single switch. Category metadata is saved without moving files.
  • Public markets & repositories: Integrated Discover hub to explore trending skills from ClawHub and skills.sh, or subscribe to public GitHub repositories with incremental diff inspection and backups.
  • Create and flexible import: Create skills or import ZIP archives, folders, and SKILL.md files directly into your global user root or a registered workspace.
  • Wide reading experience: 760px responsive detail modal with monospace syntax styling, vertical resizing, and a one-click "Copy body" action.
  • Trash & safe rollback: Soft delete protects skills from accidental loss, allowing complete restoration with provenance and update history preserved.

Screenshots

Global skills:

Global skills management view

Project skills:

Project skills management view

Skill repositories & discover:

Browse and install repository skills

Screenshots show core feature views for global skills, project skills, and skill discovery. Lossless WebP.

Installation

Requires a working DeepSeek Harness installation. The commands below use the web profile; replace it with yours if needed.

Supported plugin installation sources are the npm registry, a locally built .tgz package, and GitHub. GitHub and npm both include a ready-to-run lib. After changing source, run the build before committing.

Ask an agent to install it

Send this to an agent that can use your local terminal:

Install the latest @michengai/dsh-skills-manager into my DSH web profile using the official npm registry. Confirm installation and explain how to reload DSH.

Install manually

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
dsh plugin --profile web add @michengai/dsh-skills-manager@latest --registry=https://registry.npmjs.org/

Restart DSH, refresh the page, and open Settings → Skills. To update, select Check for updates or run the installation command again.

  • Plugin 1.2.18 is tested with DeepSeek Harness 0.2.0-rc.1, 0.2.0-rc.2, 0.2.1-rc.1, 0.2.1-rc.2, 0.2.1-rc.3.
  • Host compatibility: Full DeepSeek Harness 0.2.x line (>=0.2.0-rc.1 <0.3.0-0), forwards-compatible with subsequent 0.2.x releases, alphas, and RCs without requiring routine plugin version bumps. Legacy versions and breaking changes in the 0.3.0 generation are rejected by the version gate. If you still use a 0.1.x host, install plugin 1.1.23 instead of @latest.
  • Reverse proxy deployment: Supports hosting DSH behind prefix-stripping reverse proxies (e.g. /app/dsh/). API and update endpoints resolve against the page base URI (document.baseURI).

Plugin Configuration & Toggles

The plugin follows standard DSH bundle configuration conventions. Options are located at:

Sidebar → Plugins → Click Skills Manager (the host's plugins.bundle.config slot).

Two native switches are available:

1. Sidebar Entry (sidebarEntry)

  • Default: Disabled (false)
  • Description: Displays a persistent Skills navigation icon directly under Plugins in the host's left primary sidebar.
  • Effect:
    • When enabled, clicking the sidebar icon opens the Skills Manager directly in the primary workspace with a 960px centered container (matching host plugin manager conventions). This eliminates vertical scrolling constraints in narrow settings dialogs;
    • When disabled, unregisters the sidebar entry cleanly;
    • The standard Settings → Skills view remains active either way, and state is synchronized live across both entry points.

2. Online Updates (onlineUpdate / updater)

  • Default: Enabled (true)
  • Description: Controls whether the plugin checks for and installs updates from npm.
  • Effect:
    • Dynamic UI Sync: Disabling the toggle hides the Check for updates button in the header immediately without requiring a full page reload;
    • Endpoint Guard: When disabled, the update API route returns HTTP 403 for all check and install requests, preventing unreviewed updates;
    • Host / Platform Lock: For curated plugin indexes (such as VibeDev) or restricted enterprise environments, this can be locked directly via Cordis configuration (bundle patch) without needing UI interaction:
      updater: false # or onlineUpdate: false
      Once configured, the built-in updater is disabled at startup and the update action stays hidden.

Usage Guide

Action How to do it
Find skills Switch between Global Skills and Project Skills tabs, expand/collapse source groups, or use the search bar and status filters.
Inspect content Click View details on any skill row to read SKILL.md content and diagnostics in a 760px wide resizable dialog, with one-click Copy body.
Toggle invocation Toggle the switch on the right side of a skill row to enable or disable it for DSH without editing third-party files.
Organize categories Click New category within a source, then drag the grab handle (⋮⋮) to reorder or move skills across categories. Toggling a category turns all its member skills on or off.
Create & import Click Create skill or Import skill in the header. Select destination scope (User directory or a registered workspace project) and path.
Discover & install Open the Discover tab to browse trending ClawHub skills or search the skills.sh catalog, or click Add repository to subscribe to a public GitHub repo.
Update repository skills Click Refresh, inspect file diffs with Review update, and confirm to update with an automated backup.
Roll back updates Click Restore previous version on skills with backup history, preview changes, and confirm rollback.
Recover deletions Open Trash to restore accidentally deleted DSH skills with their original locations preserved.

Four Main Tabs

  1. Global Skills
    • Manage cross-project skills stored across all detected agent home directories on your machine.
    • Categorize and toggle skills by source; same-name precedence automatically highlights shadowed copies.
  2. Project Skills
    • Select any registered workspace from the dropdown to manage its project-level skills (<project>/.dsh/skills, etc.).
    • Scans and searches only the selected workspace; project copies take precedence over global counterparts.
  3. Discover
    • Public Catalogs: Direct integration with ClawHub and skills.sh to find and install popular community skills;
    • GitHub Repositories: Subscribe to public repositories, scan skill lists, preview diffs, and install copies with local edit protections.
  4. Trash
    • Soft-delete buffer for DSH and Shared Agent skills, preserving provenance and install destinations.
    • Deleted skills can be restored anytime with a single click.

Skill Naming & Frontmatter Requirements

The DeepSeek Harness loader enforces strict identifier policies:

  • Format constraint: Host loaders require skill names to strictly match lowercase ASCII alphanumeric characters and hyphens (kebab-case, e.g. my-tool).
  • Non-ASCII & Chinese skill folders: Your skill directory name can remain in Chinese (e.g. 文案排版/), provided you specify a valid English name in SKILL.md frontmatter:
    ---
    name: copy-formatting-helper
    description: Helper for multi-platform article formatting
    ---
    
    # Skill instructions...
  • Diagnostics: Skills lacking an English name are flagged with clear in-app diagnostics explaining that the host loader cannot invoke them, with options to safely disable or clean up records.

Repository & Installation Boundaries

  • The header Check for updates updates the plugin itself; repository Refresh checks subscribed skill contents without replacing local files.
  • Repository installation can target user DSH skills, Shared Agent (~/.agents/skills, overridable via DSH_AGENTS_HOME), or <project>/.dsh/skills for registered workspaces. Unsafe paths and external agent roots (Codex, Claude) are locked against writes.
  • 32 MiB archive limit; downloading subdirectories still fetches the full archive.
  • Local edits are detected and require explicit confirmation before overwriting; backup history is preserved for rollback.

Supported Agent directories

~ means your home directory; <project> is the project root of a registered workspace. These are default paths; configured environment variables take precedence. An environment variable overrides the agent's main home root directory, and the plugin scans the skills folder under it (i.e., <ENV_PATH>/skills).

Source Global directory Environment variable Project directory
DSH DSH ~/.dsh/skills DSH_HOME <project>/.dsh/skills
Shared Agent Shared Agent ~/.agents/skills DSH_AGENTS_HOME <project>/.agents/skills
CC Switch CC Switch ~/.cc-switch/skills — —
Codex Codex ~/.codex/skills DSH_CODEX_HOME <project>/.codex/skills
Claude Code Claude Code ~/.claude/skills DSH_CLAUDE_HOME <project>/.claude/skills
Gemini Gemini ~/.gemini/skills DSH_GEMINI_HOME <project>/.gemini/skills
OpenCode OpenCode ~/.config/opencode/skills DSH_OPENCODE_HOME <project>/.opencode/skills
Cursor Cursor ~/.cursor/skills DSH_CURSOR_HOME <project>/.cursor/skills
Copilot Copilot ~/.copilot/skills DSH_COPILOT_HOME <project>/.github/skills
Windsurf Windsurf ~/.codeium/windsurf/skills
~/.windsurf/skills
DSH_WINDSURF_HOME
DSH_WINDSURF_USER_HOME
<project>/.windsurf/skills
Trae Trae ~/.trae/skills DSH_TRAE_HOME <project>/.trae/skills
Trae CN Trae CN ~/.trae-cn/skills DSH_TRAE_CN_HOME <project>/.trae-cn/skills
OpenClaw OpenClaw / Clawdbot ~/.openclaw/skills
~/.clawdbot/skills
DSH_OPENCLAW_HOME
DSH_CLAWDBOT_HOME
—
Roo Roo ~/.roo/skills DSH_ROO_HOME <project>/.roo/skills
CodeBuddy CodeBuddy ~/.codebuddy/skills DSH_CODEBUDDY_HOME <project>/.codebuddy/skills
WorkBuddy WorkBuddy ~/.workbuddy/skills DSH_WORKBUDDY_HOME <project>/.workbuddy/skills
Qoder Qoder ~/.qoder/skills DSH_QODER_HOME <project>/.qoder/skills
Qoder CN CLI Qoder CN CLI ~/.qoder-cn/skills DSH_QODER_CN_HOME —
Qoder CN Qoder CN ~/.lingma/skills DSH_LINGMA_HOME <project>/.lingma/skills
Google Antigravity Google Antigravity ~/.gemini/config/skills DSH_ANTIGRAVITY_HOME <project>/.agents/skills

Ordinary project-root <project>/skills directories are not scanned, so repository release resources are not exposed as Agent skills. OpenClaw / Clawdbot support is limited to the user-level sources above. Qoder CN CLI project skills use <project>/.qoder/skills and appear as Qoder. Qoder CN IDE uses the Lingma directories. Missing external source directories are not shown.

DSH product ecosystem

For a desktop workbench, download DSH Codex Desktop. Existing DeepSeek Harness installations can add plugins as needed by following each project's README. Below are 11 first-party plugins; consult the corresponding desktop release notes and bundled catalog for what that version includes.

Plugin What you can do
Codex UI Organize projects and conversations, search tasks, and navigate chat turns
Agency Agents Choose and summon specialists for your task
Skills Manager Manage local and project skills; install, update and roll back repository skills
Archive Manager Search, restore, or clean up archived conversations
IM Connect Send tasks and receive replies through messaging platforms
Automation Schedule tasks and review each run
BTW Ask side questions without interrupting the main task
Simplify Use /simplify to improve code within your Git changes
PUA Guide the Agent to try new approaches after failures, investigate causes, and verify results before completion
Code Review Use /review to request an independent Agent code review and receive the report in the current conversation
Codex Pet View conversation notifications and respond to tool approvals and questions through a desktop pet

Feedback and contributions

Open an issue for bugs or suggestions. Include your DSH and plugin versions, reproduction steps, and a full screenshot for UI issues.

Source code lives in src and uses strict TypeScript while retaining the existing plugin architecture. Run npm run typecheck for type checks, npm run build to generate runtime files, and npm run verify for the full regression and package checks. GitHub and npm both include a ready-to-run lib. After changing source, run the build before committing. Packing still checks types and builds the JavaScript files required by the npm package. CI runs full verification on Node.js 22.19.0 and 24, and code changes also trigger the supported-host compatibility matrix. Contributions are welcome.

To test a source checkout, install dependencies using the pinned pnpm version, run npm run verify, then run npm pack. Install the resulting .tgz with dsh plugin --profile web add <package.tgz>, restart DSH and refresh the page. Do not use --ignore-scripts when packing: it skips the build hook.

License

Apache License 2.0

About

DSH Skills Manager — 在 DeepSeek Harness 中统一加载并安全管理本机 Agent Skills · Load and safely manage local Agent Skills in DSH

Topics

Resources

Stars

323 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages