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

推荐订阅源

Hacker News: Ask HN
Hacker News: Ask HN
Recent Commits to openclaw:main
Recent Commits to openclaw:main
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
C
Check Point Blog
S
Security Affairs
Hacker News - Newest:
Hacker News - Newest: "LLM"
S
Secure Thoughts
Recorded Future
Recorded Future
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
T
The Blog of Author Tim Ferriss
B
Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Google DeepMind News
Google DeepMind News
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
A
Arctic Wolf
T
The Exploit Database - CXSecurity.com
Stack Overflow Blog
Stack Overflow Blog
T
Threat Research - Cisco Blogs
GbyAI
GbyAI
AWS News Blog
AWS News Blog
MongoDB | Blog
MongoDB | Blog
Y
Y Combinator Blog
Google Online Security Blog
Google Online Security Blog
T
Troy Hunt's Blog
I
InfoQ
L
LINUX DO - 热门话题
WordPress大学
WordPress大学
C
Cisco Blogs
G
GRAHAM CLULEY
The Register - Security
The Register - Security
A
About on SuperTechFans
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Schneier on Security
Schneier on Security
Project Zero
Project Zero
H
Hackread – Cybersecurity News, Data Breaches, AI and More
P
Privacy & Cybersecurity Law Blog
Cloudbric
Cloudbric
H
Hacker News: Front Page
小众软件
小众软件
雷峰网
雷峰网
The Hacker News
The Hacker News
www.infosecurity-magazine.com
www.infosecurity-magazine.com
T
Tor Project blog
博客园 - 聂微东
N
Netflix TechBlog - Medium
V
Vulnerabilities – Threatpost
The GitHub Blog
The GitHub Blog
腾讯CDC
P
Palo Alto Networks Blog
Scott Helme
Scott Helme

InfoQ - 促进软件开发领域知识与创新的传播

