mcpField
C
contract-review

contract-review

github.com/borghei文档处理1.0k78 次安装1 周前更新
代码仓库

关于 contract-review

面向法律和业务团队的合同审查技能,可按组织的立场检查协议文本。它识别条款风险并生成分级修订建议、理由和备选方案,但不能替代专业法律意见。

主要功能

  1. 01识别条款及缺失条款
  2. 02GREEN/YELLOW/RED 风险分级
  3. 03生成分优先级的修订建议
  4. 04提供理由和备选立场

适用场景

  1. 01在律师审阅前筛查商业协议
  2. 02为风险条款准备谈判方案

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/borghei/claude-skills --skill contract-review

安装后在 Claude Code 中输入/contract-review确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
clause_analysis_guide.md
negotiation_playbook.md
scripts/
contract_analyzer.py
redline_generator.py

详细介绍

⚠️ 实验性 — 此技能仅用于教育和信息目的,不构成法律建议。用户须对使用行为承担全部责任。采取任何行动前,请咨询具备资质的法律专业人士。

合同审查

自动化合同审查工具,可根据组织的审查手册分析协议,按 GREEN/YELLOW/RED 严重程度对条款风险进行分类,并生成按优先级排序的修订建议及备选立场。


目录


先澄清

审查合同前,请确认以下信息。如有任何信息未知或含糊不清,请询问,不要自行假设:

  • 您代表哪一方 — 客户/买方还是供应商/服务提供方;这会影响哪些条款对您有利,并反转每项修订建议的方向
  • 合同类型 — SaaS、服务、供应商/供货或许可;这决定标准条款基准,以及哪些缺失条款会被标记
  • 风险承受度 / 审查手册中的立场 — 组织认定哪些情况不可接受;这决定 RED 与 YELLOW 的分界,以及 Must-Have 与 Nice-to-Have 的分级
  • 交易筹码 / 价值 — 据此判断哪些修订属于不可退让的要求(Tier 1),哪些属于可交换的让步(Tier 3)

停止规则:只询问最可能改变输出的 2-3 项。如果用户说“直接起草”,则继续处理,并在审查开头列出您的假设。

工具

合同分析器

分析合同文本文件,识别条款类型、缺失的标准条款和风险指标。

# Analyze a contract file
python scripts/contract_analyzer.py contract.txt

# JSON output for pipeline integration
python scripts/contract_analyzer.py agreement.md --json

# Save analysis to file
python scripts/contract_analyzer.py contract.txt --output analysis.json --json

可检测内容:

  • 条款类型:责任限制、赔偿、知识产权、数据保护、期限与终止、管辖法律、陈述与保证、不可抗力、保密、付款条款
  • 对照基准清单检查缺失的标准条款
  • 风险指标:无上限责任、永久期限、单方赔偿、无退出选项的自动续约、宽泛的知识产权转让、无限制的审计权

风险分类:

级别含义操作
RED不可接受的风险签署前必须协商
YELLOW重大顾虑应进行协商,也可在采取缓解措施后接受
GREEN标准或有利可按现状接受

修订建议生成器

接收合同分析 JSON,并生成带有优先级分级的格式化修订建议。

# Generate redlines from analysis
python scripts/contract_analyzer.py contract.txt --json --output analysis.json
python scripts/redline_generator.py analysis.json

# JSON output
python scripts/redline_generator.py analysis.json --json

# Save redlines to file
python scripts/redline_generator.py analysis.json --output redlines.md

输出包括:

  • 优先级(Must-Have / Should-Have / Nice-to-Have)
  • 首选修订措辞
  • 每项修改的理由
  • 对方拒绝时的备选立场
  • 谈判备注

优先级分级:

级别标签说明
1Must-Have不可接受的条款;若遭拒绝则放弃交易
2Should-Have强烈偏好;应积极争取,但可协商
3Nice-to-Have可让步项;可用于换取 Tier 1-2 的成果

参考指南

条款分析指南

references/clause_analysis_guide.md

涵盖 8 种以上条款类型的深入参考资料:

  • 责任限制(上限类型、例外、间接损失)
  • 赔偿(互惠性、范围、程序)
  • 知识产权(所有权、许可、雇佣作品、反馈)
  • 数据保护(DPA、子处理方、违规通知、数据传输)
  • 期限与终止(自动续约、补救期限、过渡)
  • 管辖法律(司法管辖权、仲裁、陪审团审判放弃)
  • 陈述与保证
  • 不可抗力
谈判手册

references/negotiation_playbook.md

谈判优先级框架,包括:

  • 第 1 级:不可接受的条件和退出标准
  • 第 2 级:强烈偏好及交易策略
  • 第 3 级:可用于策略性让步的候选项
  • 红线条款格式模板
  • 常见谈判陷阱

工作流

标准合同审查
  1. 导入 -- 将合同保存为 .txt 或 .md 文件
  2. 分析 -- 使用 --json 标志运行 contract_analyzer.py
  3. 审查结果 -- 先检查 RED 项,再检查 YELLOW 项
  4. 生成红线条款 -- 对分析结果运行 redline_generator.py
  5. 确定优先级 -- 优先处理必备红线条款,并为应备红线条款准备备用方案
  6. 发送给法律顾问 -- 附上分析结果和红线条款,以供最终审查
快速风险分类
  1. 以文本模式运行 contract_analyzer.py,快速扫描
  2. 如果发现任何 RED 项:立即升级给法律顾问处理
  3. 如果只有 YELLOW 项:安排在 48 小时内审查
  4. 如果全为 GREEN:按标准审批工作流推进

