summaryrefslogtreecommitdiff
path: root/packages/cli/src/config
diff options
context:
space:
mode:
Diffstat (limited to 'packages/cli/src/config')
-rw-r--r--packages/cli/src/config/config.ts14
-rw-r--r--packages/cli/src/config/settings.ts1
-rw-r--r--packages/cli/src/config/settingsSchema.ts10
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: {