axiom-accessibility

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Accessibility

Accessibility

You MUST use this skill for ANY accessibility work including VoiceOver, Dynamic Type, color contrast, WCAG compliance, and UX flow auditing.
任何无障碍(accessibility)相关工作都必须使用该skill,包括VoiceOver、Dynamic Type、色彩对比度、WCAG合规性以及UX流程审核。

Quick Reference

快速参考

Symptom / TaskReference
VoiceOver labels, hints, navigationSee
skills/accessibility-diag.md
Dynamic Type scaling violationsSee
skills/accessibility-diag.md
Color contrast (WCAG AA/AAA)See
skills/accessibility-diag.md
Touch target sizes (< 44x44pt)See
skills/accessibility-diag.md
Keyboard navigation (iPadOS/macOS)See
skills/accessibility-diag.md
Reduce Motion supportSee
skills/accessibility-diag.md
Assistive Access (cognitive, iOS 17+)See
skills/accessibility-diag.md
Accessibility Inspector workflowsSee
skills/accessibility-diag.md
App Store Review preparationSee
skills/accessibility-diag.md
UX dead ends, dismiss trapsSee
skills/ux-flow-audit.md
Buried CTAs, missing empty statesSee
skills/ux-flow-audit.md
Missing loading/error statesSee
skills/ux-flow-audit.md
Deep link dead endsSee
skills/ux-flow-audit.md
Accessibility dead ends (gesture-only)See
skills/ux-flow-audit.md
症状/任务参考文档
VoiceOver标签、提示、导航查看
skills/accessibility-diag.md
Dynamic Type缩放违规查看
skills/accessibility-diag.md
色彩对比度(WCAG AA/AAA)查看
skills/accessibility-diag.md
触控目标尺寸(<44x44pt)查看
skills/accessibility-diag.md
键盘导航(iPadOS/macOS)查看
skills/accessibility-diag.md
减少动态效果支持查看
skills/accessibility-diag.md
辅助访问(认知障碍,iOS 17+)查看
skills/accessibility-diag.md
Accessibility Inspector工作流程查看
skills/accessibility-diag.md
App Store审核准备查看
skills/accessibility-diag.md
UX死胡同、关闭陷阱查看
skills/ux-flow-audit.md
隐藏的CTA、缺失空状态查看
skills/ux-flow-audit.md
缺失加载/错误状态查看
skills/ux-flow-audit.md
深度链接死胡同查看
skills/ux-flow-audit.md
无障碍死胡同(仅支持手势)查看
skills/ux-flow-audit.md

Decision Tree

决策树

dot
digraph accessibility {
    start [label="Accessibility issue" shape=ellipse];
    what [label="What type?" shape=diamond];

    start -> what;
    what -> "skills/accessibility-diag.md" [label="VoiceOver/labels/hints"];
    what -> "skills/accessibility-diag.md" [label="Dynamic Type"];
    what -> "skills/accessibility-diag.md" [label="color contrast"];
    what -> "skills/accessibility-diag.md" [label="touch targets"];
    what -> "skills/accessibility-diag.md" [label="keyboard nav"];
    what -> "skills/accessibility-diag.md" [label="Reduce Motion"];
    what -> "skills/accessibility-diag.md" [label="Assistive Access"];
    what -> "skills/accessibility-diag.md" [label="App Store prep"];
    what -> "skills/ux-flow-audit.md" [label="UX dead end/dismiss trap"];
    what -> "skills/ux-flow-audit.md" [label="missing states"];
    what -> "accessibility-auditor" [label="automated scan" shape=box];
}
  1. ANY VoiceOver, Dynamic Type, contrast, touch target, or WCAG issue →
    skills/accessibility-diag.md
  2. Assistive Access (cognitive disabilities, iOS 17+) →
    skills/accessibility-diag.md
  3. App Store accessibility rejection →
    skills/accessibility-diag.md
  4. UX dead ends, dismiss traps, buried CTAs, missing states →
    skills/ux-flow-audit.md
  5. Want automated accessibility scan? →
    accessibility-auditor
    agent or
    /axiom:audit accessibility
dot
digraph accessibility {
    start [label="Accessibility issue" shape=ellipse];
    what [label="What type?" shape=diamond];

    start -> what;
    what -> "skills/accessibility-diag.md" [label="VoiceOver/labels/hints"];
    what -> "skills/accessibility-diag.md" [label="Dynamic Type"];
    what -> "skills/accessibility-diag.md" [label="color contrast"];
    what -> "skills/accessibility-diag.md" [label="touch targets"];
    what -> "skills/accessibility-diag.md" [label="keyboard nav"];
    what -> "skills/accessibility-diag.md" [label="Reduce Motion"];
    what -> "skills/accessibility-diag.md" [label="Assistive Access"];
    what -> "skills/accessibility-diag.md" [label="App Store prep"];
    what -> "skills/ux-flow-audit.md" [label="UX dead end/dismiss trap"];
    what -> "skills/ux-flow-audit.md" [label="missing states"];
    what -> "accessibility-auditor" [label="automated scan" shape=box];
}
  1. 任何VoiceOver、Dynamic Type、对比度、触控目标或WCAG相关问题 →
    skills/accessibility-diag.md
  2. 辅助访问(认知障碍,iOS 17+) →
    skills/accessibility-diag.md
  3. App Store无障碍审核被拒 →
    skills/accessibility-diag.md
  4. UX死胡同、关闭陷阱、隐藏的CTA、缺失状态 →
    skills/ux-flow-audit.md
  5. 需要自动无障碍扫描? → 使用
    accessibility-auditor
    agent或
    /axiom:audit accessibility

