首页/文章/用 Claude Code 做 iOS / macOS 开发:在新加坡 Mac mini 上配好 Xcode 工作流

用 Claude Code 做 iOS / macOS 开发:在新加坡 Mac mini 上配好 Xcode 工作流

· SgRent

为什么 iOS / macOS 开发特别适合「Claude Code + 常开 Mac mini」

写 Flutter、React Native 或原生 Swift 时,瓶颈经常不在编辑器,而在 必须用到的 macOS 与 Xcode:签名、模拟器、Archive、上传 TestFlight,都离不开一台真正的 Mac。笔记本可以应急,但一旦要跑长构建、过夜改仓库,或出门后还想接回同一现场,合盖休眠就会打断一切。

与此同时,Claude Code 擅长在终端里读仓库、改文件、跑命令。把它和 Xcode 装在同一台 常开的新加坡 Mac mini 上,等于把「AI 改代码」和「官方工具链构建」放在同一环境里,减少「本机改完再拷到另一台 Mac 打包」的往返。Claude 订阅由你自己开通;本文只谈稳定合规的使用环境,不涉及共享或转卖账号。

这套组合解决什么痛点

  1. 没有桌上常开 Mac:本机是 Windows / Linux,或只有一台轻薄本,不想 24 小时开着。
  2. 构建与 AI 改码脱节:Claude Code 在 A 机器改完,Xcode 却在 B 机器,环境不一致。
  3. 长任务怕中断:依赖安装、xcodebuild、测试套件跑很久,断线后难接回。
  4. CI 不够用时要本机兜底:云上的 macOS runner 适合流水线,但调试签名、点系统弹窗、装额外工具,仍常需要一台可控的整机。
请使用你自己的 Apple ID、开发者账号与 Claude 账号,并遵守 Apple 与 Anthropic 的适用条款。SgRent 与这些服务无官方合作关系;本文只谈稳定合规的使用环境。

准备清单

  • 一台常开 Mac mini(整机租用或自有设备托管)
  • 你自己的 Apple ID / Apple Developer 账号(按你的上架需求)
  • 你自己的 Claude 账号(用于 Claude Code)
  • 远程方式:SSH(看构建日志、接 tmux)和/或 UU 远程(需要图形界面点 Xcode、钥匙串、系统弹窗时)
  • 建议磁盘留足空间:Xcode 与模拟器体积大,SSD 空间要提前规划

步骤一:把 Mac mini 调成可过夜的工作机

  1. 系统设置 → 锁定屏幕 / 节能:接电时避免会中断长构建的休眠;按需开启网络唤醒。
  2. 时区设为新加坡(Asia/Singapore),语言与地区保持一致,减少证书与时间相关的怪异问题。
  3. 开启 FileVault 与防火墙,设置自动锁屏。
  4. 为开发单独建一个日常登录用户;证书与钥匙串不要随意导出给他人。

常开不等于把生产密钥交给无人值守脚本。Claude Code 可以改代码、跑测试;提交上架、导出证书、触碰支付相关配置仍须你自己确认。

步骤二:安装 Xcode 与命令行工具

  1. 用 UU 远程打开 App Store,安装 Xcode(以你账号可见的最新稳定版为准)。
  2. 首次打开 Xcode,完成附加组件下载;在设置里确认 Command Line Tools 指向当前 Xcode。
  3. 终端验证:

``bash xcode-select -p xcodebuild -version ``

  1. 按项目需要安装 CocoaPods、Fastlane 或你常用的包管理器;装到用户级固定路径,避免「某个临时窗口才有命令」。
  2. 用 Xcode 打开一个最小工程,跑一次模拟器或真机构建,确认签名流程在你账号下可用。

磁盘紧张时:删掉不用的旧模拟器运行时,把大型缓存目录放到你规划好的路径,并记进项目备忘。

步骤三:在同一台机器安装 Claude Code

  1. 按官方文档安装 Claude Code CLI。
  2. 用你自己的 Claude 账号完成登录授权;不要把登录态交给他人。
  3. 把工作目录固定在例如 ~/Projects,仓库用 Git clone;不要让自动化默认可读整个主目录。
  4. 在测试仓库跑一次无害任务(例如总结 README、列出目录结构),确认 CLI 与 PATH 正常。

分工建议:

  • Claude Code + tmux:长改码、跑脚本、看 xcodebuild 日志
  • UU 远程 + Xcode GUI:证书、Capability、Organizer 上传、系统弹窗

