dsh-context-pack:DeepSeek Harness 上下文包插件

前言

DeepSeek Harness (DSH) 将模型可见的上下文视为会话或代理生命周期的一部分。一个仓库上下文插件应当是可检查和有边界的,而不是静默地将整个仓库倾入每个提示中。dsh-context-pack 旨在解决这个问题,提供确定性、隐私感知的仓库上下文包。

定位

这是一个由 MkaliezZ 维护的插件,提供确定性、隐私感知的仓库上下文包功能。它通过 DSH 原生命令和 API 将仓库上下文转化为结构化的、有边界的数据包,供模型步骤消费。

核心功能

插件提供以下核心能力:

  1. 命令行扫描:提供 /context-pack [repository path] 命令,执行显式、只读的扫描。
  2. 边界控制:支持基于文件数、总字节数、单文件字节数以及注入字节数的预算控制。
  3. 隐私保护:采用“失败关闭”策略排除敏感路径(如 .env、常见凭证/密钥名),并支持文本扩展白名单。
  4. 可验证性:为每文件和整包生成 SHA-256 哈希,确保上下文内容的可追溯性。
  5. 安全约束:插件运行时无网络请求,且不修改源代码。

配置与使用

插件通过 DSH 的 bundle 机制加载。在配置文件中指定包名与参数:

- id: dsh-context-pack
  name: '@mkaliezz/dsh-context-pack'
  config:
    maxFiles: 60
    maxTotalBytes: 120000
    maxFileBytes: 30000
    maxInjectedBytes: 120000

命令行调用

在 DSH 环境中执行命令:

/context-pack .

命令返回一个紧凑的收据,包含包哈希、包含文件数、源字节数和排除数。模型可见的包通过 DSH 的 agent.inject() 接口单独注入,而非直接回显在命令结果中。

API 调用

插件导出 buildContextPack 函数:

const pack = await buildContextPack('/path/to/repo', {
  maxFiles: 60,
  maxTotalBytes: 120_000,
  maxFileBytes: 30_000,
})

注意事项

在使用该插件时,请注意以下限制:

  • 非安全工具:它不是秘密扫描器或 DLP 系统,也不是沙箱。
  • Git 忽略兼容性:目前没有完整的 .gitignore 兼容性。
  • 语义排序:不提供语义相关性排名。
  • 敏感文件名覆盖:不能保证覆盖所有敏感文件名模式。
  • 持久化限制:v0.1 版本不持久化独立的上下文包生命周期记录(仅依赖 DSH 自身的命令/收件箱/会话事实)。

生态链接

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