⌕ ESC
↑↓ 选择↵ 打开esc 关闭⌘K 唤起
← 主页 NO.267
专栏 · Agent 工程手艺 ›
第 267 期 · AGENT 工程 · 收录于 2026 年 10 月 13 日

AI 编码 Agent 正在搞坏大型代码库——Dan Adler(Sourcegraph)

DA
Dan Adler · AI Engineer
Agent 工程
视频 12:22 原文约 1.1 万字 预计阅读 13 分钟 来源视频 ↗ 中英对照全文
TL;DR · 三句话
  1. 一提速的工具就是致病的工具:Sourcegraph 的 CEO Dan Adler 认为,coding agent 写代码越多越快,支撑世界运转的几十年老代码库就腐坏得越快——标准漂移、重复代码扩散、跨服务依赖变脆、新漏洞不断冒出来,病根是代码的量。 → 详细
  2. 二看不见的东西 grep 不到:agent 靠一路搜索来理解代码库,可几万到几十万个仓库既塞不进上下文、也没法实时全量搜;他的论点是「可见性就是基础设施」,而这一层他称 OpenAI、Anthropic、Cursor 都没在造。 → 详细
  3. 三后半是自家产品发布:Agentic Batch Changes 在演讲当天进入 beta——一条 prompt 起步,把同一个改动铺到成百上千个仓库,需要判断的地方用 agent、其余用确定性脚本,并追踪覆盖率;Mercari 的抢先用户修完两个仓库后再扫全公司,Dan 口述说找出 80 个潜在漏洞,幻灯片上当事人写的是约 80 个可能受影响的仓库。 → 详细
01

Sourcegraph 的 CEO 替「背着几十年老代码库的人」说话

  • 讲者与立场:Dan Adler 是 Sourcegraph(做代码搜索与代码理解工具)的 CEO。前半讲行业问题、后半发布自家产品,数字和案例都是厂商口径,两句高管引语是匿名转述、无从核实。幻灯片标题页上写着的现场原题是「The Enterprise Agentic Gap: The wall dev tools run into at millions of lines of code」,和 YouTube 标题不同;画面外框写着录制日 2026 年 6 月 30 日。 → 详细
  • 要讲的事与替谁说话:拥有庞大代码库是一份「不光鲜、却在承重」的工作,AI 编程工具让它更难、也更重要。Dan 称软件行业 72% 的就业在 500 人以上的公司(只有口述,幻灯片上没有),它们管着成千上万个仓库、背着几十年的代码历史;在当红创业公司上班的同行很少,靠社交信息流吃饭的一人创业者更少。 → 详细
  • 这些老代码库在干什么:银行实时拒掉超限交易、保险公司算双重保障的报销比例、Amazon 靠芯片和仓库扫码枪报出袜子哪天到、Uber 估到达时间、飞机用雷达调航线、发工资、办公室空调自动开。 → 详细
02

代码海啸扑过来,老代码库开始悄悄腐坏

幻灯片大字:But these codebases are decaying – quietly, and at record speed ▲ 图注:这一页幻灯片只有这一句大字,配红色与灰色的方块图案,没有症状清单——下面的四种症状都是 Dan 口述的。

  • 海啸:coding agent 写得更多、更好、更快,Dan 说一场代码海啸正冲着你的代码库和只求别被淹没的工程师来;人人都在 review(评审)AI 生成的代码,筋疲力尽。 → 详细
  • 现有对策只是垒沙袋:code review agent、代码库健康度工具已经有了,主流 coding agent 会吸收这些能力、模型也会变好——他统称为「垒沙袋」「一个又一个局部最优」。 → 详细
  • 为什么挡不住:几百万行代码、几万个仓库,塞不进上下文窗口(模型一次能读进去的文本上限),连实时 clone 下来 grep(按关键字全文搜索)一遍都做不到。 → 详细
  • 腐坏的四种症状:全是口述,这页幻灯片上没有清单,逐条如下。 → 详细
    • 标准漂移:新功能、新补丁以创纪录的速度发布,不同的 agent 在不同地方套用不同的编码规范,细微的偏差埋下更隐蔽的问题。 → 详细
    • 重复代码扩散:原话是 "You already have a library that does this, but your agent doesn't know that."(你早就有一个干这件事的库,可你的 agent 不知道)。 → 详细
    • 跨服务依赖变脆:服务之间的依赖越来越容易断。 → 详细
    • 新漏洞:他认为可能最要紧——agent 每天都在挖出新漏洞,谁都不愿碰的遗留代码库因此需要持续看护。 → 详细
03

「电话是从屋里打出来的」:病根是代码的量,提速的工具就是致病的工具