Meta 收购 Manus 这事儿泡汤了 5.5万 Star 开源项目 Ghostty 被迫出走,GitHub 正在终结一代技术人的乌托邦 谷歌开源“Agent Skill 超级工具箱”,云、库、引擎、AI全线打通,开发者狂喜 Slack 长时运行多智能体系统的上下文管理方案 从 T+1 到分钟级:金城银行基于 Apache Doris 构建高可靠、强一致的实时数据平台 谷歌云推出 Agents CLI,简化 AI 智能体开发全流程 Claude官方击穿高薪、高学历的安全防线!Anthropic点名10大高危职业,但有群人暂时稳了 亚马逊云科技终止 WorkMail 服务,并将 App Runner 转入维护模式 OPPO小布记忆:全模态碎片化内容的理解与智能整理实践|AICon上海 模力工场038周AI应用周榜:工具在消失,工作流在出现 Akamai CEO Tom Leighton:Agent 时代来临,云基础设施正从“中心化”转向“分布式边缘” 日均数百亿入库背后:从“人肉调度”到K8s弹性架构,度小满金融基于OceanBase重构入库架构实践 百度文库网盘发布GenFlow 4.0:月活用户超1亿,要把网盘变成全端AI工作台 Altman 投的 Agent 终端 Warp 开源了!斩获3.5万star 哪些客户需要拒, 敢让龙虾决定吗?_AI&大模型_InfoQ 中文站_InfoQ精选视频 从开发到生产:为什么越来越多的机器学习团队纷纷迁移到 Snowflake | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 探索多智能体工作流:LangGraph Snowflake Cortex AI | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 腾讯云分布式缓存数据库:AI Agent - 从提示词工程到 Harness 工程 | 腾讯云数据库 DBTalk_腾讯_凌敏_InfoQ精选视频 基于 Streamlit 为 CSV 数据构建分析智能体 | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 AI 智能体:告别文档缺漏 | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 构建 AI 驱动的数据管道:深度探讨 Snowflake Openflow 与非结构化数据 | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 云端太贵、本地不够聪明,英特尔押注“端云混合AI”:智能体PC会替人完成工作 不到10%的存储投入,可能拖垮90%的GPU投资!IBM把AI Agent塞进存储系统,算清企业最容易忽略的一笔账 Snowpark 上手实战 | BUILD 2025_大数据_王玮_InfoQ精选视频 ClickHouse + Langfuse,构建 Agent 可观测基石 腾讯云分布式缓存数据库:Cluster Proxy 共享连接架构深度解析 | 腾讯云数据库 DBTalk_腾讯_凌敏_InfoQ精选视频 AI 写代码太烧钱了:Copilot、Claude 一起涨价,不如把程序员请回来? 英特尔发布至强600系列工作站处理器与锐炫Pro B70 GPU,全新AI工作站来了 腾讯云分布式缓存数据库:从 Redis 到 Valkey - 开源社区如何快速创新 | 腾讯云数据库 DBTalk_腾讯_凌敏_InfoQ精选视频 印奇这次要“从0重做”智驾模型!首谈阶跃和千里双公司布局:中国AI商业闭环要靠车跑出来 从Cursor返聘归来,90后华裔女高管带Claude开启日更模式:token成本比工程师工资低多了! 从 Coding 到 Agent:QCon 北京 2026 全景复盘,优秀出品人 & 明星讲师名单揭晓 全链路支撑大模型国产化“Day 0适配”,商汤大装置构建全栈能力底座 凌晨,OpenAI 与亚马逊云科技史上最大联合发布来了 HashiCorp Vault 2.0 发布:引入新身份联邦机制,迈入 IBM 生命周期体系 Yelp 实现超 1,000 个 Cassandra 节点零停机升级 基于 Apache Camel 编排智能体与多模态 AI 管道 面向智能体与人类用户的AI记忆系统:架构设计与核心场景实践|AICon上海 Anthropic 推出 Managed Agents,简化 AI 代理部署流程 阿里HappyHorse开启灰测,720P视频生成低至0.44元/秒 讯飞联合清华团队押注量子AI:不看营收、不设KPI,一群“无人区”科学家,抢夺下代AI算力入口 小米万亿模型全面开源:MIT 协议、1M 上下文,但还是打不过 DeepSeek Cortex Code 入门指南:面向数据工程师的实践路径 | 技术实践 openJiuwen社区首发Team Skills,定义Coordination Engineering新范式 用 Snowflake Cortex Agents 释放结构化数据的最大价值 | 技术实践 Grafana 利用 Kafka 对 Loki 进行了架构重构,并发布了一款命令行工具,旨在将可观测性引入编码代理 ClickHouse重构全文索引:对象存储上跑出高性能 Full-Text Search 可观测性和遥测技术如何提升软件工程实践 Dropbox 与 GitHub 合作,将单体库大小从 87GB 缩减至 20GB Agent 的下一站:基于长期记忆系统 EverOS 的自我演进|AICon上海 同一赛道,四种收费:Agent 控制层(Harness)开始分裂 Cloudflare Sandboxes 正式发布,为 AI 代理提供持久化隔离环境 Agent 的“记忆断片”困局,该怎么破?_AI&大模型_AICon 全球人工智能开发与应用大会_InfoQ精选视频 数据分析师如何快速建立在 AI 时代最值钱的能力:一份可落地的行动路线图 摩尔线程最新财报:研发占比超86%,万卡级大规模智算集群落地 当云区域失效:地缘动荡环境下的高可用重构 Slack 重构通知系统,设置参与度提升 5 倍 智能体工程的隐性技术债务 “我把所有模型都换成了DeepSeek V4”:月账单将降 90%,效果还更好 阿里云智能集团高级技术专家刘少伟已确认出席AICon上海站,并分享如何构建企业 Agent 的自动化行动架构 构建生产就绪的 tRPC API:Apollo Federation 的 TypeScript 替代方案 Anthropic推出面向Claude Code的基于智能体的代码审查功能 北京车展直击:斑马智能甩出车载Agent短剧,比亚迪率先落地,AI让智能座舱又热起来了 Snowflake 作为智能体运行时:从静态管道迈向自主数据系统 | 技术实践 Snowflake 上的本体体系:基于 Cortex Code 能力实现从架构到部署 | 技术实践 Cloudflare 公布 MCP 架构方案,应对企业面临的安全与治理风险 复杂的项目管理怎么做到「AI 友好」?飞书项目用「开放」给出答案 Snowflake Cortex Code 的规范驱动开发:将 SDLC 方法论引入 AI 辅助工作流 | 技术实践 Copilot 不让注册了:从“随便用”到“全面限”,agent 把原有订价模型顶穿了 当互联网用AI卷效率时,这家公司先问了一连串“能不能” Meta 开始记录员工每一次点击:AI 要接管工作,先监控会工作的人 Meta“Token榜”逼疯打工人,一夜烧掉公司几万刀!AI时代Token焦虑越来越离谱 智源FlagOS完成DeepSeek-V4-Flash在八款芯片Day0适配,实现三重技术突破 DeepSeek V4 重磅开源!首次打通华为Ascend,也没丢掉英伟达,百万上下文夺回国产模型话语权 李志飞的“新实验”:当超级个体撞上真实组织 GPT-5.5 登顶时刻,Anthropic 亲口承认 Claude 变笨了!网友群嘲:太敷衍 那些没空写的小需求,龙虾真能做吗?_AI&大模型_InfoQ 中文站_InfoQ精选视频 从 Pandas 到生产:使用任意 IDE 进行可扩展的 ML 数据管道与分布式处理 | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 pnpm 11 候选版本发布,带来 ESM 分发、供应链默认设置以及新的存储格式 银行业PDF表格提取方案重构:基于Java的分层方案 GPT-5.5 赢了 Opus 4.7 和 Mythos?奥特曼晒黄仁勋内部信:英伟达全员用上 Codex! Cloudflare 推出 Think:一款面向 AI 代理的持久化运行时 1850亿美元天价支出、75%代码由AI生成!谷歌正式宣告:全面转向智能体工作流 xAI落后太多,马斯克“开大”重金求购Cursor,100亿美金“分手费”都敢签! Pulumi 新增对 Bun 运行时的全面支持 姚顺雨腾讯模型首秀!不卷参数只做 “听话打工人”,Hy3 preview登场 | 附实测 老板让你“忽悠”投资人,你敢发给龙虾吗?_AI&大模型_InfoQ 中文站_InfoQ精选视频 Gemini CLI 引入子代理机制,实现任务委派与并行代理工作流 清华系团队星工聚将完成数千万天使轮融资,轮式机器人拿下头部制造企业亿级大单 Pretext.js 绕过 DOM 布局重排,实现 120 FPS 的高级交互体验 靠“AI 云”爆红的 Vercel,栽在一个第三方AI工具手里!IPO前夕遭黑,200万美元赎金谈崩? 高能研讨会|端侧 AI 正在重写实时感知效率上限_AI&大模型_王玮_InfoQ精选视频 2050大会看这篇就够了|报名、交通食宿指引大全 Java 近期资讯:OpenJDK JEP、Jakarta EE 12、Spring Framework、Micrometer、Camel、JBang 金融智能的架构编排:基于 Snowflake Cortex Agents 实现结构化与非结构化数据统一分析 | 技术实践 在AK大神爆火的任务里,摸清国产AI真实水平 百灵Ling-2.6-flash 正式发布:高 Token 效率,以 1/10 消耗实现 SOTA 级 Agent 能力 当 PM 懂AI,当技术懂产品:AI 时代产品力的双向进化|PM x AI产品力领航者大会即将开幕 为 AI 智能体设计记忆机制:揭秘 LinkedIn 的认知记忆智能体 获奖名单公布|2026主题征文第一期|分享你最有价值的龙虾场景与核心 Skill_热门活动_InfoQ写作社区官方_InfoQ写作社区
写了 17 年开源代码,我为什么认为 Coding Agents 堆功能是在瞎折腾?
傅宇琪 · 2026-04-29 · via InfoQ - 促进软件开发领域知识与创新的传播

