⚖️
global-law:把全世界法律做成一个 git 仓库
674 个子仓 · 34 万 commit · MCP 可查询 · CC0
1652★
CC0
仓库规模
341,120 commit
674 子模块 · 223 国家目录
核心能力
MCP 自然语言查法
154KB server · 本地运行不联网
最大落差
211 国只有 52 国有料
「全世界」目前是目录,不是数据
🔥 把「法律」当成代码来版本控制,这个想法被真做出来了
先说它到底在干什么:每个国家的法律单独一个 git 仓库,每一条法律生效就是一次 commit,主仓把 674 个子仓的历史按生效时间交织排序。于是「某国某年某日的法律原文是什么」,变成了一个 git checkout <日期> 的问题。项目 2026-10-28 上线,五天涨到 1652 star,README 说它是美国法典项目的扩展版(那个曾登上 Hacker News 首页第一)。我抽了德国仓的真实文件验证,不是占位符:
- 德国《基本法》第一条:
Die Würde des Menschen ist unantastbar...原文准确,格式规范; - 《1 马克金币法》:真实法条,含授权主体、发行年份、铸造上限;
- 德国单个子仓就有 87,178 个 md 文件、137 MB,主仓累计 341,120 条 commit。
📋 四个真正硬核的设计
- MCP server 是完整实现,不是空壳:
tools/mcp_server.py有 154 KB,另配build.py49KB、law.py23KB、check_corpus.py11KB。纯 Python 3.10+ 加 git,本地 stdio 运行,不联网、不改文件,每条回答都会标明该记录的起始与终止日期; - 历史可信度分级:
manifest.json给每个语料标history字段——in-force(有官方日期的权威版本,23 个)、replayed(按修正案回放重建,标注校验过哪些日期,6 个)、current-only(只有今天文本,查历史会警告,5 个)。它没有假装所有历史都同等可靠; - CHANGELOG 敢量化自己的 bug:亚美尼亚语料因大写条文标题未被识别,500 份抽样缺 0.014%、多 0.019% 文本,标
Open说明正在重建;德国首次全量构建时 3,118 个 commit 的作者名被写成index.md(文件循环复用了作者变量),已修复并加入检测; - 可复现性有据可查:
REPRODUCE.md22 KB,写了怎么从原始来源重建每个语料;LICENSE.md明确区分「主仓 CC0」与「各子仓法律文本各自许可」。
📊 实测速查大表:宣传 vs 现状
⚠️ 四个必须知道的落差
🚨 「全世界法律」目前是目录结构,不是数据现状
- 近一半国家连 corpus.json 都没有:
awaiting_corpus_json55 国、not_pinned3 国。README 自己承认法国只有jurisdiction.json和SOURCES.md,没有任何历史数据; - 覆盖深度极不均匀:少数国家有整部法典(捷克、西班牙、瑞士、格鲁吉亚、马耳他),美国只有《美国法典》九个编,英国只有特殊教育需要法一部。用之前必须先看 manifest 里该国的
coverage和history; - 65 个语料带警告:107 个语料里 65 个有
warnings,最常见是「corpus.json 没有引用规则,法条引用无法识别」——这意味着 MCP 的引用功能对多数国家实际失效; - 34 万 commit 不等于 34 万个法律事件:那是 674 个子仓交织后的结果。CHANGELOG 里已经写明「超过约 150 MB 的历史推不上 GitHub,要分批推临时分支再
push --force --mirror」——任何数据修正都要重写大量历史,而维护者只有一个账号。
💡 想上手的三条实操建议
- 先浅克隆主仓看结构,别一上来就
--recurse-submodules:674 个子仓加起来是 GB 级,德国单仓就 137 MB。先git clone --depth 1拿主仓,读manifest.json确认目标国家有没有料; - 查某国前先核
history字段:如果该国标的是current-only,那它只有今天的文本,查历史日期会得到错误答案(工具会警告,但容易被忽略); - 商用前逐国确认许可:主仓 CC0 只覆盖目录树、manifest、工具和文档。法律文本在各子仓,各带自己的 LICENSE。README 明确说「法律文本在很多国家无版权,但不是所有国家」——这句话不能跳过。
🎯 值得关注,但别当权威数据库用
- 🔥 做法律科技产品的:MCP 接口 + git 历史这套抽象是对的,可以作为自建法律语料库的参考架构;
- 📚 研究法律演变的:德国《基本法》这类
in-force语料质量很高,适合做条文级的时序分析; - 🧪 想学 MCP 工程实现的:154 KB 的
mcp_server.py是一个真实规模的 MCP 服务样本,比官方 demo 有参考价值; - 🚫 需要「准确答案」的生产场景:别直接用。近一半国家没数据、65 个语料带警告、维护者只有一人。涉及真实法律判断时,回到各国官方公报;
- 🚫 想查中国法律的:先确认该国有无
corpus.json,别默认「全世界」包含你要的那个国家。
一句话总结:这是把「法律可编程」认真做到工程层面的项目——不是概念演示,是真的有 87,178 个德国法条文件躺在仓库里。但它的诚实也恰恰体现在数据里:211 国只有 52 国有料、65 个语料自带警告、连自己的 bug 都量化到小数点后三位。把它当架构参考和实验样本,别当权威法源。真要查某国法律,先看 manifest,再回官方公报核对。