DeepSeek Harness 插件:dsh-audit-mode 独立代码审计模式

前言

DeepSeek Harness (DSH) 采用插件化架构,允许通过扩展模块增强核心能力。在智能体开发与调试过程中,需要独立、持久且可干预的代码审计机制,以确保任务执行的安全性与合规性。dsh-audit-mode 正是为解决这一需求而设计,它作为 DSH 的第五种预设模式,提供了独立的 Codex 审计流程与人工复核入口。

插件简介

dsh-audit-mode 是由 yhfgyyf 维护的一个 DSH 预设插件,核心版本为 0.6.1。它通过独立的持久化审计机制,结合可配置的审查者后端(Codex、Claude Code 或 DSH LLM),为 DSH 会话提供人工批准的修复循环与安全暂停能力。

核心功能

  • 第五种预设模式:预设 ID 为 audit,可在 TUI 或 Web 界面中选择。
  • 独立审查架构:运行两个隔离的审查者角色(总结者与审计员),默认使用 Codex,支持切换至 Claude Code 或 DSH LLM。
  • 持久化存储:审查历史与状态保存在侧边车文件(Sidecar)中,路径为 ${DSH_HOME}/audit/sidecars/<sessionId>.json。
  • 双重交互界面:提供 Web Dock Strip 与 TUI 独立渲染块,支持实时控制。
  • 人工干预循环:支持 warning 和 critical 两种审查结果,前者允许继续运行,后者触发暂停并暴露修复能力。
  • 兼容性:兼容标准模式和 Cordis 模式的自动路由。

安装与启用

插件通过 pnpm 安装,需在 DSH 的 Web/TUI 通用配置路径下执行。

  1. 进入插件目录:
    cd ~/.dsh/profiles/web
  1. 安装核心插件与推荐的渐进式工具发现包:
    pnpm add dsh-audit-mode@github:yhfgyyf/dsh-audit-mode
    pnpm add dsh-progressive-tools@github:yhfgyyf/dsh-progressive-tools
  1. 将安装的 bundles 添加到 package.json 的 dsh.profile.bundles 字段中,并重启该 Profile。

典型用法

启动会话后,使用以下命令或操作进行审计控制。

启动模式:
* 命令行:--preset audit
* Web 界面:在预设芯片中选择 audit
* 会话内:/preset audit

命令行指令:
* /audit status — 查看当前轮次、间隔、最近裁决及暂停状态。
* /audit now — 强制执行一次审计(不等待自动间隔)。
* /audit history — 查看侧边车中的审计历史记录。
* /audit accept [audit-id] — 接受指定的修复方案(可编辑后执行)。
* /audit resume — 恢复非关键审查失败或手动暂停的会话。

TUI 操作:
* a — 执行修复方案(不变更)。
* e — 编辑修复方案并执行。
* c — 在暂停状态下复制反馈内容。
* r — 恢复非关键暂停。
* Esc / Ctrl+C — 停止当前工作。

配置审查者后端

在 Profile 的 cordis.patch.yml 中配置 audit-bundle 行。未配置时默认使用 Codex。

默认 Codex 配置示例:

- id: audit-bundle
  config:
    reviewer: codex
    binary: codex
    args: [app-server, --stdio]
    models:
      summarizer: { model: gpt-5.6-luna, effort: medium }
      auditor: { model: gpt-5.6-sol, effort: max }

Claude Code 配置示例:

- id: audit-bundle
  config:
    reviewer: claude-code
    claudeBinary: claude
    claudeArgs: []
    models:
      summarizer: { model: haiku, effort: medium }
      auditor: { model: opus, effort: max }

DSH LLM 后端配置示例:

- id: audit-bundle
  config:
    reviewer: dsh
    dshProvider: deepseek-official
    dshMaxTokens: 4096
    models:
      summarizer: { model: deepseek-v4-flash, effort: off }
      auditor: { model: deepseek-v4-flash, effort: high }

行为与限制

  • 执行频率:首次审计需 60 秒,后续每 3 步或 3 分钟执行一次,最小间隔 60 秒。异常情况会在下一个安全边界审计。
  • 失败处理:连续 3 次审查失败(不可达、超时、格式错误)将导致会话暂停。
  • 最终审计:当会话销毁时自动运行一次最终审计。
  • 安全限制:插件不会调用 session.delete,仅通过 session/disposed 事件监听会话销毁。
  • 路由限制:自动路由仅支持 standard / code / minimal / cordis 四种模式。

远程 API

Web 端提供了以下 API 接口供第三方调用:

方法 路径 参数
GET /api/audit/snapshot ?session=<id>
GET /api/audit/watch ?session=<id> (SSE 事件)
POST /api/audit/request-now { sessionId, final? }
POST /api/audit/accept { sessionId, auditId?, editedText? }
POST /api/audit/resume { sessionId }

注意事项

  • 依赖版本:插件需要 DSH 版本 0.1.3-alpha.2。
  • 运行权限:插件以当前 DSH 进程的权限运行,安装前应检查源码与许可证。
  • 生态说明:本插件属于社区目录项目,与 DeepSeek / 幻方无官方从属关系。

总结

dsh-audit-mode 通过独立的审查流程和人工批准机制,为 DSH 智能体提供了可控的代码审计能力。它支持灵活的后端配置、持久化的审查记录以及 Web/TUI 双端交互,适合需要在生产环境中引入安全审计流程的开发者使用。

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

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

小夜