xcode-cloudlisted
Install: claude install-skill ltatarev/skills
# Xcode Cloud for a React Native app
Xcode Cloud clones the repo and **nothing else**. `node_modules/` and `Pods/`
are both gitignored, so a fresh clone has no JavaScript and no pods — the
archive has to install them itself before `xcodebuild` ever runs. That is the
whole job of `ci_post_clone.sh`, and nearly every "Xcode Cloud is broken"
report is really that job failing in one of a dozen documented ways.
This skill carries those ways. **`references/failure-catalogue.md` is the
highest-value file here** — grep it for the literal error text before theorising
about any failure.
| File | What it is |
| --- | --- |
| `references/ci_post_clone.sh` | The install script. Template; three lines to check per project. |
| `references/ci_pre_xcodebuild.sh` | Build-number stamping. Generic as written. |
| `references/failure-catalogue.md` | Symptom → real cause → fix. Append-only. |
| `references/build-machine-facts.md` | What the runner actually provides, with observation dates. |
| `references/project-memory.md` | The per-project doc skeleton + the hook that keeps it current. |
## Phase 0 — ground yourself in the repo
Never write these scripts from the template alone. Five minutes here saves a
build, and each failed build costs 10–20 minutes of round trip.
```bash
ls -d ios/*.xcworkspace ios/*.xcodeproj ios/ci_scripts 2>/dev/null
ls ios/*.xcodeproj/xcshareddata/xcschemes/ # scheme shared? empty = not shared
node -p "require('./package.json').dependencies['react-native']"
cat