Install
openclaw skills install @yottameta/yotta-compliance合规条款审查(元规)—— 对文本 / Markdown 做确定性合规条款审查:内置 PIPL 与数据出境基础规则包,逐条给出原文位置、命中规则、框架覆盖级别与来源条款;支持 Markdown / JSON 报告与 CI 闸门,零依赖本地运行,核心不联网、不调用模型,不构成法律意见。
openclaw skills install @yottameta/yotta-compliance本地、确定性、可复算的合规条款审查技能。元规对文本或 Markdown 执行规则匹配、断言求值与证据抽取, 输出带原文位置、命中规则、框架覆盖级别与来源条款的审查报告。
可信契约:
mapping_only 框架只做主题映射,不输出该框架的独立合规结论;Do NOT trigger:
mapping_only 描述为“已审查该框架”;Windows 使用 python,Linux / macOS 使用 python3。
# 审查一个文本 / Markdown 文件(默认装载 pipl + data-export)
python3 scripts/yotta_compliance.py review --input contract.md
# 只审查 PIPL 包
python3 scripts/yotta_compliance.py review --input contract.md --frameworks pipl
# 输出 JSON,并在达到 high 时返回退出码 1
python3 scripts/yotta_compliance.py review --input contract.md --format json --gate high --out report.json
# 从标准输入读取
python3 scripts/yotta_compliance.py review --stdin --frameworks pipl,data-export
# 规则包操作
python3 scripts/yotta_compliance.py rules list --framework pipl
python3 scripts/yotta_compliance.py rules show PIPL-NOTICE-001
python3 scripts/yotta_compliance.py rules validate --pack rules/pipl.json
报告默认写 stdout。只在显式提供 --out 时写文件,输出路径不得与输入文件相同,也不得写入规则包目录。
| 命令 | 说明 |
|---|---|
review --input <file> | 审查 UTF-8 .txt / .md / .markdown 文件 |
review --stdin | 从标准输入读取文本 |
review --frameworks <list> | 选择规则包,逗号分隔;缺省装载全部规则包 |
review --format md|json | 输出 Markdown(默认)或 JSON |
review --out <file> | 写报告文件;缺省写 stdout |
review --gate <level> | CI 闸门:off / low / medium / high / critical |
review --min-severity <level> | 只输出达到该严重度的 finding;汇总计数仍保留全量 |
review --include-safe | 在 JSON summary.checked_rules 与 Markdown 未覆盖范围中列出已检查未命中的规则 |
rules list | 列出规则包与规则 |
rules show <rule_id> | 查看单条规则的说明、建议、来源与测试用例 |
rules validate --pack <file> | 校验规则包;不合规立即失败 |
| 退出码 | 含义 |
|---|---|
| 0 | 审查完成,未超过 gate |
| 1 | 审查完成,存在达到 gate 的 finding |
| 2 | 输入缺失、编码错误、路径不可用或超出输入上限 |
| 3 | 规则包缺失、schema 无效或重复 rule_id |
| 4 | CLI 用法错误 |
当前正式规则包:
| 规则包 | 框架 | 覆盖级别 | 规则数 |
|---|---|---|---|
pipl | PIPL | baseline_review | 11 |
data-export | 数据出境 | baseline_review | 4 |
GDPR / HIPAA / SOC2 / PCI-DSS / ISO27001 / 等保 当前为 mapping_only:
只把基础规则映射到对应主题,不输出这些框架的独立合规结论。
完整规则清单、主题映射与明确未覆盖范围见 references/coverage.md。
Markdown 报告固定包含七节:
JSON 报告固定提供稳定机器契约:schema_version / tool / tool_version / generated_at /
input / rule_packs / framework_coverage / summary / findings / review_items / disclaimer。
字段语义与证据结构见 references/report-format.md。
示例(对一份缺少多项护栏的隐私说明运行默认规则包):
- 本次输出 11 条发现(全部 11 条)
- high:3 条
- medium:4 条
- low:4 条
- 已检查规则:15 条 | 命中规则:13 条
实际结果取决于输入内容与所选规则包,示例数字不作为固定输出。
规则包是版本化 JSON 数据,包含 pack 元信息、条款类型词表、规则列表和可选的主题映射。
每条规则必须声明 test_ids,且正式规则在发布前必须配有正例、反例和边界例。
每条 finding 固定包含:
finding_id、rule_id、severity、confidence;framework_mapping(基础框架与 框架:mapping_only 标签);evidence(matched_span 带原文 quote 与起止行列;document_scope / section_scope 只给范围);rationale、remediation、source。规则编写、断言契约与验收要求见 references/rule-authoring.md。
scope 均为 document,任何位置出现检索词即视为已出现,不判断该表述是否适用于当前处理活动。保存期限:N年 可解析;中文数字(如“三年”)不解析、不换算。--out,报告只写 stdout;mapping_only 框架不得被解读为已完成合规审查;# 全量契约测试(技能目录内)
python3 scripts/test_yotta_compliance.py
# 规则包校验
python3 scripts/yotta_compliance.py rules validate --pack rules/pipl.json
python3 scripts/yotta_compliance.py rules validate --pack rules/data-export.json
# 语法检查
python3 -m py_compile scripts/yotta_compliance.py
references/rule-authoring.md — 规则包 schema、匹配原语、断言契约与规则验收;references/report-format.md — Markdown / JSON 报告契约、字段语义与退出码;references/coverage.md — 当前框架覆盖、规则清单、主题映射与明确未覆盖范围。本工具提供基于确定性规则的条款审查建议与证据链,不构成法律意见。