diff options
| author | christine betts <[email protected]> | 2025-08-21 22:29:15 +0000 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-08-21 22:29:15 +0000 |
| commit | 10286934e6a549dcad557adecfc087552e13c983 (patch) | |
| tree | fe6a61cf3158918253d18d891dab52f4c9b7a33b /packages/cli/src/config | |
| parent | 679acc45b222986032a01aebbffcddf756573f14 (diff) | |
Introduce initial screen reader mode handling and flag (#6653)
Diffstat (limited to 'packages/cli/src/config')
| -rw-r--r-- | packages/cli/src/config/config.ts | 14 | ||||
| -rw-r--r-- | packages/cli/src/config/settings.ts | 1 | ||||
| -rw-r--r-- | packages/cli/src/config/settingsSchema.ts | 10 |
3 files changed, 24 insertions, 1 deletions
diff --git a/packages/cli/src/config/config.ts b/packages/cli/src/config/config.ts index 0b21ff2e..aaaf293d 100644 --- a/packages/cli/src/config/config.ts +++ b/packages/cli/src/config/config.ts @@ -73,6 +73,7 @@ export interface CliArgs { listExtensions: boolean | undefined; proxy: string | undefined; includeDirectories: string[] | undefined; + screenReader: boolean | undefined; } export async function parseArguments(): Promise<CliArgs> { @@ -229,6 +230,11 @@ export async function parseArguments(): Promise<CliArgs> { // Handle comma-separated values dirs.flatMap((dir) => dir.split(',').map((d) => d.trim())), }) + .option('screen-reader', { + type: 'boolean', + description: 'Enable screen reader mode for accessibility.', + default: false, + }) .check((argv) => { if (argv.prompt && argv['promptInteractive']) { @@ -465,6 +471,9 @@ export async function loadCliConfig( const sandboxConfig = await loadSandboxConfig(settings, argv); + // The screen reader argument takes precedence over the accessibility setting. + const screenReader = + argv.screenReader ?? settings.accessibility?.screenReader ?? false; return new Config({ sessionId, embeddingModel: DEFAULT_GEMINI_EMBEDDING_MODEL, @@ -490,7 +499,10 @@ export async function loadCliConfig( argv.show_memory_usage || settings.showMemoryUsage || false, - accessibility: settings.accessibility, + accessibility: { + ...settings.accessibility, + screenReader, + }, telemetry: { enabled: argv.telemetry ?? settings.telemetry?.enabled, target: (argv.telemetryTarget ?? diff --git a/packages/cli/src/config/settings.ts b/packages/cli/src/config/settings.ts index 3f94fe65..5f8c706d 100644 --- a/packages/cli/src/config/settings.ts +++ b/packages/cli/src/config/settings.ts @@ -58,6 +58,7 @@ export interface SummarizeToolOutputSettings { export interface AccessibilitySettings { disableLoadingPhrases?: boolean; + screenReader?: boolean; } export interface SettingsError { diff --git a/packages/cli/src/config/settingsSchema.ts b/packages/cli/src/config/settingsSchema.ts index 7f28b698..5f939b56 100644 --- a/packages/cli/src/config/settingsSchema.ts +++ b/packages/cli/src/config/settingsSchema.ts @@ -206,6 +206,16 @@ export const SETTINGS_SCHEMA = { description: 'Disable loading phrases for accessibility', showInDialog: true, }, + screenReader: { + type: 'boolean', + label: 'Screen Reader Mode', + category: 'Accessibility', + requiresRestart: true, + default: false, + description: + 'Render output in plain-text to be more screen reader accessible', + showInDialog: true, + }, }, }, checkpointing: { |