Automated Scanning

自动扫描

Accessibility audit → Launch
accessibility-auditor
agent or
/axiom:audit accessibility
  • VoiceOver labels and hints
  • Dynamic Type violations
  • Color contrast failures
  • WCAG compliance scanning
UX flow audit → Launch
ux-flow-auditor
agent
  • Dead-end views, dismiss traps
  • Buried CTAs, missing empty/loading/error states
  • Deep link dead ends, accessibility dead ends
无障碍审核 → 启动
accessibility-auditor
agent或
/axiom:audit accessibility
  • VoiceOver标签和提示
  • Dynamic Type违规
  • 色彩对比度不达标
  • WCAG合规性扫描
UX流程审核 → 启动
ux-flow-auditor
agent
  • 死胡同视图、关闭陷阱
  • 隐藏的CTA、缺失空/加载/错误状态
  • 深度链接死胡同、无障碍死胡同

Critical Patterns

关键模式

Image Accessibility

图片无障碍

  • Use
    Image(decorative: "photo")
    for purely decorative images — automatically hidden from VoiceOver (equivalent to
    accessibilityHidden(true)
    but semantically clearer)
  • Use
    accessibilityInputLabels()
    for buttons with complex or changing labels — improves Voice Control accuracy by providing alternative labels
  • Respect
    accessibilityDifferentiateWithoutColor
    environment value — when active, provide non-color cues (icons, patterns, labels) alongside color indicators
  • 纯装饰性图片使用
    Image(decorative: "photo")
    ——会自动对VoiceOver隐藏(效果等同于
    accessibilityHidden(true)
    ,但语义更清晰)
  • 标签复杂或动态变化的按钮使用
    accessibilityInputLabels()
    ——通过提供替代标签提升Voice Control的识别准确率
  • 遵循
    accessibilityDifferentiateWithoutColor
    环境值——启用时,除颜色指示外,需提供非颜色提示(图标、图案、标签)

Anti-Rationalization

误区纠正

ThoughtReality
"I'll add VoiceOver labels when I'm done building"Accessibility is foundational, not polish. accessibility-diag prevents App Store rejection.
"My app doesn't need accessibility"All apps need accessibility. It's required by App Store guidelines and benefits all users.
"Dynamic Type just needs .scaledFont"Dynamic Type has 7 common violations. accessibility-diag catches them all.
"Color contrast looks fine to me"Visual assessment is unreliable. WCAG ratios require measurement. accessibility-diag validates.
"UX issues are just polish"UX dead ends cause 1-star reviews. They're defects, not enhancements.
"The dismiss gesture handles it"fullScreenCover has no dismiss gesture. That's the trap.
错误想法实际情况
“等我开发完再添加VoiceOver标签”无障碍是基础要求,而非锦上添花。accessibility-diag可避免App Store审核被拒。
“我的应用不需要无障碍支持”所有应用都需要无障碍支持。这是App Store指南的要求,且能惠及所有用户。
“Dynamic Type只需要.scaledFont就够了”Dynamic Type存在7种常见违规情况,accessibility-diag能全部检测出来。
“我看色彩对比度没问题”视觉评估不可靠。WCAG比率需要量化测量,accessibility-diag可进行验证。
“UX问题只是锦上添花”UX死胡同会导致一星评价。这些是缺陷,而非增强功能。
“关闭手势能处理这个问题”fullScreenCover没有关闭手势,这就是陷阱所在。

Example Invocations

调用示例

User: "My button isn't being read by VoiceOver" → See
skills/accessibility-diag.md
User: "How do I support Dynamic Type?" → See
skills/accessibility-diag.md
User: "Check my app for accessibility issues" → See
skills/accessibility-diag.md
User: "Prepare for App Store accessibility review" → See
skills/accessibility-diag.md
User: "Scan my app for accessibility issues automatically" → Launch
accessibility-auditor
agent
User: "How do I support Assistive Access?" → See
skills/accessibility-diag.md
User: "Check for UX dead ends and dismiss traps" → See
skills/ux-flow-audit.md
User: "My fullScreenCover has no way to dismiss" → See
skills/ux-flow-audit.md
User: "Are there missing empty states in my app?" → See
skills/ux-flow-audit.md
用户:“我的按钮无法被VoiceOver读取” → 查看
skills/accessibility-diag.md
用户:“如何支持Dynamic Type?” → 查看
skills/accessibility-diag.md
用户:“检查我的应用是否存在无障碍问题” → 查看
skills/accessibility-diag.md
用户:“为App Store无障碍审核做准备” → 查看
skills/accessibility-diag.md
用户:“自动扫描我的应用是否存在无障碍问题” → 启动
accessibility-auditor
agent
用户:“如何支持辅助访问?” → 查看
skills/accessibility-diag.md
用户:“检查是否存在UX死胡同和关闭陷阱” → 查看
skills/ux-flow-audit.md
用户:“我的fullScreenCover无法关闭” → 查看
skills/ux-flow-audit.md
用户:“我的应用是否缺失空状态?” → 查看
skills/ux-flow-audit.md