a16z 最近发布了文章《Emerging Developer Patterns for the AI Era》描述了开发者如何开始将 AI视为构建软件的新基础,而不仅仅是工具。由于Agent在开发过程中扮演着更全面的角色,传统的版本控制和文档 等概念正在被重新思考,以便它们也能为机器服务。文章探讨了 AI 原生的 Git、动态的 AI 驱动界面 以及 文档作为交互式知识库 等具体转变。此外,它还讨论了 通过文本生成应用 取代静态模板、代理如何管理敏感信息、可访问性 API 作为代理界面 以及 异步代理工作流 的兴起。最后,文章指出 模型上下文协议 (MCP) 正在成为标准,并且 基础服务正在优化以便Agent使用,预示着一个由Agent、上下文和意图驱动的软件开发新时代。文章提出了下面九种新兴开发者模式:

1.AI-原生 Git:重新思考 AI Agent的版本控制

概念

随着 AI Agent越来越多地编写或修改应用代码的大部分内容,开发者关注的重点开始改变。传统的 Git 设计用于精确跟踪人工编写的代码历史,但对于 AI 生成的大量代码,这种粒度变得不那么有意义了。

意义

开发者不再拘泥于逐行审计代码,而是更关心输出是否按预期行为(例如,变更是否通过测试,应用是否仍然正常工作)。这颠覆了长期存在的 Git 心智模型。Git SHA(曾是“代码库状态”的规范参考)开始失去部分语义价值。在 AI 优先的工作流程中,更有效的真相单元可能是生成代码的 Prompt 和验证其行为的测试的组合。应用的状态可能更好地由生成输入(Prompt、规范、约束)和一套通过的断言来表示。最终,我们可能会将 “Prompt+测试”捆绑包作为可版本化的单元进行跟踪,而 Git 则退居为跟踪这些捆绑包。在代理驱动的工作流程中,真相的来源可能向上游转移到 Prompt、数据 Schema、API 契约和架构意图。代码成为这些输入的副产品,更像是一个编译后的产物,而不是手动编写的源文件。Git 在这种世界中,功能更像是一个制品日志,不仅跟踪哪些发生了变化,还跟踪为什么以及由谁进行的变化。我们可能会开始叠加更丰富的元数据,例如是哪个Agent或模型进行的变更,哪些部分受到保护,以及哪些地方需要人工监督。

2.仪表盘 -> 合成:动态 AI 驱动的界面

概念

将传统的静态仪表盘(用于复杂系统如可观察性堆栈、分析、云控制台)转变为动态的、AI 驱动的交互界面。传统仪表盘常因用户体验过载而效率低下或令人望而生畏。

意义

