L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Productivité · SKILL.md

contract-cleaner

contract-cleaner

清洗合同、整理合同格式、统一合同术语、规范合同条款。当用户需要 整理、格式化、统一术语、清洗合同文本时使用。 触发词:清洗合同、整理合同、合同格式化、合同术语、合同规范化、 合同文本清洗、修复合同。

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: contract-cleaner description: > 清洗合同、整理合同格式、统一合同术语、规范合同条款。当用户需要 整理、格式化、统一术语、清洗合同文本时使用。 触发词:清洗合同、整理合同、合同格式化、合同术语、合同规范化、 合同文本清洗、修复合同。

Contract Cleaner

将混乱的合同文本变成干净、规范、符合法律语言体系的 Markdown。

⚠️ CRITICAL:完整流程必须全部执行

本工具的清洗流程包含 Python 步骤和 AI 步骤,必须按顺序全部执行,不能只跑 Python 命令就结束。缺少任何一步都会导致输出未经清洗。

完整流程:

1. Python preprocess   → 生成会话目录 + 编号规范化输入文件
2. AI 编号规范化       → 读取 numbering.md,只改编号不改内容,写入 02 文件
3. Python preprocess-continue → 加载 02 文件,分块
4. AI 五遍清洗         → 逐块执行:义务句式 → 结构重组 → 格式清理 → 质量验证 → 最终润色
5. Python finalize     → 拼接 + 自检 + 导出 docx

禁止跳过步骤 2 和步骤 4。步骤 2 是编号规范化的核心,步骤 4 包含义务句式、结构重组、格式清理、质量验证、最终润色共 5 个 pass,跳过任何 pass 都会导致输出质量不达标。


执行流程

第 1 步:预处理

python scripts/auto_cleaner.py --stage preprocess -i <合同文件>

此命令会完成文档转换、格式清洗、规则引擎,输出到 清洗会话_<合同名>_<时间戳>/ 目录。

关键输出文件:

  • _原始轻量.md — 原合同轻量清理版(仅清理 docx 转换噪音,用于 pandiff 对比基线)
  • 00_规则引擎输出.md — 规则引擎处理后的文本
  • 01_编号规范化输入.md — 待编号规范化的文本

第 2 步:AI 编号规范化(CRITICAL,不可跳过)

此步骤由你(Agent)直接执行,不需要调用任何外部 API。

  1. 读取 references/prompts/numbering.md 获取编号规范化规则
  2. 读取会话目录中的 01_编号规范化输入.md
  3. 按规则处理文本,统一编号为标准层级:
    • 一级:第一条、第二条……(加粗)
    • 二级:1.1、1.2……
    • 三级:(1)、(2)……
  4. 只改编号,不改任何文字内容
  5. 将结果写入会话目录中的 02_编号规范化输出.md

💡 _原始轻量.md 在 preprocess 阶段已自动生成,不需要你处理。finalize 阶段会优先用它作为 pandiff 的"原合同"对比基线。

第 3 步:预处理继续

python scripts/auto_cleaner.py --stage preprocess-continue --session <会话目录名>

此命令会加载 02_编号规范化输出.md,执行分块,输出 chunks 目录和 manifest.json。

第 4 步:AI 五遍清洗(CRITICAL,不可跳过)

此步骤由你(Agent)直接执行,不需要调用任何外部 API。

读取 manifest.json,对 needs_ai: true 的每个 chunk,按顺序执行 5 个 pass:

Pass 1 — 义务句式:

  1. 读取 references/prompts/obligation.md
  2. 读取 chunk 文件内容
  3. 按 obligation.md 的要求处理文本(为义务性条款添加"应当"等)
  4. 将结果写回原 chunk 文件

Pass 2 — 结构重组:

  1. 读取 references/prompts/structure.md
  2. 读取 chunk 文件内容
  3. 按 structure.md 的要求处理文本(删除非标小标题、确认层级等)
  4. 将结果写回原 chunk 文件

Pass 3 — 格式清理:

  1. 读取 references/prompts/format.md
  2. 读取 chunk 文件内容
  3. 按 format.md 的要求处理文本(清理残留标记、统一格式等)
  4. 将结果写回原 chunk 文件

