contract-review-plugin-dsh

August 25, 2026 · View on GitHub

面向 DeepSeek Harness(DSH)的合同深度审查插件与侧滑工作台

一套可部署到 DSH 的「合同审查自闭环」:解析合同 → 深度审查 → 出具分级报告 → 沉淀知识回灌,带侧滑工作台交互。


功能

  1. 深度审查管线(确定性 + LLM 分工,门控不撒谎) 解析 → 分类 → 立场(CP0)确认 → DAG 业务蓝图 → Playbook → Phase B(AgenticRAG 三轮检索收敛)→ Phase C 定位映射 → 报告(Markdown + 交互式 HTML)→ 门控(HTML 6/6 + 审计 Gate 1-7)→ 知识回馈。
  2. 侧滑工作台(dsh-better-sidebar 侧边 Tab) 「合同审查」+「知识库」两个 Tab:总览 / 任务 / 报告 / 过程(SVG 可拖拽 DAG 拓扑图 + 三轮对齐逐节点内容)+ 数据;任务卡回显真实成果(P0/P1/P2 + 报告)。
  3. 知识回灌:审查 → 反馈(pending_manual_review)→ 人工确认 → 回灌知识库。

目录结构

contract-review-plugin-dsh/
├── README.md                 本介绍
├── LICENSE                   MIT(套件)+ 知识库限制授权(见 NOTICE)
├── NOTICE
├── VERSION                   版本号
├── requirements.txt          Python 依赖
├── plugin/                   DSH 宿主插件与 agent preset
│   ├── ctrev-plugin.mjs      宿主插件(ctrev_* 工具 + CP0/RPC,docx 解析)
│   └── agent-preset/contract-review/
│       ├── agent.cordis.yml  agent preset 组成
│       └── preset.yml        preset 声明
├── pipeline/                 深度审查管线
│   ├── run_review_pipeline.py    编排器(解析→分类→CP0→DAG→Playbook→PhaseB→PhaseC→报告→门控→回馈)
│   ├── parse_contract.py         合同解析(Baidu PaddleOCR-VL,支持 pdf/doc/docx 等流式文档)
│   ├── build_tree.py             解析树重建(标题 ID 校验)
│   ├── build_report_md.py        报告.md(含「业务蓝图 DAG」章节)
│   ├── build_review_playbook.py  Playbook(从合同 DAG 节点生成审查任务)
│   └── config.example.yaml       Baidu 解析凭证模板(复制为 config.yaml)
├── workbench/                侧滑工作台包(dsh-contract-review-workbench)
│   ├── package.json           dsh.client 声明 + exports
│   ├── cordis.patch.yml       宿主半部挂载
│   ├── src/                   源码(host + client)
│   ├── lib/                   构建产物(client.js / index.js + 类型声明)
│   ├── postbuild-client.mjs   client 产物包 __ModuleLoader__.load
│   └── tsdown.config.ts / tsdown.host.config.ts / tsconfig*.json
└── docs/
    ├── 规则匹配机制说明.md      审查规则如何从规则库命中
    └── 解析(docx)说明.md      流式文档解析说明

快速开始

前置

1) 宿主插件(ctrev_* 工具)

# 把 plugin/ctrev-plugin.mjs 放到 ~/.dsh/plugins/ctrev/plugin.mjs
# 并在 ~/.dsh/cordis.patch.yml 增加(相对路径,勿用绝对路径):
#   - insert:
#       - id: contract-review-pipeline
#         name: ../../plugins/ctrev/plugin.mjs

2) 解析器

pipeline/ 的解析脚本(parse_contract.pybuild_tree.py)与 config.example.yaml 放到位,复制 config.example.yamlconfig.yaml 并填入 Baidu PaddleOCR-VL 凭证(config.yaml 已被 .gitignore 排除)。

3) 侧滑工作台包

# 在 ~/.dsh/profiles/web 把 workbench/ 作为本地 link 依赖并加入 bundles,pnpm install
# 重启 DSH + 硬刷新浏览器

4) 驱动一次深度审查

在 DSH 会话调用 ctrev_pipeline 工具(或按管线脚本逐步):

解析 → 分类 → CP0 确认立场 → DAG → Playbook → Phase B → Phase C → 报告 → 门控

设计原则

  • 门控不撒谎:所有数字/列表/阶段来自确定性工件;缺工件显示「缺」;未接入数据源显示「待接入/待沉淀」,绝不现场编数。
  • 数据隔离:只读管线工件;工作台状态(任务/反馈/快照)只落独立目录,不写管线数据、不未经确认写受限知识库。
  • 禁止降级:合同解析走 Baidu PaddleOCR-VL,失败即阻断,绝不降级到本地解析器。
  • 立场一致:全部风险判断、业务影响与履约保障措施从确认立场(买方/卖方等)出发。

说明

  • 本仓库不含真实合同、Baidu 凭证与知识库本体(规则/wiki/法规为受限授权资产,另行管理)。
  • 知识库(KB_ROOT)由使用方自行挂载,供管线检索。