Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计通过

web-accessibility-web-accessibility网络可访问性 网络可访问性

Agent Skill

用于辅助无障碍访问检查、页面可用性审计和前端可访问性改进。它适合让 Agent 检查语义标签、键盘操作、颜色对比、ARIA 属性和自动化检测结果。使用时需要结合真实页面和浏览器验证,不应只依赖静态文本判断;涉及修复建议时,应兼顾设计系统、组件复用和 WCAG 等通用无障碍规范。

总安装

309

周安装

13

GitHub Stars

5

下载量

108
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:web-accessibility-web-accessibility(网络可访问性 网络可访问性)
来源仓库:https://github.com/agents-inc/skills
仓库路径:skills/web-accessibility-web-accessibility
安装命令:
npx skills add https://github.com/agents-inc/skills --skill web-accessibility-web-accessibility
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/agents-inc/skills --skill web-accessibility-web-accessibility

简介

用于辅助无障碍访问检查、页面可用性审计和前端可访问性改进。

  • 适合检查语义标签、键盘操作、颜色对比、ARIA 属性和自动化检测结果。
  • 使用时需结合真实页面和浏览器验证,不应仅依赖静态文本判断;修复建议应兼顾设计系统与 WCAG 规范。
  • 安装命令:npx skills add https://github.com/agents-inc/skills --skill web-accessibility-web-accessibility。
  • 当前维护状态未知,建议核对仓库活跃度与权限边界后再使用。

SKILL.md

Accessibility

Quick Guide: All interactive elements keyboard accessible. Use headless component libraries for ARIA patterns. WCAG AA minimum (4.5:1 text contrast). Proper form labels and error handling. Combine automated axe-core checks with manual keyboard and screen reader testing.

Detailed Resources:


<critical_requirements>

CRITICAL: Before Using This Skill

All code must follow project conventions in CLAUDE.md (kebab-case, named exports, import ordering, import type, named constants)

(You MUST ensure all interactive elements are keyboard accessible with visible focus indicators)

(You MUST use headless component libraries for complex ARIA patterns instead of manual implementation)

(You MUST maintain WCAG AA minimum contrast ratios - 4.5:1 for text, 3:1 for UI components)

(You MUST never use color alone to convey information - always add icons, text, or patterns)

</critical_requirements>


Auto-detection: Accessibility (a11y), WCAG compliance, ARIA patterns, keyboard navigation, screen reader support, focus management, aria-label, aria-live, role attribute, skip link

When to use:

  • Implementing keyboard navigation and focus management
  • Ensuring WCAG AA color contrast (4.5:1 text, 3:1 UI components)
  • Building interactive components (buttons, forms, modals, tables) with proper ARIA
  • Adding dynamic content updates (live regions, status messages)
  • Implementing skip links, landmarks, and semantic HTML structure
  • Handling motion preferences with prefers-reduced-motion

When NOT to use:

  • Working on backend/API code with no UI
  • Writing build scripts or configuration files
  • Creating documentation or non-rendered content
  • Working with CLI tools (different accessibility considerations)

Target: WCAG 2.2 Level AA compliance (minimum), AAA where feasible


Philosophy

Accessibility ensures digital products are usable by everyone, including users with disabilities. Accessibility is a requirement, not a feature - it should be built in from the start, not retrofitted.

Key philosophy:

  • Semantic HTML first - Use native elements for built-in accessibility
  • Headless components for complex patterns - Leverage tested, accessible component primitives from your component library
  • Progressive enhancement - Start with keyboard, add mouse interactions on top
  • WCAG as baseline - Meet AA minimum, aim for AAA where feasible

Core Patterns

Keyboard Navigation Standards

CRITICAL: All interactive elements must be keyboard accessible

Tab Order

  • Logical flow - Tab order must follow visual reading order (left-to-right, top-to-bottom)
  • No keyboard traps - Users can always tab away from any element
  • Skip repetitive content - Provide skip links to main content
  • tabindex rules:

- tabindex="0" - Adds element to natural tab order (use sparingly) - tabindex="-1" - Programmatic focus only (modal content, headings) - Never use tabindex > 0 (creates unpredictable tab order)

Focus Management

  • Visible focus indicators - Always show clear focus state (never outline: none without replacement)
  • Focus on open - When opening modals/dialogs, move focus to first interactive element or close button
  • Focus on close - Restore focus to trigger element when closing modals/dialogs
  • Focus trapping - Trap focus inside modals using your headless component library or manual implementation
  • Programmatic focus - Use element.focus() for dynamic content (search results, error messages)

Keyboard Shortcuts

  • Standard patterns:

- Escape - Close modals, cancel actions, clear selections - Enter/Space - Activate buttons and links - Arrow keys - Navigate lists, tabs, menus, sliders - Home/End - Jump to first/last item - Tab/Shift+Tab - Navigate between interactive elements

Skip Links