在 AI 编程工具进入大乱斗时代的今天,我们似乎已经习惯了各种功能的堆叠。但在 libGDX 创始人、17 年开源老兵 Mario Zechner 眼中,这一切正变得越来越不可控。

“当你发现 AI 在背地里偷偷修改你的上下文,而你却对此一无所知时,这种掌控感的丧失是极其危险的。”

近日,在 Tessel 举办的开发者大会上,Mario 不仅公开吐槽了 Claude Code、OpenCode,更带出了他的极简主义“反叛之作”——pi。这是一个只有 read、write、edit、bash 四种工具,拥有主流 agent 里最短的 system prompt,却有着极致的可扩展性、能让开发者重拾掌控权的终端编程 agent。

本文基于该演讲视频整理,经 InfoQ 编辑。

核心观点如下:

  • Claude Code 现在就是一架宇宙飞船,它功能多到你可能只用过其中的 5%,了解的也就 10%,剩下 90% 全是 AI 和 agents 领域的“暗物质”,没人知道它背地里到底在干嘛。

  • 现有的编程框架里,很多功能可能并不是获得好结果的必需品。不需要文件工具,不需要子 agent,不需要联网搜素,啥都不需要。

  • 我们现在正处于“一边瞎折腾一边看结果”的阶段,没人知道完美的编程 agent 到底该长啥样。我们需要更好的“折腾”方式,编程 agent 必须是可自修改、可塑性极强的,这样我们才能快速实验新想法,看看能不能折腾出某种新的行业标准或 workflow。

  • 真正需要 linting 和类型检查的时机只有一个:那就是 agent 觉得自己彻底完活儿的时候。

