惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

U
Unit 42
Microsoft Azure Blog
Microsoft Azure Blog
Engineering at Meta
Engineering at Meta
博客园 - 【当耐特】
人人都是产品经理
人人都是产品经理
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
WordPress大学
WordPress大学
有赞技术团队
有赞技术团队
Blog — PlanetScale
Blog — PlanetScale
酷 壳 – CoolShell
酷 壳 – CoolShell
aimingoo的专栏
aimingoo的专栏
Jina AI
Jina AI
小众软件
小众软件
博客园 - 叶小钗
MongoDB | Blog
MongoDB | Blog
大猫的无限游戏
大猫的无限游戏
博客园 - 聂微东
Y
Y Combinator Blog
云风的 BLOG
云风的 BLOG
I
InfoQ
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Martin Fowler
Martin Fowler
P
Proofpoint News Feed
MyScale Blog
MyScale Blog

程序员

V2EX 看到讨论"跨域"的帖子,那个她好像回来了 codex 今天真的是不稳定呀。 火山方舟 Coding Plan 慎买 刚问了大家 openclaw 和 hermes 在什么机器上面玩,求推荐一个机器 GPT-image-2 生成 AI 图片防伪有感 codex pro 5 小时限制已经严重缩水 逆天 Antigravity 动态 JSON 序列化对强类型语言很难吗? 自建了 GPT Coding Plan,遇到了定价问题,请教大家 大家都是在什么设备上玩 openclaw 以及 hermes 的呀? 软考还有一个月就考试了,你们学习了吗? 大伙用 AI 会考虑在 user scope 的 CLAUDE.md/AGENTS.md 里交代 AI 说中文吗 我发现程序员这个群体很大部分其实挺抠的 最近使用 cc 总会莫名其妙的返工, codex 不会 目前体验最好的远程 vibe 工具 想知道大佬们抓包遇到 ssl pinning 都是咋优雅的 解决的? 工业软件的大佬们是怎么 vibe coding 的 最近 chrome 是不是有 bug 啊,一搜索就卡住 分布式异步系统在 vibe coding 下的困境 PHP Native AOT 编译器,支持将 PHP 代码编译为可执行文件,运算性能提高 150 倍 没想到 2026 年,还要浪费大量时间在跨域问题上 DeepSeek V4 这周会出吗? 中转站正式试营 欢迎试用 不掺不假 小米 mimo 升级 v2.5,并且重置了额度 Jenkins, SCM 轮询完全不工作是啥问题啊 赛博斗蛐蛐, AI 模型的简单对比(白嫖版) 使用中转站要擦亮眼睛!不说别的,倍率计算 充值好乱。 买了火山的 Coding Plan 测试得出计费模式 给我的 AI 生成了简历和状态卡, 大家帮忙看下 Ta 能找到啥样的
我做了个工具防止 AI agent 在不熟悉的代码里乱改 — 找几个内测
huoru · 2026-05-06 · via 程序员

最近 dogfood 一个工具叫 mainline ,分享一下做这个的真实故事,顺便看 V2EX 上有没有人感兴趣内测。

起因

我在公司推团队用 AI 编程,作为 staff engineer 写过内部 guideline 。过程中发现一个反复出现的现象:

AI agent 写出的代码不是"明显错"——是"看起来合理,但基于错误的历史前提"。

具体例子:

repo 里有个半成品的 Redis 队列:redis.go 、TODO 注释、docker-compose 里也配了 redis 。Claude Code 看到这些,合理地想把这个实现完。

但实际情况——这个团队 3 周前已经放弃 Redis 了,因为 replication 延迟导致 billing 事件重复。这个决定散在某个 PR 评论里、Slack 几条消息、几个工程师脑子里。

代码搜索能看到 redis 文件——但看不到那个决定

先尝试过现成方案

  • AGENTS.md / CLAUDE.md 写 not-todo——能写"don't use redis",但只解决你能预判到的。新决定一直在产生,没人持续维护。
  • ADR / RFC——太重,团队不愿意写
  • Wiki / Notion——和代码不同步,过半年 wiki 还说"我们用 Redis"
  • PR description——埋在 GitHub 里,agent 不会主动去翻
  • Agent harness 自带 memory (比如 jcode )——work ,但 lock-in 到那个 harness

每个都在某些场景下 work——但都没解决"agent 改不熟悉的代码前能拿到团队的真实决策"这个问题。

做了什么

mainline 的 thesis:决策记忆应该是 git 一等公民。

具体设计:

  1. 每个 dev 有自己的 actor log ( refs/heads/_mainline/actor/<id>),append-only 。Bob 、Alice 各自 push 自己的,不冲突。
  2. Sealed intent 通过 git notes 关联 commit 。
  3. SealResult 是结构化字段:what / why / decisions / rejected_alternatives / risks / architectural_claims 。
  4. Agent 改代码前先 mainline context <keywords>——拿到结构化决策,不是一坨 free text 。
  5. 跨人 in-flight 可见——Bob sealed 立刻 push ,Alice fetch 时看到,不等 PR review 才发现冲突。

设计上反直觉的几个选择

  • 进程式 CLI ,不是 daemon 。Git AI 走 daemon 路线,撞了一堆 macOS sleep / zombie / socket 问题。Git protocol 已经 battle-tested ,不要发明轮子。
  • Intent 级别,不是 line 级别。Line-level attribution 在 formatter / amend / git mv 下天然脆弱。Intent 是任务级别,文本变换不影响 semantic 。
  • Push 模式( agent 主动 seal ),不是 pull / 自动 capture 。自动 capture 听起来好,但产生大量 noise + 假记忆。显式 seal 有 friction ,但保证质量。
  • Append-only ,sealed 后不能改——只能 supersede 。决策档案改了就失真,"当时怎么想"不可篡改才有价值。

现状

局限我也直接说

  • 需要 agent 配合主动调用 mainline 。如果你团队没这个习惯,价值发挥不出来。
  • AGENTS.md 重——多了 seal 这一步。
  • 比 jcode 这种 agent harness 内置 memory 的"自动"差,但换来的是数据在 git 、跨 agent 、可移植。
  • 单人 + 好 git 习惯 + 写好 plan ,你不需要 mainline 。

适合谁试

  • 5+ 人团队,多个 agent ( Claude Code / Cursor / Codex 都行)在同一 repo 工作
  • 跨时间工作多——3 个月前的决定还在影响今天的 PR
  • 已经被"agent 在不该改的地方乱改"坑过

找内测

如果上面场景命中你——欢迎私信或评论,我直接给你安装包 + 文档 + 每周一次 30 分钟同步。bug 我会优先 fix 。

也想听 V2EX 上的反馈——有没有更好的现有解决方案我没想到的?有没有觉得这个方向不对的?

不卖东西,纯粹想找几个深度用户 + 听不同视角。