前两天发生了什么
WWDC 2026 结束了,苹果发了一堆东西。iOS 27、macOS 27、Siri AI------但对开发者来说,最值得关注的是 Xcode 27。
不是因为它更快或者更小(虽然确实比上一版小了 30%)。而是因为苹果把 AI 编程 Agent 直接做进了 IDE 里,还一口气接了四个模型:本地 Apple 模型、Claude、ChatGPT、Gemini。
我拿到 beta 后跑了两天,说说实际体验。
四个模型,各干各的
Xcode 27 的 AI 能力分两层。
第一层是本地模型,跑在 Apple Silicon 的 Neural Engine 上。干的活很简单:代码补全、方法预测、实时建议。这个模型是苹果专门针对 Swift 和 Apple SDK 调过的,不是拿个通用模型套上去。在 M 系列芯片上大概能到 30 tokens/s,日常写 SwiftUI 的时候补全体验很流畅,而且完全离线,不走网络。
第二层是三个外部模型------Claude、ChatGPT、Gemini。这三个才是干"重活"的:多文件分析、代码重构、测试生成、复杂需求拆解。你自己带 API Key,费用直接付给 Anthropic/OpenAI/Google。
实际用下来,不同模型适合不同场景:
本地模型 --- 代码补全和日常建议。快,免费,离线可用。我写 SwiftUI 的时候基本一直开着它。
Claude --- 多文件重构和代码审查。我让它重构一个 200 行的 ViewModel,拆成 3 个文件,它能先分析依赖关系再动手。遇到拿不准的地方会问你,不会闷头改。
ChatGPT --- 文档生成和概念解释。我有个老项目用了 Combine,想迁移到 async/await,ChatGPT 解释迁移路径比较清楚。
Gemini --- Firebase 和 Google API 相关的活。我项目里有 Firebase Auth,Gemini 对这块 API 记得最准。
模型可以按任务切换,不锁定。在 Agent 对话框里直接选就行。
/plan 命令:先写方案再写代码
之前用 Claude Code 或 Cursor 的 Agent 模式,最头疼的事是什么?Agent 一顿操作改了 40 个文件,然后你发现方向不对。
Xcode 27 加了个 /plan 命令,解决的就是这个问题。
在 Agent 对话框里输入 /plan,Agent 会切到"规划模式"。它不写代码,只输出一个 Markdown 格式的方案:要改哪些文件、每个文件改什么、新建哪些类型、依赖关系怎么处理。你可以直接在方案里改,改完了点确认,它才开始写代码。
我试了一个场景:给一个笔记 App 加标签功能。
输入:
/plan 给笔记添加标签功能,支持创建标签、给笔记打标签、按标签筛选笔记
Agent 输出的方案大概是这样:
markdown
## 方案:笔记标签功能
### 新建文件
1. Models/Tag.swift --- Tag 数据模型,SwiftData @Model
2. Views/TagPickerView.swift --- 标签选择器
3. Views/TagFilterView.swift --- 标签筛选视图
### 修改文件
1. Models/Note.swift --- 添加 tags 关系属性
2. Views/NoteListView.swift --- 添加筛选入口
3. Views/NoteEditorView.swift --- 添加标签选择
### 数据迁移
- SwiftData 轻量级迁移,不需要手动写 migration plan
看完觉得没问题,确认。Agent 开始写代码,过程中遇到不确定的会暂停问你------比如"标签颜色要不要支持自定义?"。
这个流程比之前那种"直接开干"靠谱多了。Apple 官方的说法是:"你是架构师,在代码生成之前先把方案定下来。"实际体验确实是这样,前期多花 2 分钟看方案,后面少花 20 分钟修 Agent 改错的东西。
Agent 不是在猜------它真的跑了编译和测试
这是 Xcode 27 跟 Claude Code、Cursor 最大的区别。
当 Agent 写完代码,它不会只告诉你"我觉得这能跑"。它会调用 Xcode 的编译器跑一遍,如果报错,它自己读错误信息,改代码,再编译。这个循环是自动的。
在 WWDC 的 demo 里,Agent 写完一个功能后自动生成了 12 个测试用例,全部跑过。
我自己试的时候没那么完美------有个测试因为 Mock 数据的问题挂了,Agent 修了两轮才过。但重点是:它在修的过程中能看到真实的编译错误和测试结果,不是在"脑补"。
SwiftUI Preview 也是同理。Agent 改了 UI 代码后,会触发 Preview 渲染,它能看到渲染结果。你让它"把这个按钮往右移 20pt",它改完后真的看了 Preview 确认位置对不对。
这套"写代码 → 编译 → 看结果 → 修正"的闭环,在终端里跑 Claude Code 是做不到的。Claude Code 能跑 swift build,但它看不了 Preview,也没法跟模拟器交互。
MCP 插件:你的私有文档也能接进来
Xcode 27 支持 MCP(Model Context Protocol),配置目录在:
~/Library/Developer/Xcode/CodingAssistant/ClaudeAgentConfig/
什么意思呢?你可以把团队的内部文档、设计系统、后端 API 文档通过 MCP Server 接到 Xcode 的 Agent 里。Agent 写代码的时候就能查你们自己的文档,不用它去猜你的 API 长什么样。
如果你之前给 Claude Code 或 Cursor 写过 MCP Server,大部分可以直接复用。
另外苹果自己做了个 Apple Document Search 工具,Agent 在写代码时会自动调用它查苹果官方文档。这解决了一个老问题:Agent 信心满满地用了一个根本不存在的 API。有了文档搜索,它能在写代码之前确认 API 是真的。
配置步骤(5 分钟搞定)
-
下载 Xcode 27 beta:去 developer.apple.com,免费 Apple ID 就行,2023 年就取消付费要求了。
-
安装后打开 Xcode,进 Settings → Coding Assistant。
-
本地模型会自动下载,不需要配。
-
添加外部模型的 API Key:
Settings → Coding Assistant → Models
→ 点 "+" 添加 Provider
→ 选 Anthropic/OpenAI/Google
→ 填入你的 API Key -
在编辑器里点工具栏中间的 Agent 按钮,或者 Option+Shift 点击在新面板打开。
注意:必须是 Apple Silicon 的 Mac。Intel Mac 跑不了 Xcode 27,这个没有绕过方案。macOS 27 直接砍掉了最后四款 Intel Mac 的支持:MacBook Pro 13 寸(2020)、MacBook Pro 16 寸(2019)、iMac 27 寸(2020)、Mac Pro(2019)。
如果你还在用 Intel Mac,短期替代方案是 Cursor 或 Windsurf------它们能读 .xcodeproj,也有 Agent 功能,只是没有模拟器和 Preview 的深度集成。
费用算一笔账
Xcode 27 本身不收订阅费。本地模型免费。外部模型按 API 用量付费。
对比一下 GitHub Copilot------6 月 1 日刚改成 token 计量制(AI Credits),有开发者反映月费从 $29 涨到了几百美元。Xcode 27 的模式更透明:你用多少付多少,本地补全不花钱。
我这两天的用量:Claude API 大概花了 3,ChatGPT 不到 1,Gemini 没怎么用。日常轻度使用的话,一个月 $30-50 应该差不多。重度重构可能会多一些。
踩了几个坑
坑 1:第一个 beta 版本 Agent 偶尔会卡住。 对话进行到一半突然没反应,需要关掉 Agent 面板重新开。beta 的常见问题,等后续版本应该会修。
坑 2:本地模型对第三方库的补全不太准。 苹果自家的 SDK 补全很好,但你用 Alamofire、SnapKit 这些三方库的时候,本地模型的建议经常不对。这时候切到 Claude 或 ChatGPT 会好很多。
坑 3:MCP 配置路径别搞错。 文档说的是 ~/Library/Developer/Xcode/CodingAssistant/ClaudeAgentConfig/,但实际上如果你用 ChatGPT 或 Gemini 作为 Agent,配置文件夹名不一样。具体看 Xcode Release Notes,里面有写每个 Provider 的配置路径。
坑 4:Agent 改 SwiftData Model 的时候要小心。 有一次 Agent 给我的 @Model 类加了个属性,SwiftData 的轻量级迁移没处理好,App 一启动就崩。改 Model 之前最好让 Agent 先 /plan,确认迁移策略。
该不该现在装
如果你满足两个条件,装:
- 你有 Apple Silicon 的 Mac
- 你日常写 iOS/macOS App
beta 版 bug 肯定有,但 Agent 功能可以用。建议装在备用机上,或者跟 Xcode 26 并行安装。
如果你现在用 Claude Code 或 Cursor 写 Swift,可以考虑迁移。Xcode 27 的 Agent 在编译验证和 Preview 集成上确实比终端工具强一截。模型能力差不多(都是同样的 Claude/ChatGPT),区别在工具链的集成深度。
不着急的话,等 beta 2 或 beta 3 再说也行。第一个 beta 的稳定性还差点意思。