ChatGPT→Copilot→Aider→Claude Code

2025 年 4 月左右,Peter Steinberger(OpenClaw 创始人)跑来跟我还有 Armin Ronacher(Sentry 联合创始人、Flask Web 框架创建者)说:“现在的 Coding Agents 真的进化到能干活的程度了。” 我当时的第一反应是:“噢,快给我闭嘴吧!”我是真不信这玩意儿。但一个月后,我们几个就在公寓里闭关了 24 小时,整夜沉浸在这些 clankers、wipe coat 和 wipe slop 的世界里。

我们不停地造东西,造了一大堆,但绝大多数我们自己从来没用过。这就是 2025 到 2026 年的新常态:我们写了很多代码,造了很多轮子,但真正用上的没几个。折腾到最后我开始想,我讨厌现有的所有 Coding Agents 或开发框架,自己写一个到底能有多难?当时 Peter 说:“我只想做一个属于自己的小玩意儿。”后来的故事大家可能都知道了。

今天,我要讲的是我那个没那么惊天动地的故事,但我希望能在其中分享一些我在过去几个月里攒下的行业洞察。

先聊聊 Coding Agents 的演进史。

2025 年之前的情况基本就是:从 ChatGPT 搬运代码,但代码大多是碎的,通常只能写一些你不想亲自动手的简单函数。然后有了集成在 Visual Studio Code 里的 GitHub Copilot,只需要一路 tap tap tap,虽然有时候灵,大多数时候并不。甚至有时候,它还会非常“贴心”地给你默写一段 GPL 协议的代码,比如 John Carmack 的那个平方根倒数速算法之类的。后来又有了 Aider,当时还有 AutoGPT。

最后,Claude Code 登场了。我记得他们在 2024 年 11 月发布了 beta 版,但真正火起来是在 2025 年 2 月或 3 月的样子。当时我觉得这玩意儿简直太棒了,Claude 团队非常出色,他们在社交媒体上很活跃,人也都很天才。

说实话,他们基本上开创了整个品类。虽然之前有 Aider 和 AutoGPT 铺路,但没有一个能达到这种高度。这就是所谓的 agentic search(智能体搜索)范式:它不像 Cursor 那样先进入你的 codebase 做索引、搞各种复杂的构建(虽然那样搞也未必好使)。Claude 团队直接通过强化训练,让模型学会使用文件工具和 bash 工具,通过这种方式实时探索你的 codebase,寻找理解代码所需的信息并直接修改。这效果简直惊人,我们直接不睡觉了,因为产出的代码量比以前纯手写翻了不知道多少倍。

那时候它简单、可预测,完美契合我的 workflow。但后来,他们掉进了一个我们很多人都会掉进去的陷阱:既然这些 clankers 能写这么多代码,为什么不让它把所有能想到的 feature 都写了呢?这主意听起来不错吧?咱们加这个功能,加那个功能,加加加……最后搞出了一个类似 Homer Simpson 设计的那种怪物。Claude Code 现在就是一架宇宙飞船,它功能多到你可能只用过其中的 5%,了解的也就 10%,剩下 90% 全是 AI 和 agents 领域的“暗物质”,没人知道它背地里到底在干嘛。