步骤四:一条可重复的「改码 → 构建」流水线

下面是一套可落地的日常顺序(按你的项目替换命令):

  1. SSH 登录后进入固定会话:

``bash tmux new -s ios-dev # 或:tmux attach -t ios-dev cd ~/Projects/your-app ``

  1. 启动 Claude Code,说明目标(例如:修某个编译错误、补单元测试、整理重复代码)。让它改完后 先看 diff,再决定是否 commit。
  2. 用你熟悉的构建命令验收,例如:

``bash xcodebuild -scheme YourScheme -destination 'platform=iOS Simulator,name=iPhone 16' build ``

或先跑项目里已有的 make / Fastlane lane。失败日志可以贴回 Claude Code 继续修,仍在同一 tmux 会话里。

  1. 需要点 GUI 时,改用 UU 远程打开 Xcode;不要把上传 App Store 的最终确认交给无人值守流程。
  2. 故意断开 SSH,稍后 tmux attach,确认构建或改码会话还在。

把「启动命令、scheme 名、常用 lane、证书备注(不含私钥)」写进 ~/Notes/ios-workflow.md,换设备接回时按清单操作即可。

步骤五:和 CI 怎么分工(而不是互相替代)

云上的 macOS CI(例如托管 runner)适合:每次 PR 的编译、测试、重复劳动。 本机常开 Mac mini 适合:签名调试、本地复现、带 GUI 的配置、以及 Claude Code 这种需要长时间占着终端的改码会话。

实用切法:

  • PR 门禁走 CI;本地用 Claude Code 把分支修到绿。
  • 证书与 provisioning 的变更,在 Mac mini 上用 Xcode 做完,再同步到 CI 所需的安全存储(按你团队既有流程)。
  • 大版本 Xcode 升级:先在 Mac mini 验证工程可编译,再升 CI 镜像,避免两边同时翻车。

步骤六:30 分钟验收清单

  1. 重启 Mac mini 后,能否按备忘快速进入 tmux 会话并打开项目。
  2. xcodebuild -version 与 Claude Code 登录态仍可用。
  3. 断线再连:长构建或改码会话可接回。
  4. UU 远程能打开 Xcode 并完成一次无害 GUI 操作(如查看 Signing)。
  5. FileVault、防火墙、锁屏仍开启;工作区无明文堆放私钥。

什么时候适合新加坡整机环境

家里短时调试够用:偶尔打开 Xcode、构建很快结束、能接受笔记本一直开着。

更适合新加坡 整机独享 或托管:需要固定的新加坡网络与时区;希望 Xcode 与 Claude Code 长期共存在同一台物理机;笔记本不能过夜常开;构建与改码要能远程接回。

SgRent 在新加坡提供 Mac mini M6 整机独享(一人一台物理机),接入新加坡家庭宽带原生 IP。新客户整机租用 ¥699/月 起,自有设备托管 ¥299/月 起;季付、半年付、年付有折扣。交付后可用 UU 远程;SSH 按你的安全策略自行开启。Apple 与 Claude 等账号仍由你自行准备。

常见踩坑

  1. 只装了 Xcode 没装 CLI 工具:终端里 xcodebuild 不可用,Claude Code 也无法帮你跑构建。
  2. 不建 tmux 就开长构建:SSH 一断,进度清零。
  3. AI 改完直接 Archive 上架:合并、签名变更与上传必须人工确认。
  4. 模拟器与缓存吃光磁盘:提前清理,并监控可用空间。
  5. 多台机器各装一套却不同步:方案文件、Ruby/Node 版本不一致会导致「本机能编、CI 不能编」。以 Mac mini 为唯一「可过夜」源环境更省事。

小结

iOS / macOS 开发需要 真 Mac + 可接回的长任务环境。把 Xcode 与 Claude Code 放在同一台新加坡常开 Mac mini 上,用 tmux 挂改码与构建,用 UU 远程处理 GUI,再用 CI 做门禁,是一套清晰分工。账号与订阅自备;需要整机独享或托管时,可在 zumac.ai 查看方案与交付说明。

需要一台新加坡的独享远程 Mac? SgRent 提供新加坡家庭宽带原生 IP 的 Mac mini M6,整机独享,UU 远程连接。整机租用 ¥699/月,自有设备托管 ¥299/月;季付 9 折,半年付 6 送 1,年付 12 送 2。
前往 panel.zumac.ai 订购 → · 查看方案与费用 · 帮助中心

返回首页 · 更多文章

TG 客服