AI 程式設計教程中文版
官方教程中文版實戰場景

構建 iOS 應用

說明用 Codex 做 iOS app 時的 CLI-first 路線,以及什麼時候引入 XcodeBuildMCP、skills 或外掛。

用 Codex 做 iOS app,建議保持 CLI-first:greenfield 場景先 scaffold SwiftUI app 和 build-and-launch script;已有 Xcode 專案裡,需要更深自動化時再加入 XcodeBuildMCP、SwiftUI skills 或 Build iOS Apps plugin。

iOS 任務的可信度來自可重複 build / launch / simulator loop。不要只交付程式碼檔案;要說明 scheme、device、命令和最小驗證結果。

官方頁面:https://developers.openai.com/codex/use-cases/native-ios-apps

適合什麼任務

場景Codex 應該做什麼
從零做 iPhone / iPad SwiftUI appscaffold app 和 build loop
已有 iOS project 需要 schemes、simulator output、screenshots 或 UI automation使用 XcodeBuildMCP 發現 targets、build、launch、截圖並迭代
團隊希望長時間 iOS UI 任務保持 agentic用 CLI-first loop,而不是依賴 Xcode GUI

使用的能力

能力用法連結
build-ios-apps構建或重構 SwiftUI UI,採用 Liquid Glass 等現代 iOS patterns,審計 runtime performance,並用 XcodeBuildMCP-backed workflows 在 simulator 中除錯https://github.com/openai/plugins/tree/main/plugins/build-ios-apps

相關官方說明:

起始提示詞

请 scaffold 一个 starter SwiftUI app,并添加一个 build-and-launch script,方便我接到本地环境的 `Build` action。

约束:
- 保持 CLI-first。优先使用 Apple 的 `xcodebuild`;如果更干净,可以使用 Tuist。
- 如果这个 repo 已经包含完整 Xcode project,请使用 XcodeBuildMCP 列出 targets,选择正确 scheme,build、launch,并在迭代时捕获 screenshots。
- 如果已有 models、navigation patterns 和 shared utilities,请复用。
- 除非我明确要求 shared Apple-platform implementation,否则 app 聚焦 iPhone 和 iPad。
- 每次改动后使用小而可信的 validation loop;只有窄检查通过后,才扩展到更大范围 build。
- 告诉我你把这个任务当作 greenfield scaffold,还是 existing-project change。

交付:
- app scaffold 或 requested feature slice
- 一个包含准确 commands 的小型 build-and-launch script
- 你运行过的最小相关 validation steps
- 使用的准确 scheme、simulator 和 checks

這個 prompt 強調 CLI-first 和 small validation loop。Codex 應說明自己是在 greenfield scaffold,還是 existing-project change。

推薦技術面

需要推薦預設值原因
UI frameworkSwiftUI快速 prototype iPhone/iPad views、navigation、shared state,同時保持 UI code 可讀
Build toolingxcodebuildTuist都能把 native build loop 留在 terminal,不依賴 Xcode GUI
Project automationXcodeBuildMCP需要 Codex inspect schemes/targets、launch app、capture screenshots、持續迭代時使用
Distribution toolingApp Store Connect CLI讓 agent 留在 loop 裡,並把 app build 直接送到 App Store

Scaffold App 和 Build Loop

greenfield work 先用 plain prompting。讓 Codex scaffold starter iOS SwiftUI app,並寫一個小的 build-and-launch script,可以接到 local environment 的 Build action。

保持 CLI-first:

  • xcodebuild 可以 list schemes。
  • 可以執行 build、test、archive、build-for-testingtest-without-building
  • Codex 可以留在 agentic loop,不用跳進 Xcode GUI。

如果你接受第三方專案生成工具,Tuist 是一個可選下一步。它能 generate 和 build Xcode projects,仍然讓 Codex 在 terminal 裡 build / launch。

當已經進入完整 Xcode project,且需要 schemes、targets、simulator control、screenshots、logs、UI interaction 時,使用 XcodeBuildMCP

可用 Skills

第一版通常不需要 skill 或 MCP server。工作變專門後再加:

  • SwiftUI expert:通用 SwiftUI skill,內建較多實踐規則。
  • SwiftUI Pro:面向 modern APIs、maintainability、accessibility、performance 的 SwiftUI review skill。
  • Liquid Glass expert:幫助採用 iOS 26 Liquid Glass APIs,並調整 custom components。
  • SwiftUI performance:當 feature 感覺慢或 view update path 可疑時,掃描常見 SwiftUI mistakes。
  • Swift concurrency expert:處理 Swift concurrency diagnostics、編譯錯誤和 warning。
  • SwiftUI view refactor:讓 SwiftUI files 更小、更一致。
  • SwiftUI patterns:隨著 app 成長,使用更可預測的 @Observable@Environment architecture patterns。

迭代方式

第一版能跑後,或你從 existing project 開始時,prompt 要明確:

  • 這是 greenfield repo 還是 existing Xcode project。
  • 哪些 iOS devices 或 deployment targets 必須繼續工作。
  • 期望的 validation loop 是什麼。
  • 每次改動後跑哪條最窄但可信的驗證命令。

實用建議

從基礎開始

greenfield work 先 plain prompting,讓 Codex scaffold app 和 build-and-launch script。第一輪通常不需要 skill 或 MCP server。

使用小而可信的驗證迴圈

每次變更後,先跑能證明當前契約的最窄命令。窄檢查透過後,再擴充套件到 broader builds。

保持 CLI-first

xcodebuild 能覆蓋 list schemes、build、test、archive、build-for-testingtest-without-building,讓 Codex 不用依賴 Xcode GUI。

需要深度自動化時用 XcodeBuildMCP

當 schemes、targets、simulator control、screenshots、logs 和 UI interaction 變重要時,plain shell commands 不夠,XcodeBuildMCP 更適合。

接下來去哪

本頁目錄