Claude Code 不是一个稳定的好工具

我个人觉得这并没什么用,因为我始终认为开发者需要知道 agent 到底在做什么。我们现在在 Tessel 的活动现场,他们也喜欢搞 context management/engineering。但我最终发现,Claude Code 在可观测性和上下文管理方面并不是一个好工具。而且,谁受得了 Claude Code 的那种没完没了的、莫名其妙的闪烁?

Anthropic 的开发者关系专家 Thariq Shihipar 有时候会在 Twitter 上说些让人摸不着头脑的话,比如:“我们的 terminal user interface 现在是一个游戏引擎了。”

我是做游戏开发出身的,那是我的老本行。当我看到这种话时,心真的会滴血。那只是个终端界面,你之所以觉得它是游戏引擎,是因为你在终端界面里用了 React,结果导致重新渲染整个 UI 树要花掉 12 毫秒。别这么干好吗?它真不是游戏引擎。

后来写 Ghostty 的 Mitchell 也忍不住了,他说:“这听起来有点冒犯。别把锅甩给 Ghostty 或者其他终端,纯粹是因为你的代码太烂了。”终端渲染一帧只需要不到 1 毫秒,每秒能跑几百帧,所以别拿这个当借口。

虽然后来他们修好了闪烁,但别的问题接踵而至。你会感觉到他们彻底倒向了所谓的 vibe coding,这种感觉在你每天使用 Claude Code 时尤为明显。我并不是要贬低他们的努力和成果,Claude Code 依然是这个品类的领头羊,他们开创了这一切且做得非常棒。我只是个喜欢简单、可预测工具的老头子,而它已经不再契合我的 workflow 和需求了。

而且,他们在后台偷偷对你的 context 做了很多手脚。2025 年夏天,我写了一堆工具去拦截 Claude Code 发往后端的请求,想看看他们在背地里往我的 context 里塞了哪些额外的文字。结果发现这些操作非常多余,而且每天都在变。可能今天发个版本,明天又发个版本,注入内容的时机和方式变来变去,这会直接搞乱你现有的 workflow。它不是一个稳定的工具。

我理解他们的立场,他们需要实验,而且用户基数巨大,在庞大用户群的基础上做实验确实很难。但他们并不在意用户的感受,所以我们都得跟着受罪:你正用着这个新工具,努力构建可预测的 workflow,然后工具厂商在引擎盖下改了个不起眼的小细节,就导致 LLM 在处理你现有任务时直接发疯。这根本没法持续,我需要掌控感,我不能指望他们给我提供一个所谓的“稳定环境”。

作为 UI 设计的代价,他们不得不降低可观测性。我个人不喜欢这样,但这只是个人偏好,我知道大多数人对于 Claude Code 展示的信息量已经很满意了。另外,它显然没有模型选择权,因为它是 Anthropic 的原生工具。这不算坏处,但它几乎没有任何扩展性。虽然他们有一套 hook 系统,但如果你对比一下 pi 能实现的功能,你会发现他们的集成度并不深。而且它基本是基于在 hook 事件触发时运行一个进程,如果你需要反复启动那个进程,开销真的非常昂贵。

后来,我彻底对 Claude Code 下头了。倒不是说它做得烂,只是它不再适合我了。在那段时间里,它变得适合更多的大众用户,这说明他们路子走对了,只是不适合我这种老古董。

OpenCode 的底层设计让我失去信心

于是我开始到处找替代方案。首先是 Codex CLI,刚开始我挺不喜欢它的,无论是界面还是模型,不过现在它的模型表现确实挺惊艳的。接着是 AMP,这个团队的核心成员以前在 Sourcegraph 工作,后来出来单干了,都是极其顶尖的工程师。他们居然做出了一款非常商业化的 coding harness,而且是靠“砍功能”而不是“堆功能”来赢得市场,他们的很多设计逻辑跟我简直不谋而合。如果你想要个商业化的编程框架,我绝对推荐 AMP。Factory 也是类似的思路,做得很扎实,只是没像 AMP 那么激进和富有实验精神。

