Platform accessibility guidance for SwiftUI, UIKit, and AppKit UI tasks and audits.
npx claudepluginhub pasqualevittoriosi/swift-accessibility-skillPlatform accessibility guidance for SwiftUI, UIKit, and AppKit UI tasks, audits, and Nutrition Label readiness.
Share bugs, ideas, or general feedback.
An Agent Skill that makes accessibility a first-class part of SwiftUI, UIKit, and AppKit development.
Covers all 9 App Store Accessibility Nutrition Labels across iOS, macOS, watchOS, tvOS, and visionOS.
Works with Claude, Codex, Cursor, and any tool that supports the Agent Skills standard.
| Mode | Behavior |
|---|---|
| Writing code | Applies accessibility silently as you build. Inferred labels marked [VERIFY]. Compact summary after each generation. |
| Auditing code | Structured report: severity levels, device testing checklist, Nutrition Label readiness. |
| Nutrition Labels | Prepares App Store Accessibility Nutrition Label recommendations with pass/fail criteria for all 9 labels, support reasons, and blocked-label reasons. |
Install with marketplace (recommended):
/plugin marketplace add PasqualeVittoriosi/swift-accessibility-skill
/plugin install swift-accessibility-skill@swift-accessibility-skill
Manual install:
swift-accessibility-skill/ folder into ~/.claude/skills/swift-accessibility-skill/ folder into .claude/skills/Add a memory reference in:
./CLAUDE.md~/.claude/CLAUDE.mdby adding:
# Accessibility
- Use `swift-accessibility-skill@swift-accessibility-skill` for SwiftUI/UIKit/AppKit accessibility implementation and audits.
Install with skill-installer (recommended):
In Codex, ask it to run:
$skill-installer install https://github.com/PasqualeVittoriosi/swift-accessibility-skill with --path . --name swift-accessibility-skill
Restart Codex to pick up the new skill.
Manual install:
swift-accessibility-skill/ folder into ~/.codex/skills/swift-accessibility-skill/ folder into .codex/skills/Manual install:
swift-accessibility-skill/ folder into ~/.cursor/skills/swift-accessibility-skill/ folder into .cursor/skills/These are the current docs-backed install locations I could verify. In each case, place the swift-accessibility-skill/ folder inside that tool's skills directory.
| Tool | Project path | Global path | Official docs |
|---|---|---|---|
| Antigravity | .agent/skills/ | ~/.gemini/antigravity/skills/ | Antigravity Skills |
| Gemini CLI | .gemini/skills/ | ~/.gemini/skills/ | Gemini CLI Skills |
| GitHub Copilot | .github/skills/ | ~/.copilot/skills/ | Copilot Skills |
| OpenCode | .opencode/skills/ | ~/.config/opencode/skills/ | OpenCode Skills |
| Windsurf | .windsurf/skills/ | ~/.codeium/windsurf/skills/ | Windsurf Skills |
The skill auto-activates on any SwiftUI, UIKit, or AppKit code. No slash command needed.
Also triggers on: VoiceOver · Voice Control · Dynamic Type · Reduce Motion · screen reader · a11y · WCAG · accessibility audit · Nutrition Label · accessibilityLabel · UIAccessibility · NSAccessibility · assistive technologies · Switch Control
Explicit: /swift-accessibility-skill
Audit: "Audit this view for accessibility" · "How accessible is this code?" · "Review the accessibility of MyAmazingView"
| Label | Reference |
|---|---|
| VoiceOver | voiceover-swiftui.md · voiceover-uikit.md |
| Voice Control | voice-control.md |
| Larger Text | dynamic-type.md |
| Dark Interface | display-settings.md |
| Differentiate Without Color | display-settings.md |
| Sufficient Contrast | display-settings.md |
| Reduced Motion | display-settings.md |
| Captions | media-accessibility.md |
| Audio Descriptions | media-accessibility.md |
Switch Control · Full Keyboard Access · AssistiveTouch · Semantic structure · Focus management · Custom rotors · Assistive Access (iOS 17+) · macOS NSAccessibility · watchOS · tvOS Focus Engine · visionOS