Agent Skillsn0an/VivaDicta › swiftui-pro

swiftui-pro

GitHub

用于审查SwiftUI代码,检查API现代性、性能、可维护性及无障碍合规性。依据iOS 26和Swift 6.2标准,按文件输出问题及修复建议,优先处理高影响变更,确保符合Apple HIG规范。

.agents/skills/swiftui-pro/SKILL.md n0an/VivaDicta

Trigger Scenarios

审查SwiftUI项目代码 检查视图组件最佳实践 验证无障碍访问合规性 优化数据流与导航性能

Install

npx skills add n0an/VivaDicta --skill swiftui-pro -g -y
More Options

Non-standard path

npx skills add https://github.com/n0an/VivaDicta/tree/main/.agents/skills/swiftui-pro -g -y

Use without installing

npx skills use n0an/VivaDicta@swiftui-pro

指定 Agent (Claude Code)

npx skills add n0an/VivaDicta --skill swiftui-pro -a claude-code -g -y

安装 repo 全部 skill

npx skills add n0an/VivaDicta --all -g -y

预览 repo 内 skill

npx skills add n0an/VivaDicta --list

SKILL.md

Frontmatter
{
    "name": "swiftui-pro",
    "license": "MIT",
    "metadata": {
        "author": "Paul Hudson",
        "version": "1.1"
    },
    "description": "Comprehensively reviews SwiftUI code for best practices on modern APIs, maintainability, and performance. Use when reading, writing, or reviewing SwiftUI projects."
}

Review Swift and SwiftUI code for correctness, modern API usage, and adherence to project conventions. Report only genuine problems - do not nitpick or invent issues.

Review process:

  1. Check for deprecated API using references/api.md.
  2. Check that views, modifiers, and animations have been written optimally using references/views.md.
  3. Validate that data flow is configured correctly using references/data.md.
  4. Ensure navigation is updated and performant using references/navigation.md.
  5. Ensure the code uses designs that are accessible and compliant with Apple’s Human Interface Guidelines using references/design.md.
  6. Validate accessibility compliance including Dynamic Type, VoiceOver, and Reduce Motion using references/accessibility.md.
  7. Ensure the code is able to run efficiently using references/performance.md.
  8. Quick validation of Swift code using references/swift.md.
  9. Final code hygiene check using references/hygiene.md.

If doing a partial review, load only the relevant reference files.

Core Instructions

  • iOS 26 exists, and is the default deployment target for new apps.
  • Target Swift 6.2 or later, using modern Swift concurrency.
  • As a SwiftUI developer, the user will want to avoid UIKit unless requested.
  • Do not introduce third-party frameworks without asking first.
  • Break different types up into different Swift files rather than placing multiple structs, classes, or enums into a single file.
  • Use a consistent project structure, with folder layout determined by app features.

Output Format

Organize findings by file. For each issue:

  1. State the file and relevant line(s).
  2. Name the rule being violated (e.g., "Use foregroundStyle() instead of foregroundColor()").
  3. Show a brief before/after code fix.

Skip files with no issues. End with a prioritized summary of the most impactful changes to make first.

Example output:

ContentView.swift

Line 12: Use foregroundStyle() instead of foregroundColor().

// Before
Text("Hello").foregroundColor(.red)

// After
Text("Hello").foregroundStyle(.red)

Line 24: Icon-only button is bad for VoiceOver - add a text label.

// Before
Button(action: addUser) {
    Image(systemName: "plus")
}

// After
Button("Add User", systemImage: "plus", action: addUser)

Line 31: Avoid Binding(get:set:) in view body - use @State with onChange() instead.

// Before
TextField("Username", text: Binding(
    get: { model.username },
    set: { model.username = $0; model.save() }
))

// After
TextField("Username", text: $model.username)
    .onChange(of: model.username) {
        model.save()
    }

Summary

  1. Accessibility (high): The add button on line 24 is invisible to VoiceOver.
  2. Deprecated API (medium): foregroundColor() on line 12 should be foregroundStyle().
  3. Data flow (medium): The manual binding on line 31 is fragile and harder to maintain.

End of example.

References

  • references/accessibility.md - Dynamic Type, VoiceOver, Reduce Motion, and other accessibility requirements.
  • references/api.md - updating code for modern API, and the deprecated code it replaces.
  • references/design.md - guidance for building accessible apps that meet Apple’s Human Interface Guidelines.
  • references/hygiene.md - making code compile cleanly and be maintainable in the long term.
  • references/navigation.md - navigation using NavigationStack/NavigationSplitView, plus alerts, confirmation dialogs, and sheets.
  • references/performance.md - optimizing SwiftUI code for maximum performance.
  • references/data.md - data flow, shared state, and property wrappers.
  • references/swift.md - tips on writing modern Swift code, including using Swift Concurrency effectively.
  • references/views.md - view structure, composition, and animation.

Version History

  • c5601d4 Current 2026-07-25 08:16

Same Skill Collection

.agents/skills/analyze-unrecognized-apps/SKILL.md
.agents/skills/app-container-group/SKILL.md
.agents/skills/app-container/SKILL.md
.agents/skills/asc-aso-audit/SKILL.md
.agents/skills/asc-aso-rankings/SKILL.md
.agents/skills/asc-localize-metadata/SKILL.md
.agents/skills/asc-metadata-sync/SKILL.md
.agents/skills/asc-release-flow/SKILL.md
.agents/skills/asc-whats-new-writer/SKILL.md
.agents/skills/axe-simulator-control/SKILL.md
.agents/skills/coverage-report/SKILL.md
.agents/skills/diagram/SKILL.md
.agents/skills/ios-log-capture/SKILL.md
.agents/skills/ios-simulator-skill/SKILL.md
.agents/skills/krankie-audit/SKILL.md
.agents/skills/krankie-rankings/SKILL.md
.agents/skills/loc-report/SKILL.md
.agents/skills/pr/SKILL.md
.agents/skills/prcdx/SKILL.md
.agents/skills/release-prepare/SKILL.md
.agents/skills/screenshot/SKILL.md
.agents/skills/simulator-screenshot-time/SKILL.md
.agents/skills/spm-build-analysis/SKILL.md
.agents/skills/start-logs-device-structured/SKILL.md
.agents/skills/start-logs-device/SKILL.md
.agents/skills/start-logs/SKILL.md
.agents/skills/stop-logs-device-structured/SKILL.md
.agents/skills/stop-logs-device/SKILL.md
.agents/skills/stop-logs/SKILL.md
.agents/skills/swift-concurrency-pro/SKILL.md
.agents/skills/swift-testing-pro/SKILL.md
.agents/skills/swiftdata-pro/SKILL.md
.agents/skills/swiftui-liquid-glass/SKILL.md
.agents/skills/swiftui-performance-audit/SKILL.md
.agents/skills/xcode-build-benchmark/SKILL.md
.agents/skills/xcode-build-fixer/SKILL.md
.agents/skills/xcode-build-orchestrator/SKILL.md
.agents/skills/xcode-compilation-analyzer/SKILL.md
.agents/skills/xcode-project-analyzer/SKILL.md
.agents/skills/xcodebuild-testing/SKILL.md
.agents/skills/commit-push/SKILL.md

Metadata

Files
0
Version
c5601d4
Hash
8b58a171
Indexed
2026-07-25 08:16

- 위키
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-20 18:50
浙ICP备14020137号-1 $방문자$