引语页:一位车企技术负责人转述开发者的话——I don't know what this code does, AI wrote it ▲ 图注:第一句匿名引语的幻灯片版本,署名只有 Technology leader · Top 10 car manufacturer,没有公司名和人名。

  • 病根:Dan 说拥有代码库这份工作空前地难,问题说到底出在代码的量上。他借了恐怖片里那句「电话是从屋子里面打出来的」——让我们提速的工具,同时在制造让代码库失灵的条件;幻灯片上也写着:代码的量就是问题,agent 正以前所未见的速度生产它。 → 详细
  • 第一句匿名引语(Dan 转述):某排名前十的汽车制造商的技术负责人说,「我想给我的开发者尽可能好的工具。可就在今天,我无意间听到一个开发者说:『我不知道这段代码是干什么的,是 AI 帮我写的。』」幻灯片上的版本更短(「给我的团队最好的工具」,没有「就在今天」和「帮我」),署名只有「Technology leader · Top 10 car manufacturer」。 → 详细
  • 为什么吓人:Dan 补充,写的若是车辆自动驾驶的代码、组织里还有几千名工程师要管要赋能,这很可怕。 → 详细
04

今天的 agentic 开发工具没跟上:能看懂 5 万个仓库的基础设施没人在造

  • 判断:代码库的主人「值得更好的东西」,今天的 agentic 开发工具没跟上:能看见并理解一个 5 万个仓库的代码库的基础设施,Dan 称 OpenAI、Anthropic、Cursor 等都没在做、也没在卖(点名只在口述里,幻灯片上没点任何公司)。 → 详细
  • 为什么没人做:这些 agent 解决日常小尺度问题好得不可思议、需求涨得空前,更大的问题就没人留意;幻灯片上问得更尖——增长比历史上任何公司都快,何必去建深入理解 5 万仓库代码库的基础设施。 → 详细
  • 两个用意:致敬让这些代码库活着、跑着的人(全球大多数软件工程师同行);呼吁开发工具公司、做 agent harness(套在模型外、负责调工具和管上下文的那层外壳)的人和搭基础设施的人,把看见并理解超大规模仓库的能力造出来交给 agent。 → 详细
  • 配着看:同批 264(一个大代码库的主人自己重建体系)、268(代码上了生产之后的排障);库存里可对照 ep192(编码 agent 不会自己规模化)与 ep135(验证债)。 → 详细
05

「Claude Code 能改,可我有 9 万个仓库」:改一处容易,改全量是另一回事

引语页:Claude Code 能做这个改动,但我有 90,000 个仓库要改 ▲ 图注:第二句匿名引语,署名 Technology leader · Top 10 US bank;画面上写的是 Claude Code 和 90,000 repositories。

  • 第二句匿名引语(Dan 转述):美国前十大银行之一的技术负责人说,「没错,Claude Code 是能做这个改动,可我有 9 万个仓库要改。」幻灯片上的引语与口述一致,署名只有「Technology leader · Top 10 US bank」;这家银行托管或管理的资产有数十万亿美元,是 Dan 口头补充的。 → 详细
  • 上下文:针对的是一个具体的 npm(JavaScript 的包管理生态)供应链漏洞,Dan 没展开。他的意思是:银行眼看 agent 以空前的速度挖出、又制造出新漏洞,却被告知去用 Claude Code 解决——可在 9 万个仓库里动手,先得摸清代码库怎么拼到一起、全公司的生产环境里实际跑着什么。 → 详细
06

agent 靠一路 grep 认识代码库,可「看不见的东西 grep 不到」

幻灯片标题:You can't grep what you can't see ▲ 图注:全场的核心论点页。副标题把理解代码库定性为 infrastructure problem, not a harness problem——后半句口述里没有原样说。

  • agent 的认知方式就是搜索:Dan 说关于 LLM(大语言模型)最确定的一点就是它们爱搜索——像新员工熟悉代码库,agent 靠这个建立对世界的模型。你塞进 AGENTS.md(写给 agent 看的仓库说明文件)里的架构说明,他直言「基本起不了多大作用」;agent 还是会 grep、grep、grep,一路搜出对代码库的理解。 → 详细
  • 所以瓶颈在能看见多少:他的转折是「理解是一个上下文问题」——你压根看不见的东西,是 grep 不到的。这页幻灯片的标题就是 "You can't grep what you can't see",副标题比口述多了半句:这是基础设施问题,「not a harness problem」(不是 agent 外壳的问题)——外壳调得再好,也补不了搜不到的那部分。 → 详细
  • 缺的是哪一层:能去看见、搜索并深入理解 500 个、5000 个、5 万个乃至 50 万个仓库的代码库的工具和基础设施,Dan 称今天做 agent 的人没在建,而 Sourcegraph 就是围绕这件事建起来的。 → 详细
07

Dan 的行业预测与 code graph:可见性就是基础设施