故障排除

问题原因解决方案
Error: File not found合同文件路径不正确,或文件不存在验证文件路径;如果相对路径无效,请使用绝对路径
未检测到条款合同采用了特殊格式或非标准条款标题确保合同为纯文本;分析前清除 PDF 残留内容
所有条款都标记为 GREEN合同确实有利,或文本提取遗漏了关键章节手动确认输入文件中包含关键条款(责任、赔偿、知识产权)
红线条款生成器输出为空分析 JSON 中没有 YELLOW 或 RED 项确认分析 JSON 有效;如果合同已更新,请重新运行分析器
对无限责任的误报责任章节在文档其他位置提到了责任上限审查完整的责任限制章节;该工具会在每个条款边界内扫描责任上限关键词
对缺失条款的误报条款存在,但使用了非标准标题(例如,“损害赔偿上限”而非“责任限制”)分析器会检查多个标题变体;如果贵组织使用独特术语,请添加自定义别名

成功标准

  • 合同审查时间缩短 50%: 自动识别条款并分类风险,免去人工扫描。
  • 零遗漏 RED 严重级别条款: 所有无上限责任、单方面赔偿和宽泛的知识产权转让条款,都会在人为审查前被标记。
  • 红线条款生成时间不超过 2 分钟: 从分析 JSON 生成按优先级排列的红线条款文档。
  • 审查人员之间的风险分类保持一致: GREEN/YELLOW/RED 框架消除主观评估。
  • 100% 的合同均以结构化形式完成审查: 每份协议在开始谈判前都会生成条款清单和风险报告。
  • 必备事项的谈判成功率超过 80%: 第 1 级红线条款及其备用方案可提升谈判成效。

范围与局限

涵盖内容:

  • 使用关键词和模式匹配对合同条款进行静态文本分析
  • 识别 10+ 类标准商业合同中的条款类型
  • 检测风险指标:无上限责任、永久期限、单方面义务、自动续约陷阱
  • 根据标准商业合同基准检测缺失条款
  • 生成按优先级排列并包含备用立场的红线条款

不涵盖:

  • 法律建议 -- 此工具辅助审查,不能替代具备资质的法律顾问
  • 特定司法管辖区的合规要求 -- 对于监管合规(GDPR、SOC 2 等),请使用 ra-qm-team 技能
  • 合同签署或电子签名工作流 -- 不在范围内
  • 多文档交叉引用(例如,核对 SOW 与 MSA)-- 请分别分析每份文档
  • 非英语合同 -- 模式匹配仅适用于英语

反模式

反模式失败原因更好的做法
仅凭 GREEN 结果且未经人工审核就签署合同自动化分析无法发现依赖上下文的风险、含糊的措辞或特定业务方面的顾虑即使合同结果全为 GREEN,也务必在签署前由具备资质的法律顾问审核
将所有 RED 结果一视同仁有些 RED 项是结构性的交易障碍,另一些则可能只需改动一个词即可解决使用红线生成器评估每项 RED 结果所需的工作量和备选立场
跳过红线备选立场只带着首选立场进入谈判,会让策略性让步失去空间务必准备“必须坚持”的备选方案,并确定可用于交换的“最好有”事项
对提取质量差的文本进行分析PDF 转文本产生的伪影会破坏条款检测模式分析前清理文本文件:移除页眉、页脚、页码和格式伪影

工具参考

contract_analyzer.py

**用途:**分析合同文本文件中的条款类型,识别缺失的标准条款,并以 GREEN/YELLOW/RED 严重级别标记风险指标。

用法:

python scripts/contract_analyzer.py <contract_file> [--json] [--output FILE]

标志:

标志短标志默认值描述
contract_file(位置参数)合同文本文件的路径(.txt 或 .md)
--json关闭以 JSON 格式输出
--output-o(标准输出)将输出写入文件

输出示例(JSON):

{
  "file": "vendor_agreement.txt",
  "clauses_found": [
    {
      "type": "limitation_of_liability",
      "severity": "RED",
      "text_snippet": "...liability shall not be limited...",
      "risk_flags": ["uncapped_liability"],
      "notes": "No liability cap found; uncapped exposure"
    }
  ],
  "missing_clauses": ["force_majeure", "data_protection"],
  "risk_summary": {"RED": 2, "YELLOW": 3, "GREEN": 5},
  "overall_risk": "RED"
}

redline_generator.py

**用途:**接收合同分析 JSON,并生成格式化的红线建议,其中包含优先级、理由和备选立场。

用法:

python scripts/redline_generator.py <analysis_json> [--json] [--output FILE]

标志:

标志短标志默认值描述
analysis_json(位置参数)合同分析 JSON 文件的路径
--json关闭以 JSON 格式输出
--output-o(标准输出)将输出写入文件

输出示例:

REDLINE SUGGESTIONS
===================

[MUST-HAVE] Limitation of Liability — Uncapped Liability
  Severity: RED
  Preferred: "Aggregate liability shall not exceed 12 months of fees paid."
  Rationale: Uncapped liability creates unlimited financial exposure.
  Fallback: "Aggregate liability shall not exceed 24 months of fees paid."

[SHOULD-HAVE] Indemnification — Unilateral Indemnification
  Severity: YELLOW
  Preferred: "Each party shall indemnify the other for breaches of this Agreement."
  Rationale: Mutual indemnification balances risk between parties.
  Fallback: "Indemnification obligations shall be subject to the liability cap."

评论

支持 Markdown