@oh-my-pi/pi-coding-agent 15.11.3 → 15.11.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/CHANGELOG.md +107 -0
  2. package/dist/cli.js +692 -607
  3. package/dist/types/cli/usage-cli.d.ts +10 -1
  4. package/dist/types/commands/usage.d.ts +9 -0
  5. package/dist/types/config/api-key-resolver.d.ts +9 -3
  6. package/dist/types/config/keybindings.d.ts +1 -1
  7. package/dist/types/config/model-discovery.d.ts +6 -4
  8. package/dist/types/config/model-registry.d.ts +7 -4
  9. package/dist/types/config/settings-schema.d.ts +508 -155
  10. package/dist/types/export/html/template.generated.d.ts +1 -1
  11. package/dist/types/mnemopi/config.d.ts +3 -1
  12. package/dist/types/modes/components/reset-usage-selector.d.ts +12 -0
  13. package/dist/types/modes/components/session-selector.d.ts +1 -1
  14. package/dist/types/modes/components/settings-defs.d.ts +9 -2
  15. package/dist/types/modes/components/settings-selector.d.ts +9 -4
  16. package/dist/types/modes/components/tool-execution.d.ts +26 -1
  17. package/dist/types/modes/components/transcript-container.d.ts +12 -0
  18. package/dist/types/modes/controllers/input-controller.d.ts +9 -1
  19. package/dist/types/modes/controllers/selector-controller.d.ts +1 -0
  20. package/dist/types/modes/interactive-mode.d.ts +10 -0
  21. package/dist/types/modes/session-observer-registry.d.ts +2 -0
  22. package/dist/types/modes/theme/theme.d.ts +23 -3
  23. package/dist/types/modes/types.d.ts +2 -0
  24. package/dist/types/modes/utils/context-usage.d.ts +6 -1
  25. package/dist/types/session/agent-session.d.ts +28 -8
  26. package/dist/types/session/auth-storage.d.ts +1 -1
  27. package/dist/types/session/codex-auto-reset.d.ts +107 -0
  28. package/dist/types/session/snapcompact-inline.d.ts +129 -0
  29. package/dist/types/slash-commands/helpers/active-oauth-account.d.ts +14 -0
  30. package/dist/types/slash-commands/helpers/reset-usage.d.ts +27 -0
  31. package/dist/types/system-prompt.d.ts +3 -1
  32. package/dist/types/task/render.d.ts +17 -6
  33. package/dist/types/tools/gh.d.ts +3 -0
  34. package/dist/types/tools/render-utils.d.ts +8 -16
  35. package/dist/types/tools/todo.d.ts +0 -11
  36. package/dist/types/utils/session-color.d.ts +15 -3
  37. package/dist/types/web/kagi.d.ts +1 -2
  38. package/dist/types/web/search/providers/codex.d.ts +1 -1
  39. package/dist/types/web/search/providers/gemini.d.ts +9 -6
  40. package/package.json +11 -11
  41. package/src/auto-thinking/classifier.ts +1 -5
  42. package/src/cli/usage-cli.ts +187 -16
  43. package/src/commands/usage.ts +8 -0
  44. package/src/commit/model-selection.ts +3 -6
  45. package/src/config/api-key-resolver.ts +10 -3
  46. package/src/config/keybindings.ts +1 -1
  47. package/src/config/model-discovery.ts +60 -46
  48. package/src/config/model-registry.ts +21 -8
  49. package/src/config/model-resolver.ts +57 -3
  50. package/src/config/settings-schema.ts +654 -153
  51. package/src/config/settings.ts +9 -0
  52. package/src/eval/completion-bridge.ts +1 -5
  53. package/src/export/html/template.generated.ts +1 -1
  54. package/src/export/html/template.js +13 -6
  55. package/src/internal-urls/docs-index.generated.ts +6 -6
  56. package/src/internal-urls/issue-pr-protocol.ts +10 -4
  57. package/src/memories/index.ts +2 -10
  58. package/src/mnemopi/backend.ts +30 -8
  59. package/src/mnemopi/config.ts +6 -1
  60. package/src/mnemopi/state.ts +6 -0
  61. package/src/modes/components/extensions/inspector-panel.ts +6 -2
  62. package/src/modes/components/plan-review-overlay.ts +15 -17
  63. package/src/modes/components/plugin-settings.ts +22 -5
  64. package/src/modes/components/reset-usage-selector.ts +161 -0
  65. package/src/modes/components/session-selector.ts +8 -2
  66. package/src/modes/components/settings-defs.ts +19 -4
  67. package/src/modes/components/settings-selector.ts +510 -95
  68. package/src/modes/components/status-line/component.ts +3 -1
  69. package/src/modes/components/status-line/segments.ts +3 -1
  70. package/src/modes/components/tool-execution.ts +87 -12
  71. package/src/modes/components/transcript-container.ts +49 -1
  72. package/src/modes/components/tree-selector.ts +16 -6
  73. package/src/modes/controllers/command-controller.ts +61 -8
  74. package/src/modes/controllers/event-controller.ts +1 -0
  75. package/src/modes/controllers/input-controller.ts +68 -6
  76. package/src/modes/controllers/selector-controller.ts +149 -61
  77. package/src/modes/interactive-mode.ts +63 -2
  78. package/src/modes/rpc/rpc-mode.ts +2 -1
  79. package/src/modes/session-observer-registry.ts +61 -3
  80. package/src/modes/shared.ts +2 -0
  81. package/src/modes/theme/theme.ts +102 -9
  82. package/src/modes/types.ts +2 -0
  83. package/src/modes/utils/context-usage.ts +78 -2
  84. package/src/modes/utils/hotkeys-markdown.ts +1 -1
  85. package/src/modes/utils/ui-helpers.ts +9 -5
  86. package/src/prompts/system/personalities/default.md +26 -0
  87. package/src/prompts/system/personalities/friendly.md +17 -0
  88. package/src/prompts/system/personalities/pragmatic.md +15 -0
  89. package/src/prompts/system/snapcompact-context-frames-note.md +1 -0
  90. package/src/prompts/system/snapcompact-context-stub.md +1 -0
  91. package/src/prompts/system/snapcompact-system-frames-note.md +1 -0
  92. package/src/prompts/system/snapcompact-system-stub.md +1 -0
  93. package/src/prompts/system/snapcompact-toolresult-note.md +1 -0
  94. package/src/prompts/system/system-prompt.md +5 -22
  95. package/src/prompts/tools/browser.md +33 -43
  96. package/src/prompts/tools/eval.md +27 -50
  97. package/src/prompts/tools/irc.md +29 -31
  98. package/src/prompts/tools/read.md +31 -37
  99. package/src/prompts/tools/task.md +3 -3
  100. package/src/prompts/tools/todo.md +1 -2
  101. package/src/sdk.ts +23 -1
  102. package/src/session/agent-session.ts +221 -29
  103. package/src/session/auth-storage.ts +4 -0
  104. package/src/session/codex-auto-reset.ts +190 -0
  105. package/src/session/session-dump-format.ts +8 -1
  106. package/src/session/session-manager.ts +5 -5
  107. package/src/session/snapcompact-inline.ts +524 -0
  108. package/src/slash-commands/builtin-registry.ts +145 -8
  109. package/src/slash-commands/helpers/active-oauth-account.ts +44 -0
  110. package/src/slash-commands/helpers/context-report.ts +28 -1
  111. package/src/slash-commands/helpers/reset-usage.ts +66 -0
  112. package/src/slash-commands/helpers/usage-report.ts +36 -3
  113. package/src/system-prompt.ts +15 -1
  114. package/src/task/index.ts +30 -7
  115. package/src/task/render.ts +57 -32
  116. package/src/tool-discovery/tool-index.ts +2 -0
  117. package/src/tools/bash.ts +10 -3
  118. package/src/tools/eval-render.ts +13 -8
  119. package/src/tools/gh.ts +39 -1
  120. package/src/tools/image-gen.ts +114 -78
  121. package/src/tools/inspect-image.ts +1 -5
  122. package/src/tools/job.ts +25 -5
  123. package/src/tools/read.ts +1 -57
  124. package/src/tools/render-utils.ts +29 -31
  125. package/src/tools/ssh.ts +3 -3
  126. package/src/tools/todo.ts +8 -128
  127. package/src/tools/tts.ts +40 -20
  128. package/src/utils/clipboard.ts +56 -4
  129. package/src/utils/commit-message-generator.ts +1 -5
  130. package/src/utils/session-color.ts +83 -9
  131. package/src/utils/title-generator.ts +1 -1
  132. package/src/web/kagi.ts +26 -27
  133. package/src/web/search/providers/codex.ts +42 -40
  134. package/src/web/search/providers/gemini.ts +42 -22
  135. package/src/web/search/providers/perplexity.ts +22 -10
@@ -1,15 +1,19 @@
1
1
  /** Unified settings schema - single source of truth for all settings.
2
- * Unified settings schema - single source of truth for all settings.
3
2
  *
4
3
  * Each setting is defined once here with:
5
4
  * - Type and default value
6
- * - Optional UI metadata (label, description, tab)
5
+ * - Optional UI metadata (label, description, tab, group)
6
+ *
7
+ * UI metadata places the setting in the settings panel: `tab` picks the
8
+ * panel tab, `group` the titled section within it (registered in
9
+ * TAB_GROUPS). Sections render in TAB_GROUPS order; settings within a
10
+ * section keep declaration order.
7
11
  *
8
12
  * The Settings singleton provides type-safe path-based access:
9
13
  * settings.get("compaction.enabled") // => boolean
10
14
  * settings.set("theme.dark", "titanium") // sync, saves in background
11
15
  */
12
- export type SettingTab = "appearance" | "model" | "interaction" | "context" | "memory" | "editing" | "tools" | "tasks" | "providers";
16
+ export type SettingTab = "appearance" | "model" | "interaction" | "context" | "memory" | "files" | "shell" | "tools" | "tasks" | "providers";
13
17
  /** Tab display metadata - icon is resolved via theme.symbol() */
