← 返回
未分类

技术合同预审skill

技术合同审核与登记清单填写技能。当用户需要审核技术合同(技术开发/转让/咨询/服务), 提取合同关键信息并填写技术合同登记表单、生成交叉校验审核报告时触发。 适用于扫描件PDF合同(图片型)和可提取文本的PDF/Word合同。 触发关键词:审核合同、合同审核、技术合同登记、审核清单、填写表单、合同信息提取、批量审核。
>-技术合同预审skill,可帮助技术合同登记机构提技术合同审查效率。
王晓光
未分类 community v1.0.0 1 版本 98750 Key: 无需
★ 1
Stars
📥 59
下载
💾 0
安装
1
版本
#latest

概述

技术合同审核与登记清单填写

概述

本技能用于对技术合同(技术开发/技术转让/技术咨询/技术服务)进行自动化审核,核心流程为:

  1. 读取审核清单模板 — 解析 docx 格式的审核清单,提取所有必填字段和审核要点
  2. 读取合同文件 — 支持 PDF(含扫描件)和 Word 格式的合同文件
  3. 信息提取与交叉校验 — 从合同中逐项提取信息,进行一致性校验
  4. 生成审核报告 — 输出 Word 格式的审核报告和已填写的清单表单

输入要求

用户需提供以下文件路径:

输入格式说明
------------------
合同文件PDF / DOCX待审核的技术合同(支持扫描件PDF)
审核清单DOCX技术合同登记表单关键信息提炼与审核清单模板
输出目录路径生成文件的保存位置(可选,默认工作目录)

执行流程

第一步:读取审核清单模板

使用 python-docx 读取审核清单 docx 文件:

from docx import Document
doc = Document(r'<审核清单路径>')
for table in doc.tables:
    for row in table.rows:
        for cell in row.cells:
            print(cell.text)

提取所有审核字段名称、审核要点说明、字段状态(必填/选填)。

第二步:读取合同文件

情况 A:可提取文本的 PDF / Word 合同

直接用 PyMuPDF(fitz)提取文本:

import fitz
doc = fitz.open(r'<合同PDF路径>')
for page in doc:
    text = page.get_text("text")

Word 合同用 python-docx 读取。

情况 B:扫描件 PDF(图片型,无提取文本)

  1. 用 PyMuPDF 将每页渲染为 PNG 图片:
  2. import fitz
    doc = fitz.open(r'<合同PDF路径>')
    for i, page in enumerate(doc):
        pix = page.get_pixmap(dpi=200)
        pix.save(f'pdf_pages/page_{i+1:02d}.png')
    
  1. 用 Agent 子任务(multimodal vision)逐批 OCR 识别图片内容:
    • 每 2 页为一批,避免输入过长
    • 将识别结果保存为文本文件
    • 合并所有批次结果

关键经验:

  • 先尝试直接提取文本,如果提取结果为空或极短(< 100字符),则判定为扫描件
  • 扫描件渲染 DPI 建议 200,平衡清晰度和文件大小
  • OCR 批次不要超过 2 页/批,避免触发 400 错误
  • 不使用 Tesseract(需额外安装),直接用 Agent 内置视觉能力

第三步:信息提取与交叉校验

对照审核清单中的字段,从合同文本中逐项提取:

标准审核字段(基础信息模块):

  • 项目名称(含技术方案大标题)
  • 单位名称(甲乙方)
  • 项目背景与目标
  • 技术研究内容与方法
  • 项目进度安排
  • 预期成果交付

标准审核字段(合同核心信息模块):

  • 合同成交总金额
  • 其中技术交易额
  • 合同签订日期
  • 合同起始日期
  • 合同结束日期
  • 支付方式
  • 合同类别

