Dev & Engineering ✓ Microsoft · Official accessibilityaccessible-viewsariakeyboard-navigationscreen-readersaccessibility-signals

VS Code Accessibility Development Guide

A practical specification for accessible interactive features in VS Code.

FollowSkills review · FSRS-2.0
Not recommended
54/ 100 5-point scale 2.7 / 5
Trust18 / 25 · 3.6/5

This is implementation guidance rather than an executable capability: it requests no credentials, external service access, or data transfer, and it promotes keyboard access, focus restoration, and localization. No red-line risk is visible. Points are deducted because it mandates broad use for interactive UI without specifying permission boundaries, user confirmation, rollback, sensitive-data handling, or abnormal-recovery procedures.

Reliability8 / 20 · 2.0/5

The document gives stepwise procedures, TypeScript skeletons, key interfaces, and registration locations, making the happy path reasonably clear. The examples contain placeholders and there are no skill-specific tests, compatibility matrix, or failure-feedback procedures; the static-review cap limits this to 8.

Adaptability9 / 15 · 3.0/5

The target audience and scenarios are explicit, and it distinguishes rich visual content from simple keyboard-driven input. Points are deducted because the default applicability may over-trigger, boundaries for existing or complex implementations remain limited, and there is no evidence of Chinese-language support or mainland-China network reachability.

Convention8 / 15 · 2.7/5

The document has clear sections, progressive steps, examples, a checklist, and key-file references; repository context also provides MIT licensing and Microsoft maintenance provenance. Points are deducted because the skill itself lacks a version, changelog, named maintenance responsibility, explicit update path, troubleshooting guidance, and FAQ.

Effectiveness7 / 15 · 2.3/5

It directly guides implementation of accessibility help, accessible views, settings, signals, ARIA behavior, and keyboard navigation, so it covers the core task. Points are deducted because the skeletons require substantial feature-specific adaptation and no evidence shows that outputs were verified as directly mergeable or requiring only light review.

Verifiability4 / 10 · 2.0/5

The skill names concrete interfaces, files, and existing feature patterns, providing some auditability. The supplied repository contains CI and test materials, but they do not cover this skill's key paths. There are no skill-specific tests, independent review, or execution records, so 4 is appropriate under static calibration.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 5b3e1be7be9e
Before you use it
  • This is a static source review; the examples, build, and screen-reader behavior were not executed, so repository CI must not be treated as validation of the skill.
  • The broad default requirement for any interactive UI may over-trigger and add process burden; contributors still need to judge the feature type and existing implementation manually.
  • Focus restoration, content generation, and service injection in the examples remain placeholders and require feature-specific tests, error handling, and cross-platform screen-reader verification before merge.
  • No evidence is provided for Chinese documentation, translation quality, or mainland-China network reachability.
See the full review method →

What it does & when to use it

This skill is defined by .github/skills/accessibility/SKILL.md in the microsoft/vscode repository. It makes accessibility a default concern for new features, contributions, and changes to existing UI, covering help dialogs, accessible views, verbosity settings, signals, ARIA announcements, keyboard navigation, and ARIA semantics. For a new interactive UI surface, it specifies how to provide an accessibility help dialog, an accessible view when visual content requires one, and a verbosity setting. It is intended for contributors developing VS Code workbench, editor, extension, or other interactive UI changes.

It instructs contributors to add AccessibleViewProviderId and AccessibilityVerbositySettingId entries, register the verbosity configuration, and implement and register IAccessibleViewImplementation providers. It requires localized help content and dynamic keybinding syntax, and it describes how to expose rich visual content as plain text through an accessible view. It also explains how to use IAccessibilitySignalService with existing signals, publish dynamic messages through aria.alert() or aria.status(), and implement keyboard operation, focus restoration, ARIA labels, roles, and state attributes. The documented implementation points include accessibleView.ts, accessibleViewRegistry.ts, accessibilityConfiguration.ts, accessibilitySignalService.ts, and aria.ts.

  1. A VS Code contributor adding a panel, view, editor overlay, widget, or dialog who needs screen-reader support from the start.
  2. A developer exposing rich visual content from a terminal, chat panel, notebook, diff editor, or similar feature through an accessible view.
  3. A maintainer adding commands, shortcuts, or interactive behavior to an existing feature and updating its accessibility help dialog.
  4. A UI contributor changing dynamic states or notifications who needs appropriate accessibility signals, ARIA announcements, keyboard behavior, and labels.

Pros & cons

Pros
  • It covers the main implementation areas: help dialogs, accessible views, settings, signals, ARIA announcements, keyboard navigation, and semantic attributes.
  • It includes TypeScript skeletons, registration locations, key interfaces, and relevant source files.
  • It explicitly requires updating provideContent() for new commands and interactions in existing features, supporting discoverability for screen-reader users.
  • It gives concrete guidance for keyboard access, focus restoration, dynamic announcements, and localization.
