Bundle
dsh-plug-skills
DeepSeek Harness 的 Skills 管理器:在 设置 → 插件 → Skills 标签页中发现 GitHub 上的 Agent Skills 仓库(SKILL.md 技能包,topic:agent-skills / dsh-skill / claude-skills),查看详情后一键安装 / 移除。技能装入 $DSH_HOME/skills,skill-filesystem 热加载,无需重启。支持 GitHub 代理。
- Source
- Casually
- stars
- 1 stars
- License
- MIT
- Updated
- Updated 19 hours ago
Readme
# dsh-plug-skills
[DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) 的
**Skills 管理器**:在 Web UI 的「设置 → 插件 → Skills」标签页中发现
GitHub 上的 Agent Skills 仓库(`SKILL.md` 技能包),查看详情后一键安装 /
移除。交互模式参考
[`dsh-plug-manager`](https://github.com/Casually/deepseek-harness-plugs-manage)
(插件市场);MCP 服务管理请见姊妹插件
[`dsh-plug-mcp`](https://github.com/Casually/dsh-plug-mcp)。
## 功能
- **设置 → 插件 → Skills**(Web UI)
- **发现**:按 GitHub topic 搜索技能仓库——`agent-skills` / `dsh-skill` /
`claude-skills` / `ai-skills` / `skills` / `skill`,可追加关键词、按最多
Star / 最近更新排序、翻页。另有两个**模糊匹配**选项:`*skills` 与
`*skill`——GitHub 搜索不支持通配符限定符,插件会并行搜索一组技能
相关 topic(`*skills` = agent-skills + ai-skills + claude-skills +
skills;`*skill` = dsh-skill + skill),合并去重后按 Star 排序展示
(一次消耗 2-4 个匿名搜索额度,注意限流)。
- **详情弹窗**:仓库星标 / topics / 许可证 / README(内置安全 Markdown
渲染,只放行 http(s) 链接,相对图片改写为 raw.githubusercontent.com),
经 git trees 递归扫描列出仓库内全部 `SKILL.md` 技能包,解析每个技能的
frontmatter(name / description),勾选后一键安装。
- **安装**:经 HTTPS 从 codeload.github.com 下载仓库 tarball(自动走
代理配置),解压后把选中的技能目录复制进 `$DSH_HOME/skills/<目录名>`。
支持一次装多个、重名检测与可选覆盖。`skill-filesystem` 对技能根目录做
文件监视——**装完立即生效,无需重启**。
- **已安装**:列出两个用户技能根目录(`$DSH_HOME/skills`、
`$DSH_AGENTS_HOME/skills`)中的全部技能(含 frontmatter 摘要、来源、
是否本插件安装),自定义确认弹窗后一键移除。
- **GitHub 代理**:直连 GitHub 受限时,可在页面上直接配置代理并测试
连通性(见下文「代理配置」)。
- **本地 JSON API**(仅回环地址,由运行中的 web 服务器提供):
`/plug-skills/search`、`/plug-skills/repo`、`/plug-skills/local`、
`/plug-skills/install`、`/plug-skills/remove`、`/plug-skills/proxy`、
`/plug-skills/proxy-test`。
## 代理配置
发现功能访问 `api.github.com` / `raw.githubusercontent.com` /
`codeload.github.com`。出厂部署不挂载平台级 fetch provider,本插件自行
发起请求:默认直连(Node fetch);**配置代理后经系统 `curl` 发出**,因此
支持 `http` / `https` / `socks5` / `socks5h` / `socks4`(Clash 的混合端口
与 SOCKS 端口都可用)。
代理来源按优先级生效:
1. **持久设置**(UI「GitHub 代理」栏输入后点「应用」)——写入
`DSH 主目录/plug-skills.json`,立即生效且重启后保留;点「清除」移除;
2. **插件配置**——在 profile 的 `cordis.patch.yml` 中为本插件加
`config.proxy`(持久生效):
```yaml
- id: plug-skills
name: dsh-plug-skills
config:
proxy: http://127.0.0.1:7890
```
3. **环境变量**——`DSH_PLUG_SKILLS_PROXY`,或标准的 `HTTPS_PROXY` /
`HTTP_PROXY` / `ALL_PROXY`(大小写均可)。
「测试连接」会请求 `api.github.com/zen` 验证当前生效通道并报告延迟。
特殊值 `direct` 可强制直连(同样会被持久保存)。
## 数据与安全
- 技能装入 `$DSH_HOME/skills/<dir>`,安装登记(来源仓库 / 路径 / 时间)
记录在 `$DSH_HOME/plug-skills.json`;移除 = 删除技能目录并清理登记。
- **技能是提示词级内容**:加载后进入模型上下文,等价于你亲手写的系统
指令——只安装你信任的技能仓库。
- 所有安装 / 移除均由你本人在本地界面点击触发,宿主进程直接执行文件
操作,不经过 agent、不额外审批;操作结果即时反馈。
## 安装
要求宿主有 `curl`(macOS / 主流 Linux 自带)才能使用代理功能;
`dsh plugin` 命令要求 PATH 中有 `pnpm`。
```sh
# npm 安装(推荐)
dsh plugin --profile web add -w dsh-plug-skills
# GitHub 源码(最新 main;也可 #vX.Y.Z 锁 tag)
dsh plugin --profile web add -w github:Casually/dsh-plug-skills
# 本地目录(开发自用,在本目录的父目录下执行)
dsh plugin --profile web add -w ./dsh-plug-skills
```
经 `dsh plugin` 命令安装后**重启 DSH**(`dsh web`)以组合新 bundle。
安装完成后,「Skills」标签页出现在设置 → 插件 下。
## 卸载
```sh
dsh plugin --profile web remove dsh-plug-skills
```
重启 DSH 以移除该层。已安装的技能不受影响(它们是数据,不是插件的
一部分);如需清理,先在「已安装」页移除。
## 开发说明
- 运行时依赖仅 `js-yaml`(解析 SKILL.md 的 YAML frontmatter)。
- 宿主插件是纯 ESM;GitHub 抓取默认直连,代理经系统 curl;30 秒超时、
5 MB 响应上限、10 万字符文本上限(递归树扫描单独放宽到 300 万字符)。
- 浏览器端以预构建形式交付(`client.js`,`window.__ModuleLoader__`
格式),仅依赖平台的 `react` wire 模块。
- 给自己仓库打上 `dsh-skill` 或 `agent-skills` topic 标签,即可出现在
「发现」中。
## 许可证
MIT
Install
dsh plugin --profile web add github:Casually/dsh-plug-skills#d76f3e2ad8e8d867d589e8eb64e72a0601bb6648
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install dsh-plug-skills from the hub