受够所有AI编程助手,游戏开发大佬自己写了一个编码代理

当资深开发者对所有AI编码代理说"不"
一位来自奥地利的资深游戏开发者Mario,在2025年4月被朋友(Flask和Sentry创始人Armin Ronecker等人)安利了AI编码代理后,花了24小时沉浸在Claude Code等工具中。从此一发不可收拾——但不是因为爱上了它们,而是因为他对市面上所有编码代理都感到不满,最终决定自己动手写一个。
这个项目就是 Pi——一个极简、可扩展、以开发者控制权为核心的编码代理框架。在伦敦的一次技术演讲中,Mario详细分享了他对现有工具的深度批评,以及Pi背后的设计哲学。
AI编码工具演进简史:从复制粘贴到智能体时代
回顾AI编码工具的演进路径,大致经历了几个阶段:
- 2023年:从ChatGPT复制粘贴代码,大部分只能处理单个函数
- GitHub Copilot时代:集成在VS Code中,点击补全,有时管用但大多数时候不行,偶尔还会背诵GPL代码(比如John Carmack的平方根倒数算法)
- Aider时代:早期的命令行编码助手
- 2024年底至2025年初:Claude Code横空出世,真正开创了"智能体编码"这个品类
Claude Code的核心创新在于:不像传统工具那样深入解析AST(抽象语法树)来索引代码库,而是通过强化学习训练模型,让它们使用文件工具和Bash工具即时探索代码库,找到需要理解和修改的位置。传统的代码索引工具(如Sourcegraph、ctags等)通过解析AST来建立代码库的结构化索引,这种方式虽然精确但维护成本高,且难以捕捉代码的语义关系。Claude Code采用了截然不同的策略:通过强化学习(RLHF/RLAIF)训练模型学会使用文件读取、grep搜索、Bash命令等基础工具来动态探索代码库。这本质上模拟了人类开发者理解陌生代码库的过程——先看目录结构,再grep关键词,逐步深入相关文件。这种方法的优势在于不需要预先构建索引,对任何语言和项目结构都能适应,效果出奇地好。
Claude Code的致命短板:为什么资深开发者选择放弃
Mario承认Claude Code是品类领导者,团队也非常优秀。但随着深入使用,他发现了几个严重问题。
功能膨胀:太空飞船综合症
因为Claude Code能写大量代码,团队就不断往里塞功能。最终产品变成了一艘"太空飞船"——用户可能只用到其中5%的功能,只了解10%的内容,剩下90%就像"AI中的暗物质",没人知道它在做什么。

上下文管理的黑箱操作
2025年夏天,Mario构建了一系列工具来拦截Claude Code向后端发出的请求,发现它在用户背后偷偷注入了大量额外文本到上下文中。更糟糕的是,这些注入内容几乎每天都在变化——新版本会改变注入的时间点和内容,直接打乱用户已建立的工作流。
"你正在用这个新工具工作,试图创建可预测的工作流,然后工具供应商在底层改了一点点小东西,就让LLM在你现有的工作流上发疯。这根本不可持续。"
终端UI的性能问题
Claude Code团队曾自豪地称他们的终端UI"成了一个游戏引擎"。作为有游戏开发背景的Mario对此颇为不满——在终端里用React重新布局整个UI要花12毫秒,而Ghosty作者Mitchell直接指出:终端可以每秒渲染几百帧,每帧不到一毫秒,"是你的代码太烂了"。
其他AI编码工具同样问题重重
OpenCode:架构和安全隐患
Mario也尝试了OpenCode这个开源编码框架,但发现了几个令人担忧的问题:

上下文管理粗暴:每次交互都调用SessionCompaction.prune,修剪最后四批Token之前的所有结果,直接导致Prompt Cache失效。Prompt Cache(提示缓存)是大模型API提供商的一项关键优化技术——当连续请求共享相同的前缀内容时,API可以复用之前计算的KV Cache,大幅降低延迟和成本。Anthropic的Prompt Caching可节省高达90%的费用。OpenCode每次交互都激进地修剪上下文,意味着每次请求的前缀都会发生变化,导致缓存命中率骤降。对于编码代理这种需要频繁多轮交互的场景,这不仅意味着更高的API费用,还意味着每次响应都要等待完整的推理计算,严重影响开发体验。
架构设计欠考虑:每条消息都变成磁盘上独立的JSON文件,暗示整体架构缺乏深思熟虑。
安全漏洞:默认内置的服务器-客户端架构存在远程代码执行漏洞,而且这个问题开放了很长时间未修复。
LSP集成的陷阱
一个特别有洞察力的观点是关于LSP(语言服务器协议)集成的。LSP是微软在2016年为VS Code设计的开放协议,旨在将编程语言的智能功能(代码补全、跳转定义、错误诊断等)与编辑器解耦。LSP服务器持续监控文件变化并实时报告诊断信息(如编译错误、类型不匹配等)。在人类开发场景中这非常有用,但对AI智能体来说却产生了一个严重的时序问题。
当智能体需要编辑多个文件时,第一次编辑后代码几乎不可能编译通过。比如重命名一个接口,第一个文件改完但引用它的文件还没改,此时必然存在编译错误。如果每次编辑后都让LSP报告错误并反馈给模型,模型会产生"我还没编辑完你就告诉我错了"的困惑,频繁这样做会导致模型直接放弃正确的重构计划,转而尝试错误的"修复"。正确的做法是只在自然同步点(智能体认为自己完成时)才进行代码检查,让智能体有机会完成完整的跨文件修改后再评估结果。
TerminalBench揭示的真相:模型真的需要那么多工具吗?
一个关键转折点来自TerminalBench——一个包含约82个多样化任务的智能体评估框架。

