← 返回列表
未验证
dsh 标准工具插件Standard ToolKit——一个装进 dsh…
尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/23 · 已提供中文文档
DeepSeek Harness 标准工具插件(Standard ToolKit):工具管家——平时工具不占位,会话按需自动装载/用完自动收纳,省token;支持 load_tool / register_new_tool 现场造工具。Tool manager plugin for DeepSeek Harness / dsh.
综合分
27.4
GitHub 分
27.4
用户评分
—
★ Stars
1
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add suanniniu/dsh-standard-toolkit该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
信任档位:仅索引本站尚未对其实装验证,仅收录元数据
- 是什么
- dsh 原生插件 · market
- 装得上吗
- 本站尚未做安装检查
- 安全吗
- 本站尚未对该插件做风险分级(暂未覆盖,不等同于无风险)
- 还在维护吗
- 更新放缓:最近一次提交在 34 天前
档位由下列信号合成:本站实装验证(真实安装,当前最高到 L4)· 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。下方各区块是它的证据明细。 验证判据与等级说明 →
数据截至 2026/9/25(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
由 DeepSeek 最新模型翻译生成dsh-standard-toolkit
dsh 标准工具插件(Standard ToolKit)——一个装进 dsh 的"工具管家":平时工具不占位,会话里需要什么自动取用,用完自动收走。省 token、保专注、能力自我进化。
dsh 生态默认只向模型暴露极简工具集,扩展工具全量启用又会让每轮对话背着全部 schema(占 token、模型易选错)。Standard ToolKit 把工具管理自动化:
- 省 token:工具默认收在仓库(暂存区),不加载不占 schema;被取用才"摆上桌面"
- 极简起步:每会话只暴露核心 6 工具(bash / read / write / edit / todo_write / subagent),界面清爽、模型专注
- 按需自动扩展:你说话提到"搜一下""算一下这两个日期隔几天",自动匹配触发词、加载对应工具
- 会话隔离:动态工具注册在 agent 层,随会话销毁自动卸载——A 会话的专用工具绝不污染 B 会话
- 能力自我进化:模型可 register_new_tool 现场造工具,自动完成 规范审查 → 冒烟 → 分类 → 写盘入库 → 本会话立即可用;下次会话同类场景自动匹配,无需重做
工作原理
启动扫描 ─→ 暂存区 stash(toolbox//.js,vetTool 审查 + 入库冒烟)
雷达 ─→ 全局扩展工具索引(含中文触发词)
会话启动 ─→ 白名单遮罩(只露核心6工具)+ 注册 load_tool / register_new_tool + 注入工具名录
每轮请求 ─→ 触发词匹配 → tryRegister 自动加载(strong 命中≥1 / trigger 命中≥2)
会话销毁 ─→ 自动卸载全部动态工具;文件删除 → 自动注销
触发词两级匹配(v1.1.0)
除了工具自身声明的 strongKeywords / triggerKeywords,Standard ToolKit 为外部扩展插件工具提供全局意图词索引,两级触发:
| 级别 | 命中条件 | 适用词 | 示例 |
|------|---------|--------|------|
| 强触发 GLOBAL_STRONG_HINTS | 1 词即 pre-step 自动加载 | 低歧义、意图明确 | "B站画像"、"登录B站"、"分析性格" |
| 普通触发 GLOBAL_KEYWORD_HINTS | ≥2 词组合命中才加载 | 偏泛、易歧义 | "深挖"、"MBTI"、"推荐视频"(单句单泛词不触发,靠工具名录由模型自行 load_tool 兜底) |
强触发仅注册可见性、不执行——真正调用仍由模型决策,误触发代价极低;泛词降级是为避免"帮我做MBTI分析"这类通用表述误拉专用工具。
快速开始(clone 即插即用)
发布策略(v1.1.0 起):npm 包仅含插件核(index.js 框架 + skills/ + vendor/ + docs/)——工具(toolbox/)是独立资产,不随插件发布。工具来源:克隆本仓库自带开源工具集,或用 register_new_tool 现场造工具自动入库。
git clone https://github.com//dsh-standard-toolkit
cd dsh-standard-toolkit
./install.sh /path/to/dsh/runtime # Linux/macOS/git-bash
或 Windows:
install.bat D:\path\to\dsh\runtime
install 脚本幂等:复制插件到 /standard-toolkit、自动注入 cordis.yml 挂载(已挂载则跳过)、校验输出。重启 dsh bridge/runtime 后生效,日志应出现:
[standard-toolkit] 已启动 mode=auto 暂存区=N 雷达=M
mode 可在 cordis.yml 中调整:auto(默认,自动匹配)| manual(仅 load_tool 手动加载)。
使用方式
用户侧:无感。 正常跟 dsh 说话即可:
你:算一下2026-08-01到2026-08-16隔多少天
dsh:→(命中触发词,自动加载 days_between)→ 返回 15 天
模型侧:两个"钥匙"工具(名录已注入系统提示,模型可直接看到可用工具清单):
| 工具 | 作用 |
|------|------|
| load_tool(name) | 按名加载工具到当前会话 |
| register_new_tool(def) | 现场创造新工具:审查→冒烟→自动分类→写盘 toolbox//.js→立即可用 |
register_new_tool 支持参数:name / execute(源码字符串)/ parameters / output / category / triggerKeywords / strongKeywords / dependencies / smoke / injectedServices。
自定义工具
toolbox// 放工具定义文件(ESM 默认导出),目录名即分类:
export default {
name: 'days_between',
description: '计算两个日期(YYYY-MM-DD)之间相隔的自然日天数',
parameters: { type: 'object', properties: { date1: {type:'string'}, date2: {type:'string'} }, required: ['date1','date2'] },
output: { schema: { type: 'object' }, render: function(args, v){ return [{type:'text', text:v.text}] } },
execute: async function (args, exec) { / 纯逻辑 */ },
metadata: { triggerKeywords: ['算','隔','天'], smoke: { date1:'2026-08-01', date2:'2026-08-16' } },
}
规则:丢文件=增加工具(重启扫描入库);删文件=自动注销(无需重启);strongKeywords 命中 ≥1 或 triggerKeywords 命中 ≥2 即自动匹配;不满足依赖预检不加载。
安全
- 工具纳入前必过规范审查(vetTool:字段/JSON Schema/命名/服务访问白名单)
- execute 访问未注入的 agent ctx 服务(web/fs/bash/llm…)即被拒绝
- 入库冒烟只跑作者显式声明的 smoke 参数,避免误触真实副作用
- 全链路异常捕获,归一化返回,绝不阻塞请求流
测试
cd dsh-standard-toolkit && npm test # 或 node tests/verify.mjs
- verify.mjs:分类/审查/冒烟/名录逻辑
- verify-register.mjs:register_new_tool 闭环(临时目录 + v2.6 feedback/intent/归一化/危险全局)
- verify-live.mjs:真机路径——挂载真实插件 apply 驱动会话,直接调用真实 register_new_tool.execute
- demo-closed-loop.mjs:会话A自制 → 会话B自动匹配 → 调用端到端演示
更新日志
v1.1.1(2026-08-23)
- 发布策略修正(工具与插件解耦执行):npm 包仅含插件核(index.js + skills/ + vendor/ + docs/),toolbox/ 不随包发布;prepack-check 守卫反向断言(files 不得含 toolbox/)
- 说明:v1.1.0 初版误将 toolbox 一并打包发布;因发布 token 无 2FA 权限,registry 上 1.1.0(含工具版)无法撤回,以 1.1.1 修正。安装请使用 npm i dsh-standard-toolkit@1.1.1;1.1.0 仅本机自测使用
v1.1.0(2026-08-23)
- B站画像插件意图词接入:为外部扩展插件 bili_login / bili_profiler / bili_recommend 增补中文意图词(B站登录 / 画像分析 / 推荐视频等),与工具名一并进入雷达索引
- 强触发词机制:新增 GLOBAL_STRONG_HINTS 低歧义意图词表——命中 1 词即 pre-step 自动加载(仅注册可见性,不执行);偏泛词(深挖 / MBTI / 推荐视频 / 扫码登录)降级到关键词提示表,需 ≥2 词命中才触发,控制误触发
- 本地工具管理:新增本地专用工具 toolbox/custom/med_ppt.js(医学 PPT 生成,本机 python-pptx 环境依赖),与 bili_summary.js 同样例:不进公开仓库、不进 npm 包(.gitignore + files 白名单双重排除),本机照常加载
- 发布策略调整(工具与插件解耦):npm 包改为仅含插件核(index.js + skills/ + vendor/ + docs/),toolbox/ 不再随包发布——工具是独立资产(含本机专用工具与个人环境依赖),不混入公开插件包;prepack-check 守卫同步反转(断言 files 不得包含 toolbox/)
v1.0.2(2026-08-19)
- npm 发包通道修复(prepack-check 发版守卫、files 白名单校验),npm test 全绿(37+32+25+demo)
- v2.6:register_new_tool 增强——intent 骨架 / 扁平 schema 归一化 / dryRun 闸门 / 结构化 feedback / 危险全局拦截;新增作者指南 SKILL skills/tool-authoring
v1.0.1(2026-08-17)
- 修复 repository 元数据(清除 npm init 模板占位残留),补 license/repository/homepage
- 本地专用工具 bili_summary.js 移出公开仓库
文档
- 使用说明书:dsh-standard-toolkit-使用说明书
- 设计文档:dsh-standard-toolkit-design-final
License
MIT