新一代 AI 模型提供了潜在的转变:在仪表盘上叠加搜索和交互层。LLM 可以帮助用户找到正确的控件,将屏幕数据合成可理解的洞察,并发现未知的问题。界面本身可以根据用户意图变得自适应和会话化。用户可以使用自然语言查询,仪表盘会重塑视图并提供摘要和相关日志。AI 甚至可以诊断问题,关联数据并生成诊断叙述。当Agent成为软件的消费者时,我们可能需要重新思考仪表盘的设计对象,可能出现双模式界面(面向人类和面向代理。Agent可以扮演警报或定时任务的角色,但具有更多的上下文和灵活性,提供可能的原因和建议的修复。仪表盘不再仅仅是观察的地方,它们是人类和Agent协作、合成和采取行动的地方。

3.文档成为工具、索引和交互式知识库的结合

概念

开发者对文档的行为正在改变,从通读目录或自上而下扫描转变为从问题出发。文档正在从静态页面转变为交互式知识系统。

意义

心智模型从“让我研究这个规范” 变为 “按照我喜欢的方式重新组织这些信息给我”。这种转变促使文档成为由索引、嵌入和工具感知Agent支持的交互式系统。像 Mintlify 这样的产品不仅将文档构建为语义可搜索的数据库,还充当跨平台编码Agent的上下文源。AI 编码Agent频繁引用最新文档作为生成的基础上下文。文档的用途改变了:它们不再仅仅面向人类读者,也面向代理消费者。在这种新动态中,文档界面变得类似于 AI Agent的指令,解释如何正确使用系统。

4.模板到生成:Vibe coding 取代 create-react-app

概念

启动项目的方式正在从选择静态模板(如样板代码库或 CLI 工具)转变为基于Vibe的动态生成。传统模板提供一致性但定制化程度低。

意义

文本转应用平台和 AI IDE 的出现改变了这种动态。开发者可以描述他们想要的东西(例如,“一个使用 Supabase、Clerk 和 Stripe 的 TypeScript API 服务器”),AI 可以在几秒钟内搭建一个定制化、个性化且有目的的项目脚手架。这开启了一种新的生态系统分发模式。我们可能会看到更广泛的、可组合的、特定于技术栈的生成,而不是少数几个框架占据主导。重点不再是选择一个框架,而是描述一个 AI 可以围绕其构建技术栈的结果。这种转变正在改变切换框架或从零开始的成本。由于 AI Agent能够理解项目意图并半自主地执行大型重构,框架决策正变得更易逆转。这减少了框架曾经施加的锁定效应,并鼓励更多实验,尤其是在项目早期。它也降低了尝试有特定意见的技术栈的门槛,因为以后切换不再是一笔巨大的投资。

5.超越 .env:在代理驱动的世界中管理秘密

概念

在 AI Agent编写代码、部署服务和编排环境的时代,使用 .env 文件管理秘密(API Key、数据库 URL 等)的默认方式开始失效。当 AI Agent参与其中时,.env 的所有权变得不明确。

意义

MCP 规范中包含一个基于 OAuth 2.1 的授权框架,这预示着向 AI 代理提供有范围的、可撤销的令牌,而不是原始秘密的可能性。Agent可以获得短期凭证或能力令牌,执行范围狭窄的操作。另一种可能性是本地安全Agent的兴起,它们作为Agent和敏感凭证之间的中介。Agent请求访问能力(如“部署到 staging”),Agent决定是否授予访问权,且可实时审计。这使得秘密访问与静态文件系统解耦,更像是 API 授权而不是环境配置。

6.无障碍功能作为通用接口:通过 LLM 的视角看应用

概念

一类新的应用正在请求操作系统无障碍功能访问权,不是为了传统无障碍用例,而是为了让 AI Agent能够观察和交互界面。

意义

这不仅仅是一个权宜之计,而是更深层转变的一瞥。无障碍 API 被设计用来帮助有视觉或运动障碍的用户导航数字系统,但当它们被巧妙扩展时,可能成为Agent的通用接口层。Agent可以像辅助技术一样语义化地观察应用,而不是点击像素位置或抓取 DOM。无障碍树已经暴露了按钮、标题等结构化元素。如果加上元数据(如意图、角色、功能),这可能成为代理感知和有目的地与应用交互的一等接口。潜在方向包括上下文提取(Agent通过无障碍或语义 API 查询屏幕内容和用户操作),意图执行(Agent声明目标,后端处理步骤,而不是手动链式调用 API),以及LLM 的备用 UI(任何暴露屏幕的应用,即使没有公共 API,也能被Agent使用)。这提示了一个新的“渲染表面”——Agent可访问的上下文,可能通过结构化注解或无障碍优先的组件定义。

7.异步代理工作的兴起

概念

随着开发者与编码Agent更流畅地协作,工作流程自然转向异步模式,Agent在后台运行,并行处理任务,并在取得进展时报告。这种交互模式看起来更像任务编排,而不是结对编程。

意义

这不仅是分派工作,也压缩了协调过程。开发者可以将任务(更新配置、分类错误、重构组件)直接委托给Agent,让它们在后台执行。曾经需要同步会议或跨职能交接的工作,可能变成请求、生成、验证的循环。Agent的交互界面也在扩展,不再局限于 IDE 或 CLI,还包括 Slack 消息、Figma 评论、代码注解、应用预览反馈、语音界面等。这创建了一种模型,其中Agent贯穿整个开发生命周期。它们不仅编写代码,还解读设计、响应反馈、分类 bug。开发者成为协调者。这种异步运行的、动态的意图线程,也许会成为新的“Git 分支”。

8.MCP 正成为通用标准

概念

Model Context Protocol (MCP) 作为代理与现实世界之间的默认接口正在获得动力。OpenAI 已公开采纳 MCP,规范中增加了新功能,工具制造商也开始围绕它进行整合。

意义

MCP 解决了两个主要问题:为 LLM 完成从未见过的任务提供正确的上下文,以及用一个干净、模块化的模型替换 N×M 的定制集成,其中工具暴露标准接口(服务器)供任何Agent(客户端)使用。随着远程 MCP 和事实上的注册中心的出现,预计将有更广泛的采用。应用可能开始默认附带 MCP 接口。正如 API 使 SaaS 产品相互连接并跨工具组合工作流一样,MCP 可以通过将独立工具转变为可互操作的构建块来连接 AI 代理。内置 MCP 客户端的平台不仅“AI 就绪”,而且是更大生态系统的一部分,能够即时利用日益增长的代理可访问能力网络。MCP 客户端和服务器是逻辑障碍,而非物理边界。这意味着任何客户端也可以作为服务器,反之亦然,从而实现强大的可组合性(例如,一个编码Agent作为客户端获取 GitHub 问题,同时注册为服务器向其他Agent暴露测试覆盖率或代码分析结果)。

9.抽象化原语:每个 AI 代理都需要认证、计费和持久存储

概念

随着Vibe Coding Agent变得越来越强大,它们需要可靠的基础组件来接入,就像人类开发者依赖 Stripe、Clerk 或 Supabase 一样。

意义

Agent可以生成大量代码,但它们需要坚实的东西来连接。这些服务(具有清晰的 API、易用的 SDK 和合理的默认设置)正日益成为代理的运行时接口。如果构建一个生成 SaaS 应用的工具,不希望代理从头构建认证系统或编写计费逻辑,而是希望它使用像 Clerk 和 Stripe 这样的提供商。随着这种模式的成熟,服务可能会开始针对Agent消费进行优化,不仅暴露 API,还暴露 Schema、能力元数据和示例流程,帮助Agent更可靠地集成它们。一些服务甚至可能默认附带 MCP 服务器,将每个核心原语转化为Agent可以理解并安全使用的东西。Agent可以通过 MCP 服务器与服务交互,使用自然语言描述(例如,“创建一个月度‘专业’计划,价格 49 美元,包含基于使用量的超额收费”),而服务的 MCP 服务器会暴露该能力,验证参数,并安全地处理编排。就像早期 Web 时代需要 Rails 生成器来快速行动一样,Agent时代需要值得信赖的原语——易于集成的身份、使用量跟踪、计费逻辑和访问控制——这些原语需要足够抽象以便于生成,同时也足够灵活以便随应用增长。

这些模式共同指向一个更广泛的转变:伴随更强大的基础模型,新的开发者行为正在出现,并且新的工具链和协议(如 MCP)正在形成。这不仅仅是将 AI 叠加到旧的工作流程上,而是对软件如何构建的重新定义,将Agent、上下文和意图置于核心。许多开发者工具层正在发生根本性转变。