SwiftUI Agent Skills 指南
两套热门 iOS AI 编程技能库,代表了两条不同路线:一套把 Xcode 内的 Apple 文档变成事实来源,另一套把现代 Apple 开发拆成 84 个可独立安装的专项能力。
只选一套:追求 Apple 原始文档约束与减少 API 幻觉,选 ameyalambat128/swiftui-skills;需要覆盖完整 iOS 工程、按框架精准调用,选 dpearson2699/swift-ios-skills。更好的组合:前者做“事实层”,后者只安装项目正在使用的 5–10 个专项 Skill。
AI 写 SwiftUI 最常见的问题,不是语法完全错误,而是代码“看起来像对的”:状态所有权不清、导航模型过时、并发边界含糊,或者混入一个根本不存在的 API。Agent Skills 的价值,是把通用模型变成带有 Apple 平台工程约束的协作者。
Agent Skill 到底是什么?
Skill 通常是一个包含 SKILL.md 的目录。它告诉 Codex、Claude Code、Cursor 等编程代理:什么时候启用这项能力、应该先阅读哪些参考资料、生成代码时遵守哪些规则,以及最终输出应该长什么样。它不是 Xcode 插件,也不是一个新的 Swift package;它更像给 AI 的“团队工程手册 + 专项知识包”。
与把所有规则塞进一份超长提示词相比,Skill 可以按任务触发。做 SwiftUI 动画时加载动画知识,处理 StoreKit 时加载购买与交易验证规则,调试滚动卡顿时再加载性能与 Instruments 指南。这种按需上下文,通常更准确,也更省 token。
两套方案,一张表看懂
| 维度 | ameyalambat128/swiftui-skills | dpearson2699/swift-ios-skills |
|---|---|---|
| 形态 | 1 个聚合型 Skill | 84 个独立 Skill,9 类 |
| 核心来源 | 从本机 Xcode 提取 Apple AdditionalDocumentation | 项目维护者编写的指导、示例与参考资料 |
| 覆盖重点 | SwiftUI 与 Apple 新平台能力 | 从 SwiftUI、数据、AI 到硬件、发布的完整 iOS 工程 |
| 更新方式 | 重新从 Xcode 本地文档提取 | 更新仓库中的独立 Skill |
| 适合谁 | 重视 Apple 原始指导、API 可用性与审查依据 | 希望按框架选择能力、覆盖端到端开发的团队 |
| 许可证 | MIT | PolyForm Perimeter 1.0.0 |
路线一:把 Xcode 文档变成 AI 的事实来源
Repository 01
ameyalambat128/swiftui-skills
一个聚合型 Skill,安装时从本机 Xcode 26+ 提取 Apple 自带的 AdditionalDocumentation。仓库不重新分发 Apple 文档;实际参考资料在用户机器上生成。
MITmacOSXcode 26+local-first这套方案最有价值的设计,是明确规定“所有事实与 API 都必须以本地 /docs 为准”。写代码前先选文档,审查代码时标出使用了哪些文档;如果资料里没有对应类型或 API,就应该承认不确定,而不是补全一个听起来合理的名字。
当前提取范围不仅是 SwiftUI 布局,还包含 App Intents、AlarmKit、StoreKit、WebKit、SwiftData 继承、Swift Concurrency、Liquid Glass、visionOS Widget,以及 InlineArray、Span 等底层性能能力。
它的强项不是“Skill 数量”,而是来源质量。如果你的痛点是 AI 经常使用过时 modifier、忽略 availability,或生成不符合 Apple 习惯的视图结构,这套方案更直接。
需要留意的限制
- 需要 macOS 与 Xcode 26 或更高版本;文档目录没有完成提取时,Skill 按约定不应继续给出 SwiftUI 指导。
- 它是一个宽入口。复杂项目仍然需要你在任务里明确目标,例如“按 Apple 文档审查状态所有权与导航”。
- 本地 Xcode 版本决定了参考资料版本,团队应统一工具链,避免同一任务得到不同可用性结论。
路线二:84 个可组合的 iOS 专项 Skills
Repository 02
dpearson2699/swift-ios-skills
面向 iOS 26+ 与 Swift 6.3 的独立 Skill 集合。每个 Skill 自包含、互不依赖,可以只安装项目真正需要的部分。
84 skills9 categoriesAgent Skills standardPolyForm Perimeter这套仓库的优势是路由精度。你不需要每次都把完整 Apple 开发知识放进上下文:一个使用 SwiftData、StoreKit 2、App Intents 与 WidgetKit 的订阅应用,可以只安装这几项,再搭配 SwiftUI patterns、Swift Concurrency、测试与无障碍 Skill。
下面是截至本文更新时的完整 84 项分类。展开每组可以快速核对是否覆盖你的项目栈。
SwiftUI 10 skills
- focus-engine — 焦点与 tvOS/iPad 键盘导航
- swiftui-animation — spring、关键帧与几何动画
- swiftui-gestures — 手势组合与冲突处理
- swiftui-layout-components — Grid、Layout 与自适应布局
- swiftui-liquid-glass — iOS 26 Liquid Glass
- swiftui-navigation — 导航栈、分栏与深链
- swiftui-patterns — Observation、状态与组合模式
- swiftui-performance — 更新、布局与 Instruments
- swiftui-uikit-interop — UIKit 互操作与渐进迁移
- swiftui-webkit — WebView 与 WebPage
Core Swift 10 skills
- swift-api-design-guidelines — 命名与 API 设计
- swift-architecture — MV、MVVM、TCA 等架构决策
- swift-codable — JSON 编解码
- swift-charts — 2D/3D 图表
- swift-concurrency — actor、Sendable 与数据竞争
- swift-formatstyle — 日期、数字与自定义格式
- swift-language — Swift 6.3 语言惯用法
- swift-testing — Swift Testing
- core-data — Core Data 与迁移
- swiftdata — Model、Query、迁移与同步
App Experience Frameworks 15 skills
- activitykit — 实时活动与灵动岛
- adattributionkit — 隐私归因
- alarmkit — 系统闹钟与倒计时
- app-clips — App Clip
- app-intents — Siri、快捷指令与 Spotlight
- avkit — 视频播放、画中画与 AirPlay
- carplay — CarPlay 模板
- mapkit — 地图、定位与路线
- paperkit — PaperKit 标注
- pdfkit — PDF 浏览与编辑
- photokit — 照片、相机与权限
- push-notifications — APNs 与通知扩展
- storekit — StoreKit 2
- tipkit — 功能提示
- widgetkit — Widget 与 Control
Data & Service Frameworks 8 skills
- cloudkit — 记录、订阅与同步
- contacts-framework — 通讯录
- eventkit — 日历与提醒
- financekit — 钱包交易与账户
- healthkit — 健康与运动数据
- musickit — 音乐目录与播放
- passkit — Apple Pay 与 Wallet
- weatherkit — 天气与署名规则
AI & Machine Learning 5 skills
- apple-on-device-ai — Foundation Models 与端侧 LLM
- coreml — 模型加载、MLTensor 与推理
- natural-language — 分词、情感与翻译
- speech-recognition — 端侧语音识别
- vision-framework — OCR、检测与扫描
iOS Engineering 14 skills
- app-store-optimization — ASO
- app-store-review — 审核与隐私清单
- authentication — Apple 登录、Passkey 与生物认证
- background-processing — 后台任务与传输
- cryptokit — 哈希、加密与 Secure Enclave
- debugging-instruments — 调试器与 Instruments
- device-integrity — DeviceCheck 与 App Attest
- ios-accessibility — VoiceOver 与 Dynamic Type
- ios-localization — String Catalog 与 RTL
- ios-networking — URLSession、WebSocket 与缓存
- swift-security — Keychain 与安全实践
- ios-simulator — simctl 与自动化
- metrickit — 崩溃、卡顿与能耗指标
- swiftlint — 规则、基线与 CI
Hardware & Device Integration 8 skills
- accessorysetupkit — 配件发现
- core-bluetooth — BLE
- core-motion — 运动传感器
- core-nfc — NFC 读写
- dockkit — 智能底座与取景
- pencilkit — Apple Pencil 绘图
- realitykit — AR 与空间场景
- sensorkit — 研究级传感器数据
Platform Integration 10 skills
- appmigrationkit — 跨平台数据迁移
- audioaccessorykit — 音频配件
- browserenginekit — 替代浏览器引擎
- callkit — 通话与 VoIP
- cryptotokenkit — 智能卡与证书认证
- energykit — 电网与负载洞察
- homekit — HomeKit 与 Matter
- permissionkit — 儿童通信安全
- relevancekit — Widget 相关性
- shareplay-activities — GroupActivity 与同步体验
Gaming 4 skills
- gamekit — Game Center 与多人游戏
- scenekit — 3D 场景
- spritekit — 2D 场景与物理
- tabletopkit — visionOS 空间桌游
应该怎么选?从任务而不是数量出发
场景 A:刚开始用 AI 写 SwiftUI
先装 swiftui-skills 作为 Apple 文档约束,再从 84 项集合里加入 swiftui-patterns、swiftui-navigation、swift-concurrency、swift-testing 与 ios-accessibility。这五项覆盖了大多数新项目最容易出错的地方。
场景 B:已有产品,正在开发具体功能
按照技术栈选,不要按照“看起来以后可能会用”来选。订阅应用加入 storekit;有系统入口加入 app-intents 与 widgetkit;重数据的应用加入 swiftdata 或 core-data;端侧 AI 产品加入 apple-on-device-ai。
场景 C:做代码审查与稳定性治理
优先组合 swiftui-performance、debugging-instruments、metrickit、swift-security、ios-accessibility 和 app-store-review。这组更接近上线前的工程守门员,而不是代码生成器。
推荐起点:1 个事实来源 Skill + 5 个专项 Skill。等项目遇到新的真实任务再扩展。安装全部 84 项并不会自动带来更高质量,反而可能增加路由和上下文噪声。
安装:通用 Agent 与 Codex
安装 Apple 本地文档型 Skill
# 直接安装并从 Xcode 提取文档
curl -fsSL https://swiftui-skills.ameyalambat.com/install | bash
# 或通过 skills CLI
npx skills add ameyalambat128/swiftui-skills
通过管道执行远程脚本前,建议先打开仓库里的安装脚本做一次审查。安装完成后需要运行对应目录中的 setup.sh,并重新启动 Agent 会话,让新 Skill 被发现。
交互式挑选 84 项集合
# 打开交互界面,选择 Skill 与目标 Agent
npx skills add dpearson2699/swift-ios-skills
# 只安装指定能力
npx skills add dpearson2699/swift-ios-skills \
--skill swiftui-patterns \
--skill swift-concurrency \
--skill swift-testing
# 检查与更新
npx skills check
npx skills update
在 Codex 中安装单项 Skill
$skill-installer install \
https://github.com/dpearson2699/swift-ios-skills/tree/main/skills/swiftui-patterns
把最后的目录名替换成目录表中的任意 Skill。项目专属规则适合安装在项目作用域;跨项目通用的 SwiftUI 与工程规范,适合放在个人共享作用域。
一套更稳的组合工作流
- 先声明目标与部署下限。告诉 Agent 是新功能、重构还是审查,并明确 iOS 最低版本,防止新 API 被无条件使用。
- 让事实层先选文档。要求
swiftui-skills列出本次使用的 Apple 文档与 availability 约束。 - 只加载任务对应的专项 Skill。例如导航问题用
swiftui-navigation,购买问题用storekit,不要把整个目录都塞进一次任务。 - 要求完整验证。让 Agent 构建目标、运行测试,并在 UI 变更时检查 Dynamic Type、VoiceOver 与深色模式。
- 把结论沉淀进项目规则。反复出现的架构选择应该进入项目自己的 Skill 或 AGENTS.md,而不是每次重新讨论。
一个可复用的任务开场可以这样写:
请使用本地 Apple 文档作为 API 事实来源,
并使用 swiftui-patterns、swift-concurrency 和 swift-testing。
目标:为 iOS 26 应用实现可测试的异步加载页面。
先列出选用文档与状态所有权,再修改代码、构建并运行测试。
不要引入项目当前没有使用的新架构。
版本与许可证:安装前最后看两眼
Apple 平台 API 更新很快。本文核对的上游快照分别是 2026 年 7 月 6 日的 swiftui-skills 提交与 2026 年 7 月 4 日的 swift-ios-skills 提交;仓库内容、支持版本与 Skill 数量之后仍可能变化。对 beta 框架,务必用当前 Xcode SDK 再验证一次。
许可证也不同:swiftui-skills 使用 MIT;swift-ios-skills 使用 PolyForm Perimeter 1.0.0,允许用于开发应用和闭源商业工作流,但限制把这些内容重新包装成竞争产品。团队分发、修改或做商业集成前,应阅读上游 LICENSE,而不是只依赖本文摘要。
常见问题
SwiftUI Agent Skill 会替代 Apple 官方文档吗?
不会。Skill 的作用是帮助 Agent 在合适时机读取并执行规则。最终 API 可用性、平台行为与审核要求,仍应以当前 Xcode SDK 和 Apple 官方资料为准。
两套 Skill 可以同时安装吗?
可以,而且互补性很好:一套提供本地 Apple 文档事实来源,另一套提供更细的框架与工程工作流。建议按项目挑选专项项,不要默认全装。
一次安装全部 84 个会更好吗?
不一定。长期维护多种 Apple 平台项目的团队可能受益;单一产品通常从 5–10 个高频能力开始更清晰,也更容易知道某条建议来自哪里。
这些 Skill 只适用于 Codex 吗?
不是。两套仓库都提供多 Agent 使用方式,覆盖 Codex、Claude Code、Cursor 等工具;具体安装路径与发现机制以各 Agent 当前版本为准。
一手来源:ameyalambat128/swiftui-skills 与 dpearson2699/swift-ios-skills。本文是独立整理,不代表 Apple 或仓库作者。