返回资讯中心
外部精选
软件工程
#开发者实时流

Paul Kinlan 谈 AI 智能体协作中的合并冲突与 Web 应用扩展

来源标题:Extensible Web Apps

Paul Kinlan 在博文中指出,其 AI 智能体全天候工作导致代码合并冲突频发,拖慢了软件开发效率。他原本计划吐槽合并问题,但在写作过程中动手实践,称自己"重建了 SharePoint"。他还提到正在研究多种智能体调度工具,包括语音驱动工具和 TweetDeck 风格的 Chrome 工具。

Hacker News 最新kinlan2026/11/11 · 今天30 分钟阅读

以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。

发布于 Paul Kinlan on: November 8, 2026;阅读 时间: 23 分钟 当我开始写这篇文章时,我想写的是:现在我的 agent 集群整天都在工作,我有多被合并问题困扰;更重要的是,合并如何拖慢了我们构建软件的能力。我发现,我的 agent 会很乐意把我的工具和产品全都做进区区几个文件里,或者用那种哪怕最小的改动也会导致合并冲突的方式来做。然而,就在我写那篇无聊文章的时候,我正试着把正在敲的内容付诸实践,而我想我刚刚重建了 SharePoint……等等,等等,等等,别走开……我保证这篇文章会不错。如果不好的话,发邮件给我或者在 X 上喷我。 退一步说,我长期以来一直在思考:既然我们有了几乎能构建任何东西的工具(LLM 和 coding harness),也有了几乎能满足用户任何需求的工具,Web 会如何演化。 我一直在摆弄各种不同类型的、用来驾驭 agent 的 harness:一个基于语音的(更多细节很快会来——但它非常酷)、一个 TweetDeck 风格的 Chrome harness、另一个 Chrome Agent 平台 harness,以及一个带有 CLI 和 TUI 的 API。我现在大量生活在这些工具中,它们控制我的机器,并以我个人觉得非常有用的方式帮助我工作。它们为我创建工具,并编排我做的许多任务。 我也一直在使用很多其他的 Agent Harness。Pi 是我特别喜欢的一个,因为它占用小,而且秉持可定制化的理念。我太喜欢它了,以至于我意识到我在 agent-do 上的整个做法完全错了。Pi 让我开始思考,如何把 harness 可定制化的概念带到 Web 上。 我构建了一个 Markdown 编辑器,希望它能遵循 Pi 的精神。一个极小的核心只做最低限度的事,同时暴露一个完全可以按用户需求定制的表面。 它运行得出奇地好。它满足了我的需求,如果我需要新功能,比如一个小通知告诉我阅读时间,那我不必把它烤进核心,我可以在主仓库之外创建一个小插件,而且不用部署它。 这些插件可以访问 UI 的不同部分。 而且它们可以挂接到 Web 应用内部发生的事件和动作上,比如按键,然后更新 UI。 蓝线是一个句子长度插件 例如,我有一个句子长度插件,它本可以放在核心里,写作连续天数插件也一样,但如果有一天我对它们腻了,我为什么非得重新构建并重新部署项目呢?我真的需要回去重建一个项目,只为了加一个侧边栏来检查我做的所有断言吗?不,不,我不应该非得这样。 我在 Pi 中看到的原则令人无比振奋,我开始把软件中的每个问题都看作可以用一把“可扩展性形状”的锤子敲定的问题。 然后我想起了 Ink and Switch 那篇很棒的文章《Malleable software: Restoring user agency in a world of locked-down apps》(而且你瞧,他们也构建了一个 Markdown 编辑器 :D),我真的必须更深入地钻研这个领域,试着回答这个问题:为什么没有更多网站提供定制化? 那么,为什么没有更多网站提供定制化?简单。因为难。 难在安全。难在性能。作为产品负责人,围绕定制化设计产品很难不觉得自己正在失去控制;而且更新核心时不破坏现有定制化也很难。虽然存在用户需求(看看 Chrome 扩展就知道了),但我认为人们想要的是一个赤裸的机器人核心,然后能够按自己的需求打扮和改变他们的工具。 然后我发现了 DeepSeek-Harness。这个 harness 围绕这样一个原则构建:核心系统中的一切都是插件。这相当壮观。描述 Cordis 系统的论文也相当不可思议。虽然我觉得其中的数学和定理证明让人吃不消,但如果你能硬着头皮读下去,对我这样的凡人来说,其中能看到魔法的微光:自演化的 Harness 系统。 这让我思考。如果我想让 Web 从长远来看获胜,那我们需要网站提供的东西不止是你在 Chat harness 里能得到的那些。聊天应用在未来将是动态的,并且完全个性化到用户,那么为什么我们不为主张在 Web 上的 Web 应用提供同样的东西呢? 所以,嗯,就是这样……介绍我的实验:Extensible Web Apps [source]——一个让你构建和组合 Web 应用的 harness,用户可以按自己认为合适的方式扩展它们。 在我解释任何东西之前,先玩一玩。这是一个在该平台上构建的 beat pad,正实时运行在这个页面中。按播放。然后点击角落里的 Customize,向下滚动到“Samples for this app”,按 Sunset theme 旁边的 Add。你会看到它的代码以及它被允许做什么(改变应用的颜色,仅此而已)。接受它。你刚刚把一个插件安装到了别人的应用里,而作者(我)不需要做任何事来让你这么做。 这个 Web 应用 harness 建立在 Cordis 的核心内核之上,然后尝试在 Web 已有的原语之上构建,比如 <slot>、<template>、serviceWorker、Worker、SharedWorker、MessageChannel、@layer、@scope,让你构建丰富而复杂的 Web 应用,用户可以定制它们,而你不必做任何新的事情。 我还有一些核心的东西,想确保你可以定制: 虽然用户可以编写代码来定制 Web 应用,但预期是人们会使用 LLM 在运行时创建插件,因此 LLM 作为核心原则组件被内置到 harness 中(即使应用开发者没有启用它)。

(原文较长,此处译出前 6000 字,完整内容请点「打开原文」。)

正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。

打开原文
去社区讨论 →