# Cursor如何用Claude重塑AI编程的未来
## 访谈背景
本文基于Anthropic Claude Relations团队与Cursor核心团队的深度访谈整理而成。Cursor作为AI编程工具的佼佼者,在短短一年多时间内实现了超过3亿美元的年收入,数百万开发者正在使用这一革命性的编程工具。本次访谈深入探讨了Cursor的成长历程、技术架构,以及他们如何利用Claude模型重新定义软件开发的未来。
访谈嘉宾包括Cursor的代理系统专家Lukas、联合创始人兼ML负责人Aman、ML工程师Jacob Jackson,以及Anthropic的Claude Relations负责人Alex。
## Cursor的爆发式增长历程
### 从单文件编辑到多文件代理的跨越
Cursor的发展历程体现了AI编程工具从简单自动补全到复杂代理系统的演进:
#### 早期阶段:智能补全时代
- **Tab补全功能**:预测开发者的下一次编辑
- **单文件编辑**:在单个文件内进行智能代码生成
- **基础增长**:凭借这些功能已经获得了稳定的用户增长
#### 转折点:Claude 3.5 Sonnet的到来
正如Aman所说:"3.5 Sonnet是第一个在编程方面有明显阶跃提升的模型。"这个模型的发布成为了Cursor大规模采用的关键节点:
- **多文件编辑能力**:结合3.5 Sonnet的智能和定制检索模型
- **应用编辑功能**:能够将大模型的编辑建议应用到实际代码中
- **代理级编程**:模型开始具备真正的代理能力,能执行复杂的编程任务
### 工具使用能力的革命性提升
随着模型能力的不断增强,Cursor逐步实现了:
- **工具集成**:模型可以像真正的代理一样在编辑器中使用各种工具
- **多模态交互**:支持代码、文本、图像等多种输入方式
- **背景代理**:可以在后台独立完成完整的PR开发
## 自我改进的递归循环:用Cursor构建Cursor
### 团队内部的使用实践
Cursor团队本身就是自己产品的重度用户,这种"dogfooding"实践为产品改进提供了直接的反馈:
#### 不同场景的工具选择
根据Jacob的介绍,团队根据不同的开发阶段选择合适的功能:
**初始阶段**:
- **Agent功能**:用于快速搭建新功能的代码框架
- **思维模型**:用于分析和解决面临的个别bug
- **Q&A功能**:大量使用搜索功能探索不熟悉的代码库
**开发阶段**:
- **Tab补全**:用于进行精确的代码编辑
- **Command K**:用于编辑单个区域或整个文件
**复杂任务**:
- **Agent**:适合跨多文件的编辑任务
- **背景代理**:处理完整的PR级别任务
### 内部用户优势
作为自己最好的客户,Cursor团队获得了独特的优势:
- **快速迭代**:能够诚实地评估功能是否有用,无需等待用户反馈
- **加速决策**:不用发布给用户并跟踪使用情况就能决定功能去留
- **真实需求**:基于实际开发痛点而非假想需求来构建功能
正如Aman所说:"我认为100%是这样。这就是我们能够快速构建新功能,然后丢弃明显不起作用的功能的原因。"
## AI编程的能力谱系
### 从Tab到背景代理的完整光谱
Cursor的功能设计体现了AI编程工具的完整能力谱系:
#### 谱系一端:Tab补全
- **使用场景**:开发者完全掌控,知道要做什么
- **工作原理**:预测和加速已知的编程意图
- **用户体验**:如丝般顺滑的编程体验提升
#### 谱系中段:Command K
- **使用场景**:编辑给定区域,可能是整个文件
- **工作原理**:基于用户描述生成或修改代码
- **用户体验**:平衡控制性和自动化
#### 谱系另一端:Agent
- **使用场景**:跨多文件的复杂编辑任务
- **工作原理**:理解项目结构,进行系统性修改
- **用户体验**:高度自动化的开发体验
#### 最高端:背景代理
- **使用场景**:完整的PR级别开发任务
- **工作原理**:在独立环境中完成端到端开发
- **用户体验**:并行开发,前后台无缝切换
### 背景代理:编程的新范式
#### 技术架构
背景代理运行在独立的虚拟环境中:
- **完整开发环境**:预装所有开发工具和VS Code扩展
- **独立执行**:可以运行测试、编译代码、验证功能
- **前后台切换**:支持任务在前台和后台之间灵活转换
#### 使用场景
正如Lukas所描述的:"模型在端到端任务上越来越好,但还没有达到100%。所以加速开发者的方法是让他们并行工作。"
实际应用包括:
- 在后台运行长时间任务
- 同时处理3-4个不同的修改
- 快速将背景任务调到前台进行调整
- 90%完成时由开发者接管完成剩余工作
## 未来瓶颈:从代码生成到代码验证
### 软件工程的时间分配现实
Jacob提出了一个重要观点:即使完全解决代码编写问题,软件工程的整体效率提升仍然有限:
- **代码编写**:约占开发者时间的30%
- **代码审查**:约占开发者时间的30%
- **其他活动**:约占开发者时间的40%
这意味着即使完全自动化代码编写,整体效率提升也只有约3倍的上限。
### 代码验证的挑战
未来的主要瓶颈将是如何让开发者:
- **快速审查代码**:提高代码审查的效率
- **确保正确性**:不仅仅是语法正确,还要符合实际需求
- **理解变更**:快速理解AI生成的复杂变更
### 可能的解决方案
团队正在探索的方向包括:
#### 不同的代码表示
- **伪代码视图**:以更简洁的方式展示代码变更
- **映射保证**:确保伪代码准确映射到实际代码修改
- **验证时间缩短**:大幅减少代码审查所需时间
#### 更好的测试工具
- **自动化测试**:让AI生成和运行测试用例
- **可视化验证**:通过界面交互来验证功能正确性
- **增量验证**:逐步验证复杂变更的各个部分
## 大型生产代码库的挑战
### 简单任务的复杂实现
看似简单的任务"修复这个失败的测试"在大型企业代码库中变得极其复杂:
#### 环境设置挑战
- **依赖管理**:复杂的依赖关系难以正确设置
- **配置复杂性**:各种环境配置和构建脚本
- **权限问题**:访问控制和安全限制
#### Cursor的解决方案
背景代理专门针对这些挑战进行了优化:
- **环境快照**:创建可重复的开发环境快照
- **自动更新**:代码状态变化时快速更新环境
- **批量实验**:在后台VM中进行多次尝试,直到成功
### 企业级代码库的特殊挑战
#### 领域特定语言(DSL)
大型代码库通常包含:
- **内部DSL**:公司特有的编程语言和框架
- **独特模式**:特定的编程风格和架构模式
- **分布式知识**:分散在数百万行代码中的隐含规范
#### 上下文理解限制
即使有完美的检索能力,模型仍面临:
- **规模挑战**:数百万行代码,可能数十亿token
- **隐含知识**:从未明确写出的编程约定
- **组织知识**:存在于Slack消息、口头交流中的信息
### 改进方向
#### 短期改进
- **定制检索模型**:针对特定代码库训练的检索系统
- **多源上下文**:整合最近修改、团队变更等丰富信息
- **Cursor规则**:通过规则系统传达编程约定
#### 长期愿景
- **组织知识集成**:连接更多系统获取完整上下文
- **业务逻辑理解**:理解销售、产品需求等业务背景
- **深度代码理解**:超越当前检索能力的代码理解水平
## AI优化的代码:为机器而写
### 代码正在为AI阅读而优化
随着AI在编程中的作用越来越重要,代码编写方式正在发生变化:
#### API设计的演进
- **版本信息可见化**:让模型明确知道使用的API版本
- **模型友好的结构**:减少复杂的嵌套层次
- **明确的接口定义**:避免隐含的使用约定
#### 代码组织原则
Lukas强调:"构建代码的方式让人们不必经过很多层次的交互,而可能只需要经过两层交互,这让LLM模型更好地处理代码库。"
### 清洁代码原则的新重要性
#### 人机共通的设计原则
Jacob指出:"干净软件的原则对于人和模型来说没有太大不同。"
共通原则包括:
- **不重复自己(DRY)**:避免代码重复
- **简单性**:不让事情比必要的更复杂
- **可读性**:清晰的命名和结构
#### 品味变得更加重要
随着AI能写更多代码,开发者的品味和架构能力变得更加关键:
- **结构决策**:如何组织和架构代码
- **抽象层次**:选择合适的抽象级别
- **长期可维护性**:考虑代码的未来演进
## 保持工程技能:自动化时代的平衡
### 教育价值与效率的平衡
面对"AI会让程序员变懒"的担忧,团队提供了不同的视角:
#### AI作为学习工具
Lukas强调了AI的教育价值:
- **即时答疑**:按Command L询问Claude任何概念
- **深度解释**:获得概念的详细说明
- **互动学习**:通过对话深化理解
#### 加速学习循环
Jacob认为AI实际上加速了学习过程:
- **快速迭代**:更快地尝试想法并看到结果
- **错误学习**:通过快速试错学习什么有效
- **项目规模**:能够参与更大更复杂的项目
### 编程角色的演进
#### 技术技能仍然重要
在可预见的未来,深入的技术知识仍然必要:
- **细节理解**:需要能够深入技术细节的工程师
- **系统设计**:高层架构和系统设计能力
- **问题诊断**:复杂问题的调试和解决
#### 新兴技能类别
可能出现新的程序员类别:
- **高层次操作**:专注于UX和产品逻辑
- **交互设计**:描述复杂的用户交互
- **品味导向**:重点在于"什么"而非"如何"
正如Aman所说:"也许你不需要了解编写纯软件的详细信息,但仍然需要描述这些交互,描述这个东西大致如何工作。这是一种编程形式。"
## Claude 4:下一代AI编程的突破
### Sonnet 4的显著改进
团队对新发布的Claude Sonnet 4表现出了极大的兴奋:
#### 核心能力提升
- **智能水平跃升**:与O3等顶级模型不相上下,但成本更低
- **代理编程改进**:在代理式编程任务上表现卓越
- **错误纠正**:修复了3.5版本的过度热情问题
#### 具体改进表现
正如Aman所说:"我们发现Sonnet 4有效地修复了所有这些问题,它更好,智能也有了很大的提升。"
主要改进包括:
- **不再过度修改测试**:3.5版本有时会修改测试用例使其通过
- **更谨慎的方法**:在不确定时会寻求更多信息
- **更好的判断力**:能够平衡完成任务和保持代码质量
### 对Opus 4的期待
团队对即将发布的Opus 4充满期待:
- **背景代理的完美选择**:预计将成为后台任务的理想模型
- **更强的推理能力**:适合处理复杂的多步骤编程任务
- **更好的长时间工作能力**:能够维持长时间的专注和一致性
## Anthropic的AI编程愿景
### 代码之外的能力发展
Alex解释了Anthropic对模型能力发展的整体思考:
#### 跨领域能力迁移
从编程能力的提升能够迁移到其他领域:
- **推理能力**:更好的多步推理和逻辑思考
- **代理行为**:执行复杂多步骤任务的能力
- **工具使用**:与各种外部系统交互的能力
#### 计算机使用能力
Claude的计算机使用功能展示了新的可能性:
- **人机界面导航**:直接操作图形界面而非API
- **视觉理解**:像人类一样理解和操作屏幕内容
- **通用操作能力**:处理任何基于屏幕的任务
### 模型性格的重要性
#### Claude的独特性格
Amanda Askell领导的性格塑造工作确保Claude:
- **可信赖的伙伴**:不仅仅是编程工具,更像是工作伙伴
- **深思熟虑**:在回应中体现谨慎和考虑
- **支持性角色**:在用户生活中扮演积极支持的角色
#### 长期关系的考虑
当AI成为日常工作的重要部分时:
- **一致的体验**:确保交互体验的连贯性
- **价值观对齐**:AI的行为符合用户和社会的价值观
- **信任建立**:通过可靠的表现建立长期信任关系
## 2027年的编程世界预测
### AI代码生成的普及程度
团队对2027年1月1日的编程世界做出了大胆预测:
#### 代码生成比例
Aman预测:"类似于回到1995年问律师,未来什么比例的法律文件将由文字处理器生成,答案是100%或接近100%,AI将参与几乎所有代码的编写。"
#### 当前状况
在Cursor内部,AI参与的比例已经非常高:
- **90%以上**:大部分代码通过Agent、Command K等高级功能生成
- **Tab补全覆盖**:即使手动输入,Tab也会完成70%的内容
- **实际键入比例**:开发者实际键入的字符占极小比例
### 软件开发的民主化
#### 非程序员的编程能力
预测更多非技术人员将开始构建软件:
- **销售人员**:构建自己的仪表板和工具
- **业务人员**:开发特定工作流的应用
- **创意人员**:实现自己的创意想法
#### 瓶颈转移
软件开发的瓶颈将从"如何实现"转向:
- **需求定义**:明确想要什么功能
- **品味判断**:决定什么是好的用户体验
- **独特价值**:创造现有软件未能满足的独特需求
### 按需软件的可能性
#### 个性化软件体验
未来可能实现:
- **实时定制**:根据使用方式自动调整软件界面
- **个人优化**:为每个用户量身定制的软件体验
- **动态适应**:软件自动学习并适应用户偏好
#### 技术前景
虽然不确定所有人都想构建软件,但:
- **受益群体**:所有人都能从个性化软件中受益
- **制作门槛**:降低软件制作的技术门槛
- **创新空间**:为更多创新创造可能性
## 对工程师的建议:在AI时代如何选择
### 创业公司 vs 大公司的权衡
面对职业选择,团队给出了明确的建议:
#### 创业公司的优势
- **高密度人才**:优秀人才的集中度更高
- **有意义的影响**:在小团队中产生重大影响
- **技术前沿**:接触最新的技术和方法
- **成长速度**:更快的个人和职业成长
#### 人才密度的重要性
Aman指出:"创业公司现在有优势...能够获得真正优秀的人才,而在大公司,很多最优秀的人都不会觉得那么令人兴奋。"
#### 实际影响力
在创业公司中:
- **直接影响**:能够直接影响改变世界软件编写方式的产品
- **团队规模**:成为数十、数百或数千人团队中的关键成员
- **技术深度**:深入参与前沿技术的开发和应用
### 选择标准
对于考虑加入AI编程工具公司的工程师:
- **技术热情**:对AI和编程工具有真正的兴趣
- **影响力渴望**:希望参与改变整个行业的工作
- **学习欲望**:愿意在快速变化的环境中持续学习
- **协作能力**:能够与高水平团队紧密合作
## 结语:重新定义软件开发的未来
这次深度访谈揭示了AI编程工具正在如何从根本上改变软件开发的本质。Cursor团队通过与Claude模型的深度集成,不仅创造了一个成功的产品,更重要的是展示了人机协作编程的新范式。
### 关键洞察总结
1. **能力谱系**:从Tab补全到背景代理,AI编程工具正在覆盖开发流程的各个环节
2. **瓶颈转移**:从代码生成转向代码验证和需求理解
3. **角色演进**:程序员的角色从编码者转向架构师和产品设计者
4. **技能平衡**:技术深度与AI协作能力的平衡变得至关重要
5. **民主化趋势**:编程能力向更广泛的人群扩散
### 未来展望
随着Claude 4等新一代模型的发布,我们正站在软件工程变革的关键节点。正如访谈中所展示的,未来的编程将是人类创意、判断力和品味与AI强大执行能力的完美结合。
这不是AI取代程序员的故事,而是AI赋能程序员创造更伟大软件的故事。在这个变革的时代,最重要的是拥抱变化,持续学习,并找到人机协作的最佳平衡点。