Pass 4 — 质量验证(不可跳过):

  1. 读取 references/prompts/verification.md
  2. 读取 chunk 文件内容
  3. 按 verification.md 的语义检查清单逐条检查
  4. 如果发现问题,根据 suggestions 直接修正后写回;如果无问题,原样写回
  5. 禁止只输出 JSON 而不修改文件——发现问题必须直接修正,无问题则原样保留

Pass 5 — 最终润色(不可跳过):

  1. 读取 references/prompts/polish.md
  2. 读取 chunk 文件内容
  3. 按 polish.md 的润色规则修正语法错误、句法错误、低级错误和怪异表达
  4. 将结果写回原 chunk 文件
  5. 禁止跳过——即使看起来"没问题"也要执行,润色规则会捕获人眼易漏的低级错误

规则:

  • needs_ai: false 的 chunk(首部、签署区)保持原样,不处理
  • 如果某个 chunk 内容简短,可以一次合并处理多个 pass,但每个 pass 的结果都要体现
  • 每个 pass 处理完立即写回文件

第 5 步:收尾

python scripts/auto_cleaner.py --stage finalize --session <会话目录名>

此命令会拼接所有 chunk、自检验证、导出文件。输出到输入文件同目录:

  • 合同名-原合同(预处理后).md — 原合同轻量清理后的 Markdown
  • 合同名-新合同(预处理后).md — AI 清洗后的 Markdown
  • 合同名-清洁版.docx — 清洗后的美观 Word 文档
  • 合同名-对比版.docx — 新旧对比修订痕迹版(pandiff 生成)

清洗规范

第 1 步已执行的确定性规则(AI 不需要重复处理)

规则示例
术语替换缴纳→支付、罚款→违约金、权力→权利
金额格式¥123,456→人民币123456.00元
日期格式2026-2-23→2026年2月23日
全角→半角有多条
近义术语标记终止/解除同时出现→【近义术语待统一】
首部/签署区保护不进入条款编号体系

第 2 步已执行的编号规范化(AI 不需要重复处理)

规则示例
条款编号标准化"一、""1.""(一)"→ 第X条
二级编号统一子项统一为 X.X 格式
三级编号统一子子项统一为(X)格式
层级递进修复一级→三级跳级修复为自然段落

详细规范见 references/global_text_processing.md。


文件结构

contract-cleaner/
├── SKILL.md
├── scripts/
│   ├── auto_cleaner.py            # 主入口(支持 --stage preprocess/preprocess-continue/finalize)
│   ├── rule_engine.py             # 规则引擎
│   ├── industrial_cleaner.py      # AI 清洗引擎(自动模式用)
│   ├── format_cleaner.py          # 格式清洗
│   ├── document_converter.py      # 文档转换
│   ├── self_verifier.py           # 自检验证
│   └── docx_exporter.py           # Word 导出
└── references/
    ├── global_text_processing.md  # 完整清洗规范
    ├── troubleshooting.md          # 故障排查
    └── prompts/                    # AI 清洗 prompt
        ├── numbering.md            # 第2步:编号规范化(只改编号不改内容)
        ├── obligation.md           # Pass 1:义务句式
        ├── structure.md            # Pass 2:结构重组
        ├── format.md               # Pass 3:格式清理
        ├── verification.md         # Pass 4:质量验证(不可跳过)
        └── polish.md               # Pass 5:最终润色(不可跳过)

自动模式(有 API Key 的高级用户)

如已配置 API Key,可一条命令跑完:

python scripts/auto_cleaner.py -i 合同.docx

效果等价于手动执行上述全部 5 步,但 AI 清洗由 Python 脚本直接调用 API 完成。

首次配置:

python scripts/auto_cleaner.py --config

或设置环境变量:

export ANTHROPIC_API_KEY=sk-ant-...

常见问题

现象原因解决方案
输出与输入几乎相同跳过了第2步或第4步的 AI 清洗确保完整执行全部5步
没有"第一条"编号跳过了第2步编号规范化执行编号规范化后重新 preprocess-continue
manifest.json 不存在未运行第1步或第3步先执行 preprocess,再执行编号规范化+preprocess-continue
chunk 数量太多长合同条款多正常现象,每个 needs_ai=true 的 chunk 都需要单独清洗
docx 未生成pandoc 未安装执行 brew install pandoc,不影响 MD 输出
Skills enregistrées