@wrongstack/tui 1.0.19 → 1.0.26
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.
- package/dist/app-action-type.d.ts +85 -1
- package/dist/app-key-handler.d.ts +1 -1
- package/dist/app-panel-state.d.ts +561 -0
- package/dist/app-props.d.ts +21 -1
- package/dist/app-reducer.d.ts +1 -1
- package/dist/app-state-core-types.d.ts +13 -0
- package/dist/app-state.d.ts +8 -534
- package/dist/app-status-region.d.ts +2 -1
- package/dist/app-ui-state.d.ts +2 -0
- package/dist/app-view-contract.d.ts +1 -1
- package/dist/app-view-pickers.d.ts +2 -1
- package/dist/app-view-state.d.ts +2 -0
- package/dist/app.d.ts +2 -2
- package/dist/auth-panel-model.d.ts +1 -0
- package/dist/background-strip-model.d.ts +65 -0
- package/dist/brain-panel-model.d.ts +7 -7
- package/dist/chat-search-slash.d.ts +15 -0
- package/dist/clipboard.d.ts +14 -1
- package/dist/components/agent-monitor-presentation.d.ts +61 -0
- package/dist/components/agents-monitor.d.ts +3 -49
- package/dist/components/audit-panel.d.ts +2 -1
- package/dist/components/auth-panel.d.ts +3 -1
- package/dist/components/background-strip.d.ts +20 -0
- package/dist/components/brain-panel.d.ts +3 -1
- package/dist/components/chat-search-bar.d.ts +19 -0
- package/dist/components/checkpoint-timeline.d.ts +7 -3
- package/dist/components/confirm-prompt.d.ts +6 -7
- package/dist/components/connections-panel.d.ts +2 -1
- package/dist/components/context-panel-sections.d.ts +53 -0
- package/dist/components/context-panel-types.d.ts +66 -0
- package/dist/components/context-panel.d.ts +2 -66
- package/dist/components/exit-confirm-panel.d.ts +2 -0
- package/dist/components/file-picker.d.ts +2 -1
- package/dist/components/help-panel.d.ts +5 -3
- package/dist/components/history/code-block.d.ts +2 -136
- package/dist/components/history/diff-model.d.ts +143 -0
- package/dist/components/history/scroll-controller-types.d.ts +11 -0
- package/dist/components/history/scrollbar-rail.d.ts +14 -2
- package/dist/components/history/use-history-controller.d.ts +5 -0
- package/dist/components/history/utils.d.ts +3 -9
- package/dist/components/history/visual-tool-output.d.ts +8 -0
- package/dist/components/input.d.ts +1 -1
- package/dist/components/kanban-panel-presentation.d.ts +114 -0
- package/dist/components/kanban-panel.d.ts +2 -47
- package/dist/components/mailbox-panel.d.ts +2 -1
- package/dist/components/mcp-picker.d.ts +3 -1
- package/dist/components/mode-picker.d.ts +3 -1
- package/dist/components/model-picker.d.ts +1 -1
- package/dist/components/monitor-shell.d.ts +19 -4
- package/dist/components/phase-monitor.d.ts +3 -1
- package/dist/components/plugin-picker.d.ts +3 -1
- package/dist/components/powerline-rail.d.ts +6 -3
- package/dist/components/prompt-picker-model.d.ts +16 -0
- package/dist/components/prompt-picker.d.ts +2 -16
- package/dist/components/provider-colors.d.ts +2 -12
- package/dist/components/refine-countdown-panel.d.ts +4 -3
- package/dist/components/resource-menu-model.d.ts +3 -0
- package/dist/components/resource-menu.d.ts +3 -3
- package/dist/components/scrollable-history.d.ts +1 -1
- package/dist/components/send-mode-model.d.ts +44 -0
- package/dist/components/send-mode-picker.d.ts +2 -43
- package/dist/components/settings-picker-row-list.d.ts +2 -1
- package/dist/components/settings-picker.d.ts +3 -1
- package/dist/components/shadow-panel.d.ts +2 -1
- package/dist/components/sidebar-content.d.ts +1 -47
- package/dist/components/sidebar-ipc-icons.d.ts +9 -0
- package/dist/components/sidebar-panel-agents.d.ts +10 -0
- package/dist/components/sidebar-panel-connections.d.ts +11 -0
- package/dist/components/sidebar-panel-coordinator.d.ts +11 -0
- package/dist/components/sidebar-panel-fleet.d.ts +16 -0
- package/dist/components/sidebar-panel-project.d.ts +12 -0
- package/dist/components/sidebar-panel-worktree.d.ts +10 -0
- package/dist/components/sidebar-panel-wrong-proxy.d.ts +25 -0
- package/dist/components/sidebar-panels-workspace.d.ts +10 -79
- package/dist/components/sidebar-presentation.d.ts +98 -0
- package/dist/components/sidebar.d.ts +3 -1
- package/dist/components/skill-picker.d.ts +2 -1
- package/dist/components/slash-confirm-panel.d.ts +2 -0
- package/dist/components/slash-menu.d.ts +2 -1
- package/dist/components/slash-modal-frame.d.ts +9 -0
- package/dist/components/status-bar-rails-async.d.ts +2 -2
- package/dist/components/status-bar-types.d.ts +6 -0
- package/dist/components/status-bar.d.ts +1 -1
- package/dist/components/statusline-picker-model.d.ts +45 -0
- package/dist/components/statusline-picker.d.ts +2 -41
- package/dist/components/tools-picker.d.ts +3 -1
- package/dist/components/user-input-prompt.d.ts +4 -2
- package/dist/connection-actions.d.ts +20 -0
- package/dist/connections-health.d.ts +8 -1
- package/dist/esc-close-panels.d.ts +0 -1
- package/dist/f-key-panels.d.ts +4 -0
- package/dist/hooks/fork-at-checkpoint.d.ts +25 -0
- package/dist/hooks/use-active-theme.d.ts +2 -1
- package/dist/hooks/use-app-execution-pipeline.d.ts +1 -1
- package/dist/hooks/use-app-panels-state.d.ts +1 -1
- package/dist/hooks/use-app-picker-keys.d.ts +5 -2
- package/dist/hooks/use-chip-staleness-guard.d.ts +6 -0
- package/dist/hooks/use-core-tui-commands.d.ts +7 -2
- package/dist/hooks/use-file-search.d.ts +10 -0
- package/dist/hooks/use-fleet-generation-gate.d.ts +4 -3
- package/dist/hooks/use-panel-controllers.d.ts +1 -1
- package/dist/hooks/use-picker-keys-brain-statusline.d.ts +4 -0
- package/dist/hooks/use-picker-keys-types.d.ts +1 -0
- package/dist/hooks/use-provider-warmup.d.ts +9 -0
- package/dist/hooks/use-queue-manager.d.ts +11 -1
- package/dist/hooks/use-session-rewind.d.ts +8 -1
- package/dist/hooks/use-shadow-panel.d.ts +1 -1
- package/dist/hooks/use-sidebar-panel-data.d.ts +7 -5
- package/dist/hooks/use-skill-mention-picker.d.ts +6 -0
- package/dist/hooks/use-slash-picker.d.ts +1 -1
- package/dist/hooks/use-stable-key-handler.d.ts +8 -1
- package/dist/hooks/use-status-sync-interval.d.ts +3 -2
- package/dist/hooks/use-statusbar-view-model.d.ts +2 -2
- package/dist/hooks/use-tui-environment-state.d.ts +3 -0
- package/dist/hooks/use-tui-event-bridge.d.ts +12 -0
- package/dist/hooks/use-windowed-picker.d.ts +3 -4
- package/dist/index.js +29522 -25452
- package/dist/ink.d.ts +5 -5
- package/dist/input-graphemes.d.ts +4 -0
- package/dist/input-key-router.d.ts +2 -0
- package/dist/input-tokens.d.ts +10 -0
- package/dist/input-validation/action-types.d.ts +1 -1
- package/dist/input-validation/limits.d.ts +2 -0
- package/dist/input-validation-coordination.d.ts +9 -0
- package/dist/input-validation-display.d.ts +9 -0
- package/dist/input-validation.d.ts +0 -52
- package/dist/kanban-arguments.d.ts +48 -0
- package/dist/kanban-command-types.d.ts +53 -0
- package/dist/kanban-reports.d.ts +42 -0
- package/dist/kanban-slash.d.ts +4 -125
- package/dist/key-routes/key-route-background-strip.d.ts +14 -0
- package/dist/key-routes/key-route-chat-search.d.ts +24 -0
- package/dist/key-routes/key-route-overlay.d.ts +2 -2
- package/dist/layout-store.d.ts +2 -2
- package/dist/memory-slash-render.d.ts +1 -1
- package/dist/message-checkpoint.d.ts +19 -0
- package/dist/motion.d.ts +16 -0
- package/dist/on-panel-open.d.ts +1 -1
- package/dist/picker-text-input.d.ts +4 -0
- package/dist/reducers/chat-search.d.ts +11 -0
- package/dist/reducers/composer-action-types.d.ts +6 -0
- package/dist/reducers/composer-pickers.d.ts +4 -0
- package/dist/reducers/composer.d.ts +1 -5
- package/dist/reducers/message-jump.d.ts +16 -0
- package/dist/reducers/panel-pickers.d.ts +1 -1
- package/dist/reducers/workspace-panels.d.ts +1 -1
- package/dist/resume-session-tree.d.ts +8 -0
- package/dist/rewind-prompt.d.ts +24 -0
- package/dist/run-tui-options.d.ts +24 -5
- package/dist/scroll-anchor.d.ts +6 -0
- package/dist/statusline-palette.d.ts +4 -0
- package/dist/submit-controller.d.ts +1 -1
- package/dist/submit-slash-command.d.ts +67 -0
- package/dist/theme-utils.d.ts +1 -1
- package/dist/transcript-search.d.ts +38 -0
- package/dist/ui-contracts.d.ts +2 -1
- package/dist/use-app-controller.d.ts +157 -0
- package/dist/use-controller-key-pipeline.d.ts +217 -0
- package/package.json +7 -7
package/dist/app-state.d.ts
CHANGED
|
@@ -1,20 +1,17 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { AutonomyStage, ContentBlock, DesignKitEntry, FleetChatVerbosity, SkillEntry, TokenSavingTier } from '@wrongstack/core/types';
|
|
1
|
+
import type { AutonomyStage, FleetChatVerbosity } from '@wrongstack/core/types';
|
|
3
2
|
import type { SddBoardSnapshot } from '@wrongstack/sdd';
|
|
4
|
-
import type {
|
|
3
|
+
import type { PanelState } from './app-panel-state.js';
|
|
4
|
+
import type { GoalSummary, QueueItem } from './app-state-core-types.js';
|
|
5
5
|
import type { FleetEntry } from './app-state-fleet.js';
|
|
6
|
-
import type { AuthPanelState } from './auth-panel-model.js';
|
|
7
|
-
import type { BrainLogEntry, BrainRiskLevel } from './brain-contracts.js';
|
|
8
|
-
import type { BrainPanelSettings } from './brain-panel-model.js';
|
|
9
6
|
import type { HistoryEntry } from './history-entry.js';
|
|
10
7
|
import type { TuiHistoryBudget } from './history-retention.js';
|
|
11
8
|
import type { ResumeLoadState } from './resume-load.js';
|
|
12
|
-
import type {
|
|
13
|
-
import type {
|
|
9
|
+
import type { ToolResultViewMode } from './settings-contracts.js';
|
|
10
|
+
import type { RefineFailureDecision, RefineFailureModel, ResourceMenuAction, ResourceMenuSnapshot, SubagentLaneView, SubagentRoleView, WorktreeRow } from './ui-contracts.js';
|
|
14
11
|
export type { Settings } from './app-settings-type.js';
|
|
15
12
|
export type { DraftEntry, GoalSummary, QueueItem, ResumeSessionEntry, SlashCommandMatch, } from './app-state-core-types.js';
|
|
16
13
|
export type { FleetEntry } from './app-state-fleet.js';
|
|
17
|
-
export type State = {
|
|
14
|
+
export type State = PanelState & {
|
|
18
15
|
entries: HistoryEntry[];
|
|
19
16
|
/**
|
|
20
17
|
* True while the history archive is loading older entries from disk.
|
|
@@ -94,38 +91,11 @@ export type State = {
|
|
|
94
91
|
* lands. Distinct from `interrupts` (which is the Ctrl+C exit ladder).
|
|
95
92
|
*/
|
|
96
93
|
steeringPending: boolean;
|
|
97
|
-
/**
|
|
98
|
-
* Context snapshot captured at Esc time, replayed into the STEERING
|
|
99
|
-
* preamble so the model sees exactly what it was mid-doing when the
|
|
100
|
-
* user pulled the cord. Cleared together with `steeringPending`.
|
|
101
|
-
* Without this the model has to guess from chat scrollback which
|
|
102
|
-
* tools were live — and it can't see subagent state at all.
|
|
103
|
-
*/
|
|
104
|
-
steerSnapshot: {
|
|
105
|
-
runningTools: string[];
|
|
106
|
-
subagents: Array<{
|
|
107
|
-
label: string;
|
|
108
|
-
status: string;
|
|
109
|
-
tool?: string | undefined;
|
|
110
|
-
}>;
|
|
111
|
-
subagentsTerminated: number;
|
|
112
|
-
partialAssistantText: string;
|
|
113
|
-
} | null;
|
|
114
94
|
hint: string;
|
|
115
95
|
/** Transient clipboard confirmation; separate from competing hint producers. */
|
|
116
96
|
copiedNotice: string;
|
|
117
97
|
/** Card whose copy icon should flash; null means no highlighted card. */
|
|
118
98
|
copiedEntryId: number | null;
|
|
119
|
-
/**
|
|
120
|
-
* Tool-result inspect overlay. Holds the clicked card's ids; the view
|
|
121
|
-
* resolves the full (untruncated) payload from live history / stream.
|
|
122
|
-
* Null when closed.
|
|
123
|
-
*/
|
|
124
|
-
inspectOverlay: {
|
|
125
|
-
entryId: number;
|
|
126
|
-
entryIds?: readonly number[] | undefined;
|
|
127
|
-
scroll: number;
|
|
128
|
-
} | null;
|
|
129
99
|
/**
|
|
130
100
|
* Per-card tool-result density overrides, keyed by immutable history id.
|
|
131
101
|
* These are presentation-only: the retained/canonical payload is untouched,
|
|
@@ -156,19 +126,6 @@ export type State = {
|
|
|
156
126
|
}> | undefined;
|
|
157
127
|
} | null;
|
|
158
128
|
nextId: number;
|
|
159
|
-
picker: {
|
|
160
|
-
open: boolean;
|
|
161
|
-
query: string;
|
|
162
|
-
matches: string[];
|
|
163
|
-
selected: number;
|
|
164
|
-
};
|
|
165
|
-
/** Slash command picker — open while typing a / command. */
|
|
166
|
-
slashPicker: {
|
|
167
|
-
open: boolean;
|
|
168
|
-
query: string;
|
|
169
|
-
matches: SlashCommandMatch[];
|
|
170
|
-
selected: number;
|
|
171
|
-
};
|
|
172
129
|
/** Tool calls currently in-flight, by tool_use id. Surface in the status bar. */
|
|
173
130
|
runningTools: Map<string, {
|
|
174
131
|
name: string;
|
|
@@ -189,63 +146,6 @@ export type State = {
|
|
|
189
146
|
* app-reducer.ts.
|
|
190
147
|
*/
|
|
191
148
|
historyDraft: string;
|
|
192
|
-
/** Two-step model picker (provider → model) — opened by `/model`. */
|
|
193
|
-
modelPicker: {
|
|
194
|
-
open: boolean;
|
|
195
|
-
step: 'provider' | 'model';
|
|
196
|
-
providerOptions: ProviderOption[];
|
|
197
|
-
modelOptions: string[];
|
|
198
|
-
/** Filtered list shown in step 2 (same as modelOptions when searchQuery is empty). */
|
|
199
|
-
filteredOptions: string[];
|
|
200
|
-
selected: number;
|
|
201
|
-
pickedProviderId?: string | undefined;
|
|
202
|
-
hint?: string | undefined;
|
|
203
|
-
/** Live search filter in step 2. */
|
|
204
|
-
searchQuery: string;
|
|
205
|
-
/**
|
|
206
|
-
* Reasoning effort chosen for the FOCUSED model with ←/→. `'default'`
|
|
207
|
-
* (the sentinel every navigation resets to) means "leave the persisted
|
|
208
|
-
* effort alone", which is what Enter did before the strip existed.
|
|
209
|
-
*/
|
|
210
|
-
effort: string;
|
|
211
|
-
/**
|
|
212
|
-
* 'switch' — Enter switches the SESSION model (the /model command).
|
|
213
|
-
* 'pick' — generic reusable selection: Enter just RETURNS the choice
|
|
214
|
-
* to whoever called requestModelPick (Brain pool/voters/judge,
|
|
215
|
-
* future callers); other panels stay open underneath.
|
|
216
|
-
*/
|
|
217
|
-
purpose: 'switch' | 'pick';
|
|
218
|
-
/** Overlay title override for 'pick' invocations. */
|
|
219
|
-
title?: string | undefined;
|
|
220
|
-
};
|
|
221
|
-
/** Single-step autonomy mode picker — opened by `/autonomy`. */
|
|
222
|
-
autonomyPicker: {
|
|
223
|
-
open: boolean;
|
|
224
|
-
options: AutonomyOption[];
|
|
225
|
-
selected: number;
|
|
226
|
-
hint?: string | undefined;
|
|
227
|
-
};
|
|
228
|
-
/** Single-step theme picker — opened by `/theme`. Lists every preset and
|
|
229
|
-
* applies the chosen one instantly (in-place palette mutation + persist). */
|
|
230
|
-
themePicker: {
|
|
231
|
-
open: boolean;
|
|
232
|
-
selected: number;
|
|
233
|
-
hint?: string | undefined;
|
|
234
|
-
};
|
|
235
|
-
/** Agent mode picker — opened by `/mode`. Selects teach/brief/code-reviewer/etc. */
|
|
236
|
-
modePicker: {
|
|
237
|
-
open: boolean;
|
|
238
|
-
modes: ModeOption[];
|
|
239
|
-
selected: number;
|
|
240
|
-
hint?: string | undefined;
|
|
241
|
-
};
|
|
242
|
-
/** Skill picker — lists discoverable skills and details the focused row. */
|
|
243
|
-
skillPicker: {
|
|
244
|
-
open: boolean;
|
|
245
|
-
entries: SkillEntry[];
|
|
246
|
-
selected: number;
|
|
247
|
-
hint?: string | undefined;
|
|
248
|
-
};
|
|
249
149
|
/** Shared two-pane browser for operational resources such as profiles and memory. */
|
|
250
150
|
resourceMenu: {
|
|
251
151
|
open: boolean;
|
|
@@ -256,262 +156,6 @@ export type State = {
|
|
|
256
156
|
hint?: string | undefined;
|
|
257
157
|
pendingAction?: ResourceMenuAction | undefined;
|
|
258
158
|
};
|
|
259
|
-
/** Design Studio kit picker — opened by `/design`. */
|
|
260
|
-
designPicker: {
|
|
261
|
-
open: boolean;
|
|
262
|
-
kits: DesignKitEntry[];
|
|
263
|
-
selected: number;
|
|
264
|
-
/** Target stack applied on selection. */
|
|
265
|
-
stack: string;
|
|
266
|
-
};
|
|
267
|
-
/** Prompt library picker — opened by a bare `/prompt`. Browse + category filter + insert. */
|
|
268
|
-
promptPicker: {
|
|
269
|
-
open: boolean;
|
|
270
|
-
all: PromptPickEntry[];
|
|
271
|
-
/** ['all', '🕘 recent'?, '★ favorites'?, ...distinct categories]. */
|
|
272
|
-
categories: string[];
|
|
273
|
-
/** Recently-used slugs (most-recent first) backing the "🕘 recent" view. */
|
|
274
|
-
recentSlugs: string[];
|
|
275
|
-
catIndex: number;
|
|
276
|
-
selected: number;
|
|
277
|
-
};
|
|
278
|
-
/** Session resume picker — opened by `/resume`. Lists recent sessions with metadata. */
|
|
279
|
-
resumePicker: {
|
|
280
|
-
open: boolean;
|
|
281
|
-
sessions: ResumeSessionEntry[];
|
|
282
|
-
selected: number;
|
|
283
|
-
/** True while the resume operation is in flight (fetching + replaying). */
|
|
284
|
-
busy: boolean;
|
|
285
|
-
hint?: string | undefined;
|
|
286
|
-
/** Error message if the resume operation failed. */
|
|
287
|
-
error?: string | undefined;
|
|
288
|
-
};
|
|
289
|
-
/** Settings editor — opened by `/settings` or Ctrl+S. */
|
|
290
|
-
settingsPicker: {
|
|
291
|
-
open: boolean;
|
|
292
|
-
/** Focused row index. */
|
|
293
|
-
field: number;
|
|
294
|
-
/**
|
|
295
|
-
* Mirror of the persisted `Settings.lastSettingsField` — kept in the
|
|
296
|
-
* runtime slice so the reducer can read it during `settingsOpen`
|
|
297
|
-
* without re-loading the full Settings shape, and so the auto-save
|
|
298
|
-
* effect (see app.tsx) can write it back when the user navigates.
|
|
299
|
-
*/
|
|
300
|
-
lastSettingsField: number;
|
|
301
|
-
mode: SettingsMode;
|
|
302
|
-
delayMs: number;
|
|
303
|
-
titleAnimation: boolean;
|
|
304
|
-
yolo: boolean;
|
|
305
|
-
fleetChat: FleetChatVerbosity;
|
|
306
|
-
chime: boolean;
|
|
307
|
-
confirmExit: boolean;
|
|
308
|
-
nextPrediction: boolean;
|
|
309
|
-
featureMcp: boolean;
|
|
310
|
-
featurePlugins: boolean;
|
|
311
|
-
featureMemory: boolean;
|
|
312
|
-
featureSkills: boolean;
|
|
313
|
-
featureModelsRegistry: boolean;
|
|
314
|
-
tokenSavingTier: TokenSavingTier;
|
|
315
|
-
allowOutsideProjectRoot: boolean;
|
|
316
|
-
contextAutoCompact: boolean;
|
|
317
|
-
contextStrategy: CompactorStrategy;
|
|
318
|
-
contextMode: ContextMode;
|
|
319
|
-
maxConcurrent: number;
|
|
320
|
-
logLevel: LogLevel;
|
|
321
|
-
auditLevel: AuditLevel;
|
|
322
|
-
indexOnStart: boolean;
|
|
323
|
-
/** Multi-file diff summary footer cutoff. 0 = off; positive = min file count. */
|
|
324
|
-
multiDiffSummaryThreshold: number;
|
|
325
|
-
maxIterations: number;
|
|
326
|
-
/** Maximum auto-proceed iterations (0 = unlimited). */
|
|
327
|
-
autoProceedMaxIterations: number;
|
|
328
|
-
/** Prompt refinement preview countdown (ms). */
|
|
329
|
-
enhanceDelayMs: number;
|
|
330
|
-
/** Pre-refine grace period (seconds). 0 = skip countdown entirely. */
|
|
331
|
-
preRefineSeconds: number;
|
|
332
|
-
/** Master toggle for the prompt refiner (mirrors Settings.enhanceEnabled). */
|
|
333
|
-
enhanceEnabled: boolean;
|
|
334
|
-
/** Refined-prompt language preference (mirrors Settings.enhanceLanguage). */
|
|
335
|
-
enhanceLanguage: 'original' | 'english';
|
|
336
|
-
/** Raw SSE stream debugging toggle. */
|
|
337
|
-
debugStream: boolean;
|
|
338
|
-
/** Statusline density mode. */
|
|
339
|
-
statuslineMode: StatuslineMode;
|
|
340
|
-
/** Reasoning mode: auto | on | off. */
|
|
341
|
-
reasoningMode: 'auto' | 'on' | 'off';
|
|
342
|
-
/** Reasoning effort level. */
|
|
343
|
-
reasoningEffort: ReasoningEffort;
|
|
344
|
-
/**
|
|
345
|
-
* Effort levels the ACTIVE model documents (models.dev reasoningConfig),
|
|
346
|
-
* injected by the host at /settings-open time. Absent = vocabulary
|
|
347
|
-
* undocumented; the effort cycle then covers the full canonical set.
|
|
348
|
-
*/
|
|
349
|
-
reasoningEffortLevels?: string[] | undefined;
|
|
350
|
-
/** Preserve thinking across turns. */
|
|
351
|
-
reasoningPreserve: boolean;
|
|
352
|
-
/** Single word shown in the TUI rainbow working-state chip. */
|
|
353
|
-
thinkingWord: string;
|
|
354
|
-
/** True while free-text editing the thinking word (Enter on its row). */
|
|
355
|
-
thinkingWordEditing: boolean;
|
|
356
|
-
/** In-progress text buffer while `thinkingWordEditing`. */
|
|
357
|
-
thinkingWordDraft: string;
|
|
358
|
-
/**
|
|
359
|
-
* Show the "Model Reasoning" collapsible blocks in chat history.
|
|
360
|
-
* Separate from thinkingWord (status-bar chip) and reasoningMode
|
|
361
|
-
* (API-level provisioning). Default: true.
|
|
362
|
-
*/
|
|
363
|
-
showModelReasoning: boolean;
|
|
364
|
-
/** Global default for all committed tool-result cards. */
|
|
365
|
-
toolResultViewMode: ToolResultViewMode;
|
|
366
|
-
/** Agent swarm panel placement: 'bottom' (lower region), 'sidebar' (right sidebar), or 'off'. Default: 'bottom'. */
|
|
367
|
-
showAgentSwarmPanel: import('./app-settings-type.js').AgentSwarmPanelMode;
|
|
368
|
-
/** Right sidebar visibility (mirrors Settings.showSidebar). Default: true. */
|
|
369
|
-
showSidebar: boolean;
|
|
370
|
-
/**
|
|
371
|
-
* Per-panel position map mirrored from the persisted Settings shape.
|
|
372
|
-
* Each F-key panel can be set to 'bottom' (F-key behavior, the default)
|
|
373
|
-
* or 'sidebar' (rendered in the right sidebar). When a panel is set to
|
|
374
|
-
* 'sidebar' AND its F-key toggle is on, the bottom view hides and the
|
|
375
|
-
* sidebar shows the panel twin instead. When the F-key is off, neither
|
|
376
|
-
* surface shows the panel.
|
|
377
|
-
*/
|
|
378
|
-
panelPositions: PanelPositionMap;
|
|
379
|
-
/** Show SAGE Memory Inject blocks in tool results. Default: false (hidden). */
|
|
380
|
-
showSageMemoryInject: boolean;
|
|
381
|
-
/** Minimum relation strength for SAGE memory injection. Default: 0.85. */
|
|
382
|
-
sageMemoryInjectThreshold: number;
|
|
383
|
-
/** Register the leader's agent-callable `nextsteps` tool. Default: false. */
|
|
384
|
-
nextStepsTool: boolean;
|
|
385
|
-
/** When true, read tool includes codebase-index symbols alongside file content. */
|
|
386
|
-
readSymbols: boolean;
|
|
387
|
-
/** Prompt cache TTL. */
|
|
388
|
-
cacheTtl: CacheTtl;
|
|
389
|
-
/** Where to persist settings: 'global' or 'project'. */
|
|
390
|
-
configScope: 'global' | 'project';
|
|
391
|
-
/**
|
|
392
|
-
* Animation style for the working/thinking chip in the status bar. One
|
|
393
|
-
* of the styles exported by `components/animation-style.tsx`, plus the
|
|
394
|
-
* meta-mode `'cycle'` that rotates through the variant styles every
|
|
395
|
-
* `CYCLE_INTERVAL_SECONDS`. Persisted on every ←/→ change in `/settings`.
|
|
396
|
-
*/
|
|
397
|
-
animationStyle: 'rainbow' | 'wave' | 'pulse' | 'dots' | 'breathe' | 'static' | 'cycle';
|
|
398
|
-
/**
|
|
399
|
-
* WrongProxy / WrongTrace: master switch. When true AND the daemon at
|
|
400
|
-
* `wrongProxyUrl` is reachable, every provider's base URL is rewritten
|
|
401
|
-
* through `${wrongProxyUrl}/proxy/<host><path>`. openai-codex is
|
|
402
|
-
* excluded by spec. Mirrors `Settings.wrongProxyEnabled` and the
|
|
403
|
-
* `tools.wrongProxy.enabled` config key. Picker field 59.
|
|
404
|
-
*/
|
|
405
|
-
wrongProxyEnabled: boolean;
|
|
406
|
-
/**
|
|
407
|
-
* WrongProxy / WrongTrace URL. Default `http://localhost:3444`. The
|
|
408
|
-
* CLI's periodic probe targets `<wrongProxyUrl>/api/health`; a 2xx
|
|
409
|
-
* response flips the runtime's `active` flag. Picker field 60.
|
|
410
|
-
*/
|
|
411
|
-
wrongProxyUrl: string;
|
|
412
|
-
/** True while free-text editing the WrongProxy URL (Enter on its row). */
|
|
413
|
-
wrongProxyUrlEditing: boolean;
|
|
414
|
-
/** In-progress text buffer while `wrongProxyUrlEditing`. */
|
|
415
|
-
wrongProxyUrlDraft: string;
|
|
416
|
-
/** Whether the process circuit breaker gates bash/exec. */
|
|
417
|
-
breakerEnabled: boolean;
|
|
418
|
-
/** Auto kill/reset delay (ms) when the breaker trips. 0 = manual recovery. */
|
|
419
|
-
breakerAutoKillResetMs: number;
|
|
420
|
-
/**
|
|
421
|
-
* Live filter for the row-search modal (entered via `/`). Empty
|
|
422
|
-
* string means filter is inactive. Non-empty means the user is
|
|
423
|
-
* typing a search query and only matching rows are visible.
|
|
424
|
-
* Cleared on picker close and on Esc-out-of-filter.
|
|
425
|
-
*/
|
|
426
|
-
filter: string;
|
|
427
|
-
hint?: string | undefined;
|
|
428
|
-
};
|
|
429
|
-
/** Statusline editor — opened by `/statusline`. */
|
|
430
|
-
statuslinePicker: {
|
|
431
|
-
open: boolean;
|
|
432
|
-
/** Focused field index. */
|
|
433
|
-
field: number;
|
|
434
|
-
/** Current hidden-items list (user-toggled off chips). */
|
|
435
|
-
hiddenItems: StatuslineItem[];
|
|
436
|
-
/**
|
|
437
|
-
* Chips that are temporarily visible due to data/events, with expiration
|
|
438
|
-
* metadata. When a chip expires it is removed from this list. User-toggled
|
|
439
|
-
* chips stay visible via their data being truthy — they are NOT here.
|
|
440
|
-
*/
|
|
441
|
-
visibleChips: ChipMeta[];
|
|
442
|
-
/** Per-chip line assignment being edited (mirrors statusline.json v3). */
|
|
443
|
-
lines: StatuslineLines;
|
|
444
|
-
/** Per-chip density pin being edited. */
|
|
445
|
-
densities: StatuslineDensities;
|
|
446
|
-
/** Custom left-to-right chip order being edited. */
|
|
447
|
-
order: StatuslineOrder;
|
|
448
|
-
/** Text filter over chip names/descriptions. */
|
|
449
|
-
filter: string;
|
|
450
|
-
/** True while `/` is capturing filter keystrokes. */
|
|
451
|
-
filtering: boolean;
|
|
452
|
-
/**
|
|
453
|
-
* True once the editor holds the live layout (seeded on open, or made
|
|
454
|
-
* true by any layout edit). The app only mirrors the editor's layout
|
|
455
|
-
* back into the live statusline while this is set, so a caller that
|
|
456
|
-
* opens the picker WITHOUT seeding it can never publish an empty layout
|
|
457
|
-
* over the user's saved one.
|
|
458
|
-
*/
|
|
459
|
-
layoutSeeded: boolean;
|
|
460
|
-
hint?: string | undefined;
|
|
461
|
-
};
|
|
462
|
-
/** Plugin toggle editor — opened by `/plugin menu` or `/settings plugins`. */
|
|
463
|
-
pluginPicker: {
|
|
464
|
-
open: boolean;
|
|
465
|
-
items: PluginPickerItem[];
|
|
466
|
-
selected: number;
|
|
467
|
-
busy: boolean;
|
|
468
|
-
hint?: string | undefined;
|
|
469
|
-
};
|
|
470
|
-
/** MCP server picker — opened by `/mcp`. */
|
|
471
|
-
mcpPicker: {
|
|
472
|
-
open: boolean;
|
|
473
|
-
items: McpPickerItem[];
|
|
474
|
-
selected: number;
|
|
475
|
-
busy: boolean;
|
|
476
|
-
hint?: string | undefined;
|
|
477
|
-
};
|
|
478
|
-
/** Tool picker — opened by `/tools`. */
|
|
479
|
-
toolsPicker: {
|
|
480
|
-
open: boolean;
|
|
481
|
-
items: ToolPickerItem[];
|
|
482
|
-
selected: number;
|
|
483
|
-
busy: boolean;
|
|
484
|
-
hint?: string | undefined;
|
|
485
|
-
filter?: string | undefined;
|
|
486
|
-
};
|
|
487
|
-
/** Brain panel — opened by `/brain`. */
|
|
488
|
-
brainPanel: {
|
|
489
|
-
open: boolean;
|
|
490
|
-
riskLevel: BrainRiskLevel;
|
|
491
|
-
log: BrainLogEntry[];
|
|
492
|
-
selected: number;
|
|
493
|
-
hint?: string | undefined;
|
|
494
|
-
/** Settings-editor state (only meaningful when a BrainPanelHost is wired). */
|
|
495
|
-
view: 'settings' | 'log';
|
|
496
|
-
settings?: BrainPanelSettings | undefined;
|
|
497
|
-
/** Settings-view row cursor. */
|
|
498
|
-
row: number;
|
|
499
|
-
busy: boolean;
|
|
500
|
-
};
|
|
501
|
-
/** Help panel — opened by `/help`. */
|
|
502
|
-
helpPanel: {
|
|
503
|
-
open: boolean;
|
|
504
|
-
entries: HelpEntry[];
|
|
505
|
-
selected: number;
|
|
506
|
-
filter: string;
|
|
507
|
-
hint?: string | undefined;
|
|
508
|
-
};
|
|
509
|
-
/** Shadow Agent panel — opened by `/shadow`. */
|
|
510
|
-
shadowPanel: {
|
|
511
|
-
open: boolean;
|
|
512
|
-
shadow: ShadowState;
|
|
513
|
-
hint?: string | undefined;
|
|
514
|
-
};
|
|
515
159
|
/**
|
|
516
160
|
* Per-session subagent model lanes — opened by `/subagent-models`. Rows are
|
|
517
161
|
* pre-rendered view strings: the hook owns the mapping from the core plan so
|
|
@@ -529,37 +173,6 @@ export type State = {
|
|
|
529
173
|
sessionTarget: string;
|
|
530
174
|
hint?: string | undefined;
|
|
531
175
|
};
|
|
532
|
-
/** Interactive API-key / OAuth manager — opened by `/auth`. */
|
|
533
|
-
authPanel: AuthPanelState;
|
|
534
|
-
/** Project switcher panel — opened by F1 or `/project`. */
|
|
535
|
-
projectPicker: {
|
|
536
|
-
open: boolean;
|
|
537
|
-
/** Original unfiltered items. Never mutated after open. */
|
|
538
|
-
allItems: ProjectPickerItem[];
|
|
539
|
-
/** Currently displayed items (filtered from allItems). Navigation targets this list. */
|
|
540
|
-
items: ProjectPickerItem[];
|
|
541
|
-
selected: number;
|
|
542
|
-
filter: string;
|
|
543
|
-
hint?: string | undefined;
|
|
544
|
-
};
|
|
545
|
-
/** F-key panel picker — opened by `/f`. Keyboard-navigable list of F1–F12 panels. */
|
|
546
|
-
fKeyPicker: {
|
|
547
|
-
open: boolean;
|
|
548
|
-
selected: number;
|
|
549
|
-
};
|
|
550
|
-
/** Pending tool confirmations — queue to handle multiple tools requesting confirmation. */
|
|
551
|
-
confirmQueue: {
|
|
552
|
-
toolUseId: string;
|
|
553
|
-
toolName: string;
|
|
554
|
-
input: unknown;
|
|
555
|
-
suggestedPattern: string;
|
|
556
|
-
resolve: (decision: 'yes' | 'no' | 'always' | 'deny') => void;
|
|
557
|
-
/** True when the call was classified destructive. */
|
|
558
|
-
destructive: boolean;
|
|
559
|
-
boundaryReason?: string | undefined;
|
|
560
|
-
/** Real write destinations from `Tool.writeTargets`, when declared (VULN-001 Phase 2). */
|
|
561
|
-
writeTargets?: string[] | undefined;
|
|
562
|
-
}[];
|
|
563
176
|
/**
|
|
564
177
|
* Active warning for the `!<command>` shell shortcut. It resolves before
|
|
565
178
|
* dispatching to `/dev`, so the existing /dev runner stays the single shell
|
|
@@ -593,8 +206,8 @@ export type State = {
|
|
|
593
206
|
* Active pre-refine grace countdown. Set after the user submits a prompt
|
|
594
207
|
* that passes the refiner gate but BEFORE the refiner LLM call starts.
|
|
595
208
|
* The user sees a "refining in Ns…" panel and can send as-is (any key),
|
|
596
|
-
* cancel back to the composer
|
|
597
|
-
* into normal refinement. Resolves to proceed / skip / cancel. Null when
|
|
209
|
+
* cancel back to the composer with the draft restored (Esc or Backspace),
|
|
210
|
+
* or let the timer expire to proceed into normal refinement. Resolves to proceed / skip / cancel. Null when
|
|
598
211
|
* no countdown is active.
|
|
599
212
|
*/
|
|
600
213
|
refineCountdown: {
|
|
@@ -626,26 +239,6 @@ export type State = {
|
|
|
626
239
|
models: RefineFailureModel[];
|
|
627
240
|
resolve: (decision: RefineFailureDecision) => void;
|
|
628
241
|
} | null;
|
|
629
|
-
/**
|
|
630
|
-
* Active bare-"continue" confirmation panel. Set when the user typed a lone
|
|
631
|
-
* "continue"/"devam"/"go on" and the runtime resolved it to a concrete next
|
|
632
|
-
* step. Makes the resolution — and its drift risk — visible before it is
|
|
633
|
-
* sent: a grounded resolution (todo / suggestion) auto-proceeds after a
|
|
634
|
-
* short countdown; an `open` resolution (no queued task, model will pick the
|
|
635
|
-
* step itself) requires an explicit keypress. Resolves to
|
|
636
|
-
* proceed / edit / cancel and `submit()` continues. Null when none pending.
|
|
637
|
-
*/
|
|
638
|
-
continueConfirm: {
|
|
639
|
-
/** One-line summary shown in the panel header (e.g. "▶ Continue → todo: …"). */
|
|
640
|
-
label: string;
|
|
641
|
-
/** The full instruction that will be injected in place of "continue". */
|
|
642
|
-
instruction: string;
|
|
643
|
-
/** Where the resolution came from — drives copy + risk styling. */
|
|
644
|
-
source: 'todo' | 'suggestion' | 'open';
|
|
645
|
-
/** True for todo/suggestion (low drift); false for the `open` guess. */
|
|
646
|
-
grounded: boolean;
|
|
647
|
-
resolve: (decision: 'proceed' | 'edit' | 'cancel') => void;
|
|
648
|
-
} | null;
|
|
649
242
|
/** TUI-only follow-up gate shown after each completed `/bughunt` round. */
|
|
650
243
|
bugHuntContinue: {
|
|
651
244
|
completedRounds: number;
|
|
@@ -657,81 +250,6 @@ export type State = {
|
|
|
657
250
|
currentRound: number;
|
|
658
251
|
totalRounds?: number | undefined;
|
|
659
252
|
} | null;
|
|
660
|
-
/**
|
|
661
|
-
* Pending destructive `/clear` confirmation. Unlike ordinary yes/no
|
|
662
|
-
* prompts this requires the user to type the full uppercase word `YES`.
|
|
663
|
-
*/
|
|
664
|
-
clearConfirm: {
|
|
665
|
-
leaderActive: boolean;
|
|
666
|
-
subagentCount: number;
|
|
667
|
-
value: string;
|
|
668
|
-
resolve: (decision: boolean) => void;
|
|
669
|
-
} | null;
|
|
670
|
-
/**
|
|
671
|
-
* Pending `/exit` confirmation. Mirrors the `/clear` invariant: while a
|
|
672
|
-
* leader run or any subagent is in flight, `/exit` must not terminate the
|
|
673
|
-
* TUI silently. The panel asks for an Enter/Esc acknowledgement so the
|
|
674
|
-
* user can decide to abort the in-flight work first. When nothing is
|
|
675
|
-
* running, `/exit` resolves true without ever opening this panel.
|
|
676
|
-
*/
|
|
677
|
-
exitConfirm: {
|
|
678
|
-
leaderActive: boolean;
|
|
679
|
-
subagentCount: number;
|
|
680
|
-
backgroundCount?: number | undefined;
|
|
681
|
-
resolve: (decision: boolean) => void;
|
|
682
|
-
} | null;
|
|
683
|
-
/** Generic slash-command confirmation rendered inside the TUI. */
|
|
684
|
-
slashConfirm: {
|
|
685
|
-
question: string;
|
|
686
|
-
defaultYes: boolean;
|
|
687
|
-
resolve: (decision: boolean | null) => void;
|
|
688
|
-
} | null;
|
|
689
|
-
/**
|
|
690
|
-
* Pending ESC-interrupt confirmation. Null when none is pending.
|
|
691
|
-
* When `confirmExit` is enabled and Esc is pressed mid-iteration, the
|
|
692
|
-
* snapshot is captured and `escConfirm` opens instead of immediately
|
|
693
|
-
* aborting. The prompt shows "Abort work and redirect?"
|
|
694
|
-
* (or similar) and waits for y/n/Esc.
|
|
695
|
-
*/
|
|
696
|
-
escConfirm: {
|
|
697
|
-
snapshot: NonNullable<State['steerSnapshot']>;
|
|
698
|
-
} | null;
|
|
699
|
-
/**
|
|
700
|
-
* Fallback model overlay — shown when `provider.fallback_pending` fires.
|
|
701
|
-
* The overlay displays a countdown and the candidate model list, letting
|
|
702
|
-
* the user manually pick a model or wait for auto-switch. Null when no
|
|
703
|
-
* fallback gate is pending.
|
|
704
|
-
*/
|
|
705
|
-
fallbackOverlay: {
|
|
706
|
-
requestId: string;
|
|
707
|
-
from: {
|
|
708
|
-
providerId: string;
|
|
709
|
-
model: string;
|
|
710
|
-
};
|
|
711
|
-
status: number;
|
|
712
|
-
candidates: Array<{
|
|
713
|
-
providerId: string;
|
|
714
|
-
model: string;
|
|
715
|
-
}>;
|
|
716
|
-
autoSwitchSeconds: number;
|
|
717
|
-
selected: number;
|
|
718
|
-
} | null;
|
|
719
|
-
/**
|
|
720
|
-
* Mid-run send-mode picker. Set when the user submits a plain message while
|
|
721
|
-
* the agent is busy and `midRunSendPicker` is enabled — the picker asks how
|
|
722
|
-
* to deliver the text (queue / by-the-way / steer). The `resolve` callback
|
|
723
|
-
* is awaited inside `submit()` (same Promise pattern as `enhance`); on
|
|
724
|
-
* `'cancel'` (Esc) the caller restores the draft to the composer instead
|
|
725
|
-
* of sending — nothing is queued. Null when no picker is pending.
|
|
726
|
-
*/
|
|
727
|
-
sendModePicker: {
|
|
728
|
-
selected: number;
|
|
729
|
-
text: string;
|
|
730
|
-
displayText: string;
|
|
731
|
-
blocks: ContentBlock[];
|
|
732
|
-
pasteContent?: string | undefined;
|
|
733
|
-
resolve: (decision: SendMode | 'cancel') => void;
|
|
734
|
-
} | null;
|
|
735
253
|
/** Incremented on /clear so the context chip re-reads from agent.ctx tokens. */
|
|
736
254
|
contextChipVersion: number;
|
|
737
255
|
/** Live fleet state: per-subagent entries from FleetBus events. Keyed by subagentId. */
|
|
@@ -793,48 +311,14 @@ export type State = {
|
|
|
793
311
|
helpOpen: boolean;
|
|
794
312
|
/** When true, the todos monitor overlay is shown (F6). */
|
|
795
313
|
todosMonitorOpen: boolean;
|
|
796
|
-
/** When true, the queue panel is shown (F7). */
|
|
797
|
-
queuePanelOpen: boolean;
|
|
798
314
|
/** When true, the process list overlay is shown (F8). */
|
|
799
315
|
processListOpen: boolean;
|
|
800
316
|
/** When true, the cron jobs monitor is shown. */
|
|
801
317
|
cronMonitorOpen: boolean;
|
|
802
|
-
/** When true, the audit (side effects) overlay is shown (/audit). */
|
|
803
|
-
auditPanelOpen: boolean;
|
|
804
|
-
/** When true, the plan panel is shown (F5). */
|
|
805
|
-
planPanelOpen: boolean;
|
|
806
|
-
/** When true, the project kanban panel is shown. */
|
|
807
|
-
kanbanPanelOpen: boolean;
|
|
808
|
-
/** When true, the goal panel is shown (F9). */
|
|
809
|
-
goalPanelOpen: boolean;
|
|
810
|
-
goalKanbanPanelOpen: boolean;
|
|
811
|
-
/** When true, the interactive context monitor is shown (`/context`). */
|
|
812
|
-
contextPanelOpen: boolean;
|
|
813
|
-
/** When true, the interactive service connections health panel is shown (`/connections`). */
|
|
814
|
-
connectionsPanelOpen: boolean;
|
|
815
|
-
/** When true, the sessions panel is shown (F10). */
|
|
816
|
-
sessionsPanelOpen: boolean;
|
|
817
318
|
/** When true, keyboard focus is on the right sidebar (↑↓ scrolls sidebar content). */
|
|
818
319
|
sidebarFocused: boolean;
|
|
819
320
|
/** Vertical scroll offset for the sidebar content (in rows). */
|
|
820
321
|
sidebarScrollOffset: number;
|
|
821
|
-
/** Live session data for the sessions panel (F10). */
|
|
822
|
-
sessionsPanel: {
|
|
823
|
-
sessions: LiveSessionEntry[];
|
|
824
|
-
busy: boolean;
|
|
825
|
-
/** Selected index for arrow-key navigation. -1 when nothing selected. */
|
|
826
|
-
selected: number;
|
|
827
|
-
};
|
|
828
|
-
/**
|
|
829
|
-
* Pending session resume confirmation. When set, the F10 panel shows a
|
|
830
|
-
* "Press Enter to confirm resume, Esc to cancel" prompt. Set by the first
|
|
831
|
-
* Enter on a same-project session; the second Enter triggers the actual
|
|
832
|
-
* onResumeSession call.
|
|
833
|
-
*/
|
|
834
|
-
sessionResumeConfirm: {
|
|
835
|
-
sessionId: string;
|
|
836
|
-
sessionName: string;
|
|
837
|
-
} | null;
|
|
838
322
|
/**
|
|
839
323
|
* Active or completed collaborative debugging session state.
|
|
840
324
|
* Null when no collab session has run. Tracks counts + the event timeline
|
|
@@ -865,16 +349,6 @@ export type State = {
|
|
|
865
349
|
ts: string;
|
|
866
350
|
fileCount: number;
|
|
867
351
|
}>;
|
|
868
|
-
/** Checkpoint timeline overlay — null when closed. */
|
|
869
|
-
rewindOverlay: {
|
|
870
|
-
checkpoints: Array<{
|
|
871
|
-
promptIndex: number;
|
|
872
|
-
promptPreview: string;
|
|
873
|
-
ts: string;
|
|
874
|
-
fileCount: number;
|
|
875
|
-
}>;
|
|
876
|
-
selected: number;
|
|
877
|
-
} | null;
|
|
878
352
|
/** Live iteration-stage of the active autonomy engine. */
|
|
879
353
|
eternalStage: AutonomyStage | null;
|
|
880
354
|
/** Loaded from .wrongstack/goal.json on mount for startup banner. */
|
|
@@ -2,8 +2,9 @@ import type React from 'react';
|
|
|
2
2
|
import type { AppViewProps } from './app-view-contract.js';
|
|
3
3
|
export { resolveAgentSwarmPanelVisibility } from './app-ui-state.js';
|
|
4
4
|
interface AppStatusRegionProps extends AppViewProps {
|
|
5
|
+
panelsSuppressed?: boolean | undefined;
|
|
5
6
|
/** Optional column width cap for the status bar (when beside a sidebar). */
|
|
6
7
|
mainColumnWidth?: number | undefined;
|
|
7
8
|
}
|
|
8
|
-
export declare function AppStatusRegion({ host, runtime, mainColumnWidth, }: AppStatusRegionProps): React.ReactElement;
|
|
9
|
+
export declare function AppStatusRegion({ host, runtime, mainColumnWidth, panelsSuppressed, }: AppStatusRegionProps): React.ReactElement;
|
|
9
10
|
//# sourceMappingURL=app-status-region.d.ts.map
|
package/dist/app-ui-state.d.ts
CHANGED
|
@@ -2,6 +2,8 @@ import type { State } from './app-reducer.js';
|
|
|
2
2
|
import type { AgentSwarmPanelMode, Settings } from './app-settings-type.js';
|
|
3
3
|
import type { StatuslineItem } from './components/statusline-picker.js';
|
|
4
4
|
import { type PanelId, type PanelPositionMap } from './ui-contracts.js';
|
|
5
|
+
/** Interactive bottom panels own keys; sidebar twins leave the composer available. */
|
|
6
|
+
export declare function bottomPanelOwnsInput(state: State, positions: PanelPositionMap): boolean;
|
|
5
7
|
export declare function mergeStatuslineHiddenItems(hookHidden: StatuslineItem[], reducerHidden: StatuslineItem[]): StatuslineItem[];
|
|
6
8
|
/**
|
|
7
9
|
* True when any of the legacy picker overlays is open. Note: panel flags
|
|
@@ -70,7 +70,7 @@ interface AppViewRuntime {
|
|
|
70
70
|
liveStatuslineMode: StatuslineMode;
|
|
71
71
|
projectName: string | undefined;
|
|
72
72
|
workingDirChip: string | undefined;
|
|
73
|
-
handleRewindTo: (checkpointIndex: number) => Promise<
|
|
73
|
+
handleRewindTo: (checkpointIndex: number) => Promise<import('./hooks/use-session-rewind.js').RewindOutcome>;
|
|
74
74
|
activeCtrlRef: MutableRefObject<AbortController | null>;
|
|
75
75
|
clearPendingConfirms: () => void;
|
|
76
76
|
liveDirector: () => Director | null;
|
|
@@ -6,9 +6,10 @@ interface AppViewPickersProps {
|
|
|
6
6
|
runtime: AppViewProps['runtime'];
|
|
7
7
|
mainColumnWidth: number;
|
|
8
8
|
pickerMaxRows: number;
|
|
9
|
+
pickerInputEnabled?: boolean | undefined;
|
|
9
10
|
routedToSidebar: (id: PanelId) => boolean;
|
|
10
11
|
panelPositions: Record<PanelId, 'bottom' | 'sidebar'>;
|
|
11
12
|
}
|
|
12
|
-
export declare function AppViewPickers({ host, runtime, mainColumnWidth, pickerMaxRows, routedToSidebar, panelPositions, }: AppViewPickersProps): React.ReactElement;
|
|
13
|
+
export declare function AppViewPickers({ host, runtime, mainColumnWidth, pickerMaxRows, pickerInputEnabled, routedToSidebar, panelPositions, }: AppViewPickersProps): React.ReactElement;
|
|
13
14
|
export {};
|
|
14
15
|
//# sourceMappingURL=app-view-pickers.d.ts.map
|