Screen reader: permission dialogs do not receive focus or announce topic (NVDA)
Status Fixed / completed
Maintainer reply None cached
Activity 5 comments · opened Jun 22, 2026 · closed Jun 27, 2026
Part of umbrella accessibility issue: #69996
Problem
When Claude Code displays a permission request — for example, asking whether to allow a file write or a shell command — focus is not moved to the dialog or button. NVDA users receive no automatic announcement that input is required. The only way to discover the dialog is to navigate manually through the interface.
Recommendation
When Claude Code displays any request for user input — including permission dialogs, confirmation prompts, and tool approval requests:
- Announce the topic — The nature of the request should be announced automatically via an ARIA live region or
role="alert"element, describing what action is being requested and why (e.g., "Permission requested: write to file config.json"). - Move focus to the response buttons — Focus should be placed on the primary action button (typically "Allow" or "Yes") when the dialog appears.
- Tab order among buttons — All response buttons should be in the natural tab order, allowing the user to move between options (e.g., Allow, Deny, Allow Always) with the Tab key before making a selection.
Environment
- Claude Code desktop app, Windows 11
- NVDA screen reader (latest stable)
5 Comments
Found 2 possible duplicate issues:
This issue will be automatically closed as a duplicate in 3 days.
🤖 Generated with Claude Code
https://github.com/anthropics/claude-code/issues/58426
Describes the same issue as this, but on Mac with VoiceOver. This is the same behavior I'm reporting, but you closed that issue. We need this issue to be prioritized to improve the screen reader experience.
This issue is not a duplicate of https://github.com/anthropics/claude-code/issues/67965
This issue describes similar behavior, and requests additional behaviors to address the problem.
This issue relates specifically to Claude code
This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.