appkit-accessibility-auditor

Audit macOS AppKit interfaces for VoiceOver, keyboard navigation, and accessibility semantics issues.

Updated Sep 11, 2026
One-click install
npx skills add https://github.com/celeroncoder/skills --skill appkit-accessibility-auditor-celeroncoder
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: appkit-accessibility-auditor
Source: https://github.com/celeroncoder/skills/tree/main/appkit-accessibility-auditor
Command: npx skills add https://github.com/celeroncoder/skills --skill appkit-accessibility-auditor-celeroncoder

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? AppKit developers often ship macOS interfaces that are unusable with VoiceOver or keyboard-only navigation because accessibility issues are hard to spot during normal development. This Skill audits AppKit code and produces prioritized findings with patch-ready fixes. ## Core Features & Use Cases - Prioritized Accessibility Audit: Reviews NSView, NSViewController, NSTableView, and custom controls, grouping findings into P0 blockers, P1 high-impact, and P2 polish issues. - Patch-Ready Fixes: Provides minimal before/after code snippets using AppKit accessibility APIs such as setAccessibilityLabel, accessibilityRole, and NSAccessibility.post. - Manual Test Checklist: Supplies verification steps for VoiceOver reading order, Tab/Shift-Tab navigation, state discoverability, and announcements. - Use Case: Paste a custom NSView acting as a toggle button and receive a diff adding the correct accessibility role, value, and keyboard activation handling. ## Quick Start Ask the assistant to review your AppKit view controller code for VoiceOver labels, keyboard navigation, and reading order, returning prioritized findings with a patch-ready diff.

Frequently Asked Questions about appkit-accessibility-auditor

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I audit AppKit code for VoiceOver accessibility?▼

Provide your NSView or NSViewController code and request an accessibility audit. The review checks labels, roles, help text, grouping, and reading order, then returns prioritized findings with patch-ready fixes using AppKit accessibility APIs.

How to make a custom NSView keyboard accessible on macOS?▼

A custom NSView acting as a control must expose the correct accessibilityRole and accessibilityValue, accept first responder status, and handle Space or Enter via keyDown. The audit identifies missing pieces and provides the exact code to add.

Does this work with NSTableView and NSOutlineView?▼

Yes, the audit covers NSTableView and NSOutlineView, checking that rows are understandable with VoiceOver, selection state is discoverable, column headers are accessible, and custom cell views expose meaningful labels and values.

Can it announce dynamic content changes to VoiceOver?▼

Yes, it recommends using NSAccessibility.post with the appropriate notification when content updates without a focus change, such as loading results or validation messages, while avoiding excessive announcements.

What are the limitations of an automated AppKit accessibility audit?▼

The audit avoids large refactors and does not rewrite screens or change user-facing copy unless required for clarity. Final verification still requires manual testing with VoiceOver and keyboard-only navigation using the provided checklist.