# Contract Review

> Contract Review

- Skill: `cslawyer1985/contract-review-7` (Agent Skill, multi-file: 62 files)
- Install (CLI): `npx skillmds@latest add cslawyer1985/contract-review-7`
- Raw SKILL.md: https://api.skillmd.com/api/skills/cslawyer1985/contract-review-7/raw
- Safety review: WARNING
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: cslawyer1985 (https://skillmd.com/u/cslawyer1985)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/cslawyer1985/contract-review-7

---


# 合同智能审查 v4.0

## Overview

本 Skill 为用户提供中文合同的智能风险审查能力。接收 PDF / Word / 图片 / 纯文本格式的合同文件，通过"规则引擎 + LLM 语义审查"双轨机制，识别合同中的潜在风险点，输出结构化审查报告，包含风险分级、修改建议、合规依据和标准范本。

**v4.0 完成从「找问题」到「给方案」的升级**：内置 275 条标准条款库，风险点自动匹配推荐替换文本，一键生成带红色修订标记的合同修订稿；同时提供医疗、建筑工程、跨境电商、互联网软件四大行业共 244 条专项合规规则。

### 🆕 v4.0 新特性（2026-07-29）

- **📚 标准条款库（275 条）**：覆盖主体/条款/金额/履行/争议/合规/知识产权/保密/终止/违约责任 10 大类，每条含问题版本、推荐措辞、法律依据、实务提示
- **🎯 条款自动匹配**：风险点自动检索条款库，报告中直接给出「建议替换为」的可落地条款文本，无需人工翻范本
- **✍️ 一键修订稿**：生成带红色删除线（原文）+ 绿色下划线（推荐条款）+ 灰色批注（修订理由/法律依据）的 Word 修订稿，可选全文就地标记模式
- **🏭 行业专项合规（244 条）**：医疗/医药 62 条、建筑工程 62 条、跨境电商 60 条、互联网软件 60 条，各配套行业术语表与典型案例库
- **🔧 稳定性增强**：调整 Word 报告生成的依赖导入方式、统一危险文件拦截的常量引用、补充 LLM 提示词占位符填充逻辑

### 🆕 v2.4 新特性

- **🔒 安全性增强**：魔术字节校验、文件大小限制、个人信息脱敏、安全 YAML 加载

### 🆕 v3.0 新特性（2026-07-13）

- **🛡️ 危险文件拦截**：自动识别并拦截 10+ 类危险文件（可执行文件、批处理脚本、压缩包、宏文档等），阻止伪装上传
- **📊 历史版本对比**：保留每次审查记录，对比新旧合同版本，只高亮新增风险点（合同谈判多轮刚需）
- **📝 Word 报告一键生成**：审查结果直接生成带删除线+下划线+批注的 `.docx`，发给业务方直接修订
- **⚡ 硬件自适应调度**：自动检测 CPU/内存容量，动态调整 OCR 并行度和 LLM 超时，不拖累用户电脑
- **🔔 更新检测提醒**：每次运行异步检查 GitHub 新版本，有新版本时友好提示（每 7 天提醒一次）
- **📬 反馈邮箱**：添加官方反馈邮箱 njskills@agent.qq.com

### 核心能力

1. **多格式文件接收**：支持 PDF（文字版/扫描版）、Word（.docx）、图片（.jpg/.png/.bmp/.tiff）、纯文本
2. **智能文本提取**：自动识别文件格式并选择最优提取策略，保留页码和段落结构
3. **安全校验**：魔术字节验证（防止伪装文件）、50MB 文件上限、敏感信息脱敏
4. **结构化信息提取**：自动识别合同主体、金额、日期、交付标准、违约责任等关键要素
5. **双轨风险审查**：规则引擎（硬规则匹配）+ LLM 语义审查（权利义务对等性、模糊条款、显失公平）
6. **专项合规检查**：针对劳动合同、技术开发合同、买卖合同、租赁合同、融资协议等类型自动触发专项检查
7. **分级报告输出**：按严重等级（🔴严重 / 🟡中等 / 🟢一般 / ℹ️提示）排序，附修改建议和标准范本
8. **智能评分系统**：100分制综合评分，扣分逻辑透明可见，风险等级自动判定
9. **隐私保护**：原始合同不上传外部（LLM 可选启用），审查过程在本地完成
10. **🆕 v3.0 安全风险拦截**：自动拦截 `.exe/.bat/.ps1/.vbs/.cmd/.com/.scr/.hta/.reg/.zip/.rar/.7z/.tar/.gz/.iso/.dmg/.apk/.jar` 等 10+ 类危险文件类型，阻止恶意文件和宏文档上传
11. **🆕 v3.0 历史版本对比**：保留每次审查记录，对比新旧合同版本，只高亮新增风险点（合同谈判多轮刚需）
12. **🆕 v3.0 Word 报告一键生成**：审查结果直接生成带删除线 + 下划线 + 批注的 `.docx`，发给业务方直接改
13. **🆕 v3.0 硬件自适应调度**：自动检测 CPU/内存容量，动态调整 OCR 并行度和 LLM 超时，不拖累用户电脑
14. **🆕 v3.0 更新检测提醒**：每次运行异步检查 GitHub 新版本，有新版本时友好提示
15. **🆕 v4.0 标准条款库**：275 条标准条款覆盖 10 大风险类别，风险点自动匹配推荐替换文本
16. **🆕 v4.0 一键修订稿**：生成带红色删除线 + 绿色下划线 + 批注的 Word 修订稿，支持全文就地标记
17. **🆕 v4.0 行业专项合规**：医疗、建筑工程、跨境电商、互联网软件四大行业共 244 条专项规则，配套术语表与案例库

### 适用场景

| 场景 | 用户角色 | 核心审查重点 |
|------|---------|-------------|
| 采购/供应合同 | 采购经理 | 交付标准、付款节点、违约金对等性 |
| 融资协议 | 创业者/创始人 | 对赌条款、反稀释、清算优先权、一票否决权 |
| 房屋租赁合同 | 租客/房东 | 租期、维修责任、转租限制、提前解约条件 |
| 劳动合同 | HR / 员工 | 试用期、竞业限制、社保公积金、最低工资 |
| 技术开发合同 | 委托方/开发方 | 知识产权归属、源代码交付、技术秘密保护 |
| 跨境贸易合同 | 外贸业务员 | 国际贸易术语、适用法律、争议解决 |
| **🆕 v3.2 股权转让合同** | 转让方/受让方 | 股权比例、转让价格、交割条件、竞业限制、优先购买权 |
| **🆕 v3.2 增资扩股协议** | 增资方/目标公司 | 估值条款、反稀释条款、董事会席位、一票否决权 |
| **🆕 v3.2 对赌协议** | 投资方/创始人 | 业绩承诺、补偿机制、回购条款 |
| **🆕 v3.2 NDA 保密协议** | 披露方/接收方 | 保密范围、保密期限、违约责任、除外条款 |
| **🆕 v3.2 知识产权许可协议** | 许可方/被许可方 | 授权范围（独占/排他/普通）、地域限制、转授权、改进归属 |
| **🆕 v3.2 建设工程合同** | 发包方/承包方 | 工期、质量标准、付款节点、竣工验收、质保 |
| **🆕 v3.2 劳动合同深度版** | 用人单位/员工 | 竞业限制补偿金、培训服务期、保密条款、解除条件 |
| **🆕 v3.2 采购框架协议** | 采购方/供应商 | 价格条款、交付条件、验收标准、违约责任 |

### 🆕 v4.0 行业专项审查

使用 `--industry` 参数启用，在通用规则基础上叠加行业专项合规规则：

| 行业 | 参数值 | 规则数 | 适用场景 | 专项审查重点 |
|------|--------|--------|---------|-------------|
| 医疗/医药 | `medical` | 62 条 | 医疗器械采购、临床试验、药品配送、多点执业 | 注册证与经营资质、两票制与集采、伦理审查、冷链追溯、医药合规 |
| 建筑/建设工程 | `construction` | 62 条 | 施工总承包、专业分包、EPC、监理、材料设备采购 | 施工资质、违法分包转包、工程款支付、工期签证索赔、质保金比例 |
| 跨境电商/国际贸易 | `cross_border` | 60 条 | 国际货物买卖、跨境平台入驻、海外仓、国际物流 | 贸易术语与风险转移、适用法律与仲裁地、信用证单据、出口管制与制裁、外汇税务 |
| 互联网/软件 | `internet` | 60 条 | 软件开发外包、SaaS 服务、数据合规、平台运营、AI 应用 | 源码归属与开源许可、SLA 与赔偿、个人信息与数据出境、平台责任、生成式 AI 备案 |

查看行业清单：`python scripts/main.py --list-industries`

## 触发条件

当用户满足以下任一条件时，触发本 Skill：

1. 用户上传了 PDF / Word / 图片格式的合同文件
2. 用户表达"帮我审查合同"、"这个合同有没有风险"、"合同哪里有问题"等意图
3. 用户粘贴了合同文本内容并要求审查

## Workflow

### Step 1：接收合同文件

1. **安全校验**：
   - 魔术字节验证：检查文件实际类型与后缀是否一致（防止恶意伪装）
   - 文件大小校验：限制最大 50MB（超大文件会提示分批处理）
   - 空文件检测：拒绝处理空文件

2. **检测输入类型**：
   - PDF 文件 → 判断是文字版还是扫描版（检查首页是否可提取文字）
   - Word 文件 → 使用 python-docx 读取段落结构
   - 图片文件 → 使用 paddleocr 进行 OCR 识别（进度逐页显示）
   - 纯文本 → 直接进入结构化解析

3. **提取原始文本**：
   - 文字版 PDF → 使用 `pdfplumber` 逐页提取，保留页码
   - 扫描版 PDF → 逐页转图片后 OCR，记录置信度，低置信度时警告提示
   - Word → 按段落读取，保留样式信息（标题层级）
   - 图片 → OCR 识别，记录置信度

4. **收集元信息**（缺失时向用户确认）：
   - 合同类型（自动识别或询问用户）
   - 用户角色（甲方 / 乙方 / 双方）
   - 审查范围（全面审查 / 重点审查 / 快速审查）

### Step 2：结构化解析

1. **识别合同结构**：
   - 标题和合同类型（基于关键词频率打分）
   - 甲乙双方主体信息（名称、统一社会信用代码）
   - 金额信息（总价、定金、预付款、质保金）
   - 时间信息（签订日期、交付日期、保修期）
   - 条款边界和编号

2. **生成结构树**：
   - 将合同文本按条款切分
   - 为每个条款分配唯一 ID
   - 标记关键条款类型（付款、交付、验收、违约、争议解决、保密等）

### Step 3：风险审查

#### 3.1 规则引擎硬检（确定性规则）

按以下清单逐项检查：

| 检查项 | 规则 | 严重等级 |
|--------|------|---------|
| 金额大小写一致性 | 正则匹配所有金额，对比大小写 | 🟡 中等 |
| 关键条款缺失 | 检查必备条款（标的、数量、质量、价款、履行期限、违约责任、争议解决）是否齐全 | 🟡 中等 |
| 违约金合规性 | 检查是否超过法定上限（LPR 四倍，当前约 14.8%） | 🟡 中等 |
| 试用期合规性 | 劳动合同试用期：合同期≤1年→≤1个月；1-3年→≤2个月；≥3年/无固定→≤6个月 | 🔴 严重 |
| 质保金比例 | 建设工程质保金不得超过结算总额的 3% | 🟡 中等 |
| 竞业限制补偿 | 竞业限制期间用人单位必须按月支付经济补偿 | 🔴 严重 |
| 争议解决矛盾 | 同时约定仲裁和诉讼 → 矛盾 | 🔴 严重 |
| 仲裁机构存在性 | 验证约定的仲裁机构是否真实存在 | 🔴 严重 |

#### 3.2 LLM 语义审查

使用以下 System Prompt 调用 LLM 进行深度审查：

```
你是一位资深的中国执业律师，专精于合同审查和风险管理。
请对以下合同进行风险审查，重点关注：
1. 合同主体的合法性
2. 合同条款的完整性和明确性
3. 权利义务的对等性
4. 违约责任的合理性
5. 争议解决方式的合法性
6. 是否有违反法律强制性规定的条款

审查标准：
- 以中国现行法律法规为依据（民法典、合同编、公司法、劳动合同法等）
- 参考最高人民法院司法解释和指导案例
- 考虑行业惯例和商业合理性

输出要求（严格 JSON 格式）：
- 每个风险点必须包含：risk_type（风险类型）、severity（严重等级）、clause_ref（条款编号/页码）、text_snippet（原文引用，50字内）、title（风险标题）、description（通俗解释）、legal_basis（法律依据）、suggestion（修改建议）、template（推荐的标准表述）
- 严重等级：严重（可能导致合同无效或重大损失）、中等（可能造成履行困难）、一般（建议优化）
```

#### 3.3 特殊合同专项检查

根据合同类型自动触发：

- **劳动合同**：试用期时长、竞业限制范围/期限/补偿、社保公积金约定、最低工资标准、解除条件
- **技术开发合同**：知识产权归属、源代码交付、技术秘密保护、技术验收标准
- **买卖合同**：质量标准、交付方式、风险转移时点、所有权保留条款
- **租赁合同**：租期上限（≤20年）、维修责任、转租限制、提前解约条件、押金退还
- **融资协议**：对赌条款、反稀释条款、清算优先权、一票否决权、领售权

### Step 4：交叉验证

1. **条款间逻辑一致性**：检查付款节点与交付节点是否匹配、违约责任是否对等
2. **前后矛盾检测**：检查同一条款或不同条款之间是否存在矛盾表述
3. **法律法规合规性**：对照《民法典》《劳动合同法》《公司法》等强制性规定

### Step 5：生成审查报告

1. **汇总去重**：合并规则引擎和 LLM 的结果，去除重复风险点
2. **评级排序**：按严重等级排序（🔴 > 🟡 > 🟢 > ℹ️）
3. **生成报告**：使用 `assets/report_template.md` 模板生成结构化 Markdown 报告
4. **计算评分**：基于风险数量和严重程度计算综合评分（0-100 分，分数越高风险越低）

## Output Format

### 精简版报告（默认输出）

```markdown
# 合同审查报告

## 基本信息
- **合同名称**：[自动识别]
- **合同类型**：[自动识别/用户指定]
- **审查视角**：[甲方/乙方/双方]
- **审查日期**：[当前日期]
- **合同主体**：甲方: XX公司; 乙方: YY公司
- **合同金额**：XXX 元

## 📊 风险概况

| 等级 | 数量 |
|------|------|
| 🔴 严重 | X 项 |
| 🟡 中等 | Y 项 |
| 🟢 一般 | Z 项 |
| ℹ️ 提示 | W 项 |

**⭐ 综合评分：XX/100**（风险等级描述）

> **评分说明**：满分 100 分，分数越高风险越低。严重每项扣 15 分，中等每项扣 8 分，一般每项扣 3 分。

---

## 🔴 严重风险

### 1. [风险标题]
- **位置**：条款: 第3条, 第 5 页
- **原文**：...
- **问题**：...
- **法律依据**：《民法典》第XXX条
- **修改建议**：...
- **推荐范本**：...

---

## 🟡 中等风险
...

## 🟢 一般风险
...

## ℹ️ 特别提示
...

## 📋 缺失条款清单
- [ ] XX条款
- [ ] YY条款

## 📝 修改建议汇总
1. **风险标题** → 修改建议...

## ⚖️ 法规依据
> 引用法规基于 2026 年现行有效版本
- 《民法典》第XXX条
- ...

---

## ⚠️ 免责声明

**重要提示**：
- 本报告由 AI 智能审查工具生成，仅供参考，**不构成法律意见**。
- 法律建议需由具备相应执业资格的律师提供。
- 对于重大合同（标的额超过 100 万元或涉及核心商业利益），**强烈建议咨询专业执业律师**。
- 本报告基于当前的法律法规进行审查，法律变更可能导致部分建议过时。
```

## 安装指南

### 方式一：pip 安装（推荐）

```bash
pip install -e .
# 或指定依赖组
pip install -e ".[all]"
```

### 方式二：requirements.txt

```bash
pip install -r requirements.txt
```

### 方式三：首次使用向导

```bash
python scripts/main.py --first-time
```

向导会引导您选择运行模式：

| 模式 | 说明 | 需要 |
|------|------|------|
| 🥇 **Ollama 本地** | 完全本地运行，隐私最优 | 下载 Ollama + 模型（约4-8GB） |
| 🥈 **OpenAI API** | 效果最佳 | OpenAI API 密钥 |
| 🥉 **规则引擎** | 开箱即用，无需额外配置 | 无（推荐新手） |

## LLM 配置

### 自动检测优先级

本 Skill 按以下优先级自动检测 LLM 后端：

1. **OpenAI / 兼容 API**：设置 `OPENAI_API_KEY` 环境变量
2. **Ollama（本地模型）**：自动检测 `http://localhost:11434`
3. **本地 LLM 服务**：自动检测 LM Studio / vLLM 等（端口 1234/8080/5000）

### 一键安装 Ollama

```bash
# macOS / Linux
curl -fsSL https://ollama.ai/install.sh | sh
ollama pull qwen2.5:7b

# Windows
# 访问 https://ollama.ai/download 下载后运行：
ollama pull qwen2.5:7b
ollama serve
```

## 核心库依赖

| 库 | 版本 | 用途 |
|----|------|------|
| `pdfplumber` | 0.10.0+ | PDF 文字提取 |
| `python-docx` | 1.1.0+ | Word 读写 |
| `paddleocr` | 2.7.0+ | OCR 识别 |
| `opencv-python` | 4.8.0+ | 图像预处理 |
| `reportlab` | 4.0.0+ | PDF 报告生成 |
| `pydantic` | 2.0+ | 数据校验 |
| `jieba` | 0.42.1+ | 中文分词 |
| `PyMuPDF` | 1.23.0+ | PDF 转图片（扫描件需要） |
| `requests` | 2.31.0+ | HTTP 请求（LLM 调用） |

## 使用示例

### 示例一：上传 PDF 合同

```
用户：[上传了一份"软件技术开发合同.pdf"，未发言]

助手：收到一份 PDF 文件，正在识别合同类型...
     检测到这是一份"技术开发合同"，请问您是甲方还是乙方？
     您希望进行哪种审查？
     1. 快速审查（约 30 秒，覆盖核心风险）
     2. 全面审查（约 2 分钟，覆盖全部风险点）
     3. 重点审查（您指定关注方向）

用户：我是甲方，全面审查

助手：[开始审查]
     [1/5] 接收合同文件...
       ✅ 文件类型=pdf_text, 页数=12, 字数=8520
     [2/5] 结构化解析...
       ✅ 标题=技术开发合同, 类型=技术开发合同, 条款数=18
     [3/5] 规则引擎检查...
       ✅ 完成 3 项硬规则检查，发现 3 个风险点
     [4/5] AI 语义审查...
       🤖 使用 ollama / qwen2.5:7b
       ✅ 发现 2 个 AI 识别风险
     [5/5] 生成审查报告...
       ✅ 报告已保存至: report.md

     🎉 审查完成！耗时 45.2 秒
```

### 示例二：扫描版合同（OCR 过程）

```
助手：[1/5] 接收合同文件...
       ⏳ 初始化 OCR 引擎（首次使用需加载模型，约10-30秒）...
       ✅ OCR 引擎初始化完成
       ⏳ OCR 识别: 第 1/8 页...
       ⏳ OCR 识别: 第 2/8 页...
       ⏳ OCR 识别: 第 3/8 页...
       ...
       ⚠️ OCR 置信度: 78%，建议核对扫描件页面
```

### 示例三：文本直接审查

```
用户：请帮我审查以下劳动合同的关键条款：
     "乙方同意在劳动合同期内及解除后两年内，不得到与甲方有竞争关系的企业任职..."

助手：[识别为劳动合同竞业限制条款]
     正在审查...

     🔴 严重风险
     1. 竞业限制条款缺少经济补偿约定
        - 位置：竞业限制条款
        - 问题：条款仅约定了竞业限制义务，未约定甲方在竞业限制期间按月支付经济补偿
        - 法律依据：《劳动合同法》第 23 条、第 24 条
        - 修改建议：增加"甲方在竞业限制期间按月支付乙方经济补偿，补偿标准为乙方离职前十二个月平均工资的 30%，支付时间为每月 15 日前"
        - 推荐范本："在竞业限制期间，甲方按月向乙方支付竞业限制经济补偿，补偿标准为乙方离职前十二个月平均工资的百分之三十（30%），支付时间为每月十五日前。"

     🟡 中等风险
     2. 竞业限制期限可能过长
        - 问题：两年竞业限制期限为法定上限，建议根据实际岗位重要性缩短
        - 建议：核心岗位可维持两年，非核心岗位建议缩短至一年以内
```

### 示例四：无 LLM 模式下运行

```
助手：[4/5] AI 语义审查...
       ⚠️ 未检测到 LLM 后端，仅使用规则引擎结果
         💡 安装 Ollama 后可启用完整 AI 审查功能
```

### 🆕 示例五：行业专项审查（v4.0）

```bash
python scripts/main.py 医疗器械采购合同.pdf --industry medical
```

```
[3/5] 规则引擎检查
       🏭 启用 医疗/医药 行业专项规则
       ✅ 完成 8 项硬规则检查（通用 26 条 + 医疗专项 62 条）
```

行业参数同时支持中文别名：`--industry 医疗` / `--industry 建筑` / `--industry 跨境` / `--industry 互联网`

### 🆕 示例六：一键生成修订稿（v4.0）

```bash
# 生成修订清单版（默认）
python scripts/main.py 采购合同.docx --revise

# 生成全文就地标记版，输出到指定路径
python scripts/main.py 采购合同.docx --revise --full-revision --revise-output 修订稿.docx

# 行业专项 + 一键修订组合使用
python scripts/main.py 施工合同.pdf --industry construction --revise
```

```
[5/5] 生成审查报告
       ✅ 条款库匹配 12 条推荐替换文本
       ✅ 报告已保存至: report.md
       ✅ 修订稿已生成: 修订稿.docx（12 条修订建议，原文定位 9 处）
```

修订稿标记规则：

| 标记 | 含义 |
|------|------|
| 红色删除线 | 建议删除或替换的原文 |
| 绿色下划线 | 条款库推荐的替换文本 |
| 灰色斜体批注 | 修订理由与法律依据 |

未安装 python-docx 时自动降级为 Markdown 对照稿，功能不中断。

### 🆕 示例七：报告中的条款库推荐（v4.0）

风险点匹配到条款库后，报告直接给出可落地的替换文本：

```markdown
### 仲裁机构不存在

- **原文**：争议提交当地仲裁委员会仲裁。
- **问题**：约定的仲裁机构不存在
- **法律依据**：《仲裁法》第 10 条
- **修改建议**：修改为真实存在的仲裁机构
- **建议替换为（条款库 CL144 仲裁条款（建议版本））**：

  > 因本合同引起的或与本合同有关的任何争议，均提请中国国际经济贸易仲裁委员会，
  > 按照该会申请仲裁时现行有效的仲裁规则在北京进行仲裁。仲裁裁决是终局的，
  > 对双方均有约束力。仲裁费用由败诉方承担。
```

如需关闭条款库匹配（提升速度）：`--no-clause-match`

## 命令行参数速查

```bash
python scripts/main.py <合同文件> [选项]
```

| 参数 | 说明 | 默认值 |
|------|------|--------|
| `-o` / `--output` | 报告输出路径 | `report.md` |
| `-f` / `--format` | 报告格式：`markdown` / `json` / `docx` | `markdown` |
| `-t` / `--type` | 指定合同类型，跳过自动识别 | 自动识别 |
| `-r` / `--role` | 审查视角：`甲方` / `乙方` / `双方` | `双方` |
| `--scope` | 审查范围：`全面审查` / `重点审查` / `快速审查` | `全面审查` |
| `-x` / `--text` | 直接传入合同文本，替代文件路径 | — |
| `--industry` | 行业专项：`medical` / `construction` / `cross_border` / `internet`，支持中文别名 `医疗` / `建筑` / `跨境` / `互联网` | 不启用 |
| `--list-industries` | 列出支持的行业专项及规则数量 | — |
| `--revise` | 生成一键修订稿，自动匹配条款库推荐文本 | 关闭 |
| `--revise-output` | 修订稿输出路径 | `revision.docx` |
| `--revise-format` | 修订稿格式：`auto` / `docx` / `md` | `auto`（按后缀判断） |
| `--full-revision` | 修订稿包含合同全文并就地标记 | 仅输出修订清单 |
| `--no-clause-match` | 关闭条款库自动匹配，提升处理速度 | 开启匹配 |
| `--no-llm` | 跳过 LLM 审查，仅使用规则引擎 | 调用 LLM |
| `--diff` | 对比指定历史报告 JSON 路径，高亮新增风险 | 关闭 |
| `--history` | 查看历史审查记录 | — |
| `--check-update` | 检查 Skill 更新 | — |
| `--show-hardware` | 显示硬件信息和性能配置 | — |
| `--install-ollama` | 一键安装 Ollama 本地模型 | — |
| `--first-time` | 首次使用向导 | — |
| `-v` / `--verbose` | 显示详细日志 | 关闭 |

## 限制

1. **语言限制**：仅支持中文合同，中英文混合合同仅审查中文部分
2. **页数限制**：单份合同建议不超过 50 页，超长合同将分段处理
3. **OCR 准确率**：扫描件 OCR 准确率约 95%，低置信度区域会标注提示用户核对
4. **文件大小**：单文件最大 50MB（防止内存溢出）
5. **法律效力**：本报告不构成法律意见，不具备法律效力
6. **地域适用**：基于中国大陆法律法规，不适用于港澳台及其他法域
7. **合同类型**：对罕见或高度专业化的合同类型（如金融衍生品、保险合同）可能覆盖不全

## 安全说明

1. **数据隐私**：合同文本仅在本地处理，不会上传到外部 API（LLM 调用除外，用户可配置是否启用）
2. **免责声明**：每份报告均附带免责声明，明确 AI 审查的参考性质
3. **权限最小化**：Skill 不访问用户文件系统，仅处理用户主动上传的文件
4. **文件安全校验**：检查魔术字节、文件类型一致性、50MB 大小限制
5. **YAML 安全加载**：使用 `yaml.safe_load` 防止反序列化攻击
6. **日志脱敏**：不输出完整文件路径和合同原文到日志
7. **个人信息保护**：报告中的身份证号、手机号等信息自动脱敏
8. **🚫 v3.0 危险文件拦截**：自动拦截并阻止以下文件类型上传：
   - Windows 可执行/批处理：`.bat` `.cmd` `.ps1` `.vbs` `.exe` `.dll` `.lnk` `.msi`
   - Office 二进制文档（宏风险）：`.doc` `.xls` `.ppt` `.xlsm` `.docm` `.pptm`
   - 压缩包/安装包：`.zip` `.rar` `.7z` `.tar` `.gz` `.iso` `.dmg` `.apk` `.jar`
   - 脚本文件：`.sh` `.com` `.scr` `.hta` `.reg`
   - 系统缓存：`.DS_Store` `.log` `.tmp`
   - 同时支持**魔术字节深度校验**（防止伪装扩展名攻击）

## 注意事项

1. 对于重大合同（标的额 > 100 万元、涉及核心商业利益、或可能引发重大法律纠纷），强烈建议咨询专业执业律师
2. 扫描件 OCR 可能存在识别错误，关键条款（金额、日期、主体名称）建议人工核对
3. 本 Skill 基于发布时的法律法规，法律变更可能导致部分建议过时
4. 跨境合同涉及多法域时，建议同时咨询目标法域的专业律师
5. 如果使用 --text 模式粘贴敏感合同信息，请注意 LLM 可能将文本发送到外部 API

## 故障排除

### 问题：pip install 失败
- **解决**：检查网络连接。尝试 `pip install --upgrade pip` 后重试。

### 问题：运行时提示"未识别的 LLM 后端"
- **解决**：安装 Ollama 或设置 `OPENAI_API_KEY` 环境变量。基础模式无需 LLM。

### 问题：扫描版 PDF 处理很慢
- **解决**：OCR 处理需要较多资源。首次使用需要下载 OCR 模型（约 100MB）。后续使用会更快。

### 问题：报告中"第?页"显示
- **解决**：某些 PDF 文件不包含页码信息。v2.4 会尽量从页眉页脚识别页码。

## 更新日志

| 版本 | 日期 | 说明 |
|------|------|------|
| v4.0.0 | 2026-07-29 | 增加：标准条款库 275 条（覆盖主体/条款/金额/履行/争议/合规/知识产权/保密/终止/违约责任 10 大类，含问题版本、推荐措辞、法律依据、实务提示）；增加：条款匹配引擎（风险点自动检索条款库，报告直出建议替换文本）；增加：一键修订稿生成（红色删除线标原文、绿色下划线标推荐条款、灰色批注标修订理由，支持全文就地标记与修订清单两种模式）；增加：医疗行业专项规则 62 条与术语表、18 个典型案例；增加：建筑工程行业专项规则 62 条与术语表、18 个典型案例；增加：跨境电商行业专项规则 60 条与术语表、24 个典型案例；增加：互联网软件行业专项规则 60 条与术语表、20 个典型案例；增加：命令行参数 --industry、--revise、--revise-output、--revise-format、--full-revision、--list-industries、--no-clause-match；优化：规则引擎支持按行业懒加载专项规则并缓存；优化：LLM 审查按行业追加专项审查视角；优化：风险原文片段按句子边界截取，提升修订定位准确度；优化：版本号统一从 SKILL.md 读取；增加：命令行参数速查表，统一文档与实现的参数口径；增加：--no-llm 与 --industry 同时使用时的行业规则生效范围提示；优化：合同金额识别支持万元、亿元量级换算与美元币种判定；优化：《民法典》必备条款检查改为语义同义词族匹配，覆盖工程概况、服务内容、交付期等表述；优化：七项法定必备条款采用确定性映射直取基础条款；优化：正则型规则的原文片段统一按句子边界截取；修复：Word 报告生成器依赖导入方式，改为模块级延迟导入供全部方法共享；修复：危险文件拦截模块常量引用，统一为 _BLOCKED_SYSTEM_EXT；修复：LLM 系统提示词审查视角占位符填充逻辑；修复：严重等级在规则引擎与报告层之间统一归一化，风险统计、评分与分组口径保持一致；修复：命令行横幅版本号改为从 SKILL.md 动态读取 |
| v3.2.0 | 2026-07-20 | 增加：股权转让合同专用规则集（30条）与审查清单；增加：增资扩股协议专用规则集（30条）与审查清单；增加：对赌协议专用规则集（30条）与审查清单；增加：NDA 保密协议专用规则集（30条）与审查清单；增加：知识产权许可协议专用规则集（30条）与审查清单；增加：建设工程合同专用规则集（30条）与审查清单；增加：劳动合同深度版专用规则集（30条）与审查清单；增加：采购框架协议专用规则集（30条）与审查清单；优化：合同类型识别模块（支持 12+ 类合同自动识别）；优化：规则引擎懒加载机制（按合同类型按需加载）；优化：LLM 审查支持加载专用提示词模板 |
| v3.0.0 | 2026-07-13 | 增加：安全风险拦截（50+类危险文件，含 exe/bat/ps1/vbs/cmd/scr/hta/reg/zip/rar/7z 等）；增加：历史版本 diff 对比审查（只高亮新增风险）；增加：Word 报告一键生成（删除线/下划线/批注）；增加：硬件自适应性能调度（自动检测 CPU/内存）；增加：Skill 更新检测提醒（每 7 天）；增加：反馈邮箱 njskills@agent.qq.com |
| v2.5.0 | 2026-07-04 | 修复：版本号对齐（统一为 2.5.0） |
| v2.0.0 | 2026-07-04 | 增加：魔术字节校验与文件大小限制；增加：个人信息脱敏；增加：首次使用向导（Ollama 安装）；增加：Ollama 一键安装向导；增加：评分可视化（扣分透明化）；修复：去掉 reportlab/pydantic/jieba 三个未使用依赖 |
| v1.0.0 | 2026-07-02 | 增加：完整合同审查功能（支持 PDF/Word/图片/纯文本），26条风险规则，双轨审查机制（规则引擎+LLM），Markdown 报告输出 |

## 参考文件

- `references/risk_rules.yaml` — 完整风险规则库（含检查规则、严重等级、法律依据）
- `references/contract_types.yaml` — 合同类型定义和专项检查项
- `references/modification_templates.yaml` — 修改建议模板库（按风险类型分类）
- `references/legal_basis.md` — 常用法律法规依据清单
- `references/compliance_checklist.md` — 合规检查清单（按合同类型）
- `references/contract_types/*.yaml` — **v3.2** 8 类合同专用规则集（各 30 条）
- `references/checklists/*.md` — **v3.2** 8 类合同风险审查清单
- `references/llm_prompts/*.md` — **v3.2** 8 类合同专用 LLM 提示词模板
- `references/clause_library/clauses.json` — **v4.0** 标准条款库（275 条推荐条款）
- `references/clause_library/clause_index.yaml` — **v4.0** 条款分类索引（10 大类 + 248 个检索关键词）
- `references/clause_library/versions.yaml` — **v4.0** 条款库版本记录
- `references/industries/medical/` — **v4.0** 医疗行业规则 62 条 + 术语表 + 18 个案例
- `references/industries/construction/` — **v4.0** 建筑工程行业规则 62 条 + 术语表 + 18 个案例
- `references/industries/cross_border/` — **v4.0** 跨境电商行业规则 60 条 + 术语表 + 24 个案例
- `references/industries/internet/` — **v4.0** 互联网软件行业规则 60 条 + 术语表 + 20 个案例

## 脚本工具

- `scripts/extract_text.py` — 多格式文本提取（带安全校验、魔术字节验证、**v3.0 危险文件拦截**）
- `scripts/parse_structure.py` — 合同结构解析（条款切分、关键信息提取）
- `scripts/rule_engine.py` — 规则引擎（硬规则匹配 + 安全加载）
- `scripts/llm_review.py` — LLM 审查调用（自动检测 Ollama/OpenAI/本地服务）
- `scripts/generate_report.py` — 报告生成（含评分说明、脱敏、评分规则）
- `scripts/history_manager.py` — **v3.0** 历史审查记录管理（保存/查询/版本对比）
- `scripts/docx_generator.py` — **v3.0** Word 报告生成（删除线/下划线/批注）
- `scripts/hardware_detector.py` — **v3.0** 硬件检测与性能调度
- `scripts/updater.py` — **v3.0** 更新检测提醒
- `scripts/clause_matcher.py` — **v4.0** 条款匹配引擎（风险点 → 条款库 → 推荐替换文本）
- `scripts/contract_reviser.py` — **v4.0** 一键修订稿生成（红色删除线 + 绿色下划线 + 批注）
- `scripts/main.py` — 主入口（首次向导 + Ollama 安装 + **v3.0 硬件检测** + **v4.0 行业专项与一键修订** + 完整进度）

---

## 📬 反馈与建议

如有更好建议，欢迎联系：**njskills@agent.qq.com**

您可反馈以下内容：
- 审查规则遗漏或误报
- 新增合同类型需求
- 报告格式优化建议
- 用户体验改进点

---

**版本**：v4.0.0
**更新日期**：2026-07-29
**适用平台**：WorkBuddy / QClaw / ima

