Agent skill

iOS Development

by AnastasiyaW in AnastasiyaW/codex-claude-code-config

Comprehensive iOS app development skill. An agent skill from AnastasiyaW/codex-claude-code-config.

MITAuto-check passedMobile

Install iOS Development

skills CLI
$ npx skills add AnastasiyaW/codex-claude-code-config --skill ios-development -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install AnastasiyaW/codex-claude-code-config ios-development --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/AnastasiyaW/codex-claude-code-config.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/ios/ios-development .claude/skills/ios-development && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
ios-development
GitHub stars
154
Token cost
~2.2k tokens
SKILL.md length
595 words
Files
9 (incl. references)
Skills in repo
52
Repo updated
First seen
Licence
MIT

At a glance

Comprehensive iOS app development skill. An agent skill from AnastasiyaW/codex-claude-code-config.

  • Works in 5 steps: UI framework → SwiftUI / UIKit / mixed? → Architecture → MVVM / TCA / VIPER /… → iOS target → iOS 16 / 17 / 18? (affects… → …
  • ANY iOS-related task: writing Swift/SwiftUI/UIKit code
  • SKILL.md covers Quick orientation, Reference files — read when…, iOS version matrix (API… and Core Swift patterns (always…, plus 7 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

iOS Development is an agent skill from AnastasiyaW/codex-claude-code-config. Comprehensive iOS app development skill. Use this skill for ANY iOS-related task: writing Swift/SwiftUI/UIKit code, architecting apps, debugging crashes, setting up navigation, networking, data persistence, animations, performance optimization, App Store submission, Xcode configuration. Trigger when user mentions: iOS, Swift, SwiftUI, UIKit, Xcode, iPhone/iPad app, Combine, CoreData, SwiftData, MVVM, TCA, URLSession, async/await, @State/@Binding/@ObservableObject, NavigationStack, XCTest, TestFlight, provisioning…

Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 9 other files, including reference files (for example `references/architecture.md`, `references/data.md` and `references/metal-graphics.md`).

It sits in Mobile, covering iOS development. It works with iOS, SwiftUI, Xcode and React. The repository describes itself as: Claude Code, Codex, and multi-agent configuration system: principles, hooks, skills, and workflow patterns for AI-assisted development. The licence is MIT.

When your agent uses it

  • ANY iOS-related task: writing Swift/SwiftUI/UIKit code
  • Architecting apps
  • Debugging crashes
  • Setting up navigation

Example prompts

  • “/ios-development”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. UI framework → SwiftUI / UIKit / mixed?
  2. Architecture → MVVM / TCA / VIPER / Clean / MVC?
  3. iOS target → iOS 16 / 17 / 18? (affects API availability)
  4. Task type → new feature / debug / refactor / architecture / performance / release?
  5. Graphics intensity → стандартный UI / средняя 3D / тяжёлая графика / Metal?

What it can do on your machine

Read from SKILL.md and the folder at commit c1126ce. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are swift).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

iOS Development loads about 2.2k tokens when it runs, and up to ~27k if it reads all its reference files. Until then it costs about 208 tokens; SKILL.md has 595 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~208
When it runs · the whole SKILL.md, loaded when a task matches
~2.2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~27k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from AnastasiyaW/codex-claude-code-config at commit c1126ce, republished under its MIT licence (© AnastasiyaW). 595 words, ~2,240 tokens.

Download SKILL.mdSave it as .claude/skills/ios-development/SKILL.md (or your agent's skills folder). This skill also uses 8 other files; get the full folder from GitHub.
name
ios-development
description
Comprehensive iOS app development skill. Use this skill for ANY iOS-related task: writing Swift/SwiftUI/UIKit code, architecting apps, debugging crashes, setting up navigation, networking, data persistence, animations, performance optimization, App Store submission, Xcode configuration. Trigger when user mentions: iOS, Swift, SwiftUI, UIKit, Xcode, iPhone/iPad app, Combine, CoreData, SwiftData, MVVM, TCA, URLSession, async/await, @State/@Binding/@ObservableObject, NavigationStack, XCTest, TestFlight, provisioning profiles, or any Apple platform development. Always use this skill before writing iOS code or architecture. Do NOT use for web frontends (HTML/CSS/JS, React/Vue, browser UI) — even a WebView's page content is web work; use frontend-design for that. This skill is native Apple-platform code only.

iOS Development Skill

Quick orientation

Before anything else, identify:

  1. UI framework → SwiftUI / UIKit / mixed?
  2. Architecture → MVVM / TCA / VIPER / Clean / MVC?
  3. iOS target → iOS 16 / 17 / 18? (affects API availability)
  4. Task type → new feature / debug / refactor / architecture / performance / release?
  5. Graphics intensity → стандартный UI / средняя 3D / тяжёлая графика / Metal?

Если задача связана с Metal, GPU, рендерингом, шейдерами, TBDR, MetalFX, GPU profiling, frame pacing, PSO, heaps, ICB, MTLIO → читать references/metal-graphics.md первым.

Then read the relevant reference file before writing code.


Reference files — read when needed

TopicFileWhen to read
SwiftUI pipelinereferences/swiftui.mdSwiftUI views, state, bindings, modifiers, animations
UIKit pipelinereferences/uikit.mdUIViewController, Auto Layout, delegates, storyboards
Architecturereferences/architecture.mdMVVM, TCA, VIPER, Clean, Coordinator
Networkingreferences/networking.mdURLSession, async/await, REST/GraphQL, auth
Data persistencereferences/data.mdCoreData, SwiftData, UserDefaults, Keychain, FileManager
Navigationreferences/navigation.mdNavigationStack, Coordinator, deep links, sheets
Performancereferences/performance.mdInstruments, memory, launch time, rendering
Metal & Heavy Graphicsreferences/metal-graphics.mdMetal, GPU рендер, TBDR, PSO/heaps/argument buffers, ICB, MTLIO, MetalFX, терморегуляция, профилирование GPU

iOS version matrix (API availability)

FeatureMin iOS
SwiftUIiOS 13
async/awaitiOS 15
NavigationStackiOS 16
SwiftDataiOS 17
@Observable macroiOS 17
RippleEffect, ScrollView phasesiOS 18

Always check target before using newer APIs. Use #available guards for backward compatibility:

swift
if #available(iOS 17, *) {
    // SwiftData or @Observable
} else {
    // fallback
}

Core Swift patterns (always apply)

Concurrency — async/await first
swift
// Prefer this
func loadUser() async throws -> User {
    let data = try await URLSession.shared.data(from: url).0
    return try JSONDecoder().decode(User.self, from: data)
}

// Call site
Task {
    do {
        user = try await loadUser()
    } catch {
        errorMessage = error.localizedDescription
    }
}
Error handling — typed errors
swift
enum AppError: LocalizedError {
    case networkUnavailable
    case decodingFailed(String)
    case unauthorized
    
    var errorDescription: String? {
        switch self {
        case .networkUnavailable: return "No internet connection"
        case .decodingFailed(let detail): return "Data error: \(detail)"
        case .unauthorized: return "Please sign in again"
        }
    }
}
Value types first

Prefer struct over class unless you need reference semantics, inheritance, or @Observable.


Architecture decision tree

Is the screen purely data-display with simple interaction?
  YES → MVC / simple SwiftUI View with @State is fine
  NO ↓

Is business logic testable without UI?
  Required → use ViewModel (MVVM) or Store (TCA)

Is navigation/routing complex (deep links, coordinator)?
  YES → read references/navigation.md → Coordinator pattern

Is the team large or is this a long-lived product?
  YES → Clean Architecture or TCA → read references/architecture.md

Default for most apps: MVVM + Coordinator

State management quick reference

SwiftUI state hierarchy
Local transient state       → @State
Passed from parent          → @Binding
Shared across views         → @StateObject / @ObservedObject (iOS 16-)
                            → @State with @Observable class (iOS 17+)
App-wide environment        → @EnvironmentObject / @Environment
iOS 17+ preferred (@Observable)
swift
@Observable
class UserStore {
    var users: [User] = []
    var isLoading = false
}

// In View — no property wrapper needed
struct UserListView: View {
    var store: UserStore  // just pass it
    var body: some View {
        List(store.users) { Text($0.name) }
    }
}
iOS 16 and below (ObservableObject)
swift
class UserViewModel: ObservableObject {
    @Published var users: [User] = []
    @Published var isLoading = false
}

struct UserListView: View {
    @StateObject private var vm = UserViewModel()
}

Xcode & project setup checklist

New project:

  • Set deployment target explicitly
  • Enable Swift strict concurrency warnings (SWIFT_STRICT_CONCURRENCY = complete)
  • Add .gitignore for Xcode (xcuserdata, DerivedData)
  • Configure signing (automatic vs manual)
  • Set bundle ID and version/build numbers

Capabilities to enable when needed:

  • Push Notifications → add Push Notifications capability
  • Background fetch → Background Modes
  • iCloud/CloudKit → iCloud
  • Sign in with Apple → Sign In with Apple

Testing baseline

swift
// Unit test — ViewModel
@MainActor
final class UserViewModelTests: XCTestCase {
    func testLoadUsers() async throws {
        let vm = UserViewModel(service: MockUserService())
        await vm.loadUsers()
        XCTAssertFalse(vm.users.isEmpty)
    }
}

// UI test — basic
func testLoginFlow() {
    let app = XCUIApplication()
    app.launch()
    app.textFields["Email"].tap()
    app.textFields["Email"].typeText("test@example.com")
    app.buttons["Continue"].tap()
    XCTAssertTrue(app.navigationBars["Home"].exists)
}

Show full SKILL.md (286 more words)Show less

Common pitfalls

PitfallFix
Purple warning: "Publishing changes from background thread"Wrap in await MainActor.run { } or mark func @MainActor
View re-renders too oftenAudit @State/@Published — split large ViewModels
Memory leak in closuresUse [weak self] captures in escaping closures
@StateObject recreatedMove object creation up the tree; don't init in body
Keyboard covering text fieldUse .ignoresSafeArea(.keyboard, edges: .bottom) or ScrollView
Slow listUse LazyVStack or List with id: stability
Simulator ≠ device behaviorAlways test on real device before submission
Metal: CPU↔GPU stallTriple buffer + DispatchSemaphore; никогда не ждать GPU синхронно в draw()
Metal: PSO компилируется в рантаймеСоздавать все PSO до первого кадра, кешировать
Metal: лишние load/storestoreAction = .dontCare для transient (depth buffer)
Metal: OOM jetsamМониторить currentAllocatedSize vs recommendedMaxWorkingSetSize; освобождать при warning
Metal: статтер при загрузкеMTLIO + MTLSharedEvent вместо блокирующей загрузки; ODR для тяжёлых ассетов
Metal: перегревПодписаться на thermalStateDidChangeNotification, адаптировать render scale + FPS

Hardware budget ориентиры (GPU capability levels)

Планировать по capability-уровням, не под конкретную модель. Всегда включать adaptive quality.

УровеньSoCРеалистичный targetКлючевые ограничения
Широкий охватA13–A15 (iPhone SE, 13, 14)30–60 FPS, агрессивный render scaleСтрогий бюджет RT; MetalFX обязателен для сложных сцен
СреднийA16 (iPhone 15), M160 FPS при хорошем пайплайнеMetalFX + динамический render scale
ФлагманA17 Pro (iPhone 15 Pro), M3+60–120 FPS, тяжёлые эффектыRay tracing (аппаратный); всё равно нужен thermal management

Важно: даже флагманы упираются в термальную стабильность при длительной нагрузке, а не в пиковую мощность GPU.


App Store submission checklist

  • Increment build number for every TestFlight upload
  • Privacy manifest (PrivacyInfo.xcprivacy) required for sensitive APIs
  • App icons all sizes provided (use Asset Catalog)
  • Screenshots for all required device sizes
  • Export compliance (encryption questions)
  • App Review Information filled in
  • No UIRequiresFullScreen = NO without iPad support reasoning

© AnastasiyaW, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 8 other files (references) in skills/ios/ios-development of AnastasiyaW/codex-claude-code-config.

  • SKILL.md
  • references/architecture.md
  • references/data.md
  • references/metal-graphics.md
  • references/navigation.md
  • references/networking.md
  • references/performance.md
  • references/swiftui.md
  • references/uikit.md

Open the folder on GitHubat commit c1126ce

Compare with similar skills

iOS Development next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

iOS Development compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
iOS Development this skillAnastasiyaW/codex-claude-code-config154—~2.2kAutomated safety check: PassMIT
Streamadrianhajdin/react-native-lingua152—~1.9kAutomated safety check: PassNone
Native App Designercuriositech/some_claude_skills243—~1.9kAutomated safety check: NotesMIT
Update Swiftui APIsAvdLee/SwiftUI-Agent-Skill3.7k—~1.2kAutomated safety check: PassMIT
OdevioOdevio/Odevio-CLI423—~7.6kAutomated safety check: PassMIT
iOS App Store SubmitZestfulPulse/ios-app-store-submit142—~4.7kAutomated safety check: PassMIT

Similar skills

  • Stream

    adrianhajdin/react-native-lingua

    Stream router for Chat, Video, Feeds, and Moderation. An agent skill from adrianhajdin/react-native-lingua.

    152 GitHub stars~1.9k tokensUpdated 4 mo ago
    MobileAuto-check passed
  • Native App Designer

    curiositech/some_claude_skills

    Creates breathtaking iOS/Mac and web apps with organic, non-AI aesthetic.

    243 GitHub stars~1.9k tokensUpdated 1 mo ago
    MobileAuto-check: notes
  • Update Swiftui APIs

    AvdLee/SwiftUI-Agent-Skill

    Scan Apple's SwiftUI documentation for deprecated APIs and update the SwiftUI Expert Skill with modern replacements.

    3.7k GitHub stars~1.2k tokensUpdated 3 days ago
    MobileAuto-check passed
  • Odevio

    Odevio/Odevio-CLI

    Take a Flutter project to an iPhone or the App Store with Odevio - build, sign and publish iOS apps from Windows, Linux or macOS with no Mac and no Xcode.

    423 GitHub stars~7.6k tokensUpdated 15 days ago
    MobileAuto-check passed
  • iOS App Store Submit

    ZestfulPulse/ios-app-store-submit

    Build, sign, and submit a Flutter/iOS app to the App Store Connect — covers Xcode archive/export, code signing (including headless-Mac keychain workarounds), the asc CLI for App Store Connect…

    142 GitHub stars~4.7k tokensUpdated 8 days ago
    MobileAuto-check passed
  • SwiftUI Design Skill

    Wholiver/swiftui-design-skill

    Guides the agent to design distinctive SwiftUI interfaces for iOS and macOS, with six anti-generic rules, a design direction workflow and a five-dimension review.

    213 GitHub stars~2.8k tokensUpdated 5 mo ago
    MobileAuto-check passed

More from AnastasiyaW/codex-claude-code-config

All 52 skills in this repo
  • Bug Reproducer

    AnastasiyaW/codex-claude-code-config

    Find likely software bugs in a codebase, rank concrete bug candidates, and prove or reject them with focused regression tests before proposing a fix.

    154 GitHub stars~4.1k tokensUpdated yesterday
    Auto-check passed
  • Motion Framer

    AnastasiyaW/codex-claude-code-config

    A skill your agent uses when implementing Motion or Framer Motion in React/JavaScript: interactive UI components, micro-interactions, gestures, layout or page transitions, and scroll-based animation.

    154 GitHub starsUsed in 1 repo~5.2k tokens
    Auto-check passed
  • Proof Verify

    AnastasiyaW/codex-claude-code-config

    Plan-based verification - freeze acceptance criteria before building, then verify after with an independent fresh-context agent (the builder must not verify their own work).

    154 GitHub stars~2.6k tokensUpdated yesterday
    Auto-check passed
  • Workflow Orchestration

    AnastasiyaW/codex-claude-code-config

    Написание и запуск Claude Code dynamic workflows (JS-оркестратор субагентов).

    154 GitHub stars~3.8k tokensUpdated yesterday
    Auto-check passed
  • Notebooklm Grounded Research

    AnastasiyaW/codex-claude-code-config

    A skill your agent uses when: NotebookLM, notebooklm MCP, large documentation sets, courses, books, papers, or citation-backed research are mentioned.

    154 GitHub stars~2.4k tokensUpdated yesterday
    Auto-check: warnings
  • Deepseek Provider Contract

    AnastasiyaW/codex-claude-code-config

    Validate a proposed DeepSeek API integration before any key or project context is sent: check thinking-mode tool-call history, strict-schema assumptions, bounded output, and provider data boundaries.

    154 GitHub stars~1.2k tokensUpdated yesterday
    Auto-check passed

Categories

Questions about iOS Development

What does iOS Development do?

Comprehensive iOS app development skill. An agent skill from AnastasiyaW/codex-claude-code-config. iOS Development is an agent skill from AnastasiyaW/codex-claude-code-config. Comprehensive iOS app development skill.

When should I use iOS Development?

iOS Development fits situations like: ANY iOS-related task: writing Swift/SwiftUI/UIKit code; architecting apps; debugging crashes; setting up navigation.

How do I install iOS Development in Claude Code?

Run `npx skills add AnastasiyaW/codex-claude-code-config --skill ios-development -a claude-code`. Or copy the skill folder (skills/ios/ios-development in AnastasiyaW/codex-claude-code-config) into .claude/skills/ios-development in your project. Claude Code loads it when a task matches its description.

How do I install iOS Development in Codex?

Run `npx skills add AnastasiyaW/codex-claude-code-config --skill ios-development -a codex`. Or copy the skill folder (skills/ios/ios-development in AnastasiyaW/codex-claude-code-config) into .agents/skills/ios-development in your project. Codex loads it when a task matches its description.

Can I use iOS Development in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add AnastasiyaW/codex-claude-code-config --skill ios-development -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ios-development, .gemini/skills/ios-development, .github/skills/ios-development and .opencode/skills/ios-development in your project.

What does iOS Development need to run?

SKILL.md names no scripts, command-line tools or credentials: iOS Development is instructions for the agent only.

Does iOS Development access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is iOS Development safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does iOS Development use?

iOS Development is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does iOS Development use?

About 2.2k tokens (SKILL.md is roughly 9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 25k tokens, read only when the agent opens those files.

What are the alternatives to iOS Development?

Skills that share tags, products or a category with iOS Development: Stream (adrianhajdin/react-native-lingua, 152 stars), Native App Designer (curiositech/some_claude_skills, 243 stars), Update Swiftui APIs (AvdLee/SwiftUI-Agent-Skill, 3.7k stars) and Odevio (Odevio/Odevio-CLI, 423 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains iOS Development?

AnastasiyaW (a GitHub user) maintains it in AnastasiyaW/codex-claude-code-config, which has 154 GitHub stars. The repository holds 52 skills in this directory. The repository was last updated on October 8, 2026.

Source: AnastasiyaW/codex-claude-code-config on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.