交叉校验项目:

  • 项目名称一致性(封面 vs 正文 vs 技术方案)
  • 合同金额一致性(总金额 vs 付款金额 vs 大写 vs 小写)
  • 日期逻辑一致性(签订日期 < 起始日期 < 结束日期,签署日期与项目年份匹配)
  • 甲乙双方信息一致性(各处出现的名称是否统一)
  • 付款方式勾选一致性
  • 验收时间与合同结束日期一致性
  • 技术成果归属
  • 违约责任条款
  • 保密条款

缺失项标注规则:

  • 合同中完全找不到对应信息 → 标记为 "缺失" + 黄色高亮
  • 信息不完整或模糊 → 标记为 "需补充" + 黄色高亮
  • 信息完整明确 → 标记为 "已明确" + 正常样式

第四步:生成输出文件

运行 scripts/generate_outputs.py 脚本生成两份 Word 文件:

文件 1:技术合同审核报告.docx

报告结构(6 个章节):

  1. 合同基本信息 — 表格:审核项目 / 合同内容 / 审核结果
  2. 合同核心信息审核 — 4 列表格:字段 / 合同内容 / 审核结果 / 备注
  3. 内容数据交叉校验 — 表格:校验项目 / 校验结果 / 说明
  4. 缺失项汇总 — 表格:缺失项 / 重要性 / 建议
  5. 风险提示 — 编号列表,标注异常和需关注项
  6. 审核结论 — 综合评估文字说明

文件 2:技术合同登记表单_已填写.docx

表单结构:

  • 标题 + 副标题 + 合同基本信息行
  • 基础信息模块表格(4 列:字段 / 状态 / 关键审核点 / 合同提取内容)
  • 合同核心信息模块表格(同上 4 列)
  • 填写说明(缺失项解释、风险提示)

Word 文档格式规范:

  • 默认字体:宋体 10.5pt
  • 标题字体:黑体,一级标题 16pt,二级标题 14pt
  • 表头:蓝色背景(4472C4),白色加粗字体
  • 必填状态:红色加粗(192,0,0)
  • 缺失项内容:红色字体 + 黄色底色(FFF2CC)
  • 表格样式:Table Grid

批量处理模式

当用户需要批量处理多个合同时:

  1. 先读取审核清单模板,提取所有审核字段(只需执行一次)
  2. 对每个合同文件,依次执行第二步到第四步
  3. 输出文件命名规则:<合同名称>_审核报告.docx<合同名称>_已填写清单.docx
  4. 如有多个合同,可选择合并为一份汇总报告

环境依赖

PyMuPDF (fitz) - PDF 读取和页面渲染
python-docx - Word 文档生成和读取

安装命令(如尚未安装):

C:\Users\xiaog\.workbuddy\binaries\python\envs\default\bin\pip install pymupdf python-docx

脚本说明

scripts/generate_outputs.py

生成审核报告和已填写清单的主脚本。

用法:

python scripts/generate_outputs.py --output-dir <输出目录>

脚本内包含两个数据字典 contract_data_basiccontract_data_core,需在运行前根据实际合同内容填入。脚本会自动:

  • 生成格式化的审核报告 docx
  • 生成已填写清单 docx(缺失项黄色高亮)
  • 应用统一的 Word 格式规范

references/audit_checklist_fields.md

包含标准审核字段清单和交叉校验项目参考,供提取信息时对照使用。

版本历史

共 1 个版本

  • v1.0.0 Initial release 当前
    2026-05-23 10:22 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

security-compliance

Skill Vetter

spclaudehome
AI智能体技能安全预审工具。安装ClawdHub、GitHub等来源技能前,检查风险信号、权限范围及可疑模式。
★ 1,215 📥 266,539
ai-intelligence

Self-Improving + Proactive Agent

ivangdavila
自我反思+自我批评+自我学习+自组织记忆。智能体评估自身工作、发现错误并持续改进。
★ 1,358 📥 318,370
developer-tools

Github

steipete
使用 `gh` CLI 与 GitHub 交互,通过 `gh issue`、`gh pr`、`gh run` 和 `gh api` 管理议题、PR、CI 运行及高级查询。
★ 668 📥 324,162