MANDATORY for pages with navigation - place as first focusable element, visually hidden until focused.

// components/skip-link.tsx
export function SkipLink({ className }: { className?: string }) {
  return (
    <a href="#main-content" className={className}>
      Skip to main content
    </a>
  );
}

See examples/core.md for full skip link implementation with styling.


ARIA Patterns

Use headless component libraries - they handle ARIA automatically for complex patterns like dialogs, selects, tabs, tooltips, and popovers.

Component-Specific ARIA

Buttons:

  • aria-label - For icon-only buttons
  • aria-pressed - For toggle buttons
  • aria-expanded - For expandable sections
  • aria-disabled - Use with disabled attribute

Forms:

  • aria-required - Required fields (use with required)
  • aria-invalid - Invalid fields
  • aria-describedby - Link to error messages, helper text
  • aria-errormessage - Explicit error message reference

Navigation:

  • aria-current="page" - Current page in navigation
  • aria-label - Describe navigation purpose ("Main navigation", "Footer navigation")

Modals/Dialogs:

  • role="dialog" or role="alertdialog"
  • aria-modal="true"
  • aria-labelledby - Points to dialog title
  • aria-describedby - Points to dialog description

Tables:

  • scope="col" and scope="row" for headers
  • <caption> for table description
  • aria-sort for sortable columns

Live Regions

Use for dynamic content updates:

  • aria-live="polite" - Announce when user is idle (status messages, non-critical updates)
  • aria-live="assertive" - Announce immediately (errors, critical alerts)
  • aria-atomic="true" - Announce entire region content
  • role="status" - For status messages (implies aria-live="polite")
  • role="alert" - For error messages (implies aria-live="assertive")

Best practices:

  • Keep messages concise and meaningful
  • Clear old messages before new ones
  • Don't spam with rapid updates (debounce)

Color Contrast & Visual Design

Text contrast (AA):

  • Normal text (< 18px): 4.5:1 minimum
  • Large text (>= 18px or >= 14px bold): 3:1 minimum
  • AAA (recommended): 7:1 for normal, 4.5:1 for large

Non-text contrast:

  • UI components (buttons, form inputs): 3:1 minimum
  • Focus indicators: 3:1 against background
  • Icons (functional): 3:1 minimum

Color Independence:

  • Add icons to color-coded states (check for success, X for error)
  • Use text labels with status colors
  • Provide patterns/textures in charts
  • Underline links in body text

See examples/color.md for contrast examples and design tokens.


Semantic HTML

Always use semantic HTML:

  • <button> for actions (not <div onclick>)
  • <a> for navigation (not <div onclick>)
  • <nav> for navigation sections
  • <main> for primary content (one per page)
  • <header> and <footer> for page sections
  • <ul>/<ol> for lists
  • <table> for tabular data (not divs with grid CSS)
  • <form> with proper <label> associations

Never:

  • Use <div> or <span> for interactive elements
  • Use click handlers on non-interactive elements without proper role
  • Use tables for layout
  • Use placeholder as label replacement

Form Accessibility

Label Associations:

  • Always use proper <label> with htmlFor attribute
  • Or wrap input inside label element

Error Handling:

  • aria-invalid="true" on invalid fields
  • aria-describedby linking to error message
  • role="alert" on error messages for screen reader announcement
  • Visual error indicators (icons, border color)
  • Error summary at top of form for multiple errors

See examples/forms.md for complete form validation and error handling patterns.


Focus Indicators

Minimum requirements:

  • 3:1 contrast ratio against background
  • 2px minimum thickness
  • Clear visual difference from unfocused state
  • Consistent across all interactive elements

Use :focus-visible for better UX:

/* Shows only for keyboard navigation, not mouse clicks */
button:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

See examples/focus.md for full focus indicator patterns.


Touch Target Sizes

WCAG 2.2 Target Size Requirements:

  • Level AA (2.5.8): 24x24 CSS pixels minimum, or adequate spacing (24px between targets)
  • Level AAA (2.5.5): 44x44 CSS pixels (recommended for best UX)
  • Exceptions: inline text links, user agent controls, essential designs

See examples/touch-targets.md for sizing and spacing examples.


Screen Reader Support

  • Use .sr-only class for screen reader only text
  • Use aria-label for icon-only buttons
  • Use empty alt="" for decorative images
  • Use aria-hidden="true" for decorative content (but never on focusable elements)

See examples/screen-reader.md for sr-only and hiding patterns.


Motion and Animation Accessibility

WCAG 2.3.3 Animation from Interactions (AAA):

Motion can cause nausea, dizziness, or vestibular disorders (affects 70+ million people). Use prefers-reduced-motion to respect user preferences:

/* Only animate when user has no motion preference */
@media (prefers-reduced-motion: no-preference) {
  .animated-element {
    animation: slide-in 300ms ease-out;
  }
}

