据雷峰网10月19日报道,随着Claude生成代码量快速上升,Anthropic已用自研版本控制系统Scion替换Git,并将核心代码仓库迁移过去;同一时期,GitHub在密钥扫描中用微调后的ModernBERT替代通用LLM判断。围绕人类开发节奏设计的工具链,正在承受AI Agent带来的新负载。

今年5月,Anthropic日均合并约2500项代码变更,到9月已超过3万项,仅CI系统每天就要执行约2500万次代码检出。Anthropic主分支历史接近100GB,压缩工作副本超过25GB;若这些检出都获取完整副本,理论流量会超过600PB。Git的分布式设计让工程师克隆仓库后可离线提交、合并和查看历史,但Anthropic大量读取代码的任务是始终联网的CI作业和运行几分钟便销毁的Agent沙箱,往往只需要几个文件、一份diff,或确认两个提交的祖先关系。为这些操作准备本地仓库,重复成本越来越高。

7名Anthropic工程师花了5个月开发出Scion。Scion将客户端缩成轻量入口,提交创建、合并、变基与历史查询放到中心服务,本地仅监测文件变化、维护少量缓存,需要工作目录时按需展开;CI若只想计算diff,可以直接调用API,无须完整检出。其changeset以预写日志条目记录相对首个父提交修改过的文件,通过内容寻址指针引用数据,只有main等引用更新时才对Spanner中的单行记录执行compare-and-swap。Scion还为blame、路径历史与提交图跳表维护derived data。Anthropic称缓存命中率超过99%,迁移后Scion相较旧Git镜像体系的CPU和内存需求约缩小200倍,检出从分钟级降至秒级,CI释放约25%的CPU容量。这里的200倍指基础设施资源占用,并非Git操作整体提速。

GitHub则把密钥扫描中的高频判断交给分类器。正则表达式仍作为候选入口,微调后的ModernBERT读取候选字符串、密钥类型、变量名、文件路径和附近代码,输出风险分类得分,再由阈值决定是否告警。GitHub将产品反馈、人工标注、真实仓库中的高召回候选和合成困难负样本组合起来训练,并按仓库、候选值和关联关系划分训练与评估集;部署时模型导出为ONNX并进行8位量化。相较旧LLM管线,新方案离线Precision提高13%,Recall提高19%;线上A/B实验显示,Post-push扫描执行时间中位数下降86%,模型服务成本下降超过98%,按仓库所有者加权的告警接受指标提高11.5%。98%指模型服务费用,并非整套安全系统的总成本,分类器也只能判断正则找到的候选。

在芯片验证场景,哥伦比亚大学与Google DeepMind等机构通过BTTF把仿真波形转换成SQLite。VCD、FSDB波形记录大量信号随时间变化的状态,复杂设计的转储可达数十GB甚至TB级,Agent若直接读取文本,上下文很快会被时间戳、信号名和重复跳变占满。BTTF用signal_metadata保存信号名称、类型和层级,用signal_changes记录信号ID、时间戳和变化后的值,两表通过ID关联,Agent以SQL查询异常区间。研究团队在4.2GB波形、18450个信号和150条专家标注查询的实验中取得95.33%的执行准确率;Multi-Agent质量评分比单Agent提高17.3%,平均延迟增至约1.96倍,静态SVA检查准确率为84.62%。

源码检出问题解决后,Anthropic又遇到新的交付压力:一轮测试尚未结束,主分支可能又合入数百甚至数千项修改。继续依赖全局锁会让变更积压,放开并发又可能使测试对应的代码状态与部署版本出现差异。CI需要识别源码与依赖变化,把测试记录关联到具体提交和构建产物,并判断哪些验证结果可以复用。对普通团队而言,先完善依赖分析、增量测试和构建缓存,比直接重建版本控制系统更现实。