dsh-context-mode

DSH PLUGIN记忆与知识

仓库 ztc1522021381/dsh-context-mode

记忆与知识 L4 · 沙盒安装通过 安全审查:低风险 可信度:银 可安装插件
安装这个插件

dsh-context-mode 是 ztc1522021381 维护的 记忆与知识 类 DSH 可安装插件, 仓库为 ztc1522021381/dsh-context-mode,许可证 MIT。 下面按「装什么、怎么装、验没验过、跑起来要注意什么」逐项列出。

一句话选型结论

按资料字段整理

dsh-context-mode 是记忆与知识类的 DSH 可安装插件,验证等级 L4 · 沙盒安装通过,安全审查为低风险,有可直接复制的安装命令。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类记忆与知识 收录类型可安装插件 验证等级L4 · 沙盒安装通过 安全审查低风险
验证等级 L4 L4 · 沙盒安装通过
GitHub 星标 0 复刻 0 · 未关闭 issue 0
最近更新 2026-10-26 创建于 2026-10-26
README 6.0 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add github:ztc1522021381/dsh-context-mode
  1. 1
    确认版本与运行环境

    仓库没有标注兼容版本与 Node.js 要求,先确认你的 DSH 版本能装,再继续。

  2. 2
    执行安装命令

    在 DSH 里执行上面的命令;多包仓库要注意区分具体子包名,别装错包。

  3. 3
    确认已挂载

    用 dsh plugin list 查看列表里是否出现这个插件,出现即挂载成功。

  4. 4
    试跑并检查权限

    加载后跑一个最小用例,确认它能正常工作;同时看它申请了哪些文件、命令或网络权限。

兼容 DSH 版本未标注版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名未发布到 npm可用 npm view 查看包信息

能做什么

记忆与知识
字段来自项目仓库与公开索引,中文说明由本站标注

适用场景

记忆

上游标签

ai-coding-agentcontext-modecontext-windowdeepseek-harnessdsh-pluginmcp

验证等级与安全审查

L4 · 沙盒安装通过
自动化流程结论,不是人工审核
验证等级L4 · 沙盒安装通过安装命令在隔离沙盒内真实执行成功,无依赖错误
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度活跃按仓库活跃度与最近更新时间给出
可信度银综合仓库活跃度与验证结果

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 验证等级 L4:在沙盒里真实装过,依赖能装上,不是纸面声明。
  • 静态安全审查为低风险,没有发现明显可疑行为。
  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有声明 Node.js 版本要求,版本不匹配可能装不上。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在记忆与知识场景里给 DSH 补能力的人。
  • 想装完就能用、不想自己排依赖的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

  • 只使用 DSH 官方内置能力、不接受第三方插件的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
dsh-context-mode当前 L4 · 沙盒安装通过 低风险 0 未标注 有
ruflo L3 · 安装规范通过 低风险 7.4 万 未标注 无
OpenViking L3 · 安装规范通过 低风险 3.9 万 未标注 无
WeKnora L4 · 沙盒安装通过 低风险 3.3 万 未标注 有
distilly L4 · 沙盒安装通过 低风险 2.5 万 未标注 有
EverOS L4 · 沙盒安装通过 低风险 1.3 万 未标注 有

仓库档案

记忆与知识
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方ztc1522021381仓库 dsh-context-mode · 默认分支 main
分类记忆与知识memory
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言未标注仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue0 / 0 / 0收录时的数值,非实时
创建 / 更新2026-10-26 · 2026-10-26最后推送 2026-10-26
本站收录2026-10-30首次进入本站目录的时间

README 全文

6.0 KB
作者原文,中文版优先;只做安全转义,不改内容

dsh-context-mode

context-mode 的 DeepSeek Harness 适配层。

context-mode 官方支持 17 个平台,DSH 不在其中。这个插件把它的能力搬到 DSH 的
宿主 seam 上,但不是照搬 Claude Code 的 hook 协议 —— 那条路在这个 harness
上只能做到"拦下来告诉模型换工具"。DSH 有一条更强的缝。

两级策略

层级 时机 手段 判据
Tier 1 — deny 执行前 tools/pre-execute 返回 { kind: 'deny', reason } 这件事根本不该由宿主工具做
Tier 2 — truncate 执行后 tools/post-execute 返回 { kind: 'accept', content } 这件事必须跑,但输出不该进上下文

为什么是两级,不是一级

tools/pre-execute 只支持 deny / allow / ask,且传入的 exec.arguments 是
deepFreeze 过的(dsh-tools 的 createExecution),改不了写入参。deny 的代价是
工具根本没跑。

对 curl https://x 这类命令,这是对的 —— 替代品 ctx_fetch_and_index 是完整
超集(还顺带索引,可事后检索),拦掉零损失。

但对 npm test / git log / cat big.log,这是错的。这些命令必须跑,输出有
真实价值;拦下来模型就什么都得不到了。而它们的输出恰恰是最容易灌满上下文的东西。

Tier 2 怎么做

tools/post-execute 的 accept 分支支持 { kind: 'accept', content } ——
调用成功,但模型看到的内容被整段替换。工具照常执行,跑完量一下渲染后
content 有多大,超限就把模型看到的内容换成摘要:

context-mode: pwsh produced 29.3 KB of output, which was truncated before it
reached your context window. The full output still exists — re-derive what you
need without pulling it in:

You ran a shell command. Call mcp__context_mode__ctx_batch_execute(commands:
[{label, command}], queries: [...]) to run it and get a searchable index back, or
mcp__context_mode__ctx_execute(language: "shell", code) to pipe/filter it yourself.

General pattern: call mcp__context_mode__ctx_execute(language: "javascript", code)
to read and process the source in the sandbox, and console.log() only the answer.

