| name | native-ios-app |
| description | Build native iOS apps with SwiftUI using Xcode 26.3 MCP integration and Ralph OG autonomous development. Use when creating iOS apps, Swift development, Xcode projects, or autonomous mobile app development with visual design styles. |
| version | 1.0.0 |
| allowed-tools | Bash(xcrun *), Bash(xcodebuild *), Bash(npx xcodebuildmcp *), Bash(swift *), Read, Write, Edit, Glob, Grep |
Native iOS App Development Skill
Build native iOS applications using SwiftUI, Xcode 26.3 MCP integration, and Ralph OG autonomous development loops.
Quick Reference
| Command | Purpose |
|---|
/native-ios-app init "App Name" | Initialize new iOS project |
/native-ios-app ralph "objective" | Start Ralph OG autonomous loop |
/native-ios-app style glassmorphism | Apply design style to project |
/native-ios-app build | Build project via MCP |
/native-ios-app preview | Capture SwiftUI previews |
/native-ios-app status | Check build/test status |
Prerequisites
1. Xcode 26.3+ Setup
Enable MCP bridge in Xcode:
- Xcode โ Settings โ Intelligence โ Anthropic (configure API key)
- Xcode โ Settings โ Intelligence โ Model Context Protocol โ Enable "Xcode Tools"
2. MCP Bridge for Claude Code
claude mcp add --transport stdio xcode -- xcrun mcpbridge
claude mcp list
3. XcodeBuildMCP (Enhanced Features)
npm install -g xcodebuildmcp@beta
claude mcp add XcodeBuildMCP -- npx -y xcodebuildmcp@beta mcp
Xcode MCP Tools Available
Once configured, these tools are available:
| Category | Tools |
|---|
| File Ops | XcodeRead, XcodeWrite, XcodeUpdate, XcodeGlob, XcodeGrep, XcodeLS, XcodeMakeDir, XcodeRM, XcodeMV |
| Build | BuildProject, GetBuildLog |
| Testing | RunAllTests, RunSomeTests, GetTestList |
| Analysis | XcodeListNavigatorIssues, XcodeRefreshCodeIssuesInFile |
| Preview | RenderPreview (SwiftUI โ PNG images) |
| Execute | ExecuteSnippet (Swift REPL) |
| Docs | DocumentationSearch (Apple docs + WWDC transcripts) |
| Navigation | XcodeListWindows |
Project Initialization
Create New iOS App
mkdir -p ~/Developer/MyApp
cd ~/Developer/MyApp
swift package init --type executable --name MyApp
Project Structure
MyApp/
โโโ MyApp.xcodeproj/
โโโ MyApp/
โ โโโ MyAppApp.swift # App entry point
โ โโโ ContentView.swift # Main view
โ โโโ Views/ # SwiftUI views
โ โโโ Models/ # Data models
โ โโโ ViewModels/ # MVVM view models
โ โโโ Services/ # API/data services
โ โโโ Components/ # Reusable UI components
โ โโโ Resources/ # Assets, colors, fonts
โโโ MyAppTests/
โโโ .ralph-og/ # Ralph OG autonomous loop
โโโ .design-system/ # Design tokens and styles
Ralph OG Integration for iOS
Initialize Ralph OG for iOS Development
Creates .ralph-og/ with iOS-specific configuration:
.ralph-og/
โโโ PROMPT.md # Xcode-aware loop prompt
โโโ init.sh # Swift/Xcode environment setup
โโโ feature-list.json # Atomic features with SwiftUI focus
โโโ progress.txt # Work log
โโโ loop.sh # The autonomous loop
โโโ learnings.md # iOS-specific learnings
iOS-Specific PROMPT.md
The Ralph OG prompt for iOS includes:
-
Startup Ritual:
pwd - Confirm directory
- Read
.ralph-og/progress.txt
git log --oneline -10
- Read
.ralph-og/feature-list.json
xcodebuild -list - Verify schemes
- Check for Xcode open via MCP
-
Visual Verification:
- Capture SwiftUI Previews after UI changes
- Compare with expected layouts
-
Build Verification:
xcodebuild build before marking complete
- Check for warnings/errors
-
Test Verification:
- Run tests via
xcodebuild test
Starting the Loop
cd ~/Developer/MyApp
.ralph-og/loop.sh
Or in background:
nohup .ralph-og/loop.sh > .ralph-og/loop.log 2>&1 &
echo $! > .ralph-og/loop.pid
Design Styles
Select a visual design language for your app. Each style includes SwiftUI implementation patterns.
Available Styles
See styles/README.md for complete catalog:
| Style | Best For |
|---|
| Liquid Glass | iOS 26+ apps, modern Apple aesthetic |
| Glassmorphism | Overlays, cards, modals |
| Neumorphism | Tactile buttons, soft interfaces |
| Flat Design | Clean, minimal interfaces |
| Material Design | Android-like, cross-platform |
| Brutalism | Bold, high-contrast, statement apps |
| Neo-Brutalism | Modern brutalist with color |
| Minimalism | Content-focused, clean |
| Cyberpunk | Dark mode, neon accents |
| Retro/Y2K | Nostalgic, playful |
| Bento Box | Grid layouts, organized content |
Applying a Style
/native-ios-app style glassmorphism
This creates .design-system/tokens.swift with style-specific:
- Color palette
- Typography scale
- Spacing system
- Shadow definitions
- Corner radius tokens
- Animation curves
SwiftUI Materials & Effects
iOS 15+ Native Materials
.ultraThinMaterial
.thinMaterial
.regularMaterial
.thickMaterial
.ultraThickMaterial
Text("Hello")
.padding()
.background(.ultraThinMaterial)
.clipShape(RoundedRectangle(cornerRadius: 16))
Liquid Glass (iOS 26+)
.background(.liquidGlass)
.glassEffect(style: .standard)
.glassEffect(style: .frosted, tint: .blue)
Custom Blur Effects
struct GlassCard: View {
var body: some View {
ZStack {
Rectangle()
.fill(.ultraThinMaterial)
VStack {
Text("Glass Card")
.font(.headline)
}
.padding()
}
.clipShape(RoundedRectangle(cornerRadius: 20, style: .continuous))
.shadow(color: .black.opacity(0.1), radius: 10, y: 5)
}
}
Commands Reference
/native-ios-app init "App Name"
Initialize a new iOS project:
- Create Xcode project structure
- Set up SwiftUI app template
- Configure build settings
- Initialize git repository
- Create
.design-system/ with default tokens
- Optionally initialize Ralph OG
/native-ios-app ralph "objective"
Start Ralph OG autonomous development:
- Create
.ralph-og/ directory
- Generate iOS-specific PROMPT.md
- Create feature-list.json from objective
- Set up init.sh with Swift toolchain checks
- Start the loop
/native-ios-app style <style-name>
Apply design style:
- Read style definition from
styles/<style-name>.md
- Generate
.design-system/tokens.swift
- Create style-specific SwiftUI extensions
- Update existing components if present
/native-ios-app build
Build via Xcode MCP:
- Check for open Xcode project
- Run
BuildProject via MCP
- Report build status and errors
- Capture any warnings
/native-ios-app preview
Capture SwiftUI previews:
- List preview providers in project
- Render each via
RenderPreview MCP tool
- Save PNG images to
.previews/
- Report any preview failures
/native-ios-app status
Check project status:
- Build state (last build time, success/failure)
- Test results (passed/failed/skipped)
- Code issues from navigator
- Ralph OG progress (if active)
Best Practices
SwiftUI Architecture
Use MVVM pattern:
Views/ โ SwiftUI views (display only)
ViewModels/ โ @Observable classes (logic)
Models/ โ Data structures
Services/ โ API, persistence
Design Token Usage
Always use tokens, never hardcoded values:
Text("Title")
.font(.system(size: DesignTokens.Typography.title))
.foregroundColor(DesignTokens.Colors.textPrimary)
Text("Title")
.font(.system(size: 28))
.foregroundColor(Color(hex: "#1a1a1a"))
Accessibility
- Minimum touch target: 44ร44pt
- Support Dynamic Type
- Provide accessibility labels
- Respect
reduceMotion preference
@Environment(\.accessibilityReduceMotion) var reduceMotion
.animation(reduceMotion ? nil : .spring(), value: isExpanded)
Troubleshooting
MCP Bridge Not Working
- Verify Xcode 26.3+ installed:
xcodebuild -version
- Check MCP enabled in Xcode Settings
- Ensure Xcode is running with project open
- Test with:
xcrun mcpbridge --help
Build Failures
- Check scheme:
xcodebuild -list
- Clean build folder:
xcodebuild clean
- Check signing: Xcode โ Project โ Signing & Capabilities
Preview Not Rendering
- Ensure preview provider exists
- Check for compile errors
- Verify simulator selected in Xcode
Resources
Apple Documentation
References in This Skill
Templates
Skill Version: 1.0.0
Compatible with: Xcode 26.3+, iOS 17+, Swift 5.9+