Key principles:

  • reduce means minimize, not eliminate all motion - essential animations can remain
  • Replace motion effects (scale, rotate, slide) with non-motion effects (fade, dissolve, color change)
  • Provide pause/stop controls for auto-playing content longer than 5 seconds
  • Avoid parallax scrolling effects or provide alternatives

WCAG 2.2 New Success Criteria

WCAG 2.2 (W3C Recommendation October 2023, ISO/IEC 40500:2025 as of October 2025) added 9 new success criteria. Key ones for developers:

Level A:

  • 3.2.6 Consistent Help - Help mechanisms (contact, chat) must appear in same relative order across pages
  • 3.3.7 Redundant Entry - Previously entered info must be auto-populated or available for selection

Level AA:

  • 2.4.11 Focus Not Obscured (Minimum) - Focused element must not be entirely hidden by other content (sticky headers, modals)
  • 2.5.7 Dragging Movements - Provide single-pointer alternative to drag operations
  • 2.5.8 Target Size (Minimum) - 24x24px minimum or adequate spacing
  • 3.3.8 Accessible Authentication - No cognitive function tests (CAPTCHAs) unless alternatives exist

Level AAA:

  • 2.4.12 Focus Not Obscured (Enhanced) - No part of focus indicator hidden
  • 2.4.13 Focus Appearance - Focus indicator 2px perimeter, 3:1 contrast
  • 3.3.9 Accessible Authentication (Enhanced) - Stricter CAPTCHA requirements

Removed from WCAG 2.2:

  • 4.1.1 Parsing - Obsolete due to modern browser error correction

Testing Accessibility

Multi-layered approach required - automated tools catch ~57% of WCAG issues. Always combine with manual testing.

Automated: Use axe-core based tools in your test runner for automated WCAG checks. See examples/testing.md for axe integration patterns.

Manual keyboard checklist:

  • Tab through all interactive elements in logical order
  • Activate buttons with Enter/Space
  • Close modals with Escape
  • Navigate dropdowns with arrows
  • No keyboard traps
  • Focus indicators visible on all elements

Manual screen reader checklist:

  • All images have alt text (or alt="" if decorative)
  • Form inputs have labels
  • Error messages are announced
  • Headings create logical outline
  • Landmarks are labeled
  • Live regions announce updates

Manual visual checklist:

  • Color contrast meets WCAG AA (4.5:1 text, 3:1 UI)
  • Information not conveyed by color alone
  • Text resizable to 200% without horizontal scroll
  • Touch targets meet 24x24px minimum (AA)
  • Focus indicators have 3:1 contrast
  • Animations respect prefers-reduced-motion

Screen readers to test with: NVDA (Windows, free), JAWS (Windows, paid), VoiceOver (macOS/iOS, built-in), TalkBack (Android, built-in)


<red_flags>

RED FLAGS

High Priority Issues:

  • Removing focus outlines without replacement - keyboard users can't navigate, violates WCAG 2.4.7
  • Using div or span for buttons/links - no semantic meaning, no keyboard support
  • Click handlers on non-interactive elements without role/keyboard support - violates WCAG 2.1.1
  • Form inputs without labels - screen readers can't announce purpose, violates WCAG 1.3.1

Medium Priority Issues:

  • Color-only error indicators - color-blind users can't distinguish
  • Placeholder text as label replacement - disappears on input
  • Auto-playing audio/video without controls - violates WCAG 1.4.2

Gotchas & Edge Cases:

  • :focus vs :focus-visible - use :focus-visible to avoid focus rings on mouse clicks
  • Empty alt="" is correct for decorative images - don't skip the alt attribute entirely
  • aria-hidden="true" also hides from keyboard - don't use on focusable elements
  • role="button" on <div> doesn't add keyboard support - still need Enter/Space handlers
  • prefers-reduced-motion: reduce means minimize, not eliminate - essential animations can remain
  • Live regions announce ALL content - keep messages concise to avoid spam

See reference.md for full anti-patterns with code examples.

</red_flags>


Resources

Official guidelines:

Tools:


<critical_reminders>

CRITICAL REMINDERS

All code must follow project conventions in CLAUDE.md (kebab-case, named exports, import ordering, import type, named constants)

(You MUST ensure all interactive elements are keyboard accessible with visible focus indicators)

(You MUST use headless component libraries for complex ARIA patterns instead of manual implementation)

(You MUST maintain WCAG AA minimum contrast ratios - 4.5:1 for text, 3:1 for UI components)

(You MUST never use color alone to convey information - always add icons, text, or patterns)

Failure to follow these rules will make the site unusable for keyboard users, screen reader users, and color-blind users - violating WCAG 2.2 Level AA compliance.

</critical_reminders>

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37.49%
按下载量换算40

Claude

31.81%
按下载量换算34

Cursor

17.16%
按下载量换算19

Gemini CLI

8.72%
按下载量换算9

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills