DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Skill Toggles — DeepSeek Harness 插件(DSH Plugin)
← Plugins
S

dsh-skill-toggles

Skill Toggles

DeepSeek Harness 技能切换:支持黑名单语义技能的开关及分组配置、编辑器按钮与浮动面板、按代理提供影子技能,以及即时刷新编辑器“/”菜单

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:xiake-1/dsh-skill-toggles#7df0106a1ec448160a7a74f79fe04c836aeaf1c6
README兼容性版本
技能面板分组管理

兼容性与来源证明

Skill Toggles 以 dsh-skill-toggles 发布,当前版本为 0.3.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/10/13

版本

0.3.0stable
2026/10/13

相关插件

正在加载相关插件…

最新版
0.3.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
MIT
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/10/13
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录

相关插件

继续浏览 ui-customization 分类下经过校验的插件。

Web App@deepseek-ai/dsh-web-appdsh 浏览器界面捆绑包:位于 dsh-base 之上的 Web 补丁层,加上运行时粘合插件(提供前端 dist、Web 界面提示符、bash 运行时变量和 URL 行)Experimental Agent Team Web Profile@deepseek-ai/dsh-experimental-agent-team-web-profile用于 Agent Teams Remote 和 UI 插件的实验性 Web 配置层Ab Chartdsh-ab-chart带有绘制其调用的浏览器卡片的图表渲染工具,封装在一个可发布的插件包中Client Ui Skill Explorer@linxin666/dsh-client-ui-skill-explorerDSH 技能中心:按来源(bundled / project / user / custom / runtime)浏览已加载的技能,在 Web GUI 面板中启用或禁用、创建和删除技能。

README

dsh-skill-toggles

DeepSeek Harness 技能开关插件:黑名单语义 + 分组——所有技能默认可用,只有被"启用中的分组"显式禁用的才被过滤(生效黑名单 = 启用分组黑名单的并集)。全新安装、状态文件缺失或损坏都等于"全部启用",永不出现"装上即全消失"。

技能面板

安装

  • 插件市场:在 dshmarket 中搜索 dsh-skill-toggles,一键安装;
  • npm:
    dsh plugin --profile desktop add dsh-skill-toggles
    
  • 本地源码:
    dsh plugin --profile desktop add file:<本仓库绝对路径>
    

安装后重启 DSH(浏览器半重新加载页面即可)。卸载:dsh plugin --profile desktop remove dsh-skill-toggles(postuninstall 自动删除状态目录 <DSH_HOME>/dsh-skill-toggles/)。

使用

分组管理

  1. 打开面板:聊天输入框工具条的「技能」按钮 → 左侧悬浮面板。

  2. 分组:内置默认分组(初始全开、可编辑、不可删除);可新建/重命名/删除自定义分组,每组有自己的黑名单与启用开关——切换启用状态即整组生效/失效。

  3. 技能列表:每行开关作用于当前选中分组;支持搜索、按来源分节(插件包 / 用户 / 项目 / 自定义 / 其他,可折叠)与每节"全部禁用/全部启用"。技能被其它启用分组禁用时显示"被「××」禁用"徽标。

  4. Agent 工具:skill_toggles_list / disable / enable / enable_all / disable_all / source_set / group_create / group_delete / group_set_active(均带可选 group 参数,缺省为默认分组)。

  5. 改动生效时机:

    路径生效时机
    输入框 / 技能菜单下一次打开菜单(亚秒级)
    模型 <available_skills> 目录下一条消息(宿主"持久投影"机制,任何插件都如此)
    skill 工具立即拒绝被禁用的技能

只管 skills,不做 MCP 开关。

已知限制

  • Agent 未激活的冷会话由 preset 常驻 scope 供数,其 / 菜单可能仍显示已禁用技能,直到会话被激活(模型目录与 skill 工具不受影响)。
  • 与旧插件 dsh-skills-mcp-group-manager 互斥(两个影子 provider 叠加语义不可控),启动时检测到会打警告。
  • 重装/升级已安装 bundle 后,宿主半需要重启进程才换代码(Node 模块缓存);浏览器半无此问题。

实现要点(维护者)

  • 状态(v2):<DSH_HOME>/dsh-skill-toggles/state.json,形如 { version:2, groups:[{id,name,disabled[]}], activeGroups[] };原子写;损坏回退为"全部启用";v1 扁平文档加载时自动迁移进默认分组。
  • 过滤机制:per-agent 影子 skill provider(skill-toggles-filter,注册在 agent 层)。list() 只发射"生效黑名单 ∧ 真实存在"的条目,invocation 改写为 {modelInvocable:false, userInvocable:false},rank:0 在同层内直接胜出(文件系统根 rank 100..500);启用的技能不重发,保留原 provider 的 path 预览与正文加载。
  • 变更后 control.invalidate() 清空 skill registry 的 collect 缓存,再对每个活动会话 emit('agent-preset/selected') 使浏览器半目录缓存失效。
  • 宿主半 apply() 保持同步(Cordis 对 prototype-bearing 函数的处理决定,异步 apply 会导致进程崩溃)。

开发

node test/state.test.mjs   # 纯逻辑 + 存储往返测试
dsh-skill-toggles/
├── lib/index.js        宿主半(影子 provider、RPC、9 个工具、事件广播)
├── lib/client.js       浏览器半(输入框按钮 + 分组管理悬浮面板)
├── lib/state.js        纯状态逻辑(分组黑名单语义 + v1 迁移,单测覆盖)
├── lib/store.js        原子写状态存储
├── scripts/cleanup.mjs postuninstall 清理
├── cordis.patch.yml    安装到 profile 的配置补丁片段
└── test/state.test.mjs