这是 context-mode "98% 节省"的本质:不是不让跑,是跑了但不进上下文。
而且不需要猜输出多大 —— 跑完量一下就知道。失败的调用(isError)不动,
错误信息本来就该让模型看见,而且通常很短。

默认分工

Tier 1 (deny)     : web_fetch
+ pwsh 里的 curl/wget、内联 HTTP、构建工具
Tier 2 (truncate) : pwsh, read, grep, glob     (阈值 20 KB)

pwsh 同时出现在两层,但拦的东西不同:Tier 1 拦 curl/inline-HTTP/build,
其余全部放行给 Tier 2。

路由块

除了拦截,插件还在系统提示里注入一段 context-mode — MANDATORY routing rules,
内容对齐 context-mode 的 configs/claude-code/CLAUDE.md:Think in Code 范式、
工具选择顺序、并发批处理、会话连续性。工具名前缀从 ctx.tools 的真实注册表探测,
不硬编码 —— 你的 serverName 叫 ctx 还是 context-mode 都能对上。

安装

# 1. context-mode 本体(MCP server)
npm install -g context-mode

把这个包放进 profile:

cp -r dsh-context-mode ~/.dsh/profiles/desktop/_local-pkgs/

编辑 ~/.dsh/profiles/desktop/package.json,加依赖和 bundle:

{
"dependencies": { "dsh-context-mode": "file:./_local-pkgs/dsh-context-mode" },
"dsh": { "profile": { "bundles": ["...", "dsh-context-mode"] } }
}

cordis.patch.yml 随 bundle 一起应用,里面已经有两行:挂 MCP server、挂适配层。

重启 DSH。

路径要对

cordis.patch.yml 里的 command / args 必须是绝对路径,且指向真正的入口
脚本,不是 npm 的 .cmd shim
:

command: 'C:\Program Files\nodejs\node.exe'
args:
- 'C:\Users\\AppData\Roaming\npm\node_modules\context-mode\cli.bundle.mjs'

仓库里默认写的是 REPLACE_ME\... 哨兵值 —— 拿到手第一件事就是跑 npm root -g,
把结果填进去。两个原因:DSH 的 ACP 层硬校验 command 是绝对路径;
StdioClientTransport spawn 时不带 shell: true,Windows 上跑不了 .cmd
(ENOENT)。failOnStartupError: false 保证填错也不挡 DSH 启动,只是没有
ctx_* 工具 —— 届时看日志里的 context-mode MCP tools not found yet 警告。

配置

- id: context-mode
name: dsh-context-mode
config:
enabled: true
denyTools: [web_fetch]
truncateTools: [pwsh, read, grep, glob]
maxResultBytes: 20000      # Tier 2 阈值
minCommandBytes: 0         # 短命令跳过 Tier 1 判定
readThresholdBytes: 50000  # read 的 Tier 1 提醒线(Tier 2 仍截留)
interceptSubagent: false
sectionOrder: 3090         # MCP_SERVERS 是 3100
serverName: ''             # 留空 = 自动探测

enabled: false 一行回到原生行为,MCP server 仍挂着。

测试

node selftest.mjs          # 86 个用例:纯路由规则,无依赖
node selftest.mjs -v

# 插件形状探针(需要 DSH runtime,schemastery 在那里解析)
node probe-plugin.mjs      # 53 个用例:两级行为、阈值边界、装配与卸载

已知限制

  • Tier 1 不能改写入参 —— exec.arguments 是深冻结的。这是 DSH 的类型设计,
    不是疏漏。绕开它的办法就是 Tier 2:让工具跑完,再换掉模型看到的内容。
  • 权限体系不互通 —— context-mode 在 Claude Code 上读 .claude/settings.json
    的 permissions.deny。DSH 用自己的权限预设,不读那个格式。
  • Tier 2 只按字节数判,不判断内容是否有用。20 KB 的 git diff 和 20 KB 的
    编译日志一视同仁。要更精细就给单个工具调低 maxResultBytes。

许可

MIT。context-mode 本体是 Elastic License 2.0,与本适配层无关。

常见问题

6 问
答案由本站依据条目字段整理,不引用上游原文
dsh-context-mode 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add github:ztc1522021381/dsh-context-mode` 即可。

dsh-context-mode 的验证等级是什么意思?

L4 · 沙盒安装通过。安装命令在隔离沙盒内真实执行成功,无依赖错误

dsh-context-mode 安全吗?

低风险。

dsh-context-mode 装之前要先确认什么?

先看它会读写哪些文件、执行哪些命令、连接哪些网络地址;验证等级只说明装得上、跑得起来,不等于安全。涉及密钥或系统权限的,建议先在隔离环境试装。

dsh-context-mode 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

同名或近似条目

2 条
不同作者的仓库分开列,请确认你要装的是哪一个
记忆与知识
按星标排序,可作替代方案

ruflo

ruflo

L3 · 安装规范通过 7.4 万 星

OpenViking

OpenViking

面向 DeepSeek Harness 的 OpenViking 记忆与上下文插件:pre-step 自动召回与画像注入、会话捕获、`vik

L3 · 安装规范通过 3.9 万 星

WeKnora

WeKnora

把 WeKnora 知识库接入 dsh 的四个只读工具:列出知识库、混合检索原文片段、按顺序还原单篇文档,以及直接取用 WeKnora 自己

L4 · 沙盒安装通过 3.3 万 星

distilly

distilly

Distilly — Distill how they think into reusable Skills for any Agent o

L4 · 沙盒安装通过 2.5 万 星

EverOS

EverOS

L4 · 沙盒安装通过 1.3 万 星

MemOS

MemOS

L4 · 沙盒安装通过 1.2 万 星

ztc1522021381 的其它插件

2 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 —。