排行榜上表现最好的框架之一是Terminus,它给模型的接口极其简单:只有一个TMUX会话,模型只能发送按键并读回终端的VT码序列。TMUX(Terminal Multiplexer)是一个终端复用器,允许用户在单个终端窗口中管理多个会话。Terminus框架仅给模型提供TMUX的send-keys和capture-pane两个操作——前者模拟键盘输入,后者读取终端屏幕上的VT100/VT220转义序列(即终端显示的原始字符流)。没有文件工具,没有子操作,没有网络搜索——什么都没有。这意味着模型必须像人类一样"看"终端输出并"敲"键盘。但它的性能名列前茅。
这个发现意义深远:所有那些花哨的编码工具功能,可能并不是让智能体获得良好结果的必要条件。 它从根本上挑战了业界"工具越多越好"的假设,暗示前沿模型的通用推理能力已经强大到可以用最基础的接口完成复杂任务。
Pi的设计哲学:极简、可控、可扩展
基于以上所有观察,Pi的核心理念是:让编码代理适应你的需求,而不是反过来。
极简核心:只保留四个内置工具
Pi只有四个内置工具:读文件、写文件、编辑文件、运行Bash。没有MCP,没有子智能体,没有计划模式,没有后台Bash,没有内置待办事项。
系统提示词也极其精简——因为前沿模型经过大量强化学习训练,已经知道编码代理是什么,不需要反复告诉它们。

用简单方案替代复杂功能
- 替代子智能体:用TMUX重新启动智能体,你可以完全控制输入输出
- 替代计划模式:写一个plan.md文件,持久化且可跨会话复用
- 替代后台Bash:同样用TMUX
- 替代内置待办:写一个todo.md文件
高度可扩展的插件系统
Pi的杀手锏在于其扩展系统。用户可以通过简单的TypeScript文件扩展工具、自定义UI、编写技能、修改提示模板和主题。所有扩展都支持热重载——智能体修改扩展后立即生效。
实际案例包括:自定义压缩策略、权限门控(50行代码实现)、通过SSH在远程机器上工作的工具版本(5分钟实现)、多智能体聊天室、甚至在智能体运行时玩小游戏的扩展。
默认YOLO模式的理由
大多数编码代理要么让智能体为所欲为,要么每步都问用户确认。Mario认为后者会导致"审批疲劳"——这类似于安全领域的"告警疲劳"现象,人们要么完全关闭确认进入YOLO模式,要么坐在那里不停按回车什么也不看。YOLO模式(You Only Live Once)指智能体无需人类逐步审批即可自主执行所有操作,包括文件修改和Shell命令。Pi默认采用YOLO模式,如果担心安全问题,建议使用容器化隔离而非对话审批——使用Docker或类似技术将智能体的执行环境限制在沙箱中,即使智能体执行了破坏性操作也不会影响宿主系统。这是一种"防护栏"思维而非"审批门"思维,在安全性和效率之间取得了更好的平衡。
开源治理的新挑战:如何应对AI生成的低质量PR
Mario还分享了一个有趣的开源治理经验:大量AI生成的低质量PR涌入仓库。随着AI编码工具的普及,开源项目维护者面临一个日益严峻的挑战——这些PR通常表现为代码看似合理但缺乏对项目上下文的理解、提交信息模板化、无法回应维护者的代码审查意见、甚至修复了不存在的问题。这不仅消耗维护者的审查精力,还稀释了真正有价值的社区贡献。
他发明了"OSS假期"概念(定期不处理issue和PR),并实现了一种访问控制方案——提交PR前必须先用"人类的声音"提交一个简短issue进行自我介绍,账户名被加入白名单后才能提交PR。这本质上是一种社会工程学解决方案,通过要求贡献者先用自然语言描述自己和意图来过滤纯机器人提交。Ghosty的作者Mitchell后来将这个思路发展成了一个名为Vouch的项目,建立了一套基于社区信任网络的贡献者验证体系。
少即是多:Pi证明极简编码代理同样强大
Pi的故事反映了AI编码工具领域的一个深层矛盾:我们仍处于摸索阶段,没人知道完美的编码智能体应该是什么样子。在极简主义和全功能太空飞船之间,在完全自主和人类控制之间,行业标准尚未形成。而Pi选择了一条独特的路径——提供最小化的可扩展核心,让每个开发者按自己的方式探索答案。在TerminalBench上,Pi配合Claude Opus已经取得了接近顶尖的成绩,证明了"少即是多"的哲学确实可行。
核心要点
相关推荐

GML 5.2多模态升级实测:DeepSeek V4全面跑通验证
基于OneBlockBase平台实测GML 5.2与DeepSeek V4多模态升级,详解视觉识别与文本协同工作流搭建、前置拦截安全机制、界面生成效果及部署配置要点,验证纯文本模型通过工作流编排升级多模态的可行方案。

DeepSeek+Cline配置教程:10元替代月费20美金的AI编程方案
详解DeepSeek API搭配VS Code插件Cline的完整配置流程,包括API Key获取、Plan/Act双模型策略、项目管理文件体系等进阶技巧,10元充值即可获得接近顶尖水平的AI编程体验。

5步让Codex接入DeepSeek,无需GPT账号也能用
详细图文教程:通过CC Switch中转工具,5步将Codex接入DeepSeek API,无需GPT账号即可使用AI编程助手的全部功能,包括代码补全、技能插件等,成本更低体验无损。