DSH Skills Manager — 在 DeepSeek Harness 中统一加载并安全管理本机智能体技能 · 在 DSH 中加载并安全管理本机智能体技能
67/100
综合分
448
GitHub 星标
92,748
npm 周下载
—/5
用户评分
数据截至 2026/11/3 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add @michengai/dsh-skills-managernpm 源 · @michengai/dsh-skills-manager 的发布者账号已校验与本仓库一致
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · market
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 0 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包@michengai/dsh-skills-manager @ 1.2.22
✓Node 引擎要求 ^22.19.0 || >=24.0.0 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/29 17:39:08
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 35 处,展示前 35 条)
- 读取本地文件lib/index.js:53
const current = await stat(file).catch(() => null); - 删除本地文件lib/index.js:55
await rm(`${file}.1`, { force: true }); - 写入本地文件lib/index.js:56
await rename(file, `${file}.1`); - 写入本地文件lib/index.js:58
await appendFile(file, `${JSON.stringify({ ts: ( new Date()).toISOString(), event, detail })} - 读取本地文件lib/index.js:326
const realRoot = await realpath(root.path).catch(() => root.path); - 发起网络请求lib/index.js:743
const response = await route.fetch(fetchReq); - 写入剪贴板lib/client.js:17
.dssm-repo-row .dssm-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:650;color:var(--dsw-alias-label-primary - 请求外部主机www.w3.orglib/client.js:25
`;function Wo(){if(document.getElementById(qr)!==null)return;let a=document.createElement("style");a.id=qr,a.textContent=Vo,(document.head??document.d - 发起网络请求lib/client.js:25
`;function Wo(){if(document.getElementById(qr)!==null)return;let a=document.createElement("style");a.id=qr,a.textContent=Vo,(document.head??document.d - 写入剪贴板lib/client.js:25
`;function Wo(){if(document.getElementById(qr)!==null)return;let a=document.createElement("style");a.id=qr,a.textContent=Vo,(document.head??document.d - 发起网络请求lib/client.js:59
`;function Mr(a,t,d,c){var p=a(t,c);return typeof p=="string"&&p!==t?p:d}function J(a,t){if(t instanceof Error&&!t.code)return t.message;if(t&&typeof - 写入剪贴板lib/client.js:59
`;function Mr(a,t,d,c){var p=a(t,c);return typeof p=="string"&&p!==t?p:d}function J(a,t){if(t instanceof Error&&!t.code)return t.message;if(t&&typeof - 读取本地文件lib/core.js:624
raw = readFileSync(file, "utf8"); - 读取本地文件lib/plugin-updater.js:64
if (isDshCliEntry(entry, JSON.parse(readFileSync(manifestPath, "utf8")), directory)) return entry; - 请求外部主机registry.npmjs.orglib/plugin-updater.js:187
const response = await fetch(`https://registry.npmjs.org/${encodeURIComponent(packageName)}/latest`, { signal: AbortSignal.timeout(8e3) }); - 发起网络请求lib/plugin-updater.js:187
const response = await fetch(`https://registry.npmjs.org/${encodeURIComponent(packageName)}/latest`, { signal: AbortSignal.timeout(8e3) }); - 读取本地文件lib/plugin-updater.js:198
const value = JSON.parse(await readFile(manifestUrl, "utf8")); - 读取本地文件lib/plugin-updater.js:332
const current = existsSync(file) ? await readFile(file, "utf8") : "packages:\n - .\n"; - 读取本地文件lib/plugin-updater.js:332
const current = existsSync(file) ? await readFile(file, "utf8") : "packages:\n - .\n"; - 写入本地文件lib/plugin-updater.js:338
await writeFile(tmp, next, "utf8"); - 写入本地文件lib/plugin-updater.js:340
await rename(tmp, file); - 删除本地文件lib/plugin-updater.js:345
await unlink(tmp).catch(() => { - 删除本地文件lib/plugin-updater.js:350
await unlink(backup).catch(() => { - 写入本地文件lib/plugin-updater.js:352
await rename(file, backup); - 写入本地文件lib/plugin-updater.js:354
await rename(tmp, file); - 写入本地文件lib/plugin-updater.js:356
await rename(backup, file).catch(() => { - 删除本地文件lib/plugin-updater.js:358
await unlink(tmp).catch(() => { - 删除本地文件lib/plugin-updater.js:362
await unlink(backup).catch(() => { - 读取本地文件lib/plugin-updater.js:367
const current = existsSync(file) ? await readFile(file, "utf8") : "packages:\n - .\n"; - 读取本地文件lib/plugin-updater.js:367
const current = existsSync(file) ? await readFile(file, "utf8") : "packages:\n - .\n"; - 执行外部命令来自配置/变量lib/plugin-updater.js:374
const child = spawn(process.execPath, [target.cliEntry, "plugin", "--profile", target.profileName, "add", "--config.minimumReleaseAge=0", packageSpec, - 执行外部命令来自配置/变量lib/plugin-updater.js:415
const child = spawn(manager.command, [...manager.args, "add", "--config.minimumReleaseAge=0", packageSpec, "--registry=https://registry.npmjs.org/"], - 发起网络请求lib/skills-sh-catalog.js:23
response = await fetch(url, { - 执行外部命令固定命令lib/repository-git.js:171
spawn("taskkill", ["/F", "/T", "/PID", String(child.pid)], { stdio: "ignore" }); - 执行外部命令来自配置/变量lib/repository-git.js:189
const child = spawn(
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包
涉及外部主机:www.w3.org、registry.npmjs.org
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-ui-primitives@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-host-webserver@deepseek-ai/dsh-scope@deepseek-ai/dsh-session@deepseek-ai/dsh-skill@deepseek-ai/dsh-tools@deepseek-ai/dsh-web-app@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
界面预览
6 张 · 点击查看大图功能亮点
- 统一加载本机技能
- 安全管理本机技能
最近更新
在 GitHub 查看全部 →v1.2.262026-11-01
· 中文说明
· 优化移动端与窄屏幕小视口下的响应式布局适配:
- 二级分段控件(全局/项目/发现/回收站)禁用单字折行,解决极窄宽度下文字生硬换行(如“全局技/能”)的问题;
- 统计概览卡片在窄屏下升级为 2×2 网格布局,节省 50% 垂直高度,提升首屏空间利用率;
- 筛选与搜索工具栏在窄屏下支持流式自适应折行,搜索框完整铺满第二行,彻底消除搜索框右半侧被容器截断的溢出缺陷。
---
· English
· Improve responsive layout on mobile and narrow viewports:
- Prevent ugly single-character wrapping on segmented view tabs (Global/Project/Repositories/Trash);
- Upgrade summary stats cards into a 2x2 grid on narrow containers, saving 50% vertical height and improving above-the-fold space utilization;
- Support responsive wrapping for filter toolbar on narrow screens, letting the search input span the full second row to completely eliminate clipping overflow.
v1.2.252026-11-01
· 中文说明
· 支持任意公开 Git 托管平台与代理镜像仓库(Issue #74):
- 仓库来源输入框全面开放支持任意合法的 Git HTTPS / HTTP 仓库地址,包括 GitLab、Gitee、GitCode、Codeup、自建 Git 服务以及 GitHub 代理加速镜像(如 gh-proxy.com);
- 自动识别仓库平台类型并在列表中展示对应的品牌图标(GitHub、GitLab、Gitee 等,其他自建/未知平台显示通用 Git 图标);
- 仓库添加前增加远程连通性检测,遇到无法访问的地址时提前给出明确提示,避免无效添加;
- 优化超大体积技能仓库下载与检出支持,消除大型仓库检出过程中的容量报错;
- 全面接入宿主官方原生刷新与加载中动画图标,解决刷新按钮点击后图标变形与双层重叠问题,视觉体验与 DSH 保持完全一致。
---
· English
· Support arbitrary public Git hosting platforms and proxy mirrors (Issue #74):
- Allow adding any valid Git HTTPS / HTTP repository URLs, including GitLab, Gitee, GitCode, Codeup, self-hosted Git services, and GitHub acceleration proxy mirrors (such as gh-proxy.com);
- Automatically detect the repository platform and display brand icons (GitHub, GitLab, Gitee, and a generic Git icon for self-hosted / other servers);
- Add remote connectivity checks prior to adding repositories with clear error messages for unreachable URLs;
- Improve checkout support for large skill repositories, preventing unexpected size limit rejections during clone;
- Adopt host native refresh and rotating loading icons, resolving distortion and visual overlap to align seamlessly with DSH host appearance.
v1.2.242026-10-31
· 中文说明
· 支持技能自定义简介与备注,不改写底层 SKILL.md 文件(Issue #73):
- 技能卡片「更多操作」菜单新增「编辑备注」入口,方便记录技能用途、唤起时机与使用经验;
- 技能卡片优先展示用户自定义备注,悬停提示保留面向模型的原生 prompt 简介;
- 顶部搜索框支持根据自定义备注关键词即时检索匹配技能;
- 备注数据持久化于插件内部显示映射层,完全不改动原始 SKILL.md 文件;
- 完善生命周期闭环:永久删除回收站条目或移除自定义来源时自动清理孤立备注,且严格保护同名现役技能数据不被误删。
---
· English
· Support custom skill notes without modifying SKILL.md (Issue #73):
- Add "Edit note" option under skill card "More" menu to record custom descriptions and usage scenarios;
- Display custom notes directly on skill cards while preserving the original prompt description in tooltip;
- Support searching skill cards by custom notes keywords;
- Store notes safely in plugin display mapping layer without modifying underlying SKILL.md files;
- Automatically cleanup note entries upon permanently deleting trash items or removing custom sources, while protecting active skills with the same name.
数据来自仓库的 GitHub Release,可能与插件实际版本不一致。
README
由 DeepSeek 最新模型翻译生成DSH Skills Manager
统一管理本机与项目技能,从 GitHub 安装、预览更新并备份回退
English · 更新日志 · Apache-2.0
DSH Skills Manager 是社区维护的 DeepSeek Harness(DSH)插件,并非 DeepSeek AI 官方产品。
本文描述 1.2.26。已发布变更见更新日志。
功能概览
把散落在本机和项目中的技能集中到 DSH,无需在多个 Agent 目录间来回查找。
- 多视图集中管理:提供「全局技能」、「项目技能」、「发现」与「回收站」四大工作区视图,支持搜索、状态筛选与来源折叠。
- 广泛的生态兼容:覆盖 DSH、公共 Agent、Codex、Claude Code、Copilot、Cursor、Google Antigravity、Windsurf、Qoder、Trae 等 20+ 工具与 CLI 环境,统一管理且不侵入第三方文件。
- 分类整理与拖拽归类:支持在各来源内创建分类文件夹、拖拽技能卡片归类排序、批量添加技能,并支持分类级一键启停。分类元数据独立保存,不改动物理文件。
- 公共市场与仓库订阅:内置「发现」中心,一站式浏览 ClawHub 热门榜单与 skills.sh 技能市场,支持公开 GitHub 仓库订阅、增量更新检测与版本备份回退。
展开完整文档(README 剩余 1 节)
DSH Skills Manager 统一管理本机与项目技能,从 GitHub 安装、预览更新并备份回退 English · 更新日志 · Apache-2.0 DSH Skills Manager 是社区维护的 DeepSeek Harness(DSH)插件,并非 DeepSeek AI 官方产品。 本文描述 1.2.26。已发布变更见更新日志。 功能概览 把散落在本机和项目中的技能集中到 DSH,无需在多个 Agent 目录间来回查找。 - 多视图集中管理:提供「全局技能」、「项目技能」、「发现」与「回收站」四大工作区视图,支持搜索、状态筛选与来源折叠。 - 广泛的生态兼容:覆盖 DSH、公共 Agent、Codex、Claude Code、Copilot、Cursor、Google Antigravity、Windsurf、Qoder、Trae 等 20+ 工具与 CLI 环境,统一管理且不侵入第三方文件。 - 分类整理与拖拽归类:支持在各来源内创建分类文件夹、拖拽技能卡片归类排序、批量添加技能,并支持分类级一键启停。分类元数据独立保存,不改动物理文件。 - 公共市场与仓库订阅:内置「发现」中心,一站式浏览 ClawHub 热门榜单与 skills.sh 技能市场,支持公开 GitHub 仓库订阅、增量更新检测与版本备份回退。 - 创建与自由导入:新建技能,或导入 ZIP、文件夹与 SKILL.md,可精准写入用户全局目录或指定工作区项目目录。 - 宽屏阅读与正文复制:760px 宽屏自适应详情弹窗,等宽字体代码高亮排版,支持垂直自由拉伸与一键复制 Markdown 正文。 - 回收站与防误删保障:DSH 技能删除后优先移入回收站,支持完整保留安装身份与更新历史的安全恢复。 - 自定义来源目录:外部 Agent 来源可以在面板里改读取位置,不移动任何文件;DSH 与公共 Agent 仍由宿主配置。 界面预览 全局技能: 全局技能管理界面 项目技能: 项目技能管理界面 技能仓库与发现: 技能仓库浏览与安装 截图展示核心功能面板,包含全局技能、项目技能与技能发现仓库。采用无损 WebP 格式。 安装 需要已安装并能正常运行 DeepSeek Harness。以下命令使用 web profile,请按实际环境替换。 插件安装支持 npm registry、本地构建的 .tgz 包和 GitHub。GitHub 与 npm 都包含可直接运行的 lib。改动源码后,提交前请先运行构建。 让 Agent 帮你安装 把这段话发给能够操作本机终端的 Agent: 请把 @michengai/dsh-skills-manager 最新版安装到我的 DSH web profile,使用官方 npm 源,安装后确认生效并告诉我如何重新加载。 手动安装 [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/ 安装后重启 DSH 并刷新页面,打开「设置 → 技能」即可使用。更新时可点击「检查更新」,或重新执行安装命令。 - 1.2.26 已验证兼容 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。 - 宿主支持范围:DeepSeek Harness 0.2.x 全系列(>=0.2.0-rc.1 <0.3.0-0),自动支持后续日常小版本、alpha 与 RC,同代宿主升级无需重复等待发版。早期版本与 0.3.0 代际破坏性更新由版本门拦截。仍在使用 0.1.x 的,请安装插件 1.1.23,不要装 @latest。 - 反向代理部署:支持将 DSH 部署在带路径前缀的反向代理后面(如 /app/dsh/),插件 API 统一自动按页面基址(document.baseURI)相对解析。 插件配置与可选开关 插件遵循 DSH 官方扩展配置规范,配置项位于:主界面侧边栏「插件」→ 点击 Skills Manager 详情页(对应宿主 plugins.bundle.config 槽位)。 此处提供两个原生扁平行开关: 1. 侧边栏入口 (sidebarEntry) - 默认状态:关闭(false) - 功能说明:在宿主左侧主导航栏的「插件」下方增加常驻的 「技能」 图标入口。 - 生效效果: - 开启后,在侧边栏点击即可直达技能管理中心,并在主工作区以 960px 居中版心(对齐官方插件管理与市场规范)展开完整大面板,彻底告别在设置弹窗狭窄视口内滚动的局限; - 关闭后安全注销侧栏槽位; - 无论是否开启侧栏入口,DSH 原有的「设置 → 技能」入口始终保留,两处界面数据与状态 100% 实时同步。 2. 在线更新 (onlineUpdate / updater) - 默认状态:开启(true) - 功能说明:控制是否允许在线检查并安装技能管理器的新版本。 - 生效效果: - 界面联动:关闭开关后,技能管理面板顶部的「检查更新」按钮将即时隐藏,无需刷新页面;开启后自动恢复展示; - 接口安全拦截:关闭后,服务端的更新路由对任何版本检查和安装请求均返回 HTTP 403 禁用状态,彻底杜绝在插件内安装未审核版本; - 宿主/平台级锁定:面向精选插件索引(如 VibeDev)或企业安全合规环境,支持直接在 Cordis 配置文件(bundle patch)中声明,无需进入界面手动配置: updater: false # 或 onlineUpdate: false 配置生效后,更新器在启动时即被完全禁用,且更新入口默认保持隐藏。 使用指南 | 核心操作 | 操作方式 | | 检索技能 | 切换「全局技能」或「项目技能」页签,按来源分组折叠/展开,或使用顶部搜索框与状态筛选器。 | | 阅读技能 | 点击技能行右侧「查看详情」,在 760px 宽屏弹窗中阅读 SKILL.md 正文及诊断信息,支持一键「复制正文」。 | | 控制启停 | 点击技能行右侧开关,切换其在 DSH 中的调用状态;仅影响 DSH 智能体执行,绝不改动第三方源文件。 | | 更换外部来源目录 | 点击顶栏「来源目录…」或在来源行点「修改技能目录」,输入或浏览目录后保存;「恢复默认」回到默认位置。只改本插件读哪里,不移动文件,外部来源仍只读。 | | 分类与拖拽 | 在来源内点击「新建分类」,拖拽左侧把手(⋮⋮)直接跨分类移动或同组排序;支持分类一键批量启停与多选添加。 | | 创建与导入 | 点击顶栏「创建技能」或「导入技能」,并排选择写入目标(用户目录或已登记工作区项目目录),系统自动核对安全路径。 | | 发现与安装 | 切换到「发现」页签,浏览 ClawHub 热榜或搜索 skills.sh 目录,或点击「添加仓库」订阅公开 GitHub 仓库。 | | 仓库技能更新 | 点击「刷新」,再点击「查看更新」预览文件 Diff 差异,确认后自动创建本地备份并完成更新。 | | 版本回退 | 对存在备份的技能点击「恢复上一版」,预览差异并确认恢复。 | | 回收与防误删 | 删除的 DSH 技能自动进入「回收站」,可随时完整恢复或永久删除。 | 技能管理四大板块 1. 全局技能(Global Skills) - 集中展示当前电脑上所有 Agent 目录下的全局技能(跨项目通用)。 - 支持按来源启停、按分类组织;当不同来源存在同名技能时,自动遵循优先级遮盖并给出来源提示。 2. 项目技能(Project Skills) - 顶部下拉选择当前 DSH 已登记的工作区目录,下方展示该项目所属的 Agent 技能。 - 仅扫描并管理所选工作区;项目级同名技能优于全局副本生效。 3. 发现(Discover) - 公共市场:集成 ClawHub 热门下载榜与 skills.sh 全球技能库,输入关键字即可检索全球开源技能,一键完成多副本安装; - GitHub 仓库订阅:输入 GitHub 仓库地址,整仓扫描技能清单,支持增量版本比对、本地修改保护与更新备份。 4. 回收站(Trash) - 存放从 DSH 或公共 Agent 来源中删除的技能副本,保留原始安装位置与关联信息。 - 误删技能可一键恢复回原目录,彻底杜绝意外丢失。 技能命名与 Frontmatter 规范 DeepSeek Harness 宿主加载机制对技能标识符遵循规范命名约束: - 名称格式:宿主严格要求技能名称必须为 ASCII 小写字母、数字与连字符构成的 kebab-case 格式(如 my-custom-skill); - 中文技能目录自救:您的技能文件夹名称可以继续使用直观的中文名称(如 文案排版/),只需在其 SKILL.md 的 YAML frontmatter 中显式声明合法的英文 name 即可被宿主正常加载和调用: name: copy-formatting-helper description: 微信公众号与多平台文案排版辅助工具 技能正文内容... - 界面智能诊断:若本地存在缺少英文 name 的纯中文技能,管理器会在界面明确给出「宿主不支持此技能名称格式,无法启用」的诊断指引,并允许停用清理历史脏记录。 仓库与安装边界 - 顶栏「检查更新」用于更新技能管理器插件自身;仓库区「刷新」仅检查技能仓库内容更新,不自动覆盖本地。 - 仓库安装可以写入用户目录下的 DSH skills 或公共 Agent(~/.agents/skills,可用 DSH_AGENTS_HOME 覆盖),也可以写入已登记工作区的 <项目根>/.dsh/skills。选择器显示实际配置路径,并禁用不安全路径;缺少的目录仅在确认安装后创建。不能安装到 Codex、Claude 等其他 Agent 目录。 - 归档上限 32 MiB,指定子目录也需下载整库。 - 更新前检测本地修改,覆盖必须明确确认;历史备份不自动清理,可随时恢复上一版。 支持的 Agent 目录 ~ 表示用户主目录,<project> 表示已登记工作区的项目根。表中为默认路径;设置了对应环境变量时,以配置为准。环境变量覆盖对应 Agent 的主根目录,插件会在其目录下扫描 skills 文件夹(即 <环境变量值>/skills)。 | 来源 | 全局目录 | 环境变量 | 项目目录 | | DSH | ~/.dsh/skills | DSH_HOME | <project>/.dsh/skills | | 公共 Agent | ~/.agents/skills | DSH_AGENTS_HOME | <project>/.agents/skills | | CC Switch | ~/.cc-switch/skills | — | — | | Codex | ~/.codex/skills | DSH_CODEX_HOME | <project>/.codex/skills | | Claude Code | ~/.claude/skills | DSH_CLAUDE_HOME | <project>/.claude/skills | | Gemini | ~/.gemini/skills | DSH_GEMINI_HOME | <project>/.gemini/skills | | OpenCode | ~/.config/opencode/skills | DSH_OPENCODE_HOME | <project>/.opencode/skills | | Cursor | ~/.cursor/skills | DSH_CURSOR_HOME | <project>/.cursor/skills | | Copilot | ~/.copilot/skills | DSH_COPILOT_HOME | <project>/.github/skills | | Windsurf | ~/.codeium/windsurf/skills~/.windsurf/skills | DSH_WINDSURF_HOMEDSH_WINDSURF_USER_HOME | <project>/.windsurf/skills | | Trae | ~/.trae/skills | DSH_TRAE_HOME | <project>/.trae/skills | | Trae CN | ~/.trae-cn/skills | DSH_TRAE_CN_HOME | <project>/.trae-cn/skills | | OpenClaw / Clawdbot | ~/.openclaw/skills~/.clawdbot/skills | DSH_OPENCLAW_HOMEDSH_CLAWDBOT_HOME | — | | Roo | ~/.roo/skills | DSH_ROO_HOME | <project>/.roo/skills | | CodeBuddy | ~/.codebuddy/skills | DSH_CODEBUDDY_HOME | <project>/.codebuddy/skills | | WorkBuddy | ~/.workbuddy/skills | DSH_WORKBUDDY_HOME | <project>/.workbuddy/skills | | Qoder | ~/.qoder/skills | DSH_QODER_HOME | <project>/.qoder/skills | | Qoder CN CLI | ~/.qoder-cn/skills | DSH_QODER_CN_HOME | — | | Qoder CN | ~/.lingma/skills | DSH_LINGMA_HOME | <project>/.lingma/skills | | Google Antigravity | ~/.gemini/config/skills | DSH_ANTIGRAVITY_HOME | <project>/.agents/skills | 不扫描普通项目根目录的 <project>/skills,避免把仓库的发布资源当作 Agent 技能。OpenClaw / Clawdbot 仅保留上表中的用户级来源。Qoder CN CLI 的项目技能在 <project>/.qoder/skills,显示为 Qoder。Qoder CN IDE 使用 Lingma 目录。不存在的外部来源目录不会显示。 外部 Agent 来源(CC Switch、Codex、Claude Code 等)可以在来源行直接改读哪个目录,保存后立即生效。覆盖保存在 ~/.dsh/skills-manager/roots.json,优先级高于 DSH_<AGENT>_HOME;手工编辑该文件需重启 DSH。DSH 与公共 Agent 是宿主的扫描路径,不在此处开放,需要整体搬迁时请改 DSH_HOME / DSH_AGENTS_HOME。目录必须已存在,且不能与其它来源重叠;自定义目录失效时来源会保留在列表里,方便改回默认。 自定义来源(清单外的 Agent) 表里没有的 Agent 不必等插件发版:打开「来源目录…」,点「添加来源」,填它的技能目录即可。自定义来源与外部只读来源同构——只扫描不写入、不改动第三方文件,支持分组、拖拽归类、来源级与分类级启停;显示名默认取目录名,也可以自己填。 如果一个 Agent 用多个子 profile(多账号、多工作区)各自维护一套技能,填产品总目录再点「扫描子目录」:插件会向下找两层内所有含 SKILL.md 的 skills 目录,列成候选,每条显示为「产品名 / 子目录名」并标注技能数量,确认后一次登记。扫描只产生候选,不会自动登记;与已有来源重叠的候选会被标出并禁止登记。 登记信息写在 roots.json 的 customSources 段,与目录覆盖共用同一个文件。移除登记只删除这条记录,磁盘上的技能文件保持原样。上限 32 个自定义来源。 DSH 产品生态 想使用桌面工作台,可下载 DSH Codex Desktop;已有 DeepSeek Harness 环境,可按各项目 README 按需安装。以下列出 11 个自研插件;桌面端实际随附范围以对应版本的发行说明和内置清单为准。 | 插件 | 你可以用它做什么 | | Codex UI | 整理项目与会话、搜索任务、跳转对话轮次 | | Agency Agents | 按任务选择并召唤专业角色 | | Skills Manager | 管理本机与项目技能,从仓库安装、更新和回退 | | Archive Manager | 搜索、恢复或清理已归档会话 | | IM Connect | 从消息平台下任务、收回复 | | Automation | 按计划执行任务,查看每次运行的结果 | | BTW | 在当前上下文中临时旁问,不打断主任务 | | Simplify | 用 /simplify 整理 Git 改动范围内的代码 | | PUA | 引导 Agent 在失败时换方法、查原因,并在完成前验证结果 | | Code Review | 用 /review 发起独立 Agent 代码审查,在当前会话接收报告 | | Codex Pet | 通过桌面宠物查看会话提醒、处理工具审批和问题回答 | 反馈与贡献 遇到问题或有建议,欢迎提交 Issue。请附上 DSH 与插件版本、复现步骤;界面问题可附完整截图。 源码位于 src,使用严格 TypeScript,保留现有插件架构。开发时执行 npm run typecheck 检查类型,npm run build 生成运行产物,npm run verify 执行完整回归与打包验证。GitHub 与 npm 都包含可直接运行的 lib。改动源码后,提交前请先运行构建。打包前仍会自动检查类型并构建,npm 安装包仍包含所需 JavaScript 产物。CI 在 Node.js 22.19.0 和 24 上执行完整验证,代码改动也会自动触发受支持宿主兼容矩阵。欢迎提交改进。 从源码制作测试包时,使用项目固定版本的 pnpm 安装依赖,执行 npm run verify,再执行 npm pack。用 dsh plugin --profile web add <package.tgz> 安装生成的 .tgz,重启 DSH 并刷新页面。打包时不要使用 --ignore-scripts,否则会跳过构建钩子。 许可证 Apache License 2.0
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
MichengAI/dsh-skills-manager
DSH Skills Manager — 在 DeepSeek Harness 中统一加载并安全管理本机智能体技能 · 在 DSH 中加载并安全管理本机智能体技能
相关插件 · 市场 / 管理
插件精选列表awesome-dsh-plugin/awesome-dsh-plugin
DeepSeek Harness(dsh)插件精选列表
★ 22,025未汉化DSH
73.6
新词雷达zhuyansen/new-term-radar
new-term-radar新词雷达
★ 2,049已汉化MCP
72.8
插件生态导航0xsline/awesome-deepseek-harness
安装 贡献指南 DeepSeek Docs 公开插件目录 Issues
★ 1,188已汉化DSH
72.6
技能注册中心iflytek/skillhub
企业级开源智能体技能注册中心——发布、发现并管理组织内可复用的技能包。
★ 5,358已汉化DSH
71.9
插件市场目录imsai-sh/awesome-deepseek-harness-plugins
面向 DeepSeek Harnessdsh生态的社区插件目录,共收录 13938 个插件含 PR 收录与…
★ 350已汉化DSH
71.8
插件精选清单Anil-matcha/awesome-dsh-plugin
DeepSeek Harnessdsh精选指南——DeepSeek…
★ 1,013已汉化DSH
71.7