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

沙箱上下文模式 chimneyQ/dsh-mcp-context-mode

DeepSeek Harness
chimneyQ16 天前有提交已提供中文文档扫描:无法判定

把重活挪出对话预算,只留结论与命中片段

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

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

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

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:待复验
是什么
dsh 原生插件 · chat
装得上吗
曾在 dsh 0.2.0-rc.2 下真实安装成功,但当前 dsh 已更新至 0.2.1-rc.5,本站尚未在新版下复验
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 16 天前
档位由哪些信号合成

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

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
⚪ 扫描:无法判定尚无人工评估
展开查看扫描说明与证据 ↓

已尝试扫描但取不到可分析的源码:仓库或包不存在、已删除,或为非 JS/TS 实现、未随包发布源码。无法判定,不代表安全。

  • · 取源不可用(Error: github tarball HTTP 404 @ https:
  • · api.github.com
  • · repos
  • · chimneyQ
  • · dsh-mcp-context-mode
  • · tarball)
扫描于 2026/10/31(1 天前)

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

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

DeepSeek Harness 插件包:原生 ctx_* 沙箱工具(无需 MCP 子进程)、路由闸门、修复后的 HTTPS 抓取,以及会话上下文占用上报。

README

由 DeepSeek 最新模型翻译生成
dsh-mcp-context-mode 给 DeepSeek Harness 一套能在沙箱里跑代码的工具、一个可检索的本地知识库,以及一道把大块输出挡在对话之外的路由门禁。 全部以普通 ctx_ 工具注册在宿主进程内:没有子进程、没有 JSON-RPC 一跳、工具名也没有 mcp__ 前缀。 它有什么用 对话为工具返回的每一个字节付费,而且整个会话期间一直在付。这个插件把重活挪出这份预算: - 只取结论,不读原文:在沙箱里跑代码,只打印答案 —— 原始字节根本不进对话。 - 归档代替粘贴:大块材料先进本地全文索引,需要时只取命中的片段。 - 抓取而不淹没:把网页取进索引,而不是取进对话。 - 看清预算花在哪:随时查当前会话的上下文占用构成。 工具 默认注册 10 个工具,外加一个上下文报告。ctx_upgrade 存在但默认关闭。 | 工具 | 作用 | | ctx_execute | 在沙箱里运行代码(JavaScript、TypeScript、Python、shell),只有你打印的内容会回来。 | | ctx_execute_file | 对文件跑代码,文件本身的内容不进对话。 | | ctx_batch_execute | 一次跑多条命令,每份输出自动入索引,只返回与你问题匹配的段落。 | | ctx_index | 把内容存进本地全文(FTS5)知识库。
展开完整文档(README 剩余 1 节)
dsh-mcp-context-mode

给 DeepSeek Harness 一套能在沙箱里跑代码的工具、一个可检索的本地知识库,以及一道把大块输出挡在对话之外的路由门禁。

全部以普通 ctx_ 工具注册在宿主进程内:没有子进程、没有 JSON-RPC 一跳、工具名也没有 mcp__ 前缀。

它有什么用

对话为工具返回的每一个字节付费,而且整个会话期间一直在付。这个插件把重活挪出这份预算:

- 只取结论,不读原文:在沙箱里跑代码,只打印答案 —— 原始字节根本不进对话。
- 归档代替粘贴:大块材料先进本地全文索引,需要时只取命中的片段。
- 抓取而不淹没:把网页取进索引,而不是取进对话。
- 看清预算花在哪:随时查当前会话的上下文占用构成。

工具

默认注册 10 个工具,外加一个上下文报告。ctx_upgrade 存在但默认关闭。

| 工具 | 作用 |
| ctx_execute | 在沙箱里运行代码(JavaScript、TypeScript、Python、shell),只有你打印的内容会回来。 |
| ctx_execute_file | 对文件跑代码,文件本身的内容不进对话。 |
| ctx_batch_execute | 一次跑多条命令,每份输出自动入索引,只返回与你问题匹配的段落。 |
| ctx_index | 把内容存进本地全文(FTS5)知识库。 |
| ctx_search | 检索知识库;多个问题可合并成一次调用。 |
| ctx_fetch_and_index | 抓取 URL 并入索引,只回一小段预览。 |
| ctx_stats | 本会话省了多少:多少字节没进上下文、相当于省下多少成本。 |
| ctx_doctor | 自检:运行时、存储、SQLite/FTS5、版本。 |
| ctx_purge | 永久删除已索引内容(按会话或整个项目)。 |
| ctx_insight | 在浏览器里打开配套的分析看板。 |
| ctx_context_report | 本会话上下文占用:总量、分类构成、压缩建议,以及本插件自己的节约台账。只读 —— 它重放会话日志,不产生任何模型调用。 |