14
18
  export type TabMetadata = {
15
19
  label: string;
@@ -22,6 +26,12 @@ export declare const TAB_METADATA: Record<SettingTab, {
22
26
  label: string;
23
27
  icon: `tab.${string}`;
24
28
  }>;
29
+ /**
30
+ * Ordered section groups per tab. Settings declare their section via `ui.group`;
31
+ * the settings UI renders groups in this order with a heading row between them.
32
+ * Ungrouped settings render first, before any section heading.
33
+ */
34
+ export declare const TAB_GROUPS: Record<SettingTab, readonly string[]>;
25
35
  /** Status line segment identifiers */
26
36
  export type StatusLineSegmentId = "pi" | "model" | "mode" | "path" | "git" | "pr" | "subagents" | "token_in" | "token_out" | "token_total" | "token_rate" | "cost" | "context_pct" | "context_total" | "time_spent" | "time" | "session" | "hostname" | "cache_read" | "cache_write" | "cache_hit" | "session_name" | "usage";
27
37
  /** Submenu choice metadata. */
@@ -32,6 +42,8 @@ export type SubmenuOption<V extends string = string> = {
32
42
  };
33
43
  interface UiBase {
34
44
  tab: SettingTab;
45
+ /** Section within the tab; must be listed in TAB_GROUPS[tab]. Ungrouped settings render at the top. */
46
+ group?: string;
35
47
  label: string;
36
48
  description: string;
37
49
  /** Condition function name - setting only shown when true */
@@ -118,6 +130,7 @@ export declare const SETTINGS_SCHEMA: {
118
130
  readonly default: false;
119
131
  readonly ui: {
120
132
  readonly tab: "interaction";
133
+ readonly group: "Startup & Updates";
121
134
  readonly label: "Auto Resume";
122
135
  readonly description: "Automatically resume the most recent session in the current directory";
123
136
  };
@@ -127,8 +140,9 @@ export declare const SETTINGS_SCHEMA: {
127
140
  readonly default: true;
128
141
  readonly ui: {
129
142
  readonly tab: "interaction";
130
- readonly label: "Prevent Idle Sleep (macOS)";
131
- readonly description: "caffeinate -i: keep the system awake while a session is open";
143
+ readonly group: "Power (macOS)";
144
+ readonly label: "Prevent Idle Sleep";
145
+ readonly description: "Keep the system awake while a session is open (caffeinate -i)";
132
146
  };
133
147
  };
134
148
  readonly "power.preventSystemSleep": {
@@ -136,8 +150,9 @@ export declare const SETTINGS_SCHEMA: {
136
150
  readonly default: false;
137
151
  readonly ui: {
138
152
  readonly tab: "interaction";
139
- readonly label: "Prevent System Sleep on AC (macOS)";
140
- readonly description: "caffeinate -s: block all system sleep while on AC power";
153
+ readonly group: "Power (macOS)";
154
+ readonly label: "Prevent System Sleep on AC";
155
+ readonly description: "Block all system sleep while on AC power (caffeinate -s)";
141
156
  };
142
157
  };
143
158
  readonly "power.declareUserActive": {
@@ -145,8 +160,9 @@ export declare const SETTINGS_SCHEMA: {
145
160
  readonly default: false;
146
161
  readonly ui: {
147
162
  readonly tab: "interaction";
148
- readonly label: "Declare User Active (macOS)";
149
- readonly description: "caffeinate -u: keep the display lit and treat the user as active";
163
+ readonly group: "Power (macOS)";
164
+ readonly label: "Declare User Active";
165
+ readonly description: "Keep the display lit and treat the user as active (caffeinate -u)";
150
166
  };
151
167
  };
152
168
  readonly "power.preventDisplaySleep": {
@@ -154,8 +170,9 @@ export declare const SETTINGS_SCHEMA: {
154
170
  readonly default: false;
155
171
  readonly ui: {
156
172
  readonly tab: "interaction";
157
- readonly label: "Prevent Display Sleep (macOS)";
158
- readonly description: "caffeinate -d: keep the display from idle-sleeping while a session is open";
173
+ readonly group: "Power (macOS)";
174
+ readonly label: "Prevent Display Sleep";
175
+ readonly description: "Keep the display from idle-sleeping while a session is open (caffeinate -d)";
159
176
  };
160
177
  };
161
178
  readonly shellPath: {
@@ -166,29 +183,6 @@ export declare const SETTINGS_SCHEMA: {
166
183
  readonly type: "array";
167
184
  readonly default: string[];
168
185
  };
169
- readonly "marketplace.autoUpdate": {
170
- readonly type: "enum";
171
- readonly values: readonly ["off", "notify", "auto"];
172
- readonly default: "notify";
173
- readonly ui: {
174
- readonly tab: "tools";
175
- readonly label: "Marketplace Auto-Update";
176
- readonly description: "Check for plugin updates on startup (off/notify/auto)";
177
- readonly options: readonly [{
178
- readonly value: "off";
179
- readonly label: "Off";
180
- readonly description: "Don't check for plugin updates";
181
- }, {
182
- readonly value: "notify";
183
- readonly label: "Notify";
184
- readonly description: "Check on startup and notify when updates are available";
185
- }, {
186
- readonly value: "auto";
187
- readonly label: "Auto";
188
- readonly description: "Check on startup and auto-install updates";
189
- }];
190
- };
191
- };
192
186
  readonly enabledModels: {
193
187
  readonly type: "array";
194
188
  readonly default: string[];
@@ -222,8 +216,9 @@ export declare const SETTINGS_SCHEMA: {
222
216
  readonly default: "titanium";
223
217
  readonly ui: {
224
218
  readonly tab: "appearance";
219
+ readonly group: "Theme";
225
220
  readonly label: "Dark Theme";
226
- readonly description: "Theme used when terminal has dark background";
221
+ readonly description: "Theme used when the terminal has a dark background";
227
222
  readonly options: "runtime";
228
223
  };
229
224
  };
@@ -232,8 +227,9 @@ export declare const SETTINGS_SCHEMA: {
232
227
  readonly default: "light";
233
228
  readonly ui: {
234
229
  readonly tab: "appearance";
230
+ readonly group: "Theme";
235
231
  readonly label: "Light Theme";
236
- readonly description: "Theme used when terminal has light background";
232
+ readonly description: "Theme used when the terminal has a light background";
237
233
  readonly options: "runtime";
238
234
  };
239
235
  };
@@ -243,8 +239,9 @@ export declare const SETTINGS_SCHEMA: {
243
239
  readonly default: "unicode";
244
240
  readonly ui: {
245
241
  readonly tab: "appearance";
242
+ readonly group: "Theme";
246
243
  readonly label: "Symbol Preset";
247
- readonly description: "Icon/symbol style";
244
+ readonly description: "Glyph set for icons and symbols (Unicode, Nerd Font, or ASCII)";
248
245
  readonly options: readonly [{
249
246
  readonly value: "unicode";
250
247
  readonly label: "Unicode";
@@ -265,6 +262,7 @@ export declare const SETTINGS_SCHEMA: {
265
262
  readonly default: false;
266
263
  readonly ui: {
267
264
  readonly tab: "appearance";
265
+ readonly group: "Theme";
268
266
  readonly label: "Color-Blind Mode";
269
267
  readonly description: "Use blue instead of green for diff additions";
270
268
  };
@@ -275,6 +273,7 @@ export declare const SETTINGS_SCHEMA: {
275
273
  readonly default: "default";
276
274
  readonly ui: {
277
275
  readonly tab: "appearance";
276
+ readonly group: "Status Line";
278
277
  readonly label: "Status Line Preset";
279
278
  readonly description: "Pre-built status line configurations";
280
279
  readonly options: readonly [{
@@ -314,6 +313,7 @@ export declare const SETTINGS_SCHEMA: {
314
313
  readonly default: "powerline-thin";
315
314
  readonly ui: {
316
315
  readonly tab: "appearance";
316
+ readonly group: "Status Line";
317
317
  readonly label: "Status Line Separator";
318
318
  readonly description: "Style of separators between segments";
319
319
  readonly options: readonly [{
@@ -352,6 +352,7 @@ export declare const SETTINGS_SCHEMA: {
352
352
  readonly default: true;
353
353
  readonly ui: {
354
354
  readonly tab: "appearance";
355
+ readonly group: "Status Line";
355
356
  readonly label: "Session Accent";
356
357
  readonly description: "Use the session name color for the editor border and status line gap";
357
358
  };
@@ -361,6 +362,7 @@ export declare const SETTINGS_SCHEMA: {
361
362
  readonly default: false;
362
363
  readonly ui: {
363
364
  readonly tab: "appearance";
365
+ readonly group: "Status Line";
364
366
  readonly label: "Transparent Status Line";
365
367
  readonly description: "Use the terminal's default background for the status line instead of the theme's `statusLineBg`. Powerline end caps are dropped because they need a contrasting fill to bridge into the surrounding terminal.";
366
368
  };
@@ -370,7 +372,8 @@ export declare const SETTINGS_SCHEMA: {
370
372
  readonly default: 50;
371
373
  readonly ui: {
372
374
  readonly tab: "tools";
373
- readonly label: "Artifact spill threshold (KB)";
375
+ readonly group: "Output Limits";
376
+ readonly label: "Artifact Spill Threshold (KB)";
374
377
  readonly description: "Tool output above this size is saved as an artifact; tail is kept inline";
375
378
  readonly options: readonly [{
376
379
  readonly value: "1";
@@ -428,7 +431,8 @@ export declare const SETTINGS_SCHEMA: {
428
431
  readonly default: 20;
429
432
  readonly ui: {
430
433
  readonly tab: "tools";
431
- readonly label: "Artifact tail size (KB)";
434
+ readonly group: "Output Limits";
435
+ readonly label: "Artifact Tail Size (KB)";
432
436
  readonly description: "Amount of tail content kept inline when output spills to artifact";
433
437
  readonly options: readonly [{
434
438
  readonly value: "1";
@@ -470,7 +474,8 @@ export declare const SETTINGS_SCHEMA: {
470
474
  readonly default: 20;
471
475
  readonly ui: {
472
476
  readonly tab: "tools";
473
- readonly label: "Artifact head size (KB)";
477
+ readonly group: "Output Limits";
478
+ readonly label: "Artifact Head Size (KB)";
474
479
  readonly description: "Amount of head content kept inline alongside the tail when output spills to artifact (middle elision). 0 disables — keep tail only.";
475
480
  readonly options: readonly [{
476
481
  readonly value: "0";
@@ -516,7 +521,8 @@ export declare const SETTINGS_SCHEMA: {
516
521
  readonly default: 768;
517
522
  readonly ui: {
518
523
  readonly tab: "tools";
519
- readonly label: "Output column cap";
524
+ readonly group: "Output Limits";
525
+ readonly label: "Output Column Cap";
520
526
  readonly description: "Per-line byte cap for streaming tool outputs (bash, ssh, python, js eval) and `read`. Lines wider than this are ellipsis-truncated; remaining bytes up to the next newline are dropped. 0 disables.";
521
527
  readonly options: readonly [{
522
528
  readonly value: "0";
@@ -551,7 +557,8 @@ export declare const SETTINGS_SCHEMA: {
551
557
  readonly default: 500;
552
558
  readonly ui: {
553
559
  readonly tab: "tools";
554
- readonly label: "Artifact tail lines";
560
+ readonly group: "Output Limits";
561
+ readonly label: "Artifact Tail Lines";
555
562
  readonly description: "Maximum lines of tail content kept inline when output spills to artifact";
556
563
  readonly options: readonly [{
557
564
  readonly value: "50";
@@ -589,8 +596,9 @@ export declare const SETTINGS_SCHEMA: {
589
596
  readonly default: true;
590
597
  readonly ui: {
591
598
  readonly tab: "appearance";
599
+ readonly group: "Status Line";
592
600
  readonly label: "Show Hook Status";
593
- readonly description: "Display hook status messages below status line";
601
+ readonly description: "Display hook status messages below the status line";
594
602
  };
595
603
  };
596
604
  readonly "statusLine.leftSegments": {
@@ -610,8 +618,9 @@ export declare const SETTINGS_SCHEMA: {
610
618
  readonly default: true;
611
619
  readonly ui: {
612
620
  readonly tab: "appearance";
621
+ readonly group: "Images";
613
622
  readonly label: "Show Inline Images";
614
- readonly description: "Render images inline in terminal";
623
+ readonly description: "Render images inline in the terminal";
615
624
  readonly condition: "hasImageProtocol";
616
625
  };
617
626
  };
@@ -620,6 +629,7 @@ export declare const SETTINGS_SCHEMA: {
620
629
  readonly default: true;
621
630
  readonly ui: {
622
631
  readonly tab: "appearance";
632
+ readonly group: "Images";
623
633
  readonly label: "Auto-Resize Images";
624
634
  readonly description: "Resize large images to 2000x2000 max for better model compatibility";
625
635
  };
@@ -629,6 +639,7 @@ export declare const SETTINGS_SCHEMA: {
629
639
  readonly default: false;
630
640
  readonly ui: {
631
641
  readonly tab: "appearance";
642
+ readonly group: "Images";
632
643
  readonly label: "Block Images";
633
644
  readonly description: "Prevent images from being sent to LLM providers";
634
645
  };
@@ -653,6 +664,7 @@ export declare const SETTINGS_SCHEMA: {
653
664
  readonly default: false;
654
665
  readonly ui: {
655
666
  readonly tab: "appearance";
667
+ readonly group: "Display";
656
668
  readonly label: "Large Headings (Kitty)";
657
669
  readonly description: "Render Markdown H1 headings at 2x scale using Kitty's OSC 66 text-sizing protocol. Only takes effect on Kitty terminals; ignored everywhere else. Off by default.";
658
670
  };
@@ -663,6 +675,7 @@ export declare const SETTINGS_SCHEMA: {
663
675
  readonly default: "auto";
664
676
  readonly ui: {
665
677
  readonly tab: "appearance";
678
+ readonly group: "Display";
666
679
  readonly label: "Terminal Hyperlinks";
667
680
  readonly description: "Wrap paths and URLs in OSC 8 hyperlinks for terminal-native click-to-open (auto: detect support; off: never; always: unconditional)";
668
681
  };
@@ -677,6 +690,7 @@ export declare const SETTINGS_SCHEMA: {
677
690
  readonly default: "classic";
678
691
  readonly ui: {
679
692
  readonly tab: "appearance";
693
+ readonly group: "Display";
680
694
  readonly label: "Shimmer";
681
695
  readonly description: "Animation style for working/loading messages";
682
696
  readonly options: readonly [{
@@ -699,6 +713,7 @@ export declare const SETTINGS_SCHEMA: {
699
713
  readonly default: true;
700
714
  readonly ui: {
701
715
  readonly tab: "appearance";
716
+ readonly group: "Display";
702
717
  readonly label: "Smooth Streaming";
703
718
  readonly description: "Reveal assistant text and streamed tool input smoothly while chunks arrive";
704
719
  };
@@ -708,6 +723,7 @@ export declare const SETTINGS_SCHEMA: {
708
723
  readonly default: false;
709
724
  readonly ui: {
710
725
  readonly tab: "appearance";
726
+ readonly group: "Display";
711
727
  readonly label: "Show Token Usage";
712
728
  readonly description: "Show per-turn token usage on assistant messages";
713
729
  };
@@ -717,6 +733,7 @@ export declare const SETTINGS_SCHEMA: {
717
733
  readonly default: true;
718
734
  readonly ui: {
719
735
  readonly tab: "appearance";
736
+ readonly group: "Display";
720
737
  readonly label: "Show Hardware Cursor";
721
738
  readonly description: "Show terminal cursor for IME support";
722
739
  };
@@ -727,6 +744,7 @@ export declare const SETTINGS_SCHEMA: {
727
744
  readonly default: "high";
728
745
  readonly ui: {
729
746
  readonly tab: "model";
747
+ readonly group: "Thinking";
730
748
  readonly label: "Thinking Level";
731
749
  readonly description: "Reasoning depth for thinking-capable models";
732
750
  readonly options: readonly [import("../thinking").ConfiguredThinkingLevelMetadata, ...import("../thinking").ThinkingLevelMetadata[]];
@@ -737,6 +755,7 @@ export declare const SETTINGS_SCHEMA: {
737
755
  readonly default: false;
738
756
  readonly ui: {
739
757
  readonly tab: "model";
758
+ readonly group: "Thinking";
740
759
  readonly label: "Hide Thinking Blocks";
741
760
  readonly description: "Hide thinking blocks in assistant responses";
742
761
  };
@@ -746,6 +765,7 @@ export declare const SETTINGS_SCHEMA: {
746
765
  readonly default: false;
747
766
  readonly ui: {
748
767
  readonly tab: "model";
768
+ readonly group: "Prompt";
749
769
  readonly label: "Repeat Tool Descriptions";
750
770
  readonly description: "Render full tool descriptions in the system prompt instead of a tool name list";
751
771
  };
@@ -755,15 +775,45 @@ export declare const SETTINGS_SCHEMA: {
755
775
  readonly default: true;
756
776
  readonly ui: {
757
777
  readonly tab: "model";
758
- readonly label: "Include Model In Prompt";
778
+ readonly group: "Prompt";
779
+ readonly label: "Include Model in Prompt";
759
780
  readonly description: "Surface the active model identifier in the system prompt so the agent knows which model it is";
760
781
  };
761
782
  };
783
+ readonly personality: {
784
+ readonly type: "enum";
785
+ readonly values: readonly ["default", "friendly", "pragmatic", "none"];
786
+ readonly default: "default";
787
+ readonly ui: {
788
+ readonly tab: "model";
789
+ readonly group: "Prompt";
790
+ readonly label: "Personality";
791
+ readonly description: "Communication style rendered into the system prompt's personality block";
792
+ readonly options: readonly [{
793
+ readonly value: "default";
794
+ readonly label: "Default";
795
+ readonly description: "Terse, evidence-first engineer; dense, action-oriented replies";
796
+ }, {
797
+ readonly value: "friendly";
798
+ readonly label: "Friendly";
799
+ readonly description: "Warm, encouraging collaborator focused on momentum and morale";
800
+ }, {
801
+ readonly value: "pragmatic";
802
+ readonly label: "Pragmatic";
803
+ readonly description: "Direct, efficient engineer focused on clarity and rigor";
804
+ }, {
805
+ readonly value: "none";
806
+ readonly label: "None";
807
+ readonly description: "Omit the personality block entirely";
808
+ }];
809
+ };
810
+ };
762
811
  readonly temperature: {
763
812
  readonly type: "number";
764
813
  readonly default: -1;
765
814
  readonly ui: {
766
815
  readonly tab: "model";
816
+ readonly group: "Sampling";
767
817
  readonly label: "Temperature";
768
818
  readonly description: "Sampling temperature (0 = deterministic, 1 = creative, -1 = provider default)";
769
819
  readonly options: readonly [{
@@ -798,6 +848,7 @@ export declare const SETTINGS_SCHEMA: {
798
848
  readonly default: -1;
799
849
  readonly ui: {
800
850
  readonly tab: "model";
851
+ readonly group: "Sampling";
801
852
  readonly label: "Top P";
802
853
  readonly description: "Nucleus sampling cutoff (0-1, -1 = provider default)";
803
854
  readonly options: readonly [{
@@ -832,6 +883,7 @@ export declare const SETTINGS_SCHEMA: {
832
883
  readonly default: -1;
833
884
  readonly ui: {
834
885
  readonly tab: "model";
886
+ readonly group: "Sampling";
835
887
  readonly label: "Top K";
836
888
  readonly description: "Sample from top-K tokens (-1 = provider default)";
837
889
  readonly options: readonly [{
@@ -862,6 +914,7 @@ export declare const SETTINGS_SCHEMA: {
862
914
  readonly default: -1;
863
915
  readonly ui: {
864
916
  readonly tab: "model";
917
+ readonly group: "Sampling";
865
918
  readonly label: "Min P";
866
919
  readonly description: "Minimum probability threshold (0-1, -1 = provider default)";
867
920
  readonly options: readonly [{
@@ -888,6 +941,7 @@ export declare const SETTINGS_SCHEMA: {
888
941
  readonly default: -1;
889
942
  readonly ui: {
890
943
  readonly tab: "model";
944
+ readonly group: "Sampling";
891
945
  readonly label: "Presence Penalty";
892
946
  readonly description: "Penalty for introducing already-present tokens (-1 = provider default)";
893
947
  readonly options: readonly [{
@@ -918,6 +972,7 @@ export declare const SETTINGS_SCHEMA: {
918
972
  readonly default: -1;
919
973
  readonly ui: {
920
974
  readonly tab: "model";
975
+ readonly group: "Sampling";
921
976
  readonly label: "Repetition Penalty";
922
977
  readonly description: "Penalty for repeated tokens (-1 = provider default)";
923
978
  readonly options: readonly [{
@@ -953,6 +1008,7 @@ export declare const SETTINGS_SCHEMA: {
953
1008
  readonly default: "none";
954
1009
  readonly ui: {
955
1010
  readonly tab: "model";
1011
+ readonly group: "Sampling";
956
1012
  readonly label: "Service Tier";
957
1013
  readonly description: 'Processing priority hint (none = omit). OpenAI accepts the tier values directly; Anthropic realizes `priority` as `speed: "fast"` on supported Opus models. Scoped values target one family.';
958
1014
  readonly options: readonly [{
@@ -999,6 +1055,7 @@ export declare const SETTINGS_SCHEMA: {
999
1055
  readonly default: 10;
1000
1056
  readonly ui: {
1001
1057
  readonly tab: "model";
1058
+ readonly group: "Retry & Fallback";
1002
1059
  readonly label: "Retry Attempts";
1003
1060
  readonly description: "Maximum retry attempts on API errors";
1004
1061
  readonly options: readonly [{
@@ -1028,6 +1085,7 @@ export declare const SETTINGS_SCHEMA: {
1028
1085
  readonly default: number;
1029
1086
  readonly ui: {
1030
1087
  readonly tab: "model";
1088
+ readonly group: "Retry & Fallback";
1031
1089
  readonly label: "Max Retry Delay";
1032
1090
  readonly description: "Maximum wait between retries, in ms. When the provider asks us to wait longer than this and no credential or model fallback succeeds, the request fails fast instead of sleeping (e.g. 3-hour Anthropic rate-limit windows).";
1033
1091
  };
@@ -1037,6 +1095,7 @@ export declare const SETTINGS_SCHEMA: {
1037
1095
  readonly default: true;
1038
1096
  readonly ui: {
1039
1097
  readonly tab: "model";
1098
+ readonly group: "Retry & Fallback";
1040
1099
  readonly label: "Retry Model Fallback";
1041
1100
  readonly description: "Allow retry recovery to switch to configured fallback models";
1042
1101
  };
@@ -1051,6 +1110,7 @@ export declare const SETTINGS_SCHEMA: {
1051
1110
  readonly default: "cooldown-expiry";
1052
1111
  readonly ui: {
1053
1112
  readonly tab: "model";
1113
+ readonly group: "Retry & Fallback";
1054
1114
  readonly label: "Fallback Revert Policy";
1055
1115
  readonly description: "When to return to the primary model after a fallback";
1056
1116
  readonly options: readonly [{
@@ -1070,6 +1130,7 @@ export declare const SETTINGS_SCHEMA: {
1070
1130
  readonly default: "one-at-a-time";
1071
1131
  readonly ui: {
1072
1132
  readonly tab: "interaction";
1133
+ readonly group: "Input";
1073
1134
  readonly label: "Steering Mode";
1074
1135
  readonly description: "How to process queued messages while agent is working";
1075
1136
  };
@@ -1080,6 +1141,7 @@ export declare const SETTINGS_SCHEMA: {
1080
1141
  readonly default: "one-at-a-time";
1081
1142
  readonly ui: {
1082
1143
  readonly tab: "interaction";
1144
+ readonly group: "Input";
1083
1145
  readonly label: "Follow-Up Mode";
1084
1146
  readonly description: "How to drain follow-up messages after a turn completes";
1085
1147
  };
@@ -1090,6 +1152,7 @@ export declare const SETTINGS_SCHEMA: {
1090
1152
  readonly default: "immediate";
1091
1153
  readonly ui: {
1092
1154
  readonly tab: "interaction";
1155
+ readonly group: "Input";
1093
1156
  readonly label: "Interrupt Mode";
1094
1157
  readonly description: "When steering messages interrupt tool execution";
1095
1158
  };
@@ -1100,6 +1163,7 @@ export declare const SETTINGS_SCHEMA: {
1100
1163
  readonly default: "prompt";
1101
1164
  readonly ui: {
1102
1165
  readonly tab: "interaction";
1166
+ readonly group: "Input";
1103
1167
  readonly label: "Loop Mode";
1104
1168
  readonly description: "What happens between /loop iterations before re-submitting the prompt";
1105
1169
  readonly options: readonly [{
@@ -1123,6 +1187,7 @@ export declare const SETTINGS_SCHEMA: {
1123
1187
  readonly default: "tree";
1124
1188
  readonly ui: {
1125
1189
  readonly tab: "interaction";
1190
+ readonly group: "Input";
1126
1191
  readonly label: "Double-Escape Action";
1127
1192
  readonly description: "Action when pressing Escape twice with empty editor";
1128
1193
  };
@@ -1133,6 +1198,7 @@ export declare const SETTINGS_SCHEMA: {
1133
1198
  readonly default: "default";
1134
1199
  readonly ui: {
1135
1200
  readonly tab: "interaction";
1201
+ readonly group: "Input";
1136
1202
  readonly label: "Session Tree Filter";
1137
1203
  readonly description: "Default filter mode when opening the session tree";
1138
1204
  };
@@ -1142,6 +1208,7 @@ export declare const SETTINGS_SCHEMA: {
1142
1208
  readonly default: 5;
1143
1209
  readonly ui: {
1144
1210
  readonly tab: "interaction";
1211
+ readonly group: "Input";
1145
1212
  readonly label: "Autocomplete Items";
1146
1213
  readonly description: "Max visible items in autocomplete dropdown (3-20)";
1147
1214
  readonly options: readonly [{
@@ -1170,6 +1237,7 @@ export declare const SETTINGS_SCHEMA: {
1170
1237
  readonly default: true;
1171
1238
  readonly ui: {
1172
1239
  readonly tab: "interaction";
1240
+ readonly group: "Input";
1173
1241
  readonly label: "Emoji Autocomplete";
1174
1242
  readonly description: "Suggest emojis from `:name:` shortcodes and expand text emoticons like `:D` or `:-)`";
1175
1243
  };
@@ -1179,6 +1247,7 @@ export declare const SETTINGS_SCHEMA: {
1179
1247
  readonly default: false;
1180
1248
  readonly ui: {
1181
1249
  readonly tab: "interaction";
1250
+ readonly group: "Startup & Updates";
1182
1251
  readonly label: "Quiet Startup";
1183
1252
  readonly description: "Skip welcome screen and startup status messages";
1184
1253
  };
@@ -1188,6 +1257,7 @@ export declare const SETTINGS_SCHEMA: {
1188
1257
  readonly default: true;
1189
1258
  readonly ui: {
1190
1259
  readonly tab: "interaction";
1260
+ readonly group: "Startup & Updates";
1191
1261
  readonly label: "Setup Wizard";
1192
1262
  readonly description: "Show newly added onboarding steps once per setup version";
1193
1263
  };
@@ -1197,8 +1267,33 @@ export declare const SETTINGS_SCHEMA: {
1197
1267
  readonly default: true;
1198
1268
  readonly ui: {
1199
1269
  readonly tab: "interaction";
1270
+ readonly group: "Startup & Updates";
1200
1271
  readonly label: "Check for Updates";
1201
- readonly description: "If false, skip update check";
1272
+ readonly description: "Check for omp updates on startup";
1273
+ };
1274
+ };
1275
+ readonly "marketplace.autoUpdate": {
1276
+ readonly type: "enum";
1277
+ readonly values: readonly ["off", "notify", "auto"];
1278
+ readonly default: "notify";
1279
+ readonly ui: {
1280
+ readonly tab: "interaction";
1281
+ readonly group: "Startup & Updates";
1282
+ readonly label: "Marketplace Auto-Update";
1283
+ readonly description: "Check for plugin updates on startup";
1284
+ readonly options: readonly [{
1285
+ readonly value: "off";
1286
+ readonly label: "Off";
1287
+ readonly description: "Don't check for plugin updates";
1288
+ }, {
1289
+ readonly value: "notify";
1290
+ readonly label: "Notify";
1291
+ readonly description: "Check on startup and notify when updates are available";
1292
+ }, {
1293
+ readonly value: "auto";
1294
+ readonly label: "Auto";
1295
+ readonly description: "Check on startup and auto-install updates";
1296
+ }];
1202
1297
  };
1203
1298
  };
1204
1299
  readonly collapseChangelog: {
@@ -1206,6 +1301,7 @@ export declare const SETTINGS_SCHEMA: {
1206
1301
  readonly default: false;
1207
1302
  readonly ui: {
1208
1303
  readonly tab: "interaction";
1304
+ readonly group: "Startup & Updates";
1209
1305
  readonly label: "Collapse Changelog";
1210
1306
  readonly description: "Show condensed changelog after updates";
1211
1307
  };
@@ -1215,6 +1311,7 @@ export declare const SETTINGS_SCHEMA: {
1215
1311
  readonly default: true;
1216
1312
  readonly ui: {
1217
1313
  readonly tab: "interaction";
1314
+ readonly group: "Magic Keywords";
1218
1315
  readonly label: "Magic Keywords";
1219
1316
  readonly description: "Enable hidden notices for standalone ultrathink, orchestrate, and workflowz keywords";
1220
1317
  };
@@ -1224,6 +1321,7 @@ export declare const SETTINGS_SCHEMA: {
1224
1321
  readonly default: true;
1225
1322
  readonly ui: {
1226
1323
  readonly tab: "interaction";
1324
+ readonly group: "Magic Keywords";
1227
1325
  readonly label: "Ultrathink Keyword";
1228
1326
  readonly description: "Let standalone ultrathink request maximum automatic thinking and append its hidden notice";
1229
1327
  };
@@ -1233,6 +1331,7 @@ export declare const SETTINGS_SCHEMA: {
1233
1331
  readonly default: true;
1234
1332
  readonly ui: {
1235
1333
  readonly tab: "interaction";
1334
+ readonly group: "Magic Keywords";
1236
1335
  readonly label: "Orchestrate Keyword";
1237
1336
  readonly description: "Let standalone orchestrate append its hidden multi-agent orchestration notice";
1238
1337
  };
@@ -1242,6 +1341,7 @@ export declare const SETTINGS_SCHEMA: {
1242
1341
  readonly default: true;
1243
1342
  readonly ui: {
1244
1343
  readonly tab: "interaction";
1344
+ readonly group: "Magic Keywords";
1245
1345
  readonly label: "Workflow Keyword";
1246
1346
  readonly description: "Let standalone workflowz append its hidden eval workflow notice";
1247
1347
  };
@@ -1252,8 +1352,9 @@ export declare const SETTINGS_SCHEMA: {
1252
1352
  readonly default: "on";
1253
1353
  readonly ui: {
1254
1354
  readonly tab: "interaction";
1355
+ readonly group: "Notifications";
1255
1356
  readonly label: "Completion Notification";
1256
- readonly description: "Notify when the agent completes";
1357
+ readonly description: "Notify when the agent finishes a turn";
1257
1358
  };
1258
1359
  };
1259
1360
  readonly "ask.timeout": {
@@ -1261,8 +1362,9 @@ export declare const SETTINGS_SCHEMA: {
1261
1362
  readonly default: 0;
1262
1363
  readonly ui: {
1263
1364
  readonly tab: "interaction";
1365
+ readonly group: "Notifications";
1264
1366
  readonly label: "Ask Timeout";
1265
- readonly description: "Auto-select recommended option after timeout (0 to disable)";
1367
+ readonly description: "Auto-select the recommended ask option after this many seconds (0 disables)";
1266
1368
  readonly options: readonly [{
1267
1369
  readonly value: "0";
1268
1370
  readonly label: "Disabled";
@@ -1287,8 +1389,9 @@ export declare const SETTINGS_SCHEMA: {
1287
1389
  readonly default: "on";
1288
1390
  readonly ui: {
1289
1391
  readonly tab: "interaction";
1392
+ readonly group: "Notifications";
1290
1393
  readonly label: "Ask Notification";
1291
- readonly description: "Notify when ask tool is waiting for input";
1394
+ readonly description: "Notify when the ask tool is waiting for input";
1292
1395
  };
1293
1396
  };
1294
1397
  readonly "stt.enabled": {
@@ -1296,6 +1399,7 @@ export declare const SETTINGS_SCHEMA: {
1296
1399
  readonly default: false;
1297
1400
  readonly ui: {
1298
1401
  readonly tab: "interaction";
1402
+ readonly group: "Speech";
1299
1403
  readonly label: "Speech-to-Text";
1300
1404
  readonly description: "Enable speech-to-text input via microphone";
1301
1405
  };
@@ -1310,6 +1414,7 @@ export declare const SETTINGS_SCHEMA: {
1310
1414
  readonly default: "base.en";
1311
1415
  readonly ui: {
1312
1416
  readonly tab: "interaction";
1417
+ readonly group: "Speech";
1313
1418
  readonly label: "Speech Model";
1314
1419
  readonly description: "Whisper model size (larger = more accurate but slower)";
1315
1420
  readonly options: readonly [{
@@ -1356,6 +1461,7 @@ export declare const SETTINGS_SCHEMA: {
1356
1461
  readonly default: true;
1357
1462
  readonly ui: {
1358
1463
  readonly tab: "context";
1464
+ readonly group: "General";
1359
1465
  readonly label: "Auto-Promote Context";
1360
1466
  readonly description: "Promote to a larger-context model on context overflow instead of compacting";
1361
1467
  };
@@ -1365,6 +1471,7 @@ export declare const SETTINGS_SCHEMA: {
1365
1471
  readonly default: true;
1366
1472
  readonly ui: {
1367
1473
  readonly tab: "context";
1474
+ readonly group: "Compaction";
1368
1475
  readonly label: "Auto-Compact";
1369
1476
  readonly description: "Automatically compact context when it gets too large";
1370
1477
  };
@@ -1375,6 +1482,7 @@ export declare const SETTINGS_SCHEMA: {
1375
1482
  readonly default: "context-full";
1376
1483
  readonly ui: {
1377
1484
  readonly tab: "context";
1485
+ readonly group: "Compaction";
1378
1486
  readonly label: "Compaction Strategy";
1379
1487
  readonly description: "Choose in-place context-full maintenance, auto-handoff, surgical shake (drop heavy content), snapcompact (archive history as dense images), or disable auto maintenance (off)";
1380
1488
  readonly options: readonly [{
@@ -1405,6 +1513,7 @@ export declare const SETTINGS_SCHEMA: {
1405
1513
  readonly default: -1;
1406
1514
  readonly ui: {
1407
1515
  readonly tab: "context";
1516
+ readonly group: "Compaction";
1408
1517
  readonly label: "Compaction Threshold";
1409
1518
  readonly description: "Percent threshold for context maintenance; set to Default to use legacy reserve-based behavior";
1410
1519
  readonly options: readonly [{
@@ -1467,6 +1576,7 @@ export declare const SETTINGS_SCHEMA: {
1467
1576
  readonly default: -1;
1468
1577
  readonly ui: {
1469
1578
  readonly tab: "context";
1579
+ readonly group: "Compaction";
1470
1580
  readonly label: "Compaction Token Limit";
1471
1581
  readonly description: "Fixed token limit for context maintenance; overrides percentage if set";
1472
1582
  readonly options: readonly [{
@@ -1509,6 +1619,7 @@ export declare const SETTINGS_SCHEMA: {
1509
1619
  readonly default: false;
1510
1620
  readonly ui: {
1511
1621
  readonly tab: "context";
1622
+ readonly group: "Compaction";
1512
1623
  readonly label: "Save Handoff Docs";
1513
1624
  readonly description: "Save generated handoff documents to markdown files for the auto-handoff flow";
1514
1625
  };
@@ -1518,6 +1629,7 @@ export declare const SETTINGS_SCHEMA: {
1518
1629
  readonly default: true;
1519
1630
  readonly ui: {
1520
1631
  readonly tab: "context";
1632
+ readonly group: "Compaction";
1521
1633
  readonly label: "Remote Compaction";
1522
1634
  readonly description: "Use remote compaction endpoints when available instead of local summarization";
1523
1635
  };
@@ -1543,6 +1655,7 @@ export declare const SETTINGS_SCHEMA: {
1543
1655
  readonly default: false;
1544
1656
  readonly ui: {
1545
1657
  readonly tab: "context";
1658
+ readonly group: "Compaction";
1546
1659
  readonly label: "Idle Compaction";
1547
1660
  readonly description: "Compact context while idle when token count exceeds threshold";
1548
1661
  };
@@ -1552,6 +1665,7 @@ export declare const SETTINGS_SCHEMA: {
1552
1665
  readonly default: 200000;
1553
1666
  readonly ui: {
1554
1667
  readonly tab: "context";
1668
+ readonly group: "Compaction";
1555
1669
  readonly label: "Idle Compaction Threshold";
1556
1670
  readonly description: "Token count above which idle compaction triggers";
1557
1671
  readonly options: readonly [{
@@ -1589,6 +1703,7 @@ export declare const SETTINGS_SCHEMA: {
1589
1703
  readonly default: 300;
1590
1704
  readonly ui: {
1591
1705
  readonly tab: "context";
1706
+ readonly group: "Compaction";
1592
1707
  readonly label: "Idle Compaction Delay";
1593
1708
  readonly description: "Seconds to wait while idle before compacting";
1594
1709
  readonly options: readonly [{
@@ -1617,15 +1732,51 @@ export declare const SETTINGS_SCHEMA: {
1617
1732
  readonly default: true;
1618
1733
  readonly ui: {
1619
1734
  readonly tab: "context";
1735
+ readonly group: "Compaction";
1620
1736
  readonly label: "Supersede Stale Reads";
1621
1737
  readonly description: "Prune older read results when the same file is read again (cache-aware, runs every turn)";
1622
1738
  };
1623
1739
  };
1740
+ readonly "snapcompact.systemPrompt": {
1741
+ readonly type: "enum";
1742
+ readonly values: readonly ["none", "agents-md", "all"];
1743
+ readonly default: "none";
1744
+ readonly ui: {
1745
+ readonly tab: "context";
1746
+ readonly group: "Experimental";
1747
+ readonly label: "Snapcompact System Prompt";
1748
+ readonly description: "Experimental: render selected system prompt text as dense PNG image(s) and attach to the first user message (vision models only). Saves tokens; loses prompt caching for imaged text.";
1749
+ readonly options: readonly [{
1750
+ readonly value: "none";
1751
+ readonly label: "None";
1752
+ readonly description: "Keep the system prompt as text.";
1753
+ }, {
1754
+ readonly value: "agents-md";
1755
+ readonly label: "AGENTS.md";
1756
+ readonly description: "Only move loaded context-file instructions to images, when that saves tokens.";
1757
+ }, {
1758
+ readonly value: "all";
1759
+ readonly label: "All";
1760
+ readonly description: "Move the full system prompt to images, when that saves tokens.";
1761
+ }];
1762
+ };
1763
+ };
1764
+ readonly "snapcompact.toolResults": {
1765
+ readonly type: "boolean";
1766
+ readonly default: false;
1767
+ readonly ui: {
1768
+ readonly tab: "context";
1769
+ readonly group: "Experimental";
1770
+ readonly label: "Snapcompact Tool Results";
1771
+ readonly description: "Experimental: render large historical tool results as dense PNG image(s) instead of text (vision models only). Saves tokens on accumulated read/search output.";
1772
+ };
1773
+ };
1624
1774
  readonly "branchSummary.enabled": {
1625
1775
  readonly type: "boolean";
1626
1776
  readonly default: false;
1627
1777
  readonly ui: {
1628
1778
  readonly tab: "context";
1779
+ readonly group: "General";
1629
1780
  readonly label: "Branch Summaries";
1630
1781
  readonly description: "Prompt to summarize when leaving a branch";
1631
1782
  };
@@ -1704,6 +1855,7 @@ export declare const SETTINGS_SCHEMA: {
1704
1855
  readonly default: "off";
1705
1856
  readonly ui: {
1706
1857
  readonly tab: "memory";
1858
+ readonly group: "General";
1707
1859
  readonly label: "Memory Backend";
1708
1860
  readonly description: "Off, local summary pipeline, Mnemopi SQLite, or Hindsight remote memory";
1709
1861
  readonly options: readonly [{
@@ -1730,6 +1882,7 @@ export declare const SETTINGS_SCHEMA: {
1730
1882
  readonly default: undefined;
1731
1883
  readonly ui: {
1732
1884
  readonly tab: "memory";
1885
+ readonly group: "Mnemopi";
1733
1886
  readonly label: "Mnemopi DB Path";
1734
1887
  readonly description: "Optional SQLite DB path. Defaults to the agent memories directory.";
1735
1888
  readonly condition: "mnemopiActive";
@@ -1740,6 +1893,7 @@ export declare const SETTINGS_SCHEMA: {
1740
1893
  readonly default: undefined;
1741
1894
  readonly ui: {
1742
1895
  readonly tab: "memory";
1896
+ readonly group: "Mnemopi";
1743
1897
  readonly label: "Mnemopi Bank";
1744
1898
  readonly description: "Optional shared bank base name. Per-project modes derive project-local banks from it.";
1745
1899
  readonly condition: "mnemopiActive";
@@ -1751,6 +1905,7 @@ export declare const SETTINGS_SCHEMA: {
1751
1905
  readonly default: "per-project";
1752
1906
  readonly ui: {
1753
1907
  readonly tab: "memory";
1908
+ readonly group: "Mnemopi";
1754
1909
  readonly label: "Mnemopi Scoping";
1755
1910
  readonly description: "global = one shared bank; per-project = isolated bank per cwd; per-project-tagged = project-local writes plus global recall visibility";
1756
1911
  readonly options: readonly [{
@@ -1774,6 +1929,7 @@ export declare const SETTINGS_SCHEMA: {
1774
1929
  readonly default: true;
1775
1930
  readonly ui: {
1776
1931
  readonly tab: "memory";
1932
+ readonly group: "Mnemopi";
1777
1933
  readonly label: "Mnemopi Auto Recall";
1778
1934
  readonly description: "Recall local memories into the first turn of each session";
1779
1935
  readonly condition: "mnemopiActive";
@@ -1784,16 +1940,40 @@ export declare const SETTINGS_SCHEMA: {
1784
1940
  readonly default: true;
1785
1941
  readonly ui: {
1786
1942
  readonly tab: "memory";
1943
+ readonly group: "Mnemopi";
1787
1944
  readonly label: "Mnemopi Auto Retain";
1788
1945
  readonly description: "Retain completed conversation turns into local Mnemopi memory";
1789
1946
  readonly condition: "mnemopiActive";
1790
1947
  };
1791
1948
  };
1949
+ readonly "mnemopi.polyphonicRecall": {
1950
+ readonly type: "boolean";
1951
+ readonly default: false;
1952
+ readonly ui: {
1953
+ readonly tab: "memory";
1954
+ readonly group: "Mnemopi";
1955
+ readonly label: "Mnemopi Polyphonic Recall";
1956
+ readonly description: "Enable 4-voice recall (vector, graph, fact, temporal) fused with reciprocal rank fusion";
1957
+ readonly condition: "mnemopiActive";
1958
+ };
1959
+ };
1960
+ readonly "mnemopi.enhancedRecall": {
1961
+ readonly type: "boolean";
1962
+ readonly default: false;
1963
+ readonly ui: {
1964
+ readonly tab: "memory";
1965
+ readonly group: "Mnemopi";
1966
+ readonly label: "Mnemopi Enhanced Recall";
1967
+ readonly description: "Enable the tiered query result cache for repeated and similar recall queries";
1968
+ readonly condition: "mnemopiActive";
1969
+ };
1970
+ };
1792
1971
  readonly "mnemopi.noEmbeddings": {
1793
1972
  readonly type: "boolean";
1794
1973
  readonly default: false;
1795
1974
  readonly ui: {
1796
1975
  readonly tab: "memory";
1976
+ readonly group: "Mnemopi";
1797
1977
  readonly label: "Mnemopi Disable Embeddings";
1798
1978
  readonly description: "Force deterministic FTS-only recall instead of vector embeddings";
1799
1979
  readonly condition: "mnemopiActive";
@@ -1804,6 +1984,7 @@ export declare const SETTINGS_SCHEMA: {
1804
1984
  readonly default: undefined;
1805
1985
  readonly ui: {
1806
1986
  readonly tab: "memory";
1987
+ readonly group: "Mnemopi";
1807
1988
  readonly label: "Mnemopi Embedding Model";
1808
1989
  readonly description: "Optional embedding model override passed to Mnemopi";
1809
1990
  readonly condition: "mnemopiActive";
@@ -1814,6 +1995,7 @@ export declare const SETTINGS_SCHEMA: {
1814
1995
  readonly default: undefined;
1815
1996
  readonly ui: {
1816
1997
  readonly tab: "memory";
1998
+ readonly group: "Mnemopi";
1817
1999
  readonly label: "Mnemopi Embedding API URL";
1818
2000
  readonly description: "Optional OpenAI-compatible embedding endpoint passed to Mnemopi";
1819
2001
  readonly condition: "mnemopiActive";
@@ -1824,6 +2006,7 @@ export declare const SETTINGS_SCHEMA: {
1824
2006
  readonly default: undefined;
1825
2007
  readonly ui: {
1826
2008
  readonly tab: "memory";
2009
+ readonly group: "Mnemopi";
1827
2010
  readonly label: "Mnemopi Embedding API Key";
1828
2011
  readonly description: "Optional embedding API key passed to Mnemopi";
1829
2012
  readonly condition: "mnemopiActive";
@@ -1835,6 +2018,7 @@ export declare const SETTINGS_SCHEMA: {
1835
2018
  readonly default: "smol";
1836
2019
  readonly ui: {
1837
2020
  readonly tab: "memory";
2021
+ readonly group: "Mnemopi";
1838
2022
  readonly label: "Mnemopi LLM Mode";
1839
2023
  readonly description: "Use no LLM, the configured smol model, or a remote OpenAI-compatible endpoint";
1840
2024
  readonly condition: "mnemopiActive";
@@ -1858,6 +2042,7 @@ export declare const SETTINGS_SCHEMA: {
1858
2042
  readonly default: undefined;
1859
2043
  readonly ui: {
1860
2044
  readonly tab: "memory";
2045
+ readonly group: "Mnemopi";
1861
2046
  readonly label: "Mnemopi LLM Base URL";
1862
2047
  readonly description: "Optional OpenAI-compatible LLM endpoint for Mnemopi remote mode";
1863
2048
  readonly condition: "mnemopiActive";
@@ -1868,6 +2053,7 @@ export declare const SETTINGS_SCHEMA: {
1868
2053
  readonly default: undefined;
1869
2054
  readonly ui: {
1870
2055
  readonly tab: "memory";
2056
+ readonly group: "Mnemopi";
1871
2057
  readonly label: "Mnemopi LLM API Key";
1872
2058
  readonly description: "Optional LLM API key for Mnemopi remote mode";
1873
2059
  readonly condition: "mnemopiActive";
@@ -1878,6 +2064,7 @@ export declare const SETTINGS_SCHEMA: {
1878
2064
  readonly default: undefined;
1879
2065
  readonly ui: {
1880
2066
  readonly tab: "memory";
2067
+ readonly group: "Mnemopi";
1881
2068
  readonly label: "Mnemopi LLM Model";
1882
2069
  readonly description: "Optional LLM model name for Mnemopi remote mode";
1883
2070
  readonly condition: "mnemopiActive";
@@ -1912,6 +2099,7 @@ export declare const SETTINGS_SCHEMA: {
1912
2099
  readonly default: "http://localhost:8888";
1913
2100
  readonly ui: {
1914
2101
  readonly tab: "memory";
2102
+ readonly group: "Hindsight";
1915
2103
  readonly label: "Hindsight API URL";
1916
2104
  readonly description: "Hindsight server URL (Cloud or self-hosted)";
1917
2105
  readonly condition: "hindsightActive";
@@ -1926,6 +2114,7 @@ export declare const SETTINGS_SCHEMA: {
1926
2114
  readonly default: undefined;
1927
2115
  readonly ui: {
1928
2116
  readonly tab: "memory";
2117
+ readonly group: "Hindsight";
1929
2118
  readonly label: "Hindsight Bank ID";
1930
2119
  readonly description: "Memory bank identifier (default: project name)";
1931
2120
  readonly condition: "hindsightActive";
@@ -1941,6 +2130,7 @@ export declare const SETTINGS_SCHEMA: {
1941
2130
  readonly default: "per-project-tagged";
1942
2131
  readonly ui: {
1943
2132
  readonly tab: "memory";
2133
+ readonly group: "Hindsight";
1944
2134
  readonly label: "Hindsight Scoping";
1945
2135
  readonly description: "global = one shared bank; per-project = isolated bank per cwd; per-project-tagged = shared bank with project tags so global + project memories merge on recall";
1946
2136
  readonly options: readonly [{
@@ -1972,6 +2162,7 @@ export declare const SETTINGS_SCHEMA: {
1972
2162
  readonly default: true;
1973
2163
  readonly ui: {
1974
2164
  readonly tab: "memory";
2165
+ readonly group: "Hindsight";
1975
2166
  readonly label: "Hindsight Auto Recall";
1976
2167
  readonly description: "Recall memories on the first turn of each session";
1977
2168
  readonly condition: "hindsightActive";
@@ -1982,6 +2173,7 @@ export declare const SETTINGS_SCHEMA: {
1982
2173
  readonly default: true;
1983
2174
  readonly ui: {
1984
2175
  readonly tab: "memory";
2176
+ readonly group: "Hindsight";
1985
2177
  readonly label: "Hindsight Auto Retain";
1986
2178
  readonly description: "Retain transcript every N turns and at session boundaries";
1987
2179
  readonly condition: "hindsightActive";
@@ -1993,6 +2185,7 @@ export declare const SETTINGS_SCHEMA: {
1993
2185
  readonly default: "full-session";
1994
2186
  readonly ui: {
1995
2187
  readonly tab: "memory";
2188
+ readonly group: "Hindsight";
1996
2189
  readonly label: "Hindsight Retain Mode";
1997
2190
  readonly description: "full-session = upsert one document per session, last-turn = chunked";
1998
2191
  readonly options: readonly [{
@@ -2049,6 +2242,7 @@ export declare const SETTINGS_SCHEMA: {
2049
2242
  readonly default: true;
2050
2243
  readonly ui: {
2051
2244
  readonly tab: "memory";
2245
+ readonly group: "Hindsight";
2052
2246
  readonly label: "Hindsight Mental Models";
2053
2247
  readonly description: "Read curated reflect summaries (mental models) into developer instructions at boot. Loads existing models on the bank — does not write. Pair with hindsight.mentalModelAutoSeed to also auto-create the built-in seed set.";
2054
2248
  readonly condition: "hindsightActive";
@@ -2059,6 +2253,7 @@ export declare const SETTINGS_SCHEMA: {
2059
2253
  readonly default: true;
2060
2254
  readonly ui: {
2061
2255
  readonly tab: "memory";
2256
+ readonly group: "Hindsight";
2062
2257
  readonly label: "Hindsight Mental Model Auto-Seed";
2063
2258
  readonly description: "At session start, create any built-in mental models (project-conventions, project-decisions, user-preferences) that do not yet exist on the bank.";
2064
2259
  readonly condition: "hindsightActive";
@@ -2077,8 +2272,9 @@ export declare const SETTINGS_SCHEMA: {
2077
2272
  readonly default: true;
2078
2273
  readonly ui: {
2079
2274
  readonly tab: "context";
2275
+ readonly group: "Rules (TTSR)";
2080
2276
  readonly label: "TTSR";
2081
- readonly description: "Time Traveling Stream Rules: interrupt agent when output matches patterns";
2277
+ readonly description: "Interrupt the agent mid-stream when output matches rule patterns (Time-Traveling Stream Rules)";
2082
2278
  };
2083
2279
  };
2084
2280
  readonly "ttsr.contextMode": {
@@ -2087,6 +2283,7 @@ export declare const SETTINGS_SCHEMA: {
2087
2283
  readonly default: "discard";
2088
2284
  readonly ui: {
2089
2285
  readonly tab: "context";
2286
+ readonly group: "Rules (TTSR)";
2090
2287
  readonly label: "TTSR Context Mode";
2091
2288
  readonly description: "What to do with partial output when TTSR triggers";
2092
2289
  };
@@ -2097,6 +2294,7 @@ export declare const SETTINGS_SCHEMA: {
2097
2294
  readonly default: "always";
2098
2295
  readonly ui: {
2099
2296
  readonly tab: "context";
2297
+ readonly group: "Rules (TTSR)";
2100
2298
  readonly label: "TTSR Interrupt Mode";
2101
2299
  readonly description: "When to interrupt mid-stream vs inject warning after completion";
2102
2300
  readonly options: readonly [{
@@ -2124,6 +2322,7 @@ export declare const SETTINGS_SCHEMA: {
2124
2322
  readonly default: "once";
2125
2323
  readonly ui: {
2126
2324
  readonly tab: "context";
2325
+ readonly group: "Rules (TTSR)";
2127
2326
  readonly label: "TTSR Repeat Mode";
2128
2327
  readonly description: "How rules can repeat: once per session or after a message gap";
2129
2328
  };
@@ -2133,6 +2332,7 @@ export declare const SETTINGS_SCHEMA: {
2133
2332
  readonly default: 10;
2134
2333
  readonly ui: {
2135
2334
  readonly tab: "context";
2335
+ readonly group: "Rules (TTSR)";
2136
2336
  readonly label: "TTSR Repeat Gap";
2137
2337
  readonly description: "Messages before a rule can trigger again";
2138
2338
  readonly options: readonly [{
@@ -2158,7 +2358,8 @@ export declare const SETTINGS_SCHEMA: {
2158
2358
  readonly default: true;
2159
2359
  readonly ui: {
2160
2360
  readonly tab: "context";
2161
- readonly label: "Builtin Rules";
2361
+ readonly group: "Rules (TTSR)";
2362
+ readonly label: "Built-in Rules";
2162
2363
  readonly description: "Load the default rules shipped with the agent (override individually with ttsr.disabledRules)";
2163
2364
  };
2164
2365
  };
@@ -2167,6 +2368,7 @@ export declare const SETTINGS_SCHEMA: {
2167
2368
  readonly default: string[];
2168
2369
  readonly ui: {
2169
2370
  readonly tab: "context";
2371
+ readonly group: "Rules (TTSR)";
2170
2372
  readonly label: "Disabled Rules";
2171
2373
  readonly description: "Rule names to ignore entirely (applies to bundled defaults and your own rules)";
2172
2374
  };
@@ -2176,7 +2378,8 @@ export declare const SETTINGS_SCHEMA: {
2176
2378
  readonly values: import("..").EditMode[];
2177
2379
  readonly default: "hashline";
2178
2380
  readonly ui: {
2179
- readonly tab: "editing";
2381
+ readonly tab: "files";
2382
+ readonly group: "Editing";
2180
2383
  readonly label: "Edit Mode";
2181
2384
  readonly description: "Select the edit tool variant (replace, patch, hashline, or apply_patch)";
2182
2385
  };
@@ -2185,7 +2388,8 @@ export declare const SETTINGS_SCHEMA: {
2185
2388
  readonly type: "boolean";
2186
2389
  readonly default: true;
2187
2390
  readonly ui: {
2188
- readonly tab: "editing";
2391
+ readonly tab: "files";
2392
+ readonly group: "Editing";
2189
2393
  readonly label: "Fuzzy Match";
2190
2394
  readonly description: "Accept high-confidence fuzzy matches for whitespace differences";
2191
2395
  };
@@ -2194,9 +2398,10 @@ export declare const SETTINGS_SCHEMA: {
2194
2398
  readonly type: "number";
2195
2399
  readonly default: 0.95;
2196
2400
  readonly ui: {
2197
- readonly tab: "editing";
2401
+ readonly tab: "files";
2402
+ readonly group: "Editing";
2198
2403
  readonly label: "Fuzzy Match Threshold";
2199
- readonly description: "Similarity threshold for fuzzy matches";
2404
+ readonly description: "Similarity threshold (0-1) for accepting fuzzy matches";
2200
2405
  readonly options: readonly [{
2201
2406
  readonly value: "0.85";
2202
2407
  readonly label: "0.85";
@@ -2220,7 +2425,8 @@ export declare const SETTINGS_SCHEMA: {
2220
2425
  readonly type: "boolean";
2221
2426
  readonly default: false;
2222
2427
  readonly ui: {
2223
- readonly tab: "editing";
2428
+ readonly tab: "files";
2429
+ readonly group: "Editing";
2224
2430
  readonly label: "Abort on Failed Preview";
2225
2431
  readonly description: "Abort streaming edit tool calls when patch preview fails";
2226
2432
  };
@@ -2229,7 +2435,8 @@ export declare const SETTINGS_SCHEMA: {
2229
2435
  readonly type: "boolean";
2230
2436
  readonly default: true;
2231
2437
  readonly ui: {
2232
- readonly tab: "editing";
2438
+ readonly tab: "files";
2439
+ readonly group: "Editing";
2233
2440
  readonly label: "Block Auto-Generated Files";
2234
2441
  readonly description: "Prevent editing of files that appear to be auto-generated (protoc, sqlc, swagger, etc.)";
2235
2442
  };
@@ -2238,7 +2445,8 @@ export declare const SETTINGS_SCHEMA: {
2238
2445
  readonly type: "boolean";
2239
2446
  readonly default: false;
2240
2447
  readonly ui: {
2241
- readonly tab: "editing";
2448
+ readonly tab: "files";
2449
+ readonly group: "Reading";
2242
2450
  readonly label: "Line Numbers";
2243
2451
  readonly description: "Prepend line numbers to read tool output by default";
2244
2452
  };
@@ -2247,7 +2455,8 @@ export declare const SETTINGS_SCHEMA: {
2247
2455
  readonly type: "boolean";
2248
2456
  readonly default: true;
2249
2457
  readonly ui: {
2250
- readonly tab: "editing";
2458
+ readonly tab: "files";
2459
+ readonly group: "Reading";
2251
2460
  readonly label: "Hash Lines";
2252
2461
  readonly description: "Include snapshot-tag headers and line numbers in read output for hashline edit mode ([PATH#TAG] plus LINE:content)";
2253
2462
  };
@@ -2256,7 +2465,8 @@ export declare const SETTINGS_SCHEMA: {
2256
2465
  readonly type: "number";
2257
2466
  readonly default: 300;
2258
2467
  readonly ui: {
2259
- readonly tab: "editing";
2468
+ readonly tab: "files";
2469
+ readonly group: "Reading";
2260
2470
  readonly label: "Default Read Limit";
2261
2471
  readonly description: "Default number of lines returned when agent calls read without a limit";
2262
2472
  readonly options: readonly [{
@@ -2281,7 +2491,8 @@ export declare const SETTINGS_SCHEMA: {
2281
2491
  readonly type: "boolean";
2282
2492
  readonly default: true;
2283
2493
  readonly ui: {
2284
- readonly tab: "editing";
2494
+ readonly tab: "files";
2495
+ readonly group: "Read Summaries";
2285
2496
  readonly label: "Read Summaries";
2286
2497
  readonly description: "Return structural code summaries when read is called without an explicit selector";
2287
2498
  };
@@ -2290,7 +2501,8 @@ export declare const SETTINGS_SCHEMA: {
2290
2501
  readonly type: "boolean";
2291
2502
  readonly default: false;
2292
2503
  readonly ui: {
2293
- readonly tab: "editing";
2504
+ readonly tab: "files";
2505
+ readonly group: "Read Summaries";
2294
2506
  readonly label: "Prose Summaries";
2295
2507
  readonly description: "Return structural summaries for Markdown and plain text reads";
2296
2508
  };
@@ -2299,7 +2511,8 @@ export declare const SETTINGS_SCHEMA: {
2299
2511
  readonly type: "number";
2300
2512
  readonly default: 4;
2301
2513
  readonly ui: {
2302
- readonly tab: "editing";
2514
+ readonly tab: "files";
2515
+ readonly group: "Read Summaries";
2303
2516
  readonly label: "Read Summary Body Lines";
2304
2517
  readonly description: "Minimum multiline body or literal length before read summaries collapse it";
2305
2518
  };
@@ -2308,7 +2521,8 @@ export declare const SETTINGS_SCHEMA: {
2308
2521
  readonly type: "number";
2309
2522
  readonly default: 6;
2310
2523
  readonly ui: {
2311
- readonly tab: "editing";
2524
+ readonly tab: "files";
2525
+ readonly group: "Read Summaries";
2312
2526
  readonly label: "Read Summary Comment Lines";
2313
2527
  readonly description: "Minimum multiline block comment length before read summaries collapse it";
2314
2528
  };
@@ -2317,7 +2531,8 @@ export declare const SETTINGS_SCHEMA: {
2317
2531
  readonly type: "number";
2318
2532
  readonly default: 100;
2319
2533
  readonly ui: {
2320
- readonly tab: "editing";
2534
+ readonly tab: "files";
2535
+ readonly group: "Read Summaries";
2321
2536
  readonly label: "Read Summary Minimum File Length";
2322
2537
  readonly description: "Files with fewer total lines are read verbatim instead of structurally summarized";
2323
2538
  };
@@ -2326,7 +2541,8 @@ export declare const SETTINGS_SCHEMA: {
2326
2541
  readonly type: "number";
2327
2542
  readonly default: 50;
2328
2543
  readonly ui: {
2329
- readonly tab: "editing";
2544
+ readonly tab: "files";
2545
+ readonly group: "Read Summaries";
2330
2546
  readonly label: "Read Summary Unfold Target";
2331
2547
  readonly description: "BFS-unfold elidable spans until the summary is at least this many visible lines. 0 keeps only the outermost elisions.";
2332
2548
  };
@@ -2335,7 +2551,8 @@ export declare const SETTINGS_SCHEMA: {
2335
2551
  readonly type: "number";
2336
2552
  readonly default: 100;
2337
2553
  readonly ui: {
2338
- readonly tab: "editing";
2554
+ readonly tab: "files";
2555
+ readonly group: "Read Summaries";
2339
2556
  readonly label: "Read Summary Unfold Ceiling";
2340
2557
  readonly description: "Hard ceiling on summary size while BFS-unfolding. An unfold that would exceed this is reverted and unfolding stops.";
2341
2558
  };
@@ -2344,7 +2561,8 @@ export declare const SETTINGS_SCHEMA: {
2344
2561
  readonly type: "boolean";
2345
2562
  readonly default: false;
2346
2563
  readonly ui: {
2347
- readonly tab: "editing";
2564
+ readonly tab: "files";
2565
+ readonly group: "Reading";
2348
2566
  readonly label: "Inline Read Previews";
2349
2567
  readonly description: "Render read tool results inline in the transcript instead of summary rows";
2350
2568
  };
@@ -2353,16 +2571,18 @@ export declare const SETTINGS_SCHEMA: {
2353
2571
  readonly type: "boolean";
2354
2572
  readonly default: true;
2355
2573
  readonly ui: {
2356
- readonly tab: "editing";
2574
+ readonly tab: "files";
2575
+ readonly group: "LSP";
2357
2576
  readonly label: "LSP";
2358
- readonly description: "Enable the lsp tool for language server protocol";
2577
+ readonly description: "Enable the lsp tool for code intelligence (definitions, references, diagnostics, rename)";
2359
2578
  };
2360
2579
  };
2361
2580
  readonly "lsp.lazy": {
2362
2581
  readonly type: "boolean";
2363
2582
  readonly default: true;
2364
2583
  readonly ui: {
2365
- readonly tab: "editing";
2584
+ readonly tab: "files";
2585
+ readonly group: "LSP";
2366
2586
  readonly label: "Lazy LSP Startup";
2367
2587
  readonly description: "Start language servers on first use (lsp tool or editing a matching file type) instead of at session startup";
2368
2588
  };
@@ -2371,7 +2591,8 @@ export declare const SETTINGS_SCHEMA: {
2371
2591
  readonly type: "boolean";
2372
2592
  readonly default: false;
2373
2593
  readonly ui: {
2374
- readonly tab: "editing";
2594
+ readonly tab: "files";
2595
+ readonly group: "LSP";
2375
2596
  readonly label: "Format on Write";
2376
2597
  readonly description: "Automatically format code files using LSP after writing";
2377
2598
  };
@@ -2380,7 +2601,8 @@ export declare const SETTINGS_SCHEMA: {
2380
2601
  readonly type: "boolean";
2381
2602
  readonly default: true;
2382
2603
  readonly ui: {
2383
- readonly tab: "editing";
2604
+ readonly tab: "files";
2605
+ readonly group: "LSP";
2384
2606
  readonly label: "Diagnostics on Write";
2385
2607
  readonly description: "Return LSP diagnostics after writing code files";
2386
2608
  };
@@ -2389,7 +2611,8 @@ export declare const SETTINGS_SCHEMA: {
2389
2611
  readonly type: "boolean";
2390
2612
  readonly default: false;
2391
2613
  readonly ui: {
2392
- readonly tab: "editing";
2614
+ readonly tab: "files";
2615
+ readonly group: "LSP";
2393
2616
  readonly label: "Diagnostics on Edit";
2394
2617
  readonly description: "Return LSP diagnostics after editing code files";
2395
2618
  };
@@ -2398,16 +2621,38 @@ export declare const SETTINGS_SCHEMA: {
2398
2621
  readonly type: "boolean";
2399
2622
  readonly default: true;
2400
2623
  readonly ui: {
2401
- readonly tab: "editing";
2624
+ readonly tab: "files";
2625
+ readonly group: "LSP";
2402
2626
  readonly label: "Deduplicate Diagnostics";
2403
2627
  readonly description: "Suppress post-edit LSP diagnostics already shown for a file; only surface new or changed ones";
2404
2628
  };
2405
2629
  };
2630
+ readonly "bash.enabled": {
2631
+ readonly type: "boolean";
2632
+ readonly default: true;
2633
+ readonly ui: {
2634
+ readonly tab: "shell";
2635
+ readonly group: "Bash";
2636
+ readonly label: "Bash";
2637
+ readonly description: "Enable the bash tool for shell command execution";
2638
+ };
2639
+ };
2640
+ readonly "bash.autoBackground.enabled": {
2641
+ readonly type: "boolean";
2642
+ readonly default: false;
2643
+ readonly ui: {
2644
+ readonly tab: "shell";
2645
+ readonly group: "Bash";
2646
+ readonly label: "Bash Auto-Background";
2647
+ readonly description: "Automatically background long-running bash commands and deliver the result later";
2648
+ };
2649
+ };
2406
2650
  readonly "bashInterceptor.enabled": {
2407
2651
  readonly type: "boolean";
2408
2652
  readonly default: false;
2409
2653
  readonly ui: {
2410
- readonly tab: "editing";
2654
+ readonly tab: "shell";
2655
+ readonly group: "Bash";
2411
2656
  readonly label: "Bash Interceptor";
2412
2657
  readonly description: "Block shell commands that have dedicated tools";
2413
2658
  };
@@ -2420,8 +2665,9 @@ export declare const SETTINGS_SCHEMA: {
2420
2665
  readonly type: "boolean";
2421
2666
  readonly default: true;
2422
2667
  readonly ui: {
2423
- readonly tab: "editing";
2424
- readonly label: "Strip Trailing head/tail";
2668
+ readonly tab: "shell";
2669
+ readonly group: "Bash";
2670
+ readonly label: "Strip head/tail Pipes";
2425
2671
  readonly description: "Silently drop trailing `| head`/`| tail` pipes from single-line bash commands. Output is already truncated automatically.";
2426
2672
  };
2427
2673
  };
@@ -2429,7 +2675,8 @@ export declare const SETTINGS_SCHEMA: {
2429
2675
  readonly type: "boolean";
2430
2676
  readonly default: true;
2431
2677
  readonly ui: {
2432
- readonly tab: "editing";
2678
+ readonly tab: "shell";
2679
+ readonly group: "Bash";
2433
2680
  readonly label: "Shell Minimizer";
2434
2681
  readonly description: "Compress verbose shell output (git, npm, cargo, etc.) before returning it to the agent";
2435
2682
  };
@@ -2455,7 +2702,8 @@ export declare const SETTINGS_SCHEMA: {
2455
2702
  readonly values: readonly ["default", "aggressive"];
2456
2703
  readonly default: "default";
2457
2704
  readonly ui: {
2458
- readonly tab: "editing";
2705
+ readonly tab: "shell";
2706
+ readonly group: "Bash";
2459
2707
  readonly label: "Shell Minimizer Source Outline";
2460
2708
  readonly description: "Source outline mode for cat/read of source files: default or aggressive";
2461
2709
  };
@@ -2468,18 +2716,20 @@ export declare const SETTINGS_SCHEMA: {
2468
2716
  readonly type: "boolean";
2469
2717
  readonly default: true;
2470
2718
  readonly ui: {
2471
- readonly tab: "editing";
2472
- readonly label: "Eval: Python backend";
2473
- readonly description: "Allow the eval tool to dispatch to the IPython kernel";
2719
+ readonly tab: "shell";
2720
+ readonly group: "Eval & Python";
2721
+ readonly label: "Python Eval Backend";
2722
+ readonly description: "Allow the eval tool to dispatch Python cells to the IPython kernel";
2474
2723
  };
2475
2724
  };
2476
2725
  readonly "eval.js": {
2477
2726
  readonly type: "boolean";
2478
2727
  readonly default: true;
2479
2728
  readonly ui: {
2480
- readonly tab: "editing";
2481
- readonly label: "Eval: JavaScript backend";
2482
- readonly description: "Allow the eval tool to dispatch to the in-process JavaScript runtime";
2729
+ readonly tab: "shell";
2730
+ readonly group: "Eval & Python";
2731
+ readonly label: "JavaScript Eval Backend";
2732
+ readonly description: "Allow the eval tool to dispatch JavaScript cells to the in-process runtime";
2483
2733
  };
2484
2734
  };
2485
2735
  readonly "python.kernelMode": {
@@ -2487,16 +2737,18 @@ export declare const SETTINGS_SCHEMA: {
2487
2737
  readonly values: readonly ["session", "per-call"];
2488
2738
  readonly default: "session";
2489
2739
  readonly ui: {
2490
- readonly tab: "editing";
2740
+ readonly tab: "shell";
2741
+ readonly group: "Eval & Python";
2491
2742
  readonly label: "Python Kernel Mode";
2492
- readonly description: "Whether to keep IPython kernel alive across calls";
2743
+ readonly description: "Keep the IPython kernel alive across eval calls or start fresh each time";
2493
2744
  };
2494
2745
  };
2495
2746
  readonly "python.interpreter": {
2496
2747
  readonly type: "string";
2497
2748
  readonly default: "";
2498
2749
  readonly ui: {
2499
- readonly tab: "editing";
2750
+ readonly tab: "shell";
2751
+ readonly group: "Eval & Python";
2500
2752
  readonly label: "Python Interpreter";
2501
2753
  readonly description: "Optional path to an exact Python executable. When set, automatic Python runtime discovery is skipped.";
2502
2754
  };
@@ -2505,7 +2757,8 @@ export declare const SETTINGS_SCHEMA: {
2505
2757
  readonly type: "record";
2506
2758
  readonly default: {};
2507
2759
  readonly ui: {
2508
- readonly tab: "tools";
2760
+ readonly tab: "interaction";
2761
+ readonly group: "Approvals";
2509
2762
  readonly label: "Tool Approval Policies";
2510
2763
  readonly description: "Per-tool approval policies. Set to 'allow' to auto-approve, 'prompt' to require confirmation, or 'deny' to block. Overrides are honored in every approval mode.";
2511
2764
  };
@@ -2516,8 +2769,9 @@ export declare const SETTINGS_SCHEMA: {
2516
2769
  readonly default: "yolo";
2517
2770
  readonly ui: {
2518
2771
  readonly tab: "interaction";
2772
+ readonly group: "Approvals";
2519
2773
  readonly label: "Tool Approval";
2520
- readonly description: "Default approval behaviour for tool calls. 'Always ask' auto-approves read-only tools only. 'Write' auto-approves read and workspace-write tools. 'Yolo' auto-approves all tiers; user policy may still prompt or block.";
2774
+ readonly description: "Default approval behavior for tool calls. 'Always ask' auto-approves read-only tools only. 'Write' auto-approves read and workspace-write tools. 'Yolo' auto-approves all tiers; user policy may still prompt or block.";
2521
2775
  readonly options: readonly [{
2522
2776
  readonly value: "always-ask";
2523
2777
  readonly label: "Always ask";
@@ -2538,6 +2792,7 @@ export declare const SETTINGS_SCHEMA: {
2538
2792
  readonly default: true;
2539
2793
  readonly ui: {
2540
2794
  readonly tab: "tools";
2795
+ readonly group: "Available Tools";
2541
2796
  readonly label: "Todos";
2542
2797
  readonly description: "Enable the todo tool for task tracking";
2543
2798
  };
@@ -2547,8 +2802,9 @@ export declare const SETTINGS_SCHEMA: {
2547
2802
  readonly default: true;
2548
2803
  readonly ui: {
2549
2804
  readonly tab: "tools";
2805
+ readonly group: "Todos";
2550
2806
  readonly label: "Todo Reminders";
2551
- readonly description: "Remind agent to complete todos before stopping";
2807
+ readonly description: "Remind the agent to complete todos before stopping";
2552
2808
  };
2553
2809
  };
2554
2810
  readonly "todo.reminders.max": {
@@ -2556,8 +2812,9 @@ export declare const SETTINGS_SCHEMA: {
2556
2812
  readonly default: 3;
2557
2813
  readonly ui: {
2558
2814
  readonly tab: "tools";
2815
+ readonly group: "Todos";
2559
2816
  readonly label: "Todo Reminder Limit";
2560
- readonly description: "Maximum reminders to complete todos before giving up";
2817
+ readonly description: "Maximum number of todo reminders before giving up";
2561
2818
  readonly options: readonly [{
2562
2819
  readonly value: "1";
2563
2820
  readonly label: "1 reminder";
@@ -2578,26 +2835,19 @@ export declare const SETTINGS_SCHEMA: {
2578
2835
  readonly default: false;
2579
2836
  readonly ui: {
2580
2837
  readonly tab: "tools";
2838
+ readonly group: "Todos";
2581
2839
  readonly label: "Create Todos Automatically";
2582
2840
  readonly description: "Automatically create a comprehensive todo list after the first message";
2583
2841
  };
2584
2842
  };
2585
- readonly "bash.enabled": {
2586
- readonly type: "boolean";
2587
- readonly default: true;
2588
- readonly ui: {
2589
- readonly tab: "tools";
2590
- readonly label: "Bash";
2591
- readonly description: "Enable the bash tool for shell command execution";
2592
- };
2593
- };
2594
2843
  readonly "find.enabled": {
2595
2844
  readonly type: "boolean";
2596
2845
  readonly default: true;
2597
2846
  readonly ui: {
2598
2847
  readonly tab: "tools";
2848
+ readonly group: "Available Tools";
2599
2849
  readonly label: "Find";
2600
- readonly description: "Enable the find tool for file searching";
2850
+ readonly description: "Enable the find tool for glob-based file lookup";
2601
2851
  };
2602
2852
  };
2603
2853
  readonly "search.enabled": {
@@ -2605,8 +2855,9 @@ export declare const SETTINGS_SCHEMA: {
2605
2855
  readonly default: true;
2606
2856
  readonly ui: {
2607
2857
  readonly tab: "tools";
2858
+ readonly group: "Available Tools";
2608
2859
  readonly label: "Search";
2609
- readonly description: "Enable the search tool for content searching";
2860
+ readonly description: "Enable the search tool for regex content search";
2610
2861
  };
2611
2862
  };
2612
2863
  readonly "search.contextBefore": {
@@ -2614,6 +2865,7 @@ export declare const SETTINGS_SCHEMA: {
2614
2865
  readonly default: 1;
2615
2866
  readonly ui: {
2616
2867
  readonly tab: "tools";
2868
+ readonly group: "Search & Browser";
2617
2869
  readonly label: "Search Context Before";
2618
2870
  readonly description: "Lines of context before each search match";
2619
2871
  readonly options: readonly [{
@@ -2639,6 +2891,7 @@ export declare const SETTINGS_SCHEMA: {
2639
2891
  readonly default: 3;
2640
2892
  readonly ui: {
2641
2893
  readonly tab: "tools";
2894
+ readonly group: "Search & Browser";
2642
2895
  readonly label: "Search Context After";
2643
2896
  readonly description: "Lines of context after each search match";
2644
2897
  readonly options: readonly [{
@@ -2667,6 +2920,7 @@ export declare const SETTINGS_SCHEMA: {
2667
2920
  readonly default: true;
2668
2921
  readonly ui: {
2669
2922
  readonly tab: "tools";
2923
+ readonly group: "Available Tools";
2670
2924
  readonly label: "AST Grep";
2671
2925
  readonly description: "Enable the ast_grep tool for structural AST search";
2672
2926
  };
@@ -2676,40 +2930,17 @@ export declare const SETTINGS_SCHEMA: {
2676
2930
  readonly default: true;
2677
2931
  readonly ui: {
2678
2932
  readonly tab: "tools";
2933
+ readonly group: "Available Tools";
2679
2934
  readonly label: "AST Edit";
2680
2935
  readonly description: "Enable the ast_edit tool for structural AST rewrites";
2681
2936
  };
2682
2937
  };
2683
- readonly "irc.timeoutMs": {
2684
- readonly type: "number";
2685
- readonly default: 120000;
2686
- readonly ui: {
2687
- readonly tab: "tools";
2688
- readonly label: "IRC Timeout";
2689
- readonly description: "Default timeout for irc wait (and send await:true) in milliseconds; 0 disables the timeout";
2690
- readonly options: readonly [{
2691
- readonly value: "0";
2692
- readonly label: "Disabled";
2693
- }, {
2694
- readonly value: "30000";
2695
- readonly label: "30 seconds";
2696
- }, {
2697
- readonly value: "60000";
2698
- readonly label: "1 minute";
2699
- }, {
2700
- readonly value: "120000";
2701
- readonly label: "2 minutes";
2702
- }, {
2703
- readonly value: "300000";
2704
- readonly label: "5 minutes";
2705
- }];
2706
- };
2707
- };
2708
2938
  readonly "renderMermaid.enabled": {
2709
2939
  readonly type: "boolean";
2710
2940
  readonly default: false;
2711
2941
  readonly ui: {
2712
2942
  readonly tab: "tools";
2943
+ readonly group: "Available Tools";
2713
2944
  readonly label: "Render Mermaid";
2714
2945
  readonly description: "Enable the render_mermaid tool for Mermaid-to-ASCII rendering";
2715
2946
  };
@@ -2719,6 +2950,7 @@ export declare const SETTINGS_SCHEMA: {
2719
2950
  readonly default: true;
2720
2951
  readonly ui: {
2721
2952
  readonly tab: "tools";
2953
+ readonly group: "Available Tools";
2722
2954
  readonly label: "Debug";
2723
2955
  readonly description: "Enable the debug tool for DAP-based debugging";
2724
2956
  };
@@ -2728,6 +2960,7 @@ export declare const SETTINGS_SCHEMA: {
2728
2960
  readonly default: false;
2729
2961
  readonly ui: {
2730
2962
  readonly tab: "tools";
2963
+ readonly group: "Available Tools";
2731
2964
  readonly label: "Text-to-Speech";
2732
2965
  readonly description: "Enable the tts tool for xAI Grok Voice speech synthesis";
2733
2966
  };
@@ -2737,6 +2970,7 @@ export declare const SETTINGS_SCHEMA: {
2737
2970
  readonly default: false;
2738
2971
  readonly ui: {
2739
2972
  readonly tab: "tools";
2973
+ readonly group: "Available Tools";
2740
2974
  readonly label: "Inspect Image";
2741
2975
  readonly description: "Enable the inspect_image tool, delegating image understanding to a vision-capable model";
2742
2976
  };
@@ -2746,6 +2980,7 @@ export declare const SETTINGS_SCHEMA: {
2746
2980
  readonly default: false;
2747
2981
  readonly ui: {
2748
2982
  readonly tab: "tools";
2983
+ readonly group: "Available Tools";
2749
2984
  readonly label: "Checkpoint/Rewind";
2750
2985
  readonly description: "Enable the checkpoint and rewind tools for context checkpointing";
2751
2986
  };
@@ -2755,6 +2990,7 @@ export declare const SETTINGS_SCHEMA: {
2755
2990
  readonly default: true;
2756
2991
  readonly ui: {
2757
2992
  readonly tab: "tools";
2993
+ readonly group: "Available Tools";
2758
2994
  readonly label: "Read URLs";
2759
2995
  readonly description: "Allow the read tool to fetch and process URLs";
2760
2996
  };
@@ -2764,6 +3000,7 @@ export declare const SETTINGS_SCHEMA: {
2764
3000
  readonly default: false;
2765
3001
  readonly ui: {
2766
3002
  readonly tab: "tools";
3003
+ readonly group: "Available Tools";
2767
3004
  readonly label: "Obsidian Vault";
2768
3005
  readonly description: "Enable the vault:// internal URL for reading and editing Obsidian vault content via the Obsidian CLI. When disabled, vault:// resolution is refused and the vault:// entry is omitted from the system prompt.";
2769
3006
  };
@@ -2773,6 +3010,7 @@ export declare const SETTINGS_SCHEMA: {
2773
3010
  readonly default: false;
2774
3011
  readonly ui: {
2775
3012
  readonly tab: "tools";
3013
+ readonly group: "Available Tools";
2776
3014
  readonly label: "GitHub CLI";
2777
3015
  readonly description: "Enable the github tool (op-based dispatch for repository, issue, pull request, diff, search, checkout, push, and Actions watch workflows)";
2778
3016
  };
@@ -2782,7 +3020,8 @@ export declare const SETTINGS_SCHEMA: {
2782
3020
  readonly default: true;
2783
3021
  readonly ui: {
2784
3022
  readonly tab: "tools";
2785
- readonly label: "GitHub view cache";
3023
+ readonly group: "GitHub";
3024
+ readonly label: "GitHub View Cache";
2786
3025
  readonly description: "Cache rendered issue/PR view output in ~/.omp/cache/github-cache.db so repeated reads are free";
2787
3026
  };
2788
3027
  };
@@ -2791,8 +3030,9 @@ export declare const SETTINGS_SCHEMA: {
2791
3030
  readonly default: 300;
2792
3031
  readonly ui: {
2793
3032
  readonly tab: "tools";
2794
- readonly label: "GitHub cache soft TTL (seconds)";
2795
- readonly description: "Within this window, cached issue/PR view rows are returned directly. Default 5 minutes.";
3033
+ readonly group: "GitHub";
3034
+ readonly label: "GitHub Cache Soft TTL";
3035
+ readonly description: "Within this window, cached issue/PR view rows are returned directly (seconds; default 5 minutes)";
2796
3036
  };
2797
3037
  };
2798
3038
  readonly "github.cache.hardTtlSec": {
@@ -2800,8 +3040,9 @@ export declare const SETTINGS_SCHEMA: {
2800
3040
  readonly default: 604800;
2801
3041
  readonly ui: {
2802
3042
  readonly tab: "tools";
2803
- readonly label: "GitHub cache hard TTL (seconds)";
2804
- readonly description: "Past soft TTL but within hard TTL, the tool returns the cached row and refreshes it in the background. Past hard TTL, the row is dropped. Default 7 days.";
3043
+ readonly group: "GitHub";
3044
+ readonly label: "GitHub Cache Hard TTL";
3045
+ readonly description: "Past the soft TTL the cached row is returned and refreshed in the background; past the hard TTL it is dropped (seconds; default 7 days)";
2805
3046
  };
2806
3047
  };
2807
3048
  readonly "web_search.enabled": {
@@ -2809,8 +3050,9 @@ export declare const SETTINGS_SCHEMA: {
2809
3050
  readonly default: true;
2810
3051
  readonly ui: {
2811
3052
  readonly tab: "tools";
3053
+ readonly group: "Available Tools";
2812
3054
  readonly label: "Web Search";
2813
- readonly description: "Enable the web_search tool for web searching";
3055
+ readonly description: "Enable the web_search tool for live web results";
2814
3056
  };
2815
3057
  };
2816
3058
  readonly "browser.enabled": {
@@ -2818,8 +3060,9 @@ export declare const SETTINGS_SCHEMA: {
2818
3060
  readonly default: true;
2819
3061
  readonly ui: {
2820
3062
  readonly tab: "tools";
3063
+ readonly group: "Available Tools";
2821
3064
  readonly label: "Browser";
2822
- readonly description: "Enable the browser tool (Ulixee Hero)";
3065
+ readonly description: "Enable the browser tool for scripted Chromium automation (puppeteer)";
2823
3066
  };
2824
3067
  };
2825
3068
  readonly "browser.headless": {
@@ -2827,6 +3070,7 @@ export declare const SETTINGS_SCHEMA: {
2827
3070
  readonly default: true;
2828
3071
  readonly ui: {
2829
3072
  readonly tab: "tools";
3073
+ readonly group: "Search & Browser";
2830
3074
  readonly label: "Headless Browser";
2831
3075
  readonly description: "Launch browser in headless mode (disable to show browser UI)";
2832
3076
  };
@@ -2836,7 +3080,8 @@ export declare const SETTINGS_SCHEMA: {
2836
3080
  readonly default: undefined;
2837
3081
  readonly ui: {
2838
3082
  readonly tab: "tools";
2839
- readonly label: "Screenshot directory";
3083
+ readonly group: "Search & Browser";
3084
+ readonly label: "Screenshot Directory";
2840
3085
  readonly description: "Directory to save screenshots. If unset, screenshots go to a temp file. Supports ~. Examples: ~/Downloads, ~/Desktop, /sdcard/Download (Android)";
2841
3086
  };
2842
3087
  };
@@ -2845,6 +3090,7 @@ export declare const SETTINGS_SCHEMA: {
2845
3090
  readonly default: true;
2846
3091
  readonly ui: {
2847
3092
  readonly tab: "tools";
3093
+ readonly group: "Execution";
2848
3094
  readonly label: "Intent Tracing";
2849
3095
  readonly description: "Ask the agent to describe the intent of each tool call before executing it";
2850
3096
  };
@@ -2854,6 +3100,7 @@ export declare const SETTINGS_SCHEMA: {
2854
3100
  readonly default: 0;
2855
3101
  readonly ui: {
2856
3102
  readonly tab: "tools";
3103
+ readonly group: "Execution";
2857
3104
  readonly label: "Max Tool Timeout";
2858
3105
  readonly description: "Maximum timeout in seconds the agent can set for any tool (0 = no limit)";
2859
3106
  readonly options: readonly [{
@@ -2882,6 +3129,7 @@ export declare const SETTINGS_SCHEMA: {
2882
3129
  readonly default: true;
2883
3130
  readonly ui: {
2884
3131
  readonly tab: "tools";
3132
+ readonly group: "Execution";
2885
3133
  readonly label: "Async Execution";
2886
3134
  readonly description: "Enable async bash commands and background task execution";
2887
3135
  };
@@ -2896,6 +3144,7 @@ export declare const SETTINGS_SCHEMA: {
2896
3144
  readonly default: "30s";
2897
3145
  readonly ui: {
2898
3146
  readonly tab: "tools";
3147
+ readonly group: "Execution";
2899
3148
  readonly label: "Poll Wait Duration";
2900
3149
  readonly description: "How long the poll tool waits for background job updates before returning the current state";
2901
3150
  readonly options: readonly [{
@@ -2917,13 +3166,30 @@ export declare const SETTINGS_SCHEMA: {
2917
3166
  }];
2918
3167
  };
2919
3168
  };
2920
- readonly "bash.autoBackground.enabled": {
2921
- readonly type: "boolean";
2922
- readonly default: false;
3169
+ readonly "irc.timeoutMs": {
3170
+ readonly type: "number";
3171
+ readonly default: 120000;
2923
3172
  readonly ui: {
2924
3173
  readonly tab: "tools";
2925
- readonly label: "Bash Auto-Background";
2926
- readonly description: "Automatically background long-running bash commands and deliver the result later";
3174
+ readonly group: "Execution";
3175
+ readonly label: "IRC Timeout";
3176
+ readonly description: "Default timeout for irc wait (and send await:true) in milliseconds; 0 disables the timeout";
3177
+ readonly options: readonly [{
3178
+ readonly value: "0";
3179
+ readonly label: "Disabled";
3180
+ }, {
3181
+ readonly value: "30000";
3182
+ readonly label: "30 seconds";
3183
+ }, {
3184
+ readonly value: "60000";
3185
+ readonly label: "1 minute";
3186
+ }, {
3187
+ readonly value: "120000";
3188
+ readonly label: "2 minutes";
3189
+ }, {
3190
+ readonly value: "300000";
3191
+ readonly label: "5 minutes";
3192
+ }];
2927
3193
  };
2928
3194
  };
2929
3195
  readonly "bash.autoBackground.thresholdMs": {
@@ -2936,6 +3202,7 @@ export declare const SETTINGS_SCHEMA: {
2936
3202
  readonly default: "auto";
2937
3203
  readonly ui: {
2938
3204
  readonly tab: "tools";
3205
+ readonly group: "Discovery & MCP";
2939
3206
  readonly label: "Tool Discovery";
2940
3207
  readonly description: "Hide tools behind a search tool to save tokens. 'auto' hides MCP tools once the tool set has more than 40 tools; 'mcp-only' always hides MCP tools; 'all' hides all non-essential built-ins too.";
2941
3208
  };
@@ -2945,6 +3212,7 @@ export declare const SETTINGS_SCHEMA: {
2945
3212
  readonly default: string[];
2946
3213
  readonly ui: {
2947
3214
  readonly tab: "tools";
3215
+ readonly group: "Discovery & MCP";
2948
3216
  readonly label: "Essential Tools Override";
2949
3217
  readonly description: "Override the always-loaded built-in tools (default: read, bash, edit). Leave empty to use defaults.";
2950
3218
  };
@@ -2954,6 +3222,7 @@ export declare const SETTINGS_SCHEMA: {
2954
3222
  readonly default: true;
2955
3223
  readonly ui: {
2956
3224
  readonly tab: "tools";
3225
+ readonly group: "Discovery & MCP";
2957
3226
  readonly label: "MCP Project Config";
2958
3227
  readonly description: "Load .mcp.json/mcp.json from project root";
2959
3228
  };
@@ -2963,6 +3232,7 @@ export declare const SETTINGS_SCHEMA: {
2963
3232
  readonly default: false;
2964
3233
  readonly ui: {
2965
3234
  readonly tab: "tools";
3235
+ readonly group: "Discovery & MCP";
2966
3236
  readonly label: "MCP Tool Discovery";
2967
3237
  readonly description: "Hide MCP tools by default and expose them through a tool discovery tool";
2968
3238
  };
@@ -2972,6 +3242,7 @@ export declare const SETTINGS_SCHEMA: {
2972
3242
  readonly default: string[];
2973
3243
  readonly ui: {
2974
3244
  readonly tab: "tools";
3245
+ readonly group: "Discovery & MCP";
2975
3246
  readonly label: "MCP Discovery Default Servers";
2976
3247
  readonly description: "Keep MCP tools from these servers visible while discovery mode hides other MCP tools";
2977
3248
  };
@@ -2981,6 +3252,7 @@ export declare const SETTINGS_SCHEMA: {
2981
3252
  readonly default: false;
2982
3253
  readonly ui: {
2983
3254
  readonly tab: "tools";
3255
+ readonly group: "Discovery & MCP";
2984
3256
  readonly label: "MCP Update Injection";
2985
3257
  readonly description: "Inject MCP resource updates into the agent conversation";
2986
3258
  };
@@ -2990,8 +3262,9 @@ export declare const SETTINGS_SCHEMA: {
2990
3262
  readonly default: 500;
2991
3263
  readonly ui: {
2992
3264
  readonly tab: "tools";
3265
+ readonly group: "Discovery & MCP";
2993
3266
  readonly label: "MCP Notification Debounce";
2994
- readonly description: "Debounce window for MCP resource update notifications before injecting into conversation";
3267
+ readonly description: "Debounce window in milliseconds for MCP resource updates before injecting them into the conversation";
2995
3268
  };
2996
3269
  };
2997
3270
  readonly "plan.enabled": {
@@ -2999,6 +3272,7 @@ export declare const SETTINGS_SCHEMA: {
2999
3272
  readonly default: true;
3000
3273
  readonly ui: {
3001
3274
  readonly tab: "tasks";
3275
+ readonly group: "Modes";
3002
3276
  readonly label: "Plan Mode";
3003
3277
  readonly description: "Enable plan mode for read-only exploration and planning before execution";
3004
3278
  };
@@ -3008,6 +3282,7 @@ export declare const SETTINGS_SCHEMA: {
3008
3282
  readonly default: true;
3009
3283
  readonly ui: {
3010
3284
  readonly tab: "tasks";
3285
+ readonly group: "Modes";
3011
3286
  readonly label: "Goal Mode";
3012
3287
  readonly description: "Enable per-session goal mode and the hidden goal tool";
3013
3288
  };
@@ -3017,7 +3292,8 @@ export declare const SETTINGS_SCHEMA: {
3017
3292
  readonly default: true;
3018
3293
  readonly ui: {
3019
3294
  readonly tab: "tasks";
3020
- readonly label: "Goal Status In Footer";
3295
+ readonly group: "Modes";
3296
+ readonly label: "Goal Status in Footer";
3021
3297
  readonly description: "Show token budget alongside the goal indicator in the status line";
3022
3298
  };
3023
3299
  };
@@ -3026,6 +3302,7 @@ export declare const SETTINGS_SCHEMA: {
3026
3302
  readonly default: readonly ["interactive"];
3027
3303
  readonly ui: {
3028
3304
  readonly tab: "tasks";
3305
+ readonly group: "Modes";
3029
3306
  readonly label: "Goal Continuation Modes";
3030
3307
  readonly description: "Run modes where active goals may auto-continue between turns";
3031
3308
  };
@@ -3036,6 +3313,7 @@ export declare const SETTINGS_SCHEMA: {
3036
3313
  readonly default: "none";
3037
3314
  readonly ui: {
3038
3315
  readonly tab: "tasks";
3316
+ readonly group: "Isolation";
3039
3317
  readonly label: "Isolation Mode";
3040
3318
  readonly description: 'Isolation backend for subagents. "auto" lets the native PAL pick the best available backend (CoW-aware filesystems, then overlayfs/ProjFS, then a git worktree / recursive-copy fallback).';
3041
3319
  readonly options: readonly [{
@@ -3087,6 +3365,7 @@ export declare const SETTINGS_SCHEMA: {
3087
3365
  readonly default: "patch";
3088
3366
  readonly ui: {
3089
3367
  readonly tab: "tasks";
3368
+ readonly group: "Isolation";
3090
3369
  readonly label: "Isolation Merge Strategy";
3091
3370
  readonly description: "How isolated task changes are integrated (patch apply or branch merge)";
3092
3371
  readonly options: readonly [{
@@ -3106,6 +3385,7 @@ export declare const SETTINGS_SCHEMA: {
3106
3385
  readonly default: "generic";
3107
3386
  readonly ui: {
3108
3387
  readonly tab: "tasks";
3388
+ readonly group: "Isolation";
3109
3389
  readonly label: "Isolation Commit Style";
3110
3390
  readonly description: "Commit message style for nested repo changes (generic or AI-generated)";
3111
3391
  readonly options: readonly [{
@@ -3124,6 +3404,7 @@ export declare const SETTINGS_SCHEMA: {
3124
3404
  readonly default: false;
3125
3405
  readonly ui: {
3126
3406
  readonly tab: "tasks";
3407
+ readonly group: "Subagents";
3127
3408
  readonly label: "Prefer Task Delegation";
3128
3409
  readonly description: "Encourage the agent to delegate work to subagents unless changes are trivial";
3129
3410
  };
@@ -3133,6 +3414,7 @@ export declare const SETTINGS_SCHEMA: {
3133
3414
  readonly default: true;
3134
3415
  readonly ui: {
3135
3416
  readonly tab: "tasks";
3417
+ readonly group: "Subagents";
3136
3418
  readonly label: "Batch Task Calls";
3137
3419
  readonly description: "Switch the task tool to its batch shape: one call carries { agent, context, tasks[] } — one subagent per item (with per-item isolation) and a required shared context prepended to every assignment. With async.enabled=true, each spawn runs as an independent background agent with the normal idle/parked lifecycle; otherwise the call blocks for merged results. Disable to restore the flat single-spawn schema.";
3138
3420
  };
@@ -3142,8 +3424,9 @@ export declare const SETTINGS_SCHEMA: {
3142
3424
  readonly default: 32;
3143
3425
  readonly ui: {
3144
3426
  readonly tab: "tasks";
3427
+ readonly group: "Subagents";
3145
3428
  readonly label: "Max Concurrent Tasks";
3146
- readonly description: "Concurrent limit for subagents";
3429
+ readonly description: "Maximum number of subagents running concurrently";
3147
3430
  readonly options: readonly [{
3148
3431
  readonly value: "0";
3149
3432
  readonly label: "Unlimited";
@@ -3176,6 +3459,7 @@ export declare const SETTINGS_SCHEMA: {
3176
3459
  readonly default: false;
3177
3460
  readonly ui: {
3178
3461
  readonly tab: "tasks";
3462
+ readonly group: "Subagents";
3179
3463
  readonly label: "LSP in Subagents";
3180
3464
  readonly description: "Allow subagents spawned via the task tool to use the lsp tool. Off by default to keep subagents cheap; enable when LSP-aware delegation is worth the extra tokens.";
3181
3465
  };
@@ -3185,6 +3469,7 @@ export declare const SETTINGS_SCHEMA: {
3185
3469
  readonly default: 2;
3186
3470
  readonly ui: {
3187
3471
  readonly tab: "tasks";
3472
+ readonly group: "Subagents";
3188
3473
  readonly label: "Max Task Recursion";
3189
3474
  readonly description: "How many levels deep subagents can spawn their own subagents";
3190
3475
  readonly options: readonly [{
@@ -3210,6 +3495,7 @@ export declare const SETTINGS_SCHEMA: {
3210
3495
  readonly default: 0;
3211
3496
  readonly ui: {
3212
3497
  readonly tab: "tasks";
3498
+ readonly group: "Subagents";
3213
3499
  readonly label: "Max Subagent Runtime";
3214
3500
  readonly description: "Hard wall-clock limit per subagent (ms). 0 disables it. Defense-in-depth against provider-side stream hangs that escape the inference-layer watchdog; triggers a normal subagent abort with a 'timed out' reason.";
3215
3501
  readonly options: readonly [{
@@ -3236,6 +3522,7 @@ export declare const SETTINGS_SCHEMA: {
3236
3522
  readonly default: 420000;
3237
3523
  readonly ui: {
3238
3524
  readonly tab: "tasks";
3525
+ readonly group: "Subagents";
3239
3526
  readonly label: "Agent Idle TTL";
3240
3527
  readonly description: "How long an idle subagent stays live in memory before being parked to disk (ms). Parked agents are revived automatically when messaged or resumed. 0 keeps idle agents live until exit.";
3241
3528
  };
@@ -3245,6 +3532,7 @@ export declare const SETTINGS_SCHEMA: {
3245
3532
  readonly default: 90;
3246
3533
  readonly ui: {
3247
3534
  readonly tab: "tasks";
3535
+ readonly group: "Subagents";
3248
3536
  readonly label: "Soft Subagent Request Budget";
3249
3537
  readonly description: "Soft per-subagent request budget (assistant requests per run). Crossing it injects one steering notice asking the subagent to wrap up; at 1.5x the budget the run is aborted gracefully, salvaging partial output. 0 disables the guard. Bundled explore/quick_task agents use a lower built-in budget.";
3250
3538
  readonly options: readonly [{
@@ -3275,9 +3563,10 @@ export declare const SETTINGS_SCHEMA: {
3275
3563
  readonly type: "number";
3276
3564
  readonly default: 60;
3277
3565
  readonly ui: {
3278
- readonly tab: "tasks";
3279
- readonly label: "Todo auto-clear delay";
3280
- readonly description: "How long to wait before removing completed/abandoned tasks from the list";
3566
+ readonly tab: "tools";
3567
+ readonly group: "Todos";
3568
+ readonly label: "Todo Auto-Clear Delay";
3569
+ readonly description: "Delay before completed or abandoned todos are removed from the todo widget";
3281
3570
  readonly options: readonly [{
3282
3571
  readonly value: "0";
3283
3572
  readonly label: "Instant";
@@ -3308,6 +3597,7 @@ export declare const SETTINGS_SCHEMA: {
3308
3597
  readonly default: false;
3309
3598
  readonly ui: {
3310
3599
  readonly tab: "appearance";
3600
+ readonly group: "Display";
3311
3601
  readonly label: "Show Resolved Model Badge";
3312
3602
  readonly description: "Display the actual model ID used by each subagent in the task widget status line";
3313
3603
  };
@@ -3321,6 +3611,7 @@ export declare const SETTINGS_SCHEMA: {
3321
3611
  readonly default: true;
3322
3612
  readonly ui: {
3323
3613
  readonly tab: "tasks";
3614
+ readonly group: "Commands & Skills";
3324
3615
  readonly label: "Skill Commands";
3325
3616
  readonly description: "Register skills as /skill:name commands";
3326
3617
  };
@@ -3362,6 +3653,7 @@ export declare const SETTINGS_SCHEMA: {
3362
3653
  readonly default: true;
3363
3654
  readonly ui: {
3364
3655
  readonly tab: "tasks";
3656
+ readonly group: "Commands & Skills";
3365
3657
  readonly label: "Claude User Commands";
3366
3658
  readonly description: "Load commands from ~/.claude/commands/";
3367
3659
  };
@@ -3371,6 +3663,7 @@ export declare const SETTINGS_SCHEMA: {
3371
3663
  readonly default: true;
3372
3664
  readonly ui: {
3373
3665
  readonly tab: "tasks";
3666
+ readonly group: "Commands & Skills";
3374
3667
  readonly label: "Claude Project Commands";
3375
3668
  readonly description: "Load commands from .claude/commands/";
3376
3669
  };
@@ -3380,6 +3673,7 @@ export declare const SETTINGS_SCHEMA: {
3380
3673
  readonly default: true;
3381
3674
  readonly ui: {
3382
3675
  readonly tab: "tasks";
3676
+ readonly group: "Commands & Skills";
3383
3677
  readonly label: "OpenCode User Commands";
3384
3678
  readonly description: "Load commands from ~/.config/opencode/commands/";
3385
3679
  };
@@ -3389,6 +3683,7 @@ export declare const SETTINGS_SCHEMA: {
3389
3683
  readonly default: true;
3390
3684
  readonly ui: {
3391
3685
  readonly tab: "tasks";
3686
+ readonly group: "Commands & Skills";
3392
3687
  readonly label: "OpenCode Project Commands";
3393
3688
  readonly description: "Load commands from .opencode/commands/";
3394
3689
  };
@@ -3398,6 +3693,7 @@ export declare const SETTINGS_SCHEMA: {
3398
3693
  readonly default: false;
3399
3694
  readonly ui: {
3400
3695
  readonly tab: "providers";
3696
+ readonly group: "Privacy";
3401
3697
  readonly label: "Hide Secrets";
3402
3698
  readonly description: "Obfuscate secrets before sending to AI providers";
3403
3699
  };
@@ -3408,8 +3704,9 @@ export declare const SETTINGS_SCHEMA: {
3408
3704
  readonly default: "auto";
3409
3705
  readonly ui: {
3410
3706
  readonly tab: "providers";
3707
+ readonly group: "Services";
3411
3708
  readonly label: "Web Search Provider";
3412
- readonly description: "Provider for web search tool";
3709
+ readonly description: "Preferred provider for the web_search tool";
3413
3710
  readonly options: readonly [{
3414
3711
  readonly value: "auto";
3415
3712
  readonly label: "Auto";
@@ -3479,8 +3776,9 @@ export declare const SETTINGS_SCHEMA: {
3479
3776
  readonly default: "auto";
3480
3777
  readonly ui: {
3481
3778
  readonly tab: "providers";
3779
+ readonly group: "Services";
3482
3780
  readonly label: "Image Provider";
3483
- readonly description: "Provider for image generation tool";
3781
+ readonly description: "Preferred provider for image generation";
3484
3782
  readonly options: readonly [{
3485
3783
  readonly value: "auto";
3486
3784
  readonly label: "Auto";
@@ -3514,6 +3812,7 @@ export declare const SETTINGS_SCHEMA: {
3514
3812
  readonly default: "online";
3515
3813
  readonly ui: {
3516
3814
  readonly tab: "providers";
3815
+ readonly group: "Tiny Model";
3517
3816
  readonly label: "Tiny Model";
3518
3817
  readonly description: "Session-title model: online pi/smol by default, or a local on-device model";
3519
3818
  readonly options: ({
@@ -3533,6 +3832,7 @@ export declare const SETTINGS_SCHEMA: {
3533
3832
  readonly default: "default";
3534
3833
  readonly ui: {
3535
3834
  readonly tab: "providers";
3835
+ readonly group: "Tiny Model";
3536
3836
  readonly label: "Tiny Model Device";
3537
3837
  readonly description: "ONNX execution provider for local tiny models (titles + memory). Default uses CPU-only inference. The PI_TINY_DEVICE env var overrides this.";
3538
3838
  readonly options: readonly [{
@@ -3600,6 +3900,7 @@ export declare const SETTINGS_SCHEMA: {
3600
3900
  readonly default: "default";
3601
3901
  readonly ui: {
3602
3902
  readonly tab: "providers";
3903
+ readonly group: "Tiny Model";
3603
3904
  readonly label: "Tiny Model Precision";
3604
3905
  readonly description: "ONNX quantization/precision for local tiny models. Default uses each model's shipped dtype (q4); lower precision is faster, higher is more faithful. The PI_TINY_DTYPE env var overrides this.";
3605
3906
  readonly options: readonly [{
@@ -3667,6 +3968,7 @@ export declare const SETTINGS_SCHEMA: {
3667
3968
  readonly default: "online";
3668
3969
  readonly ui: {
3669
3970
  readonly tab: "memory";
3971
+ readonly group: "General";
3670
3972
  readonly label: "Memory Model";
3671
3973
  readonly description: "Mnemopi LLM for fact extraction + consolidation: online (smol/remote) by default, or a local on-device model";
3672
3974
  readonly condition: "mnemopiActive";
@@ -3687,6 +3989,7 @@ export declare const SETTINGS_SCHEMA: {
3687
3989
  readonly default: "online";
3688
3990
  readonly ui: {
3689
3991
  readonly tab: "model";
3992
+ readonly group: "Thinking";
3690
3993
  readonly label: "Auto Thinking Model";
3691
3994
  readonly description: "Difficulty classifier for the `auto` thinking level: online smol by default, or a local on-device model";
3692
3995
  readonly condition: "autoThinkingActive";
@@ -3707,6 +4010,7 @@ export declare const SETTINGS_SCHEMA: {
3707
4010
  readonly default: "anthropic";
3708
4011
  readonly ui: {
3709
4012
  readonly tab: "providers";
4013
+ readonly group: "Protocol";
3710
4014
  readonly label: "Kimi API Format";
3711
4015
  readonly description: "API format for Kimi Code provider";
3712
4016
  readonly options: readonly [{
@@ -3726,6 +4030,7 @@ export declare const SETTINGS_SCHEMA: {
3726
4030
  readonly default: "auto";
3727
4031
  readonly ui: {
3728
4032
  readonly tab: "providers";
4033
+ readonly group: "Protocol";
3729
4034
  readonly label: "OpenAI WebSockets";
3730
4035
  readonly description: "Websocket policy for OpenAI Codex models (auto uses model defaults, on forces, off disables)";
3731
4036
  readonly options: readonly [{
@@ -3749,6 +4054,7 @@ export declare const SETTINGS_SCHEMA: {
3749
4054
  readonly default: "default";
3750
4055
  readonly ui: {
3751
4056
  readonly tab: "providers";
4057
+ readonly group: "Protocol";
3752
4058
  readonly label: "OpenRouter Routing";
3753
4059
  readonly description: "Default routing-variant suffix appended to OpenRouter model IDs (overridden when the selector already names a variant)";
3754
4060
  readonly options: readonly [{
@@ -3780,6 +4086,7 @@ export declare const SETTINGS_SCHEMA: {
3780
4086
  readonly default: "auto";
3781
4087
  readonly ui: {
3782
4088
  readonly tab: "providers";
4089
+ readonly group: "Services";
3783
4090
  readonly label: "Fetch Provider";
3784
4091
  readonly description: "Reader backend priority for the fetch/read URL tool";
3785
4092
  readonly options: readonly [{
@@ -3809,12 +4116,43 @@ export declare const SETTINGS_SCHEMA: {
3809
4116
  }];
3810
4117
  };
3811
4118
  };
4119
+ readonly "codexResets.autoRedeem": {
4120
+ readonly type: "boolean";
4121
+ readonly default: false;
4122
+ readonly ui: {
4123
+ readonly tab: "providers";
4124
+ readonly group: "Services";
4125
+ readonly label: "Codex Auto-Redeem Saved Resets";
4126
+ readonly description: "When a turn is blocked by the Codex weekly limit on the active account and no other account is available, automatically spend one saved rate-limit reset (ChatGPT 'save rate limit resets'). Conservative: never fires for 5-hour-only or Spark limits, near a natural reset, or twice for the same block. Requires retries enabled.";
4127
+ };
4128
+ };
4129
+ readonly "codexResets.minBlockedMinutes": {
4130
+ readonly type: "number";
4131
+ readonly default: 60;
4132
+ readonly ui: {
4133
+ readonly tab: "providers";
4134
+ readonly group: "Services";
4135
+ readonly label: "Codex Auto-Redeem Min Block";
4136
+ readonly description: "Only auto-redeem when the natural weekly reset is at least this many minutes away (don't spend a ~30-day credit to save a short wait).";
4137
+ };
4138
+ };
4139
+ readonly "codexResets.keepCredits": {
4140
+ readonly type: "number";
4141
+ readonly default: 0;
4142
+ readonly ui: {
4143
+ readonly tab: "providers";
4144
+ readonly group: "Services";
4145
+ readonly label: "Codex Auto-Redeem Reserve";
4146
+ readonly description: "Never auto-spend below this many saved resets (0 = the last credit may be spent automatically).";
4147
+ };
4148
+ };
3812
4149
  readonly "provider.appendOnlyContext": {
3813
4150
  readonly type: "enum";
3814
4151
  readonly values: readonly ["auto", "on", "off"];
3815
4152
  readonly default: "auto";
3816
4153
  readonly ui: {
3817
4154
  readonly tab: "providers";
4155
+ readonly group: "Protocol";
3818
4156
  readonly label: "Append-Only Context";
3819
4157
  readonly description: "Cache system prompt + tool specs and keep an append-only message log so provider prefix caches (DeepSeek, Xiaomi/SGLang, Anthropic) hit at maximum rate. Auto enables for known prefix-cache providers.";
3820
4158
  readonly options: readonly [{
@@ -3837,6 +4175,7 @@ export declare const SETTINGS_SCHEMA: {
3837
4175
  readonly default: true;
3838
4176
  readonly ui: {
3839
4177
  readonly tab: "providers";
4178
+ readonly group: "Services";
3840
4179
  readonly label: "Exa";
3841
4180
  readonly description: "Master toggle for all Exa search tools";
3842
4181
  };
@@ -3846,8 +4185,9 @@ export declare const SETTINGS_SCHEMA: {
3846
4185
  readonly default: true;
3847
4186
  readonly ui: {
3848
4187
  readonly tab: "providers";
4188
+ readonly group: "Services";
3849
4189
  readonly label: "Exa Search";
3850
- readonly description: "Basic search, deep search, code search, crawl";
4190
+ readonly description: "Enable Exa basic search, deep search, code search, and crawl tools";
3851
4191
  };
3852
4192
  };
3853
4193
  readonly "exa.enableResearcher": {
@@ -3855,8 +4195,9 @@ export declare const SETTINGS_SCHEMA: {
3855
4195
  readonly default: false;
3856
4196
  readonly ui: {
3857
4197
  readonly tab: "providers";
4198
+ readonly group: "Services";
3858
4199
  readonly label: "Exa Researcher";
3859
- readonly description: "AI-powered deep research tasks";
4200
+ readonly description: "Enable the Exa researcher tool for AI-powered deep research";
3860
4201
  };
3861
4202
  };
3862
4203
  readonly "exa.enableWebsets": {
@@ -3864,8 +4205,9 @@ export declare const SETTINGS_SCHEMA: {
3864
4205
  readonly default: false;
3865
4206
  readonly ui: {
3866
4207
  readonly tab: "providers";
4208
+ readonly group: "Services";
3867
4209
  readonly label: "Exa Websets";
3868
- readonly description: "Webset management and enrichment tools";
4210
+ readonly description: "Enable Exa webset management and enrichment tools";
3869
4211
  };
3870
4212
  };
3871
4213
  readonly "searxng.endpoint": {
@@ -3873,8 +4215,9 @@ export declare const SETTINGS_SCHEMA: {
3873
4215
  readonly default: undefined;
3874
4216
  readonly ui: {
3875
4217
  readonly tab: "providers";
4218
+ readonly group: "Services";
3876
4219
  readonly label: "SearXNG Endpoint";
3877
- readonly description: "Self-hosted search base URL";
4220
+ readonly description: "Base URL of a self-hosted SearXNG instance used for web search";
3878
4221
  };
3879
4222
  };
3880
4223
  readonly "searxng.token": {
@@ -3926,6 +4269,7 @@ export declare const SETTINGS_SCHEMA: {
3926
4269
  readonly default: false;
3927
4270
  readonly ui: {
3928
4271
  readonly tab: "tools";
4272
+ readonly group: "Developer";
3929
4273
  readonly label: "Auto QA";
3930
4274
  readonly description: "Enable automated tool issue reporting (report_tool_issue) for all agents";
3931
4275
  };
@@ -3935,8 +4279,9 @@ export declare const SETTINGS_SCHEMA: {
3935
4279
  readonly default: "https://qa.omp.sh/v1/grievances";
3936
4280
  readonly ui: {
3937
4281
  readonly tab: "tools";
4282
+ readonly group: "Developer";
3938
4283
  readonly label: "Auto QA Push Endpoint";
3939
- readonly description: "Full URL that receives the JSON payload (default ships to https://qa.omp.sh/v1/grievances)";
4284
+ readonly description: "Full URL receiving Auto QA JSON reports (default https://qa.omp.sh/v1/grievances)";
3940
4285
  };
3941
4286
  };
3942
4287
  readonly "dev.autoqaPush.token": {
@@ -4021,6 +4366,8 @@ export type StatusLinePreset = SettingValue<"statusLine.preset">;
4021
4366
  export type StatusLineSeparatorStyle = SettingValue<"statusLine.separator">;
4022
4367
  /** Tree selector filter mode - derived from schema */
4023
4368
  export type TreeFilterMode = SettingValue<"treeFilterMode">;
4369
+ /** Personality preset - derived from schema */
4370
+ export type Personality = SettingValue<"personality">;
4024
4371
  export interface CompactionSettings {
4025
4372
  enabled: boolean;
4026
4373
  strategy: "context-full" | "handoff" | "shake" | "snapcompact" | "off";
@@ -4148,6 +4495,11 @@ export interface ShellMinimizerSettings {
4148
4495
  sourceOutlineLevel: "default" | "aggressive";
4149
4496
  legacyFilters: boolean | undefined;
4150
4497
  }
4498
+ export interface CodexResetsSettings {
4499
+ autoRedeem: boolean;
4500
+ minBlockedMinutes: number;
4501
+ keepCredits: number;
4502
+ }
4151
4503
  /** Map group prefix -> typed settings interface */
4152
4504
  export interface GroupTypeMap {
4153
4505
  compaction: CompactionSettings;
@@ -4166,6 +4518,7 @@ export interface GroupTypeMap {
4166
4518
  modelTags: ModelTagsSettings;
4167
4519
  cycleOrder: string[];
4168
4520
  shellMinimizer: ShellMinimizerSettings;
4521
+ codexResets: CodexResetsSettings;
4169
4522
  }
4170
4523
  export type GroupPrefix = keyof GroupTypeMap;
4171
4524
  export {};