@wrongstack/tui 1.0.29 → 1.0.33

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.
@@ -0,0 +1,331 @@
1
+ import type { StatuslineDensities, StatuslineDensity, StatuslineLine, StatuslineLines, StatuslineOrder } from '@wrongstack/core/statusline';
2
+ import type { FleetChatVerbosity, TokenSavingTier } from '@wrongstack/core/types';
3
+ import type { State } from './app-state.js';
4
+ import type { AuthCatalogRow, AuthConfirmAction, AuthFormFieldId, AuthFormState, AuthLocalPresetRow, AuthPanelView, AuthProviderRow } from './auth-panel-model.js';
5
+ import type { BrainLogEntry, BrainRiskLevel } from './brain-contracts.js';
6
+ import type { BrainPanelSettings } from './brain-panel-model.js';
7
+ import type { StatuslineItem } from './components/statusline-picker.js';
8
+ import type { AuditLevel, CacheTtl, CompactorStrategy, ContextMode, LogLevel, ReasoningEffort, SettingsMode, SettingsPickerPatch, StatuslineMode, ToolResultViewMode } from './settings-contracts.js';
9
+ import type { ChipMeta, SubagentLaneView, SubagentRoleView } from './ui-contracts.js';
10
+ export type AppActionSettings = {
11
+ type: 'brainStatus';
12
+ state: State['brain']['state'];
13
+ source?: string | undefined;
14
+ risk?: State['brain']['risk'] | undefined;
15
+ summary?: string | undefined;
16
+ } | {
17
+ type: 'brainPromptSet';
18
+ prompt: NonNullable<State['brainPrompt']>;
19
+ } | {
20
+ type: 'brainPromptClear';
21
+ } | {
22
+ type: 'subagentModelsOpen';
23
+ lanes: SubagentLaneView[];
24
+ roles: SubagentRoleView[];
25
+ enabled: boolean;
26
+ lock: boolean;
27
+ followSessionModel: boolean;
28
+ sessionTarget: string;
29
+ } | {
30
+ type: 'subagentModelsClose';
31
+ } | {
32
+ type: 'subagentModelsMove';
33
+ delta: number;
34
+ } | {
35
+ type: 'subagentModelsUpdate';
36
+ lanes: SubagentLaneView[];
37
+ roles: SubagentRoleView[];
38
+ enabled: boolean;
39
+ lock: boolean;
40
+ followSessionModel: boolean;
41
+ sessionTarget: string;
42
+ } | {
43
+ type: 'subagentModelsHint';
44
+ text?: string | undefined;
45
+ } | {
46
+ type: 'themePickerOpen';
47
+ selected?: number;
48
+ } | {
49
+ type: 'themePickerClose';
50
+ } | {
51
+ type: 'themePickerMove';
52
+ delta: number;
53
+ } | {
54
+ type: 'themePickerHint';
55
+ text?: string | undefined;
56
+ } | {
57
+ type: 'themePickerFilter';
58
+ text: string;
59
+ } | {
60
+ type: 'themePickerFilterMode';
61
+ on: boolean;
62
+ } | {
63
+ type: 'themePickerPreview';
64
+ on: boolean;
65
+ } | {
66
+ type: 'themePickerUndo';
67
+ } | {
68
+ type: 'themePickerSwapPrevious';
69
+ } | {
70
+ type: 'settingsOpen';
71
+ mode: SettingsMode;
72
+ delayMs: number;
73
+ titleAnimation: boolean;
74
+ yolo: boolean;
75
+ fleetChat: FleetChatVerbosity;
76
+ chime: boolean;
77
+ confirmExit: boolean;
78
+ nextPrediction: boolean;
79
+ featureMcp: boolean;
80
+ featurePlugins: boolean;
81
+ featureMemory: boolean;
82
+ featureSkills: boolean;
83
+ featureModelsRegistry: boolean;
84
+ featureToolCoach: boolean;
85
+ tokenSavingTier: TokenSavingTier;
86
+ allowOutsideProjectRoot: boolean;
87
+ contextAutoCompact: boolean;
88
+ contextStrategy: CompactorStrategy;
89
+ contextMode: ContextMode;
90
+ maxConcurrent: number;
91
+ logLevel: LogLevel;
92
+ auditLevel: AuditLevel;
93
+ indexOnStart: boolean;
94
+ multiDiffSummaryThreshold: number;
95
+ /**
96
+ * Animation style for the working/thinking chip in the status bar.
97
+ * One of the renderable styles plus the meta-mode `'cycle'`. Persisted
98
+ * to disk on every ←/→ change in `/settings`.
99
+ */
100
+ animationStyle: 'rainbow' | 'wave' | 'pulse' | 'dots' | 'breathe' | 'static' | 'cycle';
101
+ /**
102
+ * Persisted row index for where to land when the picker reopens.
103
+ * See `Settings.lastSettingsField`.
104
+ */
105
+ lastSettingsField: number;
106
+ maxIterations: number;
107
+ autoProceedMaxIterations: number;
108
+ enhanceDelayMs: number;
109
+ enhanceEnabled: boolean;
110
+ enhanceLanguage: 'original' | 'english';
111
+ debugStream: boolean;
112
+ statuslineMode: StatuslineMode;
113
+ reasoningMode: 'auto' | 'on' | 'off';
114
+ reasoningEffort: ReasoningEffort;
115
+ /** Documented effort levels of the active model (absent = undocumented). */
116
+ reasoningEffortLevels?: string[] | undefined;
117
+ reasoningPreserve: boolean;
118
+ thinkingWord: string;
119
+ cacheTtl: CacheTtl;
120
+ configScope: 'global' | 'project';
121
+ breakerEnabled: boolean;
122
+ breakerAutoKillResetMs: number;
123
+ showModelReasoning: boolean;
124
+ toolResultViewMode: ToolResultViewMode;
125
+ showAgentSwarmPanel: import('./app-settings-type.js').AgentSwarmPanelMode;
126
+ showSidebar?: boolean | undefined;
127
+ panelPositions: import('./ui-contracts.js').PanelPositionMap;
128
+ readSymbols: boolean;
129
+ showSageMemoryInject: boolean;
130
+ sageMemoryInjectThreshold: number;
131
+ nextStepsTool: boolean;
132
+ /**
133
+ * WrongProxy / WrongTrace: master switch + configurable URL
134
+ * (default http://localhost:3444). Mirrors `Settings.wrongProxy*`
135
+ * and `SettingsPickerPatch.wrongProxy*`. Both fields land in
136
+ * the Integrations section of the picker; the runtime probe
137
+ * reads the values via the TUI settings adapter (see
138
+ * `packages/cli/boot/tui-settings-adapter.ts`).
139
+ */
140
+ wrongProxyEnabled: boolean;
141
+ wrongProxyUrl: string;
142
+ } | {
143
+ type: 'settingsClose';
144
+ } | {
145
+ type: 'settingsFieldMove';
146
+ delta: number;
147
+ } | {
148
+ type: 'settingsFieldSet';
149
+ field: number;
150
+ } | {
151
+ type: 'settingsValueChange';
152
+ delta: number;
153
+ } | {
154
+ type: 'settingsValueSet';
155
+ patch: SettingsPickerPatch;
156
+ } | {
157
+ type: 'settingsFilterSet';
158
+ filter: string;
159
+ } | {
160
+ type: 'settingsHint';
161
+ text?: string | undefined;
162
+ } | {
163
+ type: 'settingsThinkingEditStart';
164
+ } | {
165
+ type: 'settingsThinkingEditChange';
166
+ draft: string;
167
+ } | {
168
+ type: 'settingsThinkingEditCommit';
169
+ } | {
170
+ type: 'settingsThinkingEditCancel';
171
+ } | {
172
+ type: 'settingsWrongProxyUrlEditStart';
173
+ } | {
174
+ type: 'settingsWrongProxyUrlEditChange';
175
+ draft: string;
176
+ } | {
177
+ type: 'settingsWrongProxyUrlEditCommit';
178
+ } | {
179
+ type: 'settingsWrongProxyUrlEditCancel';
180
+ } | {
181
+ type: 'statuslineOpen';
182
+ hiddenItems: StatuslineItem[];
183
+ lines?: StatuslineLines | undefined;
184
+ densities?: StatuslineDensities | undefined;
185
+ order?: StatuslineOrder | undefined;
186
+ } | {
187
+ type: 'statuslineClose';
188
+ } | {
189
+ type: 'statuslineFieldMove';
190
+ delta: number;
191
+ } | {
192
+ type: 'statuslineFieldSet';
193
+ field: number;
194
+ } | {
195
+ type: 'statuslineToggle';
196
+ item: StatuslineItem;
197
+ } | {
198
+ type: 'statuslineSetLine';
199
+ item: StatuslineItem;
200
+ line: StatuslineLine;
201
+ } | {
202
+ type: 'statuslineMoveLine';
203
+ item: StatuslineItem;
204
+ delta: number;
205
+ } | {
206
+ type: 'statuslineMoveOrder';
207
+ item: StatuslineItem;
208
+ delta: number;
209
+ } | {
210
+ type: 'statuslineSetDensity';
211
+ item: StatuslineItem;
212
+ density?: StatuslineDensity | undefined;
213
+ } | {
214
+ type: 'statuslineToggleLine';
215
+ line: StatuslineLine;
216
+ } | {
217
+ type: 'statuslineResetLayout';
218
+ } | {
219
+ type: 'statuslineFilter';
220
+ text?: string | undefined;
221
+ filtering?: boolean | undefined;
222
+ } | {
223
+ type: 'statuslineHint';
224
+ text?: string | undefined;
225
+ } | {
226
+ type: 'statuslineChipShow';
227
+ key: StatuslineItem;
228
+ expiresIn?: number;
229
+ } | {
230
+ type: 'statuslineChipExpire';
231
+ key: StatuslineItem;
232
+ } | {
233
+ type: 'statuslineVisibleChipsSync';
234
+ visibleChips: ChipMeta[];
235
+ } | {
236
+ type: 'brainOpen';
237
+ riskLevel: BrainRiskLevel;
238
+ log: BrainLogEntry[];
239
+ settings?: BrainPanelSettings | undefined;
240
+ } | {
241
+ type: 'brainClose';
242
+ } | {
243
+ type: 'brainMove';
244
+ delta: number;
245
+ } | {
246
+ type: 'brainRiskChange';
247
+ delta: number;
248
+ } | {
249
+ type: 'brainSetLog';
250
+ log: BrainLogEntry[];
251
+ } | {
252
+ type: 'brainHint';
253
+ text?: string | undefined;
254
+ } | {
255
+ type: 'brainSettingsLoaded';
256
+ settings: BrainPanelSettings;
257
+ } | {
258
+ type: 'brainView';
259
+ view: 'settings' | 'log';
260
+ } | {
261
+ type: 'brainRowMove';
262
+ delta: number;
263
+ } | {
264
+ type: 'brainBusy';
265
+ busy: boolean;
266
+ } | {
267
+ type: 'authOpen';
268
+ view?: Extract<AuthPanelView, 'list' | 'oauth'> | undefined;
269
+ providers?: AuthProviderRow[] | undefined;
270
+ presets?: AuthLocalPresetRow[] | undefined;
271
+ oauthStrategies?: import('./auth-panel-model.js').AuthOAuthStrategyRow[] | undefined;
272
+ } | {
273
+ type: 'authClose';
274
+ } | {
275
+ type: 'authProviders';
276
+ providers: AuthProviderRow[];
277
+ } | {
278
+ type: 'authCatalog';
279
+ catalog: AuthCatalogRow[];
280
+ } | {
281
+ type: 'authView';
282
+ view: AuthPanelView;
283
+ providerId?: string | undefined;
284
+ } | {
285
+ type: 'authMove';
286
+ delta: number;
287
+ } | {
288
+ type: 'authBusy';
289
+ busy: boolean;
290
+ } | {
291
+ type: 'authHint';
292
+ text?: string | undefined;
293
+ } | {
294
+ type: 'authFilter';
295
+ filter: string;
296
+ } | {
297
+ type: 'authFlowStart';
298
+ title: string;
299
+ } | {
300
+ type: 'authFlowLog';
301
+ line: string;
302
+ } | {
303
+ type: 'authFlowDone';
304
+ ok: boolean;
305
+ message?: string | undefined;
306
+ } | {
307
+ type: 'authPromptStart';
308
+ label: string;
309
+ masked: boolean;
310
+ } | {
311
+ type: 'authPromptChange';
312
+ draft: string;
313
+ } | {
314
+ type: 'authPromptEnd';
315
+ } | {
316
+ type: 'authConfirmStart';
317
+ question: string;
318
+ action: AuthConfirmAction;
319
+ } | {
320
+ type: 'authConfirmEnd';
321
+ } | {
322
+ type: 'authFormStart';
323
+ form: AuthFormState;
324
+ } | {
325
+ type: 'authFormChange';
326
+ field: AuthFormFieldId;
327
+ value: string;
328
+ } | {
329
+ type: 'authFormCancel';
330
+ };
331
+ //# sourceMappingURL=app-action-settings.d.ts.map