合同一致性AI核对(免费)
一句话:把合同里能被算出来、指出来证明是错的地方找出来,每一条都带原文证据,不需要付款,也不需要注册。
不需要付款:不需要注册、不需要配置任何 API Key,直接调用即可。
和"让模型读一遍合同再发表意见"的做法不同,这个工具只做AI核对: 每一条结论都是可复算的算术或文本证据(原文、数字、行号),第三方拿同一份输入能得出同样的结果。 核对过程不外发材料、不调用任何模型,因此不会出现"看起来很有道理但原文里根本没有"的结论。
什么时候用
- 一份合同改了很多轮,想确认金额、日期、当事方名称前后是否还一致
- 合同里写了"详见第 8 条",但不确定第 8 条是不是还在
- 中英文合同里同时写了"壹拾万元整"和"80,000.00",想确认对不对得上
- 定稿前想扫一遍
XXX、TBD、__、待填这类占位符有没有清理干净 - 想在签约前拿一份"哪些地方前后打架"的清单,自己再判断怎么改
这个免费版查什么
| # | 检查项 | 判定依据 |
|---|---|---|
| 1 | 当事方名称不一致 | 同一角色在正文/签署栏出现的名称不同;签署栏与正文的当事方对不上 |
| 2 | 日期矛盾 | 非法日期(如 2026-02-30);签订晚于生效;到期早于生效或签订;同一语义日期有两个值;同一组年月日两种互斥写法 |
| 3 | 金额矛盾 | 中文大写/英文文字金额与阿拉伯数字不符;分项相加 ≠ 声明的合计;同一金额表述出现两个数值 |
| 4 | 占位符残留 | XXX、TBD、N/A、【…】、__、[ ]、{{var}}、待填、此处填写、____ |
| 5 | 条款交叉引用失效 | 引用了不存在的条款编号;条款编号重复;条款编号跳跃 |
| 6 | 定义词卫生 | 定义了却再没用过的术语;反复使用却从未定义的术语 |
中英文合同都支持。每条 finding 都会引用出问题的原文、数字或行号,不会只说"这里可能有问题"。
这个免费版不包含
以下检查项不在本版本范围内,调用时也不会执行:
- 违约责任与赔偿上限一致性核对
- 付款节点与比例一致性核对
- 知识产权归属与授权范围核对
- 保密期限与例外情形核对
- 争议解决与管辖条款一致性核对
- 解除与终止条件核对
- 签署权限与主体资格核对
- 附件清单与正文引用完整性核对
怎么调用
方式一:命令行脚本(最省事)
node scripts/run.mjs --sample
node scripts/run.mjs --input my-contract.json
node scripts/run.mjs --input my-contract.json --json
方式二:直接引用引擎(接进自己的流程)
脚本本身不做判断,真正的检查在同目录的 scripts/engine/contract-consistency.js(纯 Node 标准库,CommonJS),可以直接引用:
const engine = require('./scripts/engine/contract-consistency.js');
const outcome = engine.run({ text: contractText });
// outcome.status === 'success' → outcome.result 就是结果
// outcome.status === 'insufficient_input' → outcome.missing 列出缺什么(此时不出结论)
所有检查都在本机完成:核对过程不外发材料、不需要任何凭证。
入参
把合同全文放进 text(也接受 content,或直接把纯文本文件交给 --input):
{
"text": "技术服务合同\n\n甲方:北京星河科技有限公司\n乙方:上海云帆信息技术有限公司\n\n第一条 服务内容\n…"
}
返回
返回 ok: true 与 result:findings 里每一条都带 level(P0/P1/P2)、category、line、
message(写明具体是什么原文对不上)、advice 与 evidence;
summary.verdict 为 CLEAN / ISSUES_FOUND / CONTRADICTION_FOUND。
checks_given 原样列出本次实际执行了哪些检查项,checks_withheld 列出本版本不包含的检查项。
不会用默认值编造结论。
材料不足时(入参为空、只有空白、只有一个字符、类型不对、没有识别出任何合同要素)
不出结论:会说明缺什么,并以退出码 3 结束;正常执行退出码为 0。
退出码:0 已执行检查 / 1 缺少入参 / 3 材料不足 / 4 入参文件读不到或无法解析 / 9 未预期错误。
使用限制
- 在本机执行:核对过程不外发材料、没有调用次数上限,也不需要任何凭证。
- 输出的是AI核对结果,不是法律意见,不做合法性认定。
- 它只判断"前后是否自相矛盾",不判断条款是否公平、是否对你有利。
- 抽取不到的要素(例如没写金额、没写条款编号)不会被报成错误,只会体现为该检查项没有对象; 材料里一个可核对要素都没有时,工具会直接说"材料不足",而不是给一个"没问题"。
反模式
- ❌ 把
CLEAN当作"合同没问题" —— 它只说明这六项AI核对没查出矛盾,其余检查项本版本不包含。 - ❌ 拿它替代律师审阅 —— 它不看条款是否合理,只看前后是否打架。
- ❌ 输入只有一句话就怪结果没用 —— 材料不足时它会明确说缺什么(退出码 3),不会假装查过了。
- ❌ 把 findings 当成"必须改"的强制结论 —— 每条都附了原文证据,你先核对证据,再决定改不改。
需要完整档时(可选)
本免费版是完整可用的核心产出,本版本不包含下面这些项:
- 违约责任与赔偿上限一致性核对
- 付款节点与比例一致性核对
- 知识产权归属与授权范围核对
- 保密期限与例外情形核对
- 争议解决与管辖条款一致性核对
- 解除与终止条件核对
- 签署权限与主体资格核对
- 附件清单与正文引用完整性核对
同名工具的完整档是另一个独立商品(条款与条件以它自己的商品页为准);两档的差别就是上面这些,没有别的。
边界与免责
只做AI一致性核对,不构成法律意见、不做合法性认定、不评估商业条款是否公平。
本技能的所有结论都可由第三方用同一份输入复算出来。
