把 API、交互行为和性能证据一起核对
SwiftUI Pro
让审查建议符合项目的真实约束
Paul Hudson 的 SwiftUI 审查 Skill,按任务读取 API、数据流、导航、布局、无障碍与性能规则。报告定位到文件和行号,并要求保留项目目标与改动范围。

在 Xcode 中使用 Agent Skills
查看示例出处作者列出的使用环境
- Claude Code
- Codex
- Cursor
- GitHub Star
- 6,412
- 版本
- 2.0.0
- 资料核对
- 分类
- 工程开发
先审一处行为明确的代码
从绑定、按钮或一段列表开始。让助手说明哪里有问题、为何影响用户,以及改法是否保持既有语义。能识别一条规则何时不该套用,比列出更多替换建议更有用。
选一个任务,开始使用
安装后确认技能和参考文件能读取,再发送第一个自带输入的练习。后两项使用真实工程材料;每项都写清本轮交付与实际验证范围。
自带绑定与图标按钮片段,适合首次使用。要求把明确问题和应保留的例外区分开。
在目标项目安装 SwiftUI Pro
在目标项目终端运行作者命令,选择实际使用的助手与项目范围。安装后确认 swiftui-pro 和 references 可读。Claude 插件是另一入口,见作者 README;添加市场与安装插件是两个步骤。
查看作者安装说明npx skills add https://github.com/twostraws/swiftui-agent-skill --skill swiftui-pro确认入口,再开始第一项静态审查
完成作者安装命令后,在已配置的助手中确认 swiftui-pro 可用。Claude Code 可用 /swiftui-pro,Codex 可用 $swiftui-pro,也可像下方提示词一样明确点名 SwiftUI Pro。第一项的 iOS 17 / Xcode 27.1 是练习条件,无需先创建应用;换成真实代码时,以工程设置和实际 SDK 为准。
查看作者安装与调用方式把这段话发给 AI
提示词、练习片段与报告文件名由本站编写。本站未安装 Skill、编译 SwiftUI 或运行测量;下列产物是任务交付要求。
使用 swiftui-pro 做一次局部静态审查。先确认已读到 swiftui-pro 的 SKILL.md,以及 references 目录中的 api.md、data.md、accessibility.md,不加载 performance-plus.md。 下面是本站编写的 ProfileView.swift 练习片段,不是真实工程。假设使用 Xcode 27.1 / Swift 6.4,部署目标是 iOS 17。ProfileModel 是可绑定的 @MainActor @Observable 类,包含 String 类型 username、save() 和 addContact()。addContact 的用途是新增联系人。业务约定:每次通过输入框绑定写入都调用 save,包括写回相同值;程序直接给 username 赋值不调用 save。 struct ProfileView: View { @Bindable var model: ProfileModel var body: some View { VStack { Text("Profile").foregroundColor(.blue) TextField("Username", text: Binding( get: { model.username }, set: { model.username = $0; model.save() } )) Button(action: model.addContact) { Image(systemName: "plus") } } } } 按片段行号、规则、实际影响和简短改前/改后代码组织 swiftui-review.md,末尾按影响排序。只报告有依据的问题;分别核对文字颜色 API、图标按钮的动作名称,以及绑定 setter 的副作用。不要因为规则偏好投影绑定,就把保存逻辑机械搬进 onChange。 另给 binding-checks.md,对比绑定写入新值、绑定写回相同值、程序直接赋新值三种情形。说明 onChange 观察的是值变化,和每次绑定写入不同;若改法不能保持约定,应保留现有绑定并说明理由。按 iOS 17 目标核对 Apple 的 API 声明;无法读取 SDK 时注明该项限制,不提高部署目标。只生成审查文档,所有行为结论标为静态推导,编译、VoiceOver 与事件计数测试均标为未运行。
检查你拿到的结果
- swiftui-review.md 包含片段行号、影响与候选代码;图标按钮需要能表达“新增联系人”的名称,而不是只描述图形。
- binding-checks.md 对照三种写入情形。验收重点是保留既定保存语义,不把投影绑定加 onChange 视为无条件等价替换。
- 结论为静态推导。真实项目还需验证编译、实际 VoiceOver 读法和副作用次数。
进一步了解这个 Skill
SwiftUI Pro 的实际技能名是 swiftui-pro。它既用于编写 SwiftUI,也适合对已有代码做完整或局部审查:主文件给出检查顺序,12 份参考资料分别处理 API、视图、数据、导航、设计、自适应、无障碍、本地化、性能和 Swift 代码等问题。局部任务只读相关参考,深度性能资料另有使用条件。
审查交付按文件分组,注明行号、规则和简短改前/改后代码,最后按影响排序,无问题文件跳过。作者同时要求不挑无关细节、不虚构缺陷;在修功能或 bug 时完成约定工作,把无关现代化建议单列,不擅自应用。这个输出格式是对助手的要求,仍需核对它是否指向真实代码。
规则包含大量容易被机械改写忽略的细节:Binding setter 与 onChange 的触发条件不同,行身份不应来自会改变的位置或内容,计算属性不会自动缩小 Observation 的依赖范围。无障碍与自适应也不止视觉风格,还涉及按钮的动作名称、较大字体、长翻译、窗口变化与状态保持。
版本必须放回项目上下文。README 徽章仍写 iOS 26+,固定提交的 SKILL 已把 iOS 27 作为新应用默认,并采用 Swift 6.4、讨论 Xcode 27.1。它也明确要求保留既有部署目标:新 SDK 能否识别声明,与应用运行系统能否使用该 API,是两项检查。作者的默认取向不能替代项目的兼容要求。
来源与核验
资料核对
核对固定提交 f2920b63 的主技能与全部 12 份参考资料,并对照 5 份 Apple 文档。展示版本是插件/技能 2.0.0;未编译应用或运行测量。