
Company News
Socket Joins New OpenJS Program to Fund Node.js Security Work
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.
dsh-plugin-context-trim
Advanced tools
会话注入门控:给 DeepSeek Harness (dsh) 加一个会话级上下文裁剪闸门,按会话取消/恢复插件贡献的 skill、tool、系统提示词段落——3 条影子通道、5 条本地路由、零依赖零配置。Per-session injection gate for DeepSeek Harness (dsh): trim skills, tools and prompt sections per session. Zero-config, zero dependencies.
DeepSeek Harness 生态里第一个「按会话裁剪上下文注入」的插件:写 NoneBot 时用不上 dsh 插件开发知识库,纯聊天时用不上生图工具——本插件让你按会话决定向模型注入哪些 skill、tool、系统提示词段落,其余的在本会话内对模型完全不可见。
3 条影子通道(skill / tool / 段落)· 5 条本地路由 · 0 依赖 · 0 配置 · 不改核心包
装完你会看到:
dsh plugin --profile web add dsh-plugin-context-trim
或从 GitHub 安装:
dsh plugin --profile web add github:Pasumao/dsh-plugin-context-trim
源码安装(本地开发 / 调试):
git clone https://github.com/Pasumao/dsh-plugin-context-trim.git
cd dsh-plugin-context-trim
npm install
# 以 link: 方式挂载进 profile(与 dsh.profile.bundles 同机制)
装完重启 dsh(launcher)并刷新浏览器。包自带 cordis.patch.yml 挂载行,经 dsh.profile.bundles
自动应用,无需手动改任何配置。host 侧代码改动需重启 dsh;client 侧改动浏览器强刷即可。
dsh-plugin-nonebot-kb 整组),
底部实时显示「已裁剪 N 项,预计每步请求减少约 X 字符」;| 功能 | 说明 |
|---|---|
| 按会话裁剪 skill | 同名影子技能以 modelInvocable:false 压制原技能:<available_skills> 目录消失,skill 工具按名加载也被拒 |
| 按会话裁剪 tool / MCP 工具 | tools.restrict({ deny }) 逐工具隐藏(MCP 工具天然覆盖),未知名自动跳过防竞态 |
| 按会话裁剪提示词段落 | 同名空文本 section/context 影子,渲染层自动丢弃;无法归属插件的段落默认锁定防误伤 |
| 树表弹窗 | 按插件聚合、三态勾选、组行批量设置且跳过锁定行、类型标识配色随主题自适应、可拖动/缩放 |
| 关键能力保护 | 文件读写 / 控制台 / 技能总闸带 ⚠ 标识,取消需确认,恢复免确认 |
| 会话锁定与强制更改 | 会话已开始(落盘 ≥1 步)后只读锁定;「强制更改」确认后解锁并热生效(下一 step) |
| 新会话默认模板 | 「存为默认 / 恢复默认」管理工作区级模板,每个新会话自动套用 |
| 状态点 | 绿=全量注入 / 橙=有裁剪 / 灰锁=已锁定;未锁定时按钮以品牌强调色点亮 |
本插件零配置(zero-config):安装即用——没有密钥、没有账号、没有任何必填字段。
选择数据自动持久化在 $DSH_HOME/dsh-plugin-context-trim.json(UTF-8 无 BOM,原子写入),
一般无需手工编辑;HTTP 路由有多层安全加固:仅接受本机回环来源(remoteAddress 为空一律拒绝)、
校验 Host 头(仅允许 127.0.0.1/localhost 且端口匹配)、请求体上限 2MB,仅服务本机 GUI。
对被取消的条目,插件只在 agent 自己的作用域层叠加同名「影子条目」压制全局原条目, 注册表里的原条目一个字节都不动:
| 通道 | 手段 | 效果 |
|---|---|---|
| skill | agent.ctx.skills.register(同名影子, modelInvocable:false) | 目录消失 + 按名加载被拒 |
| tool / MCP | agent.ctx.tools.restrict({ deny:[name] }) 逐工具 | 模型请求看不到该工具 |
| 提示词段落 | agent.ctx.systemPrompt.section(同名, text:'') | 空文本段落被渲染层丢弃 |
注册经 agent.ctx.inject([service], …) 子插件 fiber 落在 agent 作用域层(cordis 的
agent.ctx 服务属性受 inject 白名单保护);agent 销毁时 cordis effect 自动 unwind——
零残留、零跨会话影响。重复应用按 generation token 先 dispose 上一代再重建(幂等);
影子 skill 注册前先经全局视图取完整原定义(含正文),只覆写 modelInvocable。
0.1.2-rc.1(API 均为官方文档化扩展点:ctx.skills / ctx.tools.restrict /
ctx.systemPrompt / ctx.webServer / 插槽系统)provider 时,其技能归入「运行时技能」组(归属表随版本维护)remoteAddress 拒绝)+ Host 头校验
(仅 127.0.0.1/localhost 且端口匹配)+ 请求体 2MB 上限,不暴露公网Q:取消某个插件后,之前会话里它生成的内容会消失吗? 不会。门控只影响「之后发给模型的上下文组装」,历史消息原样保留。
Q:新会话为什么是绿点?已开始的会话为什么锁住? 绿点 = 与默认行为一致的全量注入。会话一旦落盘过模型步骤(已开始),注入即锁定, 防止运行中的会话被静默改变;确需修改点「强制更改」,下一 step 热生效。
Q:想让所有新会话默认去掉知识库技能? 在任意会话里勾好,点「存为默认」——该工作区之后的新会话自动套用这套裁剪。
本插件属于 Pasumao 的 dsh 插件生态,同系列已发布插件可搭配使用:
| 插件(npm) | GitHub | 说明 |
|---|---|---|
| dsh-notify | GitHub 仓库 | Windows 原生通知 + 系统托盘 |
| dsh-plugin-choice-refresh | GitHub 仓库 | 选择增强:重新生成选项 / 更多选项 |
| dsh-plugin-dev-kb | GitHub 仓库 | 插件开发知识库(官方文档完整镜像 + 技能) |
| dsh-plugin-image-tools | GitHub 仓库 | 图片选择卡 / 回复内嵌图 / 盲模型收图 |
| dsh-plugin-table-zoom | GitHub 仓库 | 聊天长表格浮窗查看 + 一键复制 Markdown |
| dsh-plugin-windows-guard | GitHub 仓库 | Windows 环境防坑:守则技能 + 编码诊断修复 |
| dsh-plugin-workbench | GitHub 仓库 | VS Code 风格文件浏览器 + 可编辑预览 |
本系列其余插件见 Pasumao · dsh 插件;觉得好用欢迎到 GitHub 点 ⭐。
代码与文档由 AI 辅助生成(DeepSeek Harness),均经人工审查与自检验证
(npm run selfcheck:包一致性 / 乐观锁与持久化 / 影子应用幂等 / 归属表断言)。
FAQs
会话注入门控:给 DeepSeek Harness (dsh) 加一个会话级上下文裁剪闸门,按会话取消/恢复插件贡献的 skill、tool、系统提示词段落——3 条影子通道、5 条本地路由、零依赖零配置。Per-session injection gate for DeepSeek Harness (dsh): trim skills, tools and prompt sections per session. Zero-config, zero dependencies.
The npm package dsh-plugin-context-trim receives a total of 34 weekly downloads. As such, dsh-plugin-context-trim popularity was classified as not popular.
We found that dsh-plugin-context-trim demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Company News
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.

Security News
Two compromised GitHub Actions were re-enabled with malicious tags intact, exposing thousands of downstream repositories to Mini Shai-Hulud.

Research
/Security News
A malicious Firefox extension fetches its payload after installation to evade detection, steal Google session cookies, and automate account takeover.