From c832aad8b7a35eadd8245bad4020742f558b391f Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Mon, 20 Jul 2026 22:37:47 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=8E=A8=20Palette:=20[Accessibility]=20Imp?= =?UTF-8?q?rove=20screen=20reader=20support=20for=20command=20navigation?= =?UTF-8?q?=20hints?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replaced pure symbolic navigation hints (`↑↓`, `⏎`) with concise but readable text (`Up/Down`, `Enter`) in the `CommandSuggestionList` UI component. This ensures that screen readers in CLI environments can properly announce navigation instructions, reducing accessibility barriers. --- .jules/palette.md | 4 ++++ src/cli/ui/components/CommandSuggestionList.tsx | 2 +- tests/integration/prompt_templates.test.ts | 4 +++- 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 .jules/palette.md diff --git a/.jules/palette.md b/.jules/palette.md new file mode 100644 index 00000000..de933fe8 --- /dev/null +++ b/.jules/palette.md @@ -0,0 +1,4 @@ + +## 2024-07-20 - CLI Navigation Symbols Accessibility +**Learning:** Screen readers in CLI environments rely on raw text output and fail to properly announce pure symbols like `↑↓` or `⏎`. While visually concise, using only symbols for navigation instructions creates an accessibility barrier. +**Action:** Always use descriptive, visually concise but screen-reader-friendly text (e.g., 'Up/Down', 'Enter') instead of pure symbolic text for keyboard navigation hints in CLI UI overlays. diff --git a/src/cli/ui/components/CommandSuggestionList.tsx b/src/cli/ui/components/CommandSuggestionList.tsx index 7e66838a..d51fe548 100644 --- a/src/cli/ui/components/CommandSuggestionList.tsx +++ b/src/cli/ui/components/CommandSuggestionList.tsx @@ -116,7 +116,7 @@ export const CommandSuggestionList: React.FC = ({ - ↑↓ nav · ⏎ select · esc close + Up/Down nav · Enter select · Esc close diff --git a/tests/integration/prompt_templates.test.ts b/tests/integration/prompt_templates.test.ts index 21905259..f1360d78 100644 --- a/tests/integration/prompt_templates.test.ts +++ b/tests/integration/prompt_templates.test.ts @@ -36,7 +36,9 @@ describe('Prompt templates', () => { expect(planSystem).toContain('You are SalmonLoop.'); expect(patchSystem).toContain('You are PATCH, a phase-native diff compiler.'); - expect(autopilotSystem).toContain('You are a senior software engineer running in "autopilot" mode.'); + expect(autopilotSystem).toContain( + 'You are a senior software engineer running in "autopilot" mode.', + ); expect(answerSystem).toContain('You are a coding assistant in "answer" mode.'); expect(researchSystem).toContain('You are a research assistant.'); });