前言¶
DeepSeek Harness (DSH) 采用插件化架构,一切皆插件。在开发智能体或构建企业级应用时,需要在工具调用前增加安全与合规控制。dsh-approval-flow-poc 插件在官方的 tools/pre-execute 扩展点上实现了一个最小化的企业审批策略层。它负责对工具调用进行风险分类,根据预设策略决定是放行、拦截还是请求人工审批,并生成脱敏的审计日志。
核心能力¶
该插件基于工具名称和脱敏后的参数摘要,对工具调用进行风险评估,支持将风险分为低、中、高、critical 四个等级。它实现了三种基础策略:allow(放行)、deny(拦截)和 requireApproval(请求审批)。
在审计方面,插件仅记录脱敏摘要、策略决定和最终错误状态,不包含原始参数,以平衡安全性与隐私。当策略需要审批时,插件使用 DSH 原生审批通道,提供可注入的 ApprovalTransport 接口以及用于本地调试的 TTY transport。
安装与启用¶
通过 npm 包管理器安装插件到 Web profile:
npx @deepseek-ai/dsh plugin --profile web add github:lasoloryan/dsh-approval-flow-poc
安装完成后,执行配置检查以确认插件已生效:
npx @deepseek-ai/dsh --profile web --dump-config
在输出结果中,应能看到如下配置项:
- id: approval-flow-policy
name: dsh-approval-flow-poc
配置与策略¶
插件提供了三套预设策略,分别适用于不同的场景。切换预设时,需在 profile 的 cordis.patch.yml 中覆盖完整配置。注意,DSH 的 patch 对同一行的 config 是整体替换,而非深度合并,因此覆盖时必须写全所有字段。
预设策略对照表:
| 预设 | low | medium | high | critical | 适用场景 |
|---|---|---|---|---|---|
developer |
委托/允许 | 委托/允许 | 人工审批 | 拒绝 | 本地开发 |
production |
委托/允许 | 人工审批 | 人工审批 | 拒绝 | 预生产或受控运行 |
strict |
委托/允许 | 人工审批 | 拒绝 | 拒绝 | 高敏感演示 |
配置示例:
- id: approval-flow-policy
config:
preset: production
auditPath: .dsh-approval-flow/audit.jsonl
approvalTimeoutMs: 45000
localPrompt: false
include: []
exclude: []
注意事项¶
这是一个非官方的社区实验项目,与 DeepSeek AI 无隶属或背书关系,不提供生产环境的安全承诺。
功能边界:
* 不提供 SSO(单点登录)、RBAC(基于角色的访问控制)、多级会签、远程 Webhook 等高级功能。
* 不提供不可篡改日志或合规认证。
* DSH 目前处于 developer preview 阶段,升级 DSH 版本后,可能存在不兼容改动,需重新执行配置检查和测试。
总结¶
该插件为 DSH 开发者提供了一个落地的审批策略原型,适合需要快速实现基础工具调用控制与审计的场景。更多细节可参考项目目录页或 GitHub 仓库。