然后就是 OpenCode 了,很多人都在用的开源框架。我这人有开源情怀,在开源圈摸爬滚打了 17 年,大大小小的项目都管过,开源对我来说意义非凡。所以我当时想,既然 OpenCode 离我这么近,那就试试吧。而且说实话,除了 AMP,OpenCode 的团队是这个圈子里最接地气、最务实的,他们不会整天拿那些你八辈子用不上的功能来忽悠你,而是努力维持一个非常稳定的核心体验。他们对“编程 agent 对我们职业意味着什么”的思考,我也非常认同。

但 OpenCode 的问题在于:它在上下文管理上做得一塌糊涂。比如,它每一轮对话都会调用一个叫 SessionCompaction.prune 的函数,把最后 4 万个 token 之前的记录全给删了。大家应该都知道 prompt caching(提示词缓存)吧?它这么干意味着把你的 cache 全毁了。

OpenCode 和 Anthropic 之间有一段挺有意思的过节。在我看来,Anthropic 后来的态度逻辑很通顺:“你们不能这么搞。”虽然这事儿没公开闹大,但道理很简单:如果你去健身房却不守规矩,滥用人家的基础设施,你肯定会被拉黑。虽然我没证据,但我猜这就是为什么 Anthropic 和 OpenCode 之间关系紧张的原因。我完全站在 Anthropic 这边,别去糟蹋人家的基础设施。

还有些别的坑,比如 OpenCode 自带了 LSP(语言服务器协议)支持。假设你给 agent 下了个任务,让它改一堆文件。实际操作中它会怎么干?它会一个接一个地改。你觉得它改完第一轮,代码能编译通过的概率有多大?当你一行一行改代码时,得花多久才能让它重新回到编译通过的状态?答案是根本回不去。可能改完第一处、第二处,代码还是崩的。

这时候如果你跑去问 LSP 服务:“嘿,我刚改了这一行,代码崩了吗?”LSP 肯定会说:“是的,彻底崩了。”然后这个功能就会把报错信息直接塞进 tool call 后面,反馈给模型:“你刚才干错了。”模型一脸懵逼:“搞什么?我还没改完呢!你现在跟我说这个?”这种事发生得多了,模型最后就会直接罢工,导致产出的结果非常糟糕。所以我特别反感在 agent 工作时挂 LSP。真正需要 linting(代码检查)和类型检查的时机只有一个:那就是 agent 觉得自己彻底完活儿的时候。

而且 OpenCode 最近有个变化:在一个 session 里,每一条消息居然都会被保存为一个独立的 JSON 文件。这在我看来,说明它在整个架构设计上缺乏深度思考。一旦我对这种底层设计失去信心,我就不想再用这个工具了。

此外,OpenCode 默认带了一个 server 架构,客户端连接到服务端,终端界面只是其中一个客户端。这原本挺高端,结果却爆出了一个默认自带的远程代码执行(RCE)安全漏洞。如果你对自己的服务器架构那么自豪,我默认你应该是一群成熟的工程师,至少考虑过安全性吧?但显然他们没考虑,而且这个洞开了很久。我也不是要指责谁,在现在这种前所未有的、快到让人颈椎骨折的行业节奏下,出错难免,但我是不想用这种存在隐患的工具。

这就是我对现有 coding harnesses 的观察。AMP 其实不错,但我没有掌控权,它甚至会决定你用哪个模型处理哪类任务,这不符合我的性格。

后来因为一些别的原因,我开始研究 Benchmark(基准测试),结果发现了 TerminalBench。简单来说,它是一个专门针对 agent 的评估 harness,包含了大量和计算机操作、编程相关的任务。它有大约 82 个非常多样化的任务,从“修好我的 Windows 设置”到“帮我写一个蒙特卡洛模拟”。它有个排行榜,上面列出了各种 agent 框架和模型的组合。

其中有一个叫 Terminus 的 agent 让我觉得非常惊艳,它是排行榜上表现最好的框架之一。它是怎么做的呢?模型拿到的只有一个 tmux session,它唯一能做的就是发送按键,然后读取返回的 VT 序列码。这是模型和电脑之间最极简、最原始的接口了。然而,它的表现却是顶级的。

这说明了什么?我们真的需要那些花里胡哨的功能来让模型干活吗?

