ns-ios-setup — Local iOS dev environment

SkillDev tools

Set up local iOS dev/build tooling for NowStack Mobile: Xcode, Simulator, CocoaPods, Watchman, mobile deps, and first `expo run:ios`. Use for `/ns ios local-setup`, legacy `/ns setup-ios`, simulator preview, or local TestFlight prerequisites. macOS only; signing is `/ns ios setup`.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the ns-ios-setup — Local iOS dev environment skill

What this skill tells your AI

The instructions your AI receives, as published by melvynx/saveit.now in .agents/skills/ns-ios-setup/SKILL.md and read by ahel’s review.

It is NOT /ns ios setup — that wires EAS + Apple signing for TestFlight builds. This skill never touches an Apple account, never signs, never uploads. Everything here runs on this machine against the Simulator.

Detect what's missing, propose the whole batch in one confirmation, install, then run the first build.

<platform_guard> iOS development requires macOS — Xcode and the Simulator do not exist on Linux/Windows.

uname -s   # must be "Darwin"

If not Darwin: stop. Explain that local iOS builds need a Mac, and the alternatives are (a) an EAS cloud iOS build (/ns ios testflight, builds on Apple-hosted macOS) or (b) developing the Android/web surfaces locally. Do not attempt any install. </platform_guard>

ComponentCheckFix (macOS)
Xcode.app (~7 GB, the full IDE — not just CLT)xcodebuild -version succeedsInstall via App Store, or brew install xcodes && xcodes install --latest. If absent, offer to run /ns doctor (it owns the big GUI install).
Active developer dir → Xcode (not the CLT shim)xcode-select -p ends in /Xcode.app/Contents/Developersudo xcode-select -s /Applications/Xcode.app/Contents/Developer
Xcode license acceptedxcodebuild -version doesn't error about a licensesudo xcodebuild -license accept
First-launch componentsn/a (idempotent)xcodebuild -runFirstLaunch
iOS Simulator runtime (an iPhone device available)xcrun simctl list devices available | grep -i iphone returns a rowxcodebuild -downloadPlatform iOS (Xcode 15+), or Xcode ▸ Settings ▸ Components
CocoaPods (prebuild runs pod install)pod --versionbrew install cocoapods
Watchman (Metro file watching)command -v watchmanbrew install watchman
Mobile node_modules (provides the expo binary)ls mobile-app/node_modules/.bin/expocd mobile-app && npm install — see note ↓

Mobile deps note: mobile-app/.npmrc pins legacy-peer-deps=true (Expo + React 19 pull react-dom at a newer patch than the pinned react, which trips npm's strict peer resolver → empty node_modulesexpo: command not found). Keep that file; verify the tree actually landed, don't trust a bare "exit 0". This overlaps /ns onboard step 2 — skip if already populated.

Signals

GitHub stars
31
Forks
5
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
ns-ios-setup
Source
github.com/melvynx/saveit.now