一个基于 LLM 的 iOS 开发工作流的实践例

记录一下看到的一个基于 LLM 的 iOS 开发环境搭建/工作流的一个不错的实践方案。

同时 Memo 一些有助于学习 iOS/SwiftUI 开发的一些资源。

基于 LLM 的开发环境搭建

支持 Apple Intelligence 的 macOS 会有一个内置的 Predictive code completion,会下载一个 2.5G 左右的本地模型,在没网的时候可以使用。

但比起这个本地模型,GitHub Copilot 为 Xcode 提供的官方插件更强大,使用起来除了补全,也有一个 Chat 栏,可以很方便地指定 Xcode 中正在打开的一些文件进行提问,也支持 Claude 等最新模型,不过目前还没提供和 VS Code 中类似的 Agents 功能。

但习惯了 Cursor 的 Agents 模式后,仅仅通过 Xcode 中的 Chat 辅助开发已经有些不够用了,好在 Cursor/VS Code 也通过一些插件对 SwiftUI 提供了一些支持:

所以主要目标,让 iOS 开发在不开启 Xcode 下也能正常导入包以及进行编译。

关键系统级依赖:

Cursor / VSCode 插件:

  • Swift
  • SwiftPad
  1. 使用 Cursor / VSCode 打开项目目录,需要与 xx.xcodeproj 同级
  2. Cmd/Ctrl + Shift + P 调出命令面板,输入/检索 Sweetpad: Generate Build Server Config,选择当前项目
  3. 等待当前项目根目录下 buildServer.json 文件生成

在项目对应的 schema 上点击 build,选中模拟型或是已连接的实机,会自动编译并运行,就可以实现完全不打开 Xcode 也能进行开发了。

现在再点开所有的代码文件,也不会再出现 imports 错误等一片红的报错,所以再使用 Cursor/Roo Code Agent 进行开发时,也会更准确。

基于 Roo Code + Cursor 的开发工作流 (参考 pseudoyu)

在 iOS 开发过程中,或许是因为上下文长度和模型语料的原因,发现通过 Roo Code 插件配合 gemini-2.5-pro-preview-05-06 模型在一些更大的功能模块拆分、重构等场景下效果显著好于前者(当然,按量计费 token 消耗也夸张很多)。

所以目前的工作流是通过采用 roocode-workspace 这个项目先让模型理解项目结构并生成 Memory Bank 文件供后续使用;在一些大功能的开发上尽可能多地提供官方文档、博客和自己的 prompts 让 Roo Code 进行开发,同时自己修复一些逻辑性的 bug。

最后如果有一些比较复杂的报错或 lint error,可以拆分成小的任务单元使用 Cursor + Claude 3.7 Sonnet Thinking 进行修复,虽然是两倍速率消耗,但生成代码的可用性还是更强一些。

其他可以学习的资源

推荐阅读

致谢:

一个基于 LLM 的 iOS 开发工作流的实践例

https://blog.counpy.me/2025/11/llm-based-ios-dev/

作者

Jhuoer Yen

发布于

2025-11-26

更新于

2025-11-26

许可协议

评论

Your browser is out-of-date!

Update your browser to view this website correctly.&npsb;Update my browser now

×