对我个人而言,这不只是模型好不好的问题,还有作为用户的“人”该如何与 agent 交互。Terminus 的用户体验或开发者体验显然不是我想要的,但它证明了一点:现有的编程框架里,很多功能可能并不是获得好结果的必需品。不需要文件工具,不需要子 agent,不需要联网搜素,啥都不需要。

基于这些发现,我总结了两个核心论点:第一,我们现在正处于“一边瞎折腾一边看结果”的阶段,没人知道完美的编程 agent 到底该长啥样。大家都在尝试,有人走极简路线,有人走“宇宙飞船”路线,搞什么 agent 集群、完全自治。我觉得这事儿还没定论,行业标准还没出现。

第二,我们需要更好的“折腾”方式,编程 agent 必须是可自修改、可塑性极强的,这样我们才能快速实验新想法,看看能不能折腾出某种新的行业标准或 workflow。

所以我的基本思路非常简单:剥离掉一切冗余,构建一个极简且可扩展的核心,再稍微加点让人用着舒服的小功能。它不是一张纯粹的白纸,但也绝对不臃肿。

Pi:让 Coding Agent 适应你的需求

pi 的核心理念很简单:让你的 Coding Agent 去适应你的需求,而不是反过来。

整个系统只由四个 package 组成。首先是 AI package,本质上是对多种 provider 的一个轻量抽象层。因为不同 provider 使用不同的 transport protocol,这一层帮你把复杂性都抹平了。你可以在同一个 context 或 session 里非常轻松地和不同 provider 对话、随时切换。接下来是 agent core,一个通用的 agent loop,包含 tooling、定位、验证等等基础能力。然后是 TUI,大概只有 600 行代码,但出奇地好用,可能因为不是某个 clanker 写的。最后是 Coding Agent 本身,它既可以作为一个 SDK,在 headless 模式下使用,也可以作为一个完整的终端交互式 Coding Agent。

系统 prompt 就这么多,全部都在这了。和其他 coding harness 那种动辄一大堆 token 的 system prompt 相比,这里几乎是“空”的。原因其实很直白:frontier models 已经通过大量 RL 训练,早就“知道”什么是 Coding Agent 了。所以反复告诉它“你是一个 Coding Agent”“你应该怎么写代码”?其实没有必要。

默认就是 YOLO 模式(默认直接执行,不向用户确认,全自动跑到底)。现在大多数 Coding Agent harness 基本分两种模式:要么 agent 想干嘛就干嘛,要么每一步都要问你:“你确定要删这个文件吗?”“你确定要列出这个目录吗?”……看似安全,但现实是,这种机制只会带来疲劳。用户要么直接关掉这些确认,开启 YOLO 模式,要么就无脑按回车,根本不会看提示。所以这并不是一个真正有效的解决方案。

至于 containerization(容器化),如果你担心数据泄露或提示词注入,它也不是万能解。但相比那些确认对话框式的“guardrail(护栏)”,它至少是一个更合理的基础。

pi 只提供四个工具:read、write、edit,以及 bash。没有 MCP,没有 sub-agents,没有 plan mode,没有 background bash,也没有内置的 to-do 系统。但重点在于,你完全可以用更简单、更透明的方式自己实现这些。

没有 MCP?可以用 CLI tools 加上 skills,或者直接写一个 extension,一天之内就能搞定。没有 sub-agents?因为它们不可观察。你可以用 tmux 去 spawn agent,这样所有输入输出都在你掌控之中,每一步发生了什么都一清二楚。现在 Claude Code 的 team mode,本质上也在做类似的事情。

没有 plan mode?那就写一个 plan.md 文件。它是一个持久化的 artifact,比那些塞不进 terminal viewport 的“蹩脚 UI”实用多了,而且还能跨 session 复用。没有 background bash?tmux 已经帮你解决了。没有内置 to-dos?写一个 todo.md 就行。

当然,你也可以选择把这些全部按自己的方式重新实现,这正是 pi 的价值所在:极致的可扩展性。你可以扩展工具,给 LLM 提供你自己定义的能力。目前几乎没有其他 Coding Agent harness 支持这一点,除非你去 fork OpenCode。但在 pi 里,你只需要写一个简单的 TypeScript 文件,它就会自动加载。

