DeepSeek Harness 插件

dsh-skill-manager-jimmyjin

In-GUI skill manager for the dsh web GUI: a top-level Skills entry in Settings (movable into the Plugins section) that lists every installed skill (name, description, model/user invocation type(英文原文)

跳到安装方式

来源信息

GitHub 仓库
JimmyJin2006/dsh-skill-manager
最近更新
2026年8月13日
分类
插件市场与管理
GitHub stars
0
载体类型
plugin
目录证据
上游声明已找到 dsh.bundle
证据路径
package.json#dsh.bundle
核对版本
0.1.0-rc.8
上游核对日期
2026-08-20

该证据由上游目录提供。本站没有安装、运行或安全审核这个插件。

安装

默认先复制一段 Prompt,让 Agent 读 GitHub 仓库和源码;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读 GitHub 仓库和源码。

请先不要安装或执行任何命令。阅读这个插件的 GitHub 仓库、README 和关键源码,然后用清楚、直接的方式回答以下问题,帮助我判断它是否适合我的需求:

1. 这个插件是什么,解决什么问题;
2. 适合哪些用户和典型使用场景;
3. 安装后如何使用,并给出一个最小使用示例;
4. 有哪些已知限制,以及隐私、安全、兼容性或维护风险;
5. 给出“推荐 / 有条件推荐 / 不推荐”的明确建议和理由。

请区分仓库明确说明、根据源码推断和未知信息。证据不足时请明确说明,不要猜测或照抄 README。

GitHub:https://github.com/JimmyJin2006/dsh-skill-manager
插件名:dsh-skill-manager-jimmyjin
作者:JimmyJin2006

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器2 个文件
README.md来源说明 · 只读预览

dsh-skill-manager

A skill manager for the DeepSeek Harness (dsh) Web GUI: browse every installed skill right inside Settings — a top-level Skills entry in the sidebar that you can move into the Plugins section with one click.

Features

  • Settings → Skills (top-level, default): a read-only catalog of every

skill the session can load, scanned from your user skill roots ($DSH_HOME/skills, ~/.agents/skills).

  • Each card shows the skill name, an invocation badge (Model + user /

User-only / Model-only), and its description; expand it to see the source root and file path.

  • Search filters by name and description.
  • Move the entry with one button: "Move to the Plugins tab" removes the

Skills entry from the sidebar and re-creates it as a tab inside Settings → Plugins; "Move back to the sidebar" reverses it. The choice is persisted in localStorage — exactly one entry exists at any time.

  • Read-only: this plugin never writes or modifies skill files.

Installation

Pick one of the two ways below — never both.

Option A — one command (recommended)

dsh plugin --profile web add dsh-skill-manager

This adds the package to the profile's dsh.profile.bundles; its bundle patch (cordis.patch.yml) mounts the plugin automatically on boot. Do not also add a manual insert row for it.

Or from a local checkout:

dsh plugin --profile web add /absolute/path/to/dsh-skill-manager

Option B — manual patch only

Use this only when the package is already resolvable from the profile's node_modules (e.g. it was installed as a dependency some other way) and is not in dsh.profile.bundles. Add one insert row to ~/.dsh/profiles/web/cordis.patch.yml (the config watcher hot-reloads it, no restart required):

- insert:
    - id: ui-skill-manager
      name: dsh-skill-manager

> ⚠️ Never combine the two options. Keeping the same plugin both in > dsh.profile.bundles and in a manual insert row mounts the same loader > entry id twice — boot fails with > duplicate loader entry id: ui-skill-manager.

Troubleshooting

duplicate loader entry id: <id> on startup

Boot fails when the same plugin is mounted from two sources — typically a package that appears both in dsh.profile.bundles (from dsh plugin add) and as a manual insert row in cordis.patch.yml. The reported id may be any duplicated plugin, not necessarily the one you just installed.

Fix: remove one of the two sources — delete the manual insert row from ~/.dsh/profiles/web/cordis.patch.yml, or remove the package from bundles (dsh plugin --profile web remove <pkg>).

The DSH loader treats a duplicate id as fatal. A local patch makes it idempotent (keep the first occurrence, warn, ignore the duplicate) so this can never lock you out of the harness again; see the upstream issue and re-run this patch script after every DSH upgrade:

# 升级 DSH 后重跑(自动定位最新 loader,已打过会跳过)
powershell -ExecutionPolicy Bypass -File patch-dsh-dedupe.ps1

Structure

  • lib/index.js — host half: scans skill roots, parses SKILL.md

frontmatter, serves the catalog at GET /api/skill-manager/list (same-origin fenced).

  • lib/client.js — browser half: registers the settings.section entry

(sidebar, order 12) and the settings.plugins.tab entry, and moves between them at runtime through ctx.slots.register disposers.

  • cordis.patch.yml — the bundle patch that inserts the ui-skill-manager

row.

License

MIT