The code graph foundation 页:三栏能力架在一块底座上 ▲ 图注:上方三栏是 CODE UNDERSTANDING、CODE OVERSIGHT、CODEBASE EVOLUTION,下方底座写着 The code graph foundation 和 Universal code search + precise code intelligence。

  • 预测:庞大的代码库不会消失,未来的代码只会「多得多得多」,所以让 agent 能看见、理解并演进大型代码库的工具至关重要。 → 详细
  • code graph(代码图)是什么:代码库最底层的那张图,由搜索加上代码分析得到的「编译器级精确」输出组成(像编译器那样解析出来,而不是靠文本猜)。Dan 称这是让 agent 学会有效改代码的必要条件,并收成一句「可见性就是基础设施」(只有口述,幻灯片上没有)。 → 详细
  • 幻灯片上写着的版图(口述没逐条念):底座叫「The code graph foundation」,小字是通用代码搜索 + 精确代码智能,并标着「10+ years of investment」(加号字太小,轻度存疑);上面架着三栏——代码理解(agent 效果、开发者效率、代码复用、文档、新人上手)、代码监管(追踪代码库变更、安全、事故响应)、代码库演进(现代化改造、自动化、大规模重构)。前一页品牌页的口号是「Control your codebase」。 → 详细
08

Agentic Batch Changes:一条 prompt 起步,把同一个改动铺到成百上千个仓库

产品发布页:Agentic Batch Changes,Entering public beta, today ▲ 图注:这是文字发布页,不是产品界面。红字写着 Entering public beta, today,正文里有 hundreds (or hundreds of thousands) of repositories 和四类用途。

  • 发布了什么:演讲当天,Sourcegraph 把新产品 Agentic Batch Changes 推出了 beta 版(口述只说 beta,幻灯片上写的是「Entering public beta, today」)。Dan 把它定位成「前沿 agent」:从一条 prompt 开始,一次性在几百个、几千个仓库里执行代码改动;幻灯片上的规模写的是「hundreds (or hundreds of thousands)」,成百乃至几十万。 → 详细
  • 它怎么干活(只有口述):把改动迭代式地一步步铺开;能自愈;能响应 CI(持续集成,代码提交后自动跑的构建与测试)状态和 PR(合并请求)评论;需要判断力的地方用 coding agent,不需要的地方用确定性脚本(每次跑结果都一样的固定程序);并提供追踪和可审计性,确保凡是需要这个补丁的地方 100% 覆盖到。 → 详细
  • 幻灯片上写着的定义与四类用途(口述没念):一个「规划、执行并追踪」大规模代码改动的 agent;用途是带破坏性变更的依赖升级、CVE(有公开编号的已知安全漏洞)修复、新 API 或新库的推广、CI 流水线现代化,外加一个「and more」。 → 详细
  • 他给的理由:还是那句「归根结底这是个基础设施问题」——放到外面去的代码,得真能让代码库保持健康、顾到那些正开始散架的地方。 → 详细
09

Mercari 案例:先修两个仓库再扫全公司——那个「80」是仓库还是漏洞,两边说法不一

Mercari 引语页,署名 Patrick Klitzke · Team Lead at Mercari ▲ 图注:幻灯片上加粗的半句是 I found around 80 potential repos affected——写的是仓库,不是口述里说的漏洞。

  • 谁在用:一位抢先体验用户,来自 Mercari——Dan 的介绍是「来自日本的全球性购物工具」,代码库庞大,生产环境里跑着好几百个独立的微服务(拆成许多小服务各自部署)。幻灯片上的署名是「Patrick Klitzke · Team Lead at Mercari」,人名和头衔口述里没说。 → 详细
  • 做了什么:修一个 GitHub 的代码注入问题(必须把环境变量设置正确的那一类)。先在两个明知有问题的仓库上跑——幻灯片上写的是 Help Center 的前端和后端,一条 prompt 修好——再让它把公司其余的仓库探一遍。 → 详细
  • 那个 80 的两个版本:Dan 口述说在别处又找出了「80 个潜在漏洞」;幻灯片上当事人的原文是 "I found around 80 potential repos affected"——约 80 个可能受影响的仓库,且这半句加了粗。两边对不上,以当事人自己的话为准更稳。 → 详细
  • Dan 的解读:这类问题基本是配置文件层面的事——扫一遍,再用确定性脚本一口气修掉,确保所有存在这个风险的地方改得一致、有效。他说 agent 编程时代的「信心」指的就是这个。 → 详细
  • 留给听众的一串问题:你到底有多少个仓库、多少 fork(分叉出去的副本)和拷贝?开发者带进公司的仓库,有多少正被当成库或 API 接在已上生产、而你并不知情的地方?此刻部署着哪些代码,怎么全扫一遍、全看一遍、确保都更新到位?他说这正是 Sourcegraph 想帮忙的事。 → 详细
10

闪电问答 / 收尾

本期无闪电问答。Dan 在结尾邀请观众参加 Sourcegraph 当晚在旧金山办的会后活动「Code, Cocktails & Cutovers」,让大家带上自己最棘手的代码库故事;他问了一句现场有没有问题,视频到此结束,没有录到问答。 → 详细

11

联系方式

演讲里没有给出具体联系方式——Dan 只说了一句「来找我聊」,并指向上面那场会后活动。 → 详细

接着读