dsh-local-diagnostics:DeepSeek Harness 的隐私优先本地诊断插件

前言

DeepSeek Harness (DSH) 采用插件化架构,通过扩展点来增强功能。在开发智能体或调试工作流时,开发者通常需要关注工具调用的耗时分布、错误类型以及整体的成功率。

dsh-local-diagnostics 是一个专为 DSH 设计的本地内存诊断插件。它通过 Harness 已公开的 Cordis 扩展点进行观察,无需修改 Agent Loop 即可收集运行状态。相比需要采集大量提示词和中间状态的通用日志方案,该插件专注于性能指标和结构化错误码,且严格遵循隐私优先原则。

插件定位

  • 名称:dsh-local-diagnostics
  • 维护者:fengyufengzi
  • 类别:admin-security
  • 许可证:MIT
  • 核心价值:隐私优先的内存诊断,用于观测 DeepSeek Harness 的运行时状态。

核心功能

插件通过以下扩展点收集数据,不写入磁盘,也不发送网络请求:

  1. 性能测量:在 tools/execute 阶段测量 dispatch 耗时,并始终调用 next(),确保诊断过程不影响主流程执行。
  2. 状态统计:在 tools/result 阶段统计最终的成功与失败情况,以及结构化错误码。
  3. 事件监控:在 session/event 阶段仅统计事件类型。
  4. 错误分类:在 agent/error 阶段仅统计错误类名。
  5. 报告生成:通过 diagnostics_report 接口返回当前 Session 的脱敏聚合报告。

隐私保证

插件在设计上排除了敏感信息的采集,确保调试过程不泄露数据:
- 不采集:提示词、消息、工具参数、工具输出、错误消息、Session ID、文件路径或凭证。

环境与安装

安装前请确保环境满足以下要求:

  • Node.js ^22.19.0 || >=24.0.0
  • pnpm 11.7.0
  • DeepSeek Harness 0.1.0-rc.6 系列

安装步骤如下:

  1. 编译并安装插件到 DSH profile:
    corepack pnpm run build
    npx @deepseek-ai/dsh plugin --profile web add .
  1. 配置插件(在 Harness 配置文件中添加):
    - insert:
        - id: local-diagnostics
          name: dsh-local-diagnostics
          config:
            maxDistinctValues: 128

典型用法

  • 触发报告:在对话中要求 Agent 调用 diagnostics_report,即可在控制台或日志中查看脱敏后的聚合诊断信息。
  • 移除插件:如需卸载,执行以下命令:
    npx @deepseek-ai/dsh plugin --profile web remove dsh-local-diagnostics

注意事项

  • 数据生命周期:统计数据仅覆盖插件本次加载之后的进程生命周期。重启或插件热重载都会清空统计。
  • 测量范围:timing 指标仅包含 dispatch 阶段耗时,不包含审批和结果渲染阶段。
  • 当前限制:第一版没有 UI 界面、文件导出功能、OpenTelemetry 集成或跨进程聚合能力。
  • API 稳定性:Harness 尚处于开发者预览阶段,插件 API 可能发生破坏性变化,建议关注源码更新。

总结

dsh-local-diagnostics 提供了一种轻量级、无网络交互的调试手段,适合在本地开发环境中快速排查工具调用性能和错误类型。开发者可以在不泄露敏感业务数据的前提下,获取结构化的运行时反馈。更多详情可参考 GitHub 仓库。

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

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

小夜