Limitations
  • It is a source-development guide, not a standalone accessibility testing or automatic repair tool.
  • The supplied material does not provide a dedicated installation command, automated test suite, or test results for the skill.
  • Implementation requires editing VS Code TypeScript source and making feature-specific judgments about accessible views and signals.
  • New accessibility signals should not be registered without first coordinating with @meganrogge, according to the source.

How to install

The repository README does not document a separate installation procedure for this individual skill. After obtaining the repository, keep or place the file at microsoft/vscode/.github/skills/accessibility/SKILL.md; the supplied material does not specify a standalone installation command for the skill.

How to use

When asking an Agent to modify an interactive VS Code feature, use a prompt such as “Add a new VS Code panel with complete accessibility support” or “Add keyboard shortcuts to this existing view and update its accessibility help dialog.” Apply the skill by default to new features and contributions, and to existing UI changes; implement the documented help dialog, accessible view when needed, verbosity setting, signals, ARIA announcements, keyboard behavior, and labels according to the feature's scope.

FAQ

Is this skill only for brand-new features?
No. It applies to new features and contributions as well as updates to existing UI. When commands, shortcuts, or interactive capabilities are added to an existing feature, its accessibility help dialog content must also be updated.
Must every new interactive UI provide an accessible view?
Not always. Every new interactive UI surface must provide an accessibility help dialog; an accessible view is also required when the feature presents non-trivial rich or visual content. A simple, keyboard-driven native text input/output feature generally needs only the help dialog.
Does using this skill require an external service or network access?
The supplied SKILL.md does not require a network service, MCP server, or external CLI. It directs the developer to read and modify VS Code source files and use the repository's accessibility APIs and services.

More skills from this repository

All from microsoft/vscode

Dev & Engineering ✓ Microsoft · Official

Tool Rename Compatibility Check

Protect existing prompts and tool configurations when built-in tools are renamed.

Dev & Engineering ✓ Microsoft · Official

Copilot Chat OpenTelemetry Instrumentation

A repository-specific guide for consistent OpenTelemetry instrumentation in Copilot Chat.

Dev & Engineering ✓ Microsoft · Official

VS Code Configuration Policy Maintainer

Standardize VS Code policy registration, export, and validation.

Design & Frontend ✓ Microsoft · Official

VS Code Design Philosophy

Turn vague UI discomfort into concrete fixes using shared values, principles, and design moves.

Dev & Engineering ✓ Microsoft · Official

Agent Host E2E Test Assistant

Maintain VS Code Agent Host end-to-end tests with strict replay fixtures.

Dev & Engineering ✓ Microsoft · Official

VS Code Integrated Browser Architecture

A practical architecture guide for safely changing VS Code's cross-process integrated browser.

Dev & Engineering ✓ Microsoft · Official

VS Code Agents Window Sessions

Safely implement and repair VS Code Agents window features.

Dev & Engineering ✓ Microsoft · Official

Commit Assistant

Creates repository-style commit messages and safely commits code changes.

Dev & Engineering ✓ Microsoft · Official

Agent Host Log Investigator

Trace session, transport, and host failures in Agent Host debug exports.

Dev & Engineering ✓ Microsoft · Official

VS Code Unit Test Runner

Run VS Code repository unit tests by file, test name, or compiled-output glob.

Dev & Engineering ✓ Microsoft · Official

VS Code Agent Customization Assistant

Create, repair, and troubleshoot VS Code Agent customization files and their loading behavior.

Dev & Engineering ✓ Microsoft · Official

Code OSS Launch & Debug

Launch a built-from-source VS Code with isolated profiles, Playwright control, and multi-process debugging ports.

Design & Frontend ✓ Microsoft · Official

VS Code CSS Layout Standards

Build reliable VS Code-style CSS layouts and text truncation behavior

Dev & Engineering ✓ Microsoft · Official

VS Code Chat Performance Lab

Benchmark chat rendering and detect memory growth across VS Code builds.

Dev & Engineering ✓ Microsoft · Official

Component Fixtures for Screenshot Testing

Create stable, theme-aware VS Code component fixtures for isolated screenshot testing.

Dev & Engineering ✓ Microsoft · Official

VS Code Smoke Test Assistant

Run, filter, and debug VS Code end-to-end smoke tests.

Dev & Engineering ✓ Microsoft · Official

VS Code Crash Dump Symbolicator

Turn native VS Code crash dumps into readable backtraces with method names.

Dev & Engineering ✓ Microsoft · Official

Local VS Code Web Workbench

Validate VS Code workbench and Agents window changes in a local vscode.dev instance.

Dev & Engineering ✓ Microsoft · Official

Feedback Action

Reads current-session feedback and applies the requested code changes.

Dev & Engineering ✓ Microsoft · Official

VS Code Chat Customizations Editor Skill

Guides developers through safe changes and testing for VS Code’s chat customization management UI.

Related skills