除了工具,还有一道路由门禁在调用执行前介入:curl 与 wget 直接拦下(它们的设计就是整页塞进对话),长命令与超大文件整读会被引导改用上面的工具,另有少量白名单零摩擦放行。

安装

直接从仓库安装:

dsh plugin --profile desktop add github:chimneyQ/dsh-mcp-context-mode

pnpm 默认不允许 git 来源的包执行安装脚本,所以第一次会中断,并在报错里点出两个依赖和要改的文件。把下面内容写进 <DSH_HOME>/profiles/desktop/pnpm-workspace.yaml,再执行一次同样的命令:

allowBuilds:
context-mode: true
better-sqlite3: true

如果你手上是本地目录,同一条命令换成路径即可:

dsh plugin --profile desktop add D:\path\to\dsh-mcp-context-mode

然后完全重启 DeepSeek Harness,新会话里即可使用这些工具。

怎么用更划算

| 场景 | 比自己读进来更好 |
| 要分析大日志、CSV、JSON | ctx_execute_file —— 在沙箱里解析,只打印结论 |
| 多条命令输出需要对比 | ctx_batch_execute 配 queries —— 一次往返完成收集与筛选 |
| 要引用长文档或网页 | ctx_fetch_and_index,再用 ctx_search 取所需段落 |
| 之后可能还要用的材料 | ctx_index 存一次,ctx_search 按需取 |
| 想知道上下文被什么占满 | ctx_context_report |

唯一的例外是要编辑文件:那种情况仍应使用宿主自带的文件工具,因为它们需要精确的原始字节。

配置

所有可调项都在插件的 Config 里,写在 cordis.patch.yml 即持久生效:

| 键 | 默认 | 说明 |
| storageDir | '' | 知识库根目录;留空 = <DSH_HOME>/context-mode |
| enginePath | '' | 显式指定引擎入口;留空则自动解析 |
| caPemPath | 'auto' | TLS 信任源:'auto' 生成 PEM 到 storageDir/ca;绝对路径直接用;'' 关闭 |
| routing | true | 路由门禁总开关 |
| denyCurlWget | true | 硬拦 curl/wget |
| bashNudgeMinCommandBytes | 4096 | 长命令引导阈值(字节) |
| maxReadBytesBeforeAsk | 51200 | 大文件整读引导阈值(字节) |
| contextReport | true | 是否注册 ctx_context_report |
| compressNudgeTokens | 120000 | 占用提示阈值(tokens) |
| trustedReadBasenames | 4 项 | 不受整读引导限制的文件名 |
| tools. | 除 upgrade 外均为 true | 逐工具开关 |

校验

仓库内 SHA256SUMS.txt 描述随仓库分发的字节。在仓库根目录执行:

node -e "const fs=require('fs'),c=require('crypto');for(const l of fs.readFileSync('SHA256SUMS.txt','utf8').split(/\r?\n/)){if(!l.trim()||l.startsWith('#'))continue;const [h,f]=l.split(/\s+/);console.log((c.createHash('sha256').update(fs.readFileSync(f)).digest('hex')===h?'OK ':'BAD ')+f)}"

离线自检,36 项断言:

npm ci
node smoke.mjs

已知边界

- 路由门禁是引导式的:有审批通道时会询问,没有时调用照常进行。它不是安全边界。
- tls.setDefaultCACertificates 是进程级副作用,设 caPemPath: '' 可关闭。
- 未接会话续命/蒸馏;需要长期保留的内容请显式用 ctx_index。

许可

本仓库的插件代码为 MIT(见 LICENSE)。

它依赖一个第三方运行时引擎,该引擎不由本仓库分发:由你的包管理器安装、保持未修改,遵循其自身的 Elastic-2.0 许可。上下文占用报告借鉴了 dsh-context(Apache-2.0,作者 bowenliang123)的 API 用法,未复制其代码。
预览分享卡片长什么样 ↓chimneyQ/dsh-mcp-context-mode
分享 · DeepSeek Harness Hub
chimneyQ/dsh-mcp-context-mode

把重活挪出对话预算,只留结论与命中片段

回到顶部