dsh-model-redactor:DeepSeek Harness 模型可见内容脱敏插件

DeepSeek Harness (DSH) 采用插件化架构。在开发或调试智能体时,模型经常在 agent/pre-step 阶段接收包含 API 密钥、令牌等敏感信息的输入。这些数据可能被记录到会话日志中,带来安全风险。dsh-model-redactor 插件的作用是在这些敏感数据进入会话日志或模型请求之前,将其重写为脱敏版本。

该插件由 zerodegress 维护,旨在拦截并重写模型可见的输入流。它专注于在数据到达模型或持久化日志之前进行处理,确保敏感凭证不会泄露。

核心功能

插件在两个关键阶段介入数据流:输入和输出。

  1. 输入脱敏 (agent/pre-step)
    在用户消息进入会话日志和模型请求之前,插件会重写这些消息的脱敏副本。已记录的工具结果也会通过会话表面替换进行脱敏,同时保留原始的 append-origin 事件在持久化日志中。

  2. 输出脱敏 (llm/stream)
    在代理循环记录之前,插件会移除文本、推理过程和工具调用参数的增量。这确保了日志和未来的模型上下文保持一致。同时,block-end 有效载荷也会被脱敏,防止组装好的助手消息重新引入密钥。

  3. 内置规则
    插件内置了一套固定的脱敏规则,覆盖常见格式,包括 OpenAI 风格的 sk-、Bearer、Basic 认证头、GitHub 和 Slack 令牌、JWT、赋值模式、PEM 私钥块以及 AWS 的 AKIA 访问密钥 ID。

安装与启用

安装需要向 Cordis 补丁添加一个条目。在配置文件中添加以下行:

- insert:
    - id: dsh-model-redactor
      name: dsh-model-redactor
      config:
        enabled: true

该包会附带 cordis.patch.yml 文件,并声明 dsh.bundle.patch 用于捆绑配置文件。

配置与用法

基本配置

通过 replacement 字段指定替换文本,默认为 [REDACTED]。替换文本长度需在 1 到 128 个字符之间,且不能匹配内置的密钥模式。

自定义规则

  • customRegexes: 用于定义额外的正则表达式规则。
  • customWords: 用于定义精确的单词匹配规则。

限制说明

  • 内置规则是固定的且无法禁用。
  • 替换文本不能与任何内置的密钥模式匹配。

适用场景与注意

该插件适合需要在 DSH 环境中处理敏感数据的开发者。使用前应检查源代码和许可证(MIT)。插件以当前 DSH 进程权限运行,请确保来源可信。

通过在模型可见的上下文中实施脱敏,该插件帮助维护安全的日志记录和上下文管理。

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

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

小夜