AccessLint 扫描

accesslint-scan
分类通用
作者Agentic Awesome Skills 社区
许可MIT
评分4.50/5
使用12.9K

审计实时页面并报告损坏的内容及其位置。仅定位,不修复。如果 $ARGUMENTS 中没有 URL,请询问用户。

使用场景

  • 当任务符合以下描述时使用此技能:审计实时页面的无障碍问题,精准定位每项 WCAG 违规项,并返回基于选择器的修复清单(不进行实际编辑)。

1. 审计 (Audit)

bash
PORT=$(npx -y @accesslint/chrome@latest ensure | node -e 'process.stdin.on("data",d=>process.stdout.write(""+JSON.parse(d).port))')
npx -y @accesslint/cli@latest "<url>" --port "$PORT" --format json

根据需要使用标志:--selector, --wait-for "<selector>", --include-aaa, --disable <rules>

2. 报告 (Report)

按影响程度统计数量,然后每项违规列出一条记录:

  • where (位置) — 原样输出选择器 + 如果存在 source 则输出 file:line (symbol) —— 严禁伪造。如果所有违规项均无 source,请注明“source mapping 不可用 —— 仅通过选择器定位”。
  • evidence (证据) — 对比度、缺失的属性、空名称等。
  • fix (修复) — 机械性更改或标注 NEEDS HUMAN(需要人工干预)。

不要直接编辑。关于修复:应用机械性更改后重新运行以验证;批量工作请移交给 accesslint:audit

3. 卸载 (Tear down)

bash
npx -y @accesslint/chrome@latest stop --all  # 如果 ensure 报告 "managed":false 则跳过

注意事项 (Gotchas)

  • 始终由 ensure 决定端口 —— 绝不要硬编码 9222。
  • CLI 退出码 2 = URL 错误或页面未加载;请检查开发服务器。

局限性 (Limitations)

  • 仅在任务明确符合上述范围时使用此技能。
  • 不要将输出结果视为特定环境验证、测试或专家评审的替代方案。
  • 如果缺少必要的输入、权限、安全边界或成功标准,请停止并请求澄清。