ios-swift-development — скилл для Claude Code: нативные
Скилл для разработки нативных iOS-приложений на Swift: MVVM, SwiftUI, сеть через URLSession, Combine и Core Data.
npx skills add aj-geddes/useful-ai-prompts --skill ios-swift-development -a claude-codeЧто делает ios-swift-development
Скилл задаёт агенту рамку для работы над нативными iOS-приложениями на Swift. Внутри — MVVM-архитектура, декларативный UI на SwiftUI, сетевые запросы через URLSession, реактивные цепочки на Combine и хранение данных в Core Data. Асинхронные вызовы строятся на async/await.
В references/ лежат три подробных руководства: настройка MVVM, сетевой сервис на URLSession и вьюхи на SwiftUI. В основном файле — краткий пример с моделью User, вьюмоделью на ObservableObject и методом fetchUser с @MainActor. Полную реализацию автор выносит в справочники, так что агенту придётся читать их отдельно.
Список практик тоже входит в скилл. Токены советует держать в Keychain, а не в UserDefaults, сетевые вызовы не пускать в главный поток, обходиться без force unwrapping и хардкода URL. Если в проекте уже есть UIKit-код или пароли лежат в исходниках, это повод проверить, что агент не потянет старые паттерны за собой.
Какие задачи решает
- собрать экран на SwiftUI с вьюмоделью по MVVM
- описать сетевой слой на URLSession с async/await
- связать состояние интерфейса с потоком данных через Combine
- сохранить сущности приложения в Core Data
- вынести токены и пароли из UserDefaults в Keychain
Примеры запросов агенту
- Создай экран профиля на SwiftUI с вьюмоделью по MVVM
- Напиши сетевой сервис на URLSession с async/await и обработкой ошибок
- Добавь сохранение пользователей в Core Data
Как установить ios-swift-development
1Через Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill ios-swift-development -a claude-code2Вручную: положить файлы
~/.claude/skills/ios-swift-development/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/ios-swift-development/
1Через Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill ios-swift-development -a codex2Вручную: положить файлы
.agents/skills/ios-swift-development/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill ios-swift-development -a cursor2Вручную: положить файлы
.cursor/skills/ios-swift-development/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install aj-geddes/useful-ai-prompts ios-swift-development2Вручную: положить файлы
.github/skills/ios-swift-development/SKILL.md1Через Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill ios-swift-development -a gemini-cli2Командой платформы
gemini skills install https://github.com/aj-geddes/useful-ai-prompts --path skills/ios-swift-developmentВручную: положить файлы
.devin/skills/ios-swift-development/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill ios-swift-development -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о ios-swift-development
Как установить ios-swift-development в Claude?
Выполните npx skills add aj-geddes/useful-ai-prompts --skill ios-swift-development -a claude-code. Скилл окажется в ~/.claude/skills/ios-swift-development/SKILL.md.
Что делает ios-swift-development?
Даёт агенту руководства по MVVM, SwiftUI, URLSession, Combine и Core Data, чтобы он писал нативные iOS-приложения на Swift в едином стиле.
Какие файлы входят в скилл?
Основной SKILL.md с кратким примером и каталог references/ с тремя руководствами: настройка MVVM, сетевой сервис на URLSession и вьюхи на SwiftUI.
Исходный текст
SKILL.md · MIT
---
name: ios-swift-development
description: >
Develop native iOS apps with Swift. Covers MVVM architecture, SwiftUI,
URLSession for networking, Combine for reactive programming, and Core Data
persistence.
---
# iOS Swift Development
## Table of Contents
- [Overview](#overview)
- [When to Use](#when-to-use)
- [Quick Start](#quick-start)
- [Reference Guides](#reference-guides)
- [Best Practices](#best-practices)
## Overview
Build high-performance native iOS applications using Swift with modern frameworks including SwiftUI, Combine, and async/await patterns.
## When to Use
- Creating native iOS applications with optimal performance
- Leveraging iOS-specific features and APIs
- Building apps that require tight hardware integration
- Using SwiftUI for declarative UI development
- Implementing complex animations and transitions
## Quick Start
Minimal working example:
```swift
import Foundation
import Combine
struct User: Codable, Identifiable {
let id: UUID
var name: String
var email: String
}
class UserViewModel: ObservableObject {
@Published var user: User?
@Published var isLoading = false
@Published var errorMessage: String?
private let networkService: NetworkService
init(networkService: NetworkService = .shared) {
self.networkService = networkService
}
@MainActor
func fetchUser(id: UUID) async {
isLoading = true
errorMessage = nil
// ... (see reference guides for full implementation)
```
## Reference Guides
Detailed implementations in the `references/` directory:
| Guide | Contents |
|---|---|
| [MVVM Architecture Setup](references/mvvm-architecture-setup.md) | MVVM Architecture Setup |
| [Network Service with URLSession](references/network-service-with-urlsession.md) | Network Service with URLSession |
| [SwiftUI Views](references/swiftui-views.md) | SwiftUI Views |
## Best Practices
### ✅ DO
- Use SwiftUI for modern UI development
- Implement MVVM architecture
- Use async/await patterns
- Store sensitive data in Keychain
- Handle errors gracefully
- Use @StateObject for ViewModels
- Validate API responses properly
- Implement Core Data for persistence
- Test on multiple iOS versions
- Use dependency injection
- Follow Swift style guidelines
### ❌ DON'T
- Store tokens in UserDefaults
- Make network calls on main thread
- Use deprecated UIKit patterns
- Ignore memory leaks
- Skip error handling
- Use force unwrapping (!)
- Store passwords in code
- Ignore accessibility
- Deploy untested code
- Use hardcoded API URLs
© aj-geddes · MIT · aj-geddes/useful-ai-prompts