🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

技能按需加载 qqmqq/dsh-skill-on-demand

DeepSeek Harness
qqmqq15 天前有提交已提供中文文档扫描:未发现敏感能力

按需列出并加载技能,省下每轮重复的目录开销

30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/21 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add qqmqq/dsh-skill-on-demand
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么[目录]—
dsh 原生插件 · other
暂无时间戳·判据 →
装得上吗[实装验证]✓
本站已在 dsh 0.2.1-rc.2 下真实安装成功
非静态推断
L4 · 真实安装等级说明 →
数据截至 2026/10/22·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/03·判据 →
还在维护吗[仓库]✓
活跃:最近一次提交在 15 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

DSH 插件:把会话技能目录从每次请求里移出去——技能按需列出,任务需要的技能只记录一次,只有被选中的技能才按名称加载。

README

由 DeepSeek 最新模型翻译生成
dsh-skill-on-demand DeepSeek Harness 会在每个会话里发布一次技能目录,之后每一次请求都会把它作为对话历史再发一遍。装了十几几十个技能时,这就是几千 token 的描述文字在每一轮重复发送,而其中大部分技能当前任务根本用不到。 这个插件把那份目录整个去掉,换成三个小工具。 做什么 | 之前 | 装上之后 | | 一条消息列出所有技能名和描述,每次请求都带上 | 目录消息不再发布 | | 模型要读完全部描述才知道需要什么 | skill_list 只返回技能名字;只有检索(带 query)才回描述 | | 没有东西记录任务实际用了哪些 | skill_pick 记录本次会话保留的技能,其余忽略 | | 每个技能正文都可达但没有上限 | skill 只按名字加载一个完整正文 | 每个会话只注入一条简短协议:列名字 → 判断任务需要的技能(≤5 个)→ skill_pick 固定 → 继续干活。不会重复注入;子代理会话不注入(工具照样能用,只是不为这条提示付钱)。 目录是怎么被去掉的 @deepseek-ai/dsh-tool-skill 只在 ctx.tools.get('skill', agent) 仍指向它自己注册的工具时才发布目录。
展开完整文档(README 剩余 1 节)
dsh-skill-on-demand

DeepSeek Harness 会在每个会话里发布一次技能目录,之后每一次请求都会把它作为对话历史再发一遍。装了十几几十个技能时,这就是几千 token 的描述文字在每一轮重复发送,而其中大部分技能当前任务根本用不到。

这个插件把那份目录整个去掉,换成三个小工具。

做什么

| 之前 | 装上之后 |
| 一条消息列出所有技能名和描述,每次请求都带上 | 目录消息不再发布 |
| 模型要读完全部描述才知道需要什么 | skill_list 只返回技能名字;只有检索(带 query)才回描述 |
| 没有东西记录任务实际用了哪些 | skill_pick 记录本次会话保留的技能,其余忽略 |
| 每个技能正文都可达但没有上限 | skill 只按名字加载一个完整正文 |

每个会话只注入一条简短协议:列名字 → 判断任务需要的技能(≤5 个)→ skill_pick 固定 → 继续干活。不会重复注入;子代理会话不注入(工具照样能用,只是不为这条提示付钱)。

目录是怎么被去掉的

@deepseek-ai/dsh-tool-skill 只在 ctx.tools.get('skill', agent) 仍指向它自己注册的工具时才发布目录。本插件在每个 agent 自己的 scope 里注册同名 skill 工具(就近生效),那条检查因此不成立,目录不再发布。替代工具做同样的事——按精确名字加载一个技能的说明。

本来就没挂 skill 工具的极简 preset 不动:没有可替换的东西,也不该让刻意精简的 preset 悄悄多出工具。

安装

dsh plugin --profile web add dsh-skill-on-demand

装完重启 harness(bundle 在启动时加载)。

验证

开一个新会话随便问一句。第一轮应该出现 skill_list → skill_pick,并且没有 <available_skills> 块;skill_list 不带参数只回名字。

局限

- 软约束,不是强制。 模型不照协议走也不会出错、也不会省钱——但目录已经不在了,省下的那部分照样成立。
- 老会话带着旧历史。 装插件之前就已经发布过目录的会话,仍带着那条消息,外加一次官方插件的「没有可用技能」更正。想要干净状态请开新会话。
- 选择按会话。 新会话重新判断一次,这是有意的:该留哪些技能取决于任务。
- 重名。 如果某个 preset 已经在 agent 自己的层注册了 skill,注册会失败,插件退化成「选择工具可用、目录照旧」,不会把会话弄坏。

开发

index.js 是单个 Host 插件,没有构建步骤。scripts/selftest.mjs 对着 mock context 跑。请在装好的包目录里运行,这样模块解析才找得到 harness 自己的 @deepseek-ai/* 包:

node <profile>/node_modules/dsh-skill-on-demand/scripts/selftest.mjs

许可

MIT
预览分享卡片长什么样 ↓qqmqq/dsh-skill-on-demand
分享 · DeepSeek Harness Hub
qqmqq/dsh-skill-on-demand

按需列出并加载技能,省下每轮重复的目录开销

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部