你还可以写自定义 UI、skills、prompt templates、themes,然后打包发布到 npm 或 git,通过一条命令安装。更关键的是,所有东西都支持 hot reload。我平时会在项目内部开发一些 task-specific 的 extension,当 agent 修改这些 extension 后,我只需要 reload,一切就即时生效,整个运行中的系统会立刻更新,体验非常顺滑。

这在实践中意味着很多事情都可以自己动手做。比如 custom compaction,这是我觉得大家应该多尝试的方向,现在所有的 compaction 实现都不太理想。permission gates?50 行代码就能写一个,覆盖市面上大多数 agent harness 的能力。custom providers?无论是注册 proxy 还是接 self-hosted models,都不用等我来做,你自己甚至可以让 clanker 帮你写。

你甚至可以重写内置工具,改变 read、edit、bash 的行为。我自己就有一套版本,是通过 SSH 在远程机器上执行的,5 分钟就实现了,而且很好用。再加上完整的 TUI 访问能力,你可以在 Coding Agent 里直接构建完全自定义的界面。

社区里已经有不少有趣的 extension。比如有人用 5 分钟就在 pi 里复刻了 Claude Code ships,而且功能更多。

pi-messenger,是多个 pi agent 的聊天室,它们可以互相通信,还有自定义 UI,可以实时观察它们的行为,而且确实能跑。

甚至还有一些更“离谱”的玩法,比如 pi-nes,你可以在 agent 运行的时候顺手打个游戏。

pi-annotate,可以直接打开你正在开发的网站,在前端界面上做标注,把反馈原地喂回给 agent,再让它修改代码。

还有我自己常用的 pi-files-widget,不用切到 IDE,就能快速查看刚刚被修改的文件。

关键在于,这些都不是内置功能,全都是 extension。而大多数人只需要几分钟到一个下午,就能把这些东西按自己的习惯搭出来。

pi 的 session 是树结构,而不是线性的聊天记录。你可以在一个分支里让 agent 读取目录、总结内容,然后回到主对话,把总结带回来继续工作,本质上就是一种更可控的 sub-agent。系统不会在你背后偷偷注入任何东西,agent、skills、调用成本,全都是透明可追踪的。这一点很多 harness 都没做好。此外还支持 HTML 导出、JSON 格式、headless JSON streaming 等等。

Pi 真的有用吗?terminal bench 的结果显示:pi 紧跟在 Terminus 2 后面,使用的是 Claude Opus 4.5。而那还是在去年 10 月,当时 pi 甚至还没有 compaction。

最后说一点现实问题。如果你参与这个项目,很可能会有大量来自 OpenClaw 的用户涌进你的仓库,用 clanker 批量提交 issue 和 PR,直接把你淹没。

所以我不得不搞了一些“防御机制”。比如我发明了一个叫 OSS Vacation 的策略:直接把 issue 和 PR 关掉几周,自己专心开发。真正重要的问题,总会有人在之后重新提出来,或者在 Discord 里说。

另外我还做了一个简单的访问控制:仓库里有一个 markdown 文件,如果有人提交 PR,但用户名不在这个文件里,PR 会被自动关闭。规则也很简单,先用“人类的声音”写一个 issue,自我介绍一下,而且不要超过一屏,因为太长的大概率是 clanker 写的。通过之后,你的名字会被加入列表,就可以正常提 PR 了。本质上,我只是在做一件事:验证你是人类。

后来 Ghostty 的 Mitchell 也基于这个思路做了一个项目,叫 vouch,可以更方便地应用在你自己的开源仓库里。

以上就是 pi,去试试吧。

演讲原链接:

https://www.youtube.com/watch?v=Dli5slNaJu0

声明:本文为 InfoQ 翻译整理,不代表平台观点,未经许可禁止转载。

今日好文推荐

1850 亿美元天价支出、75% 代码由 AI 生成!谷歌正式宣告:全面转向智能体工作流

“我把所有模型都换成了DeepSeek V4”:月账单降 90%,效果还更好

Claude变笨,Anthropic发报告认了:为优化3个Harness层bug,不小心改崩了

DeepSeek V4 重磅开源!首次打通华为Ascend,也没丢掉英伟达,百万上下文夺回国产模型话语权