@wrongstack/tui 0.313.0 → 0.316.1

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 (173) hide show
  1. package/dist/app-action-type.d.ts +57 -0
  2. package/dist/app-initial-state.d.ts +7 -1
  3. package/dist/app-props.d.ts +45 -2
  4. package/dist/app-settings-type.d.ts +9 -0
  5. package/dist/app-state-core-types.d.ts +18 -0
  6. package/dist/app-state.d.ts +44 -0
  7. package/dist/app-status-region.d.ts +1 -1
  8. package/dist/app-ui-state.d.ts +9 -0
  9. package/dist/app-view-contract.d.ts +2 -1
  10. package/dist/app-view-pickers.d.ts +2 -1
  11. package/dist/app-view-sidebar.d.ts +2 -1
  12. package/dist/brain-panel-model.d.ts +0 -2
  13. package/dist/checkpoint-retention.d.ts +2 -3
  14. package/dist/components/agents-monitor.d.ts +3 -3
  15. package/dist/components/auth-panel.d.ts +2 -1
  16. package/dist/components/brain-decision-prompt.d.ts +2 -1
  17. package/dist/components/clear-confirm-panel.d.ts +4 -3
  18. package/dist/components/composer-status-chip.d.ts +3 -2
  19. package/dist/components/confirm-prompt.d.ts +2 -1
  20. package/dist/components/context-panel.d.ts +2 -1
  21. package/dist/components/continue-confirm-panel.d.ts +3 -2
  22. package/dist/components/coordinator-panel.d.ts +2 -1
  23. package/dist/components/cron-jobs.d.ts +2 -1
  24. package/dist/components/design-picker.d.ts +2 -1
  25. package/dist/components/enhance-panel.d.ts +4 -3
  26. package/dist/components/esc-confirm-prompt.d.ts +2 -1
  27. package/dist/components/exit-confirm-panel.d.ts +3 -2
  28. package/dist/components/f-key-picker.d.ts +1 -2
  29. package/dist/components/fallback-overlay.d.ts +2 -1
  30. package/dist/components/fleet-monitor.d.ts +2 -1
  31. package/dist/components/fleet-panel.d.ts +4 -4
  32. package/dist/components/goal-kanban-panel.d.ts +2 -1
  33. package/dist/components/help-overlay.d.ts +2 -1
  34. package/dist/components/help-panel.d.ts +2 -1
  35. package/dist/components/history/code-block-diff-helpers.d.ts +1 -6
  36. package/dist/components/history/code-block.d.ts +0 -2
  37. package/dist/components/history/copy-registry.d.ts +2 -1
  38. package/dist/components/history/index.d.ts +2 -2
  39. package/dist/components/history/replay.d.ts +2 -1
  40. package/dist/components/history/sage-memory-block.d.ts +0 -6
  41. package/dist/components/history/scroll-controller-types.d.ts +7 -12
  42. package/dist/components/history/selection-band-store.d.ts +3 -2
  43. package/dist/components/history/selection-helpers.d.ts +24 -65
  44. package/dist/components/history/tool-card.d.ts +2 -1
  45. package/dist/components/history/tool-group.d.ts +0 -7
  46. package/dist/components/history/use-history-controller.d.ts +2 -1
  47. package/dist/components/history/utils.d.ts +1 -1
  48. package/dist/components/history/wrap-geometry.d.ts +18 -125
  49. package/dist/components/history.d.ts +1 -1
  50. package/dist/components/kanban-panel.d.ts +7 -25
  51. package/dist/components/live-activity-strip.d.ts +2 -1
  52. package/dist/components/mailbox-panel.d.ts +2 -1
  53. package/dist/components/mcp-picker.d.ts +2 -1
  54. package/dist/components/mode-picker.d.ts +2 -1
  55. package/dist/components/model-picker.d.ts +2 -1
  56. package/dist/components/monitor-shell.d.ts +3 -2
  57. package/dist/components/phase-monitor.d.ts +2 -1
  58. package/dist/components/plan-panel.d.ts +3 -2
  59. package/dist/components/plugin-picker.d.ts +2 -1
  60. package/dist/components/powerline-rail.d.ts +2 -1
  61. package/dist/components/project-picker.d.ts +2 -1
  62. package/dist/components/prompt-picker.d.ts +2 -1
  63. package/dist/components/refine-countdown-panel.d.ts +3 -2
  64. package/dist/components/refine-failure-panel.d.ts +2 -1
  65. package/dist/components/resource-menu.d.ts +2 -1
  66. package/dist/components/resume-picker.d.ts +2 -1
  67. package/dist/components/scrollable-history.d.ts +2 -2
  68. package/dist/components/send-mode-picker.d.ts +3 -2
  69. package/dist/components/sessions-panel.d.ts +2 -1
  70. package/dist/components/settings-picker-filter.d.ts +2 -1
  71. package/dist/components/settings-picker.d.ts +5 -1
  72. package/dist/components/shadow-panel.d.ts +2 -1
  73. package/dist/components/shell-command-warning.d.ts +2 -1
  74. package/dist/components/sidebar-content.d.ts +4 -9
  75. package/dist/components/sidebar-panel-frame.d.ts +2 -13
  76. package/dist/components/sidebar.d.ts +2 -1
  77. package/dist/components/skill-picker.d.ts +2 -1
  78. package/dist/components/slash-confirm-panel.d.ts +3 -2
  79. package/dist/components/slash-menu.d.ts +2 -1
  80. package/dist/components/status-bar-format.d.ts +2 -0
  81. package/dist/components/status-bar-icons.d.ts +4 -0
  82. package/dist/components/status-bar-rails.d.ts +19 -6
  83. package/dist/components/status-bar-types.d.ts +18 -0
  84. package/dist/components/status-bar.d.ts +17 -7
  85. package/dist/components/status-line-registry.d.ts +62 -0
  86. package/dist/components/statusline-picker.d.ts +5 -27
  87. package/dist/components/theme-picker.d.ts +2 -1
  88. package/dist/components/theme-preview.d.ts +2 -1
  89. package/dist/components/tools-picker.d.ts +2 -1
  90. package/dist/components/topic-check-panel.d.ts +2 -1
  91. package/dist/connections-slash.d.ts +2 -1
  92. package/dist/context-fill.d.ts +4 -3
  93. package/dist/context-slash.d.ts +3 -2
  94. package/dist/cron-slash.d.ts +2 -1
  95. package/dist/esc-close-panels.d.ts +2 -1
  96. package/dist/f-key-panels.d.ts +1 -1
  97. package/dist/git-info.d.ts +22 -3
  98. package/dist/height-cache.d.ts +2 -8
  99. package/dist/history-entry.d.ts +4 -3
  100. package/dist/history-retention.d.ts +16 -6
  101. package/dist/hit-test.d.ts +2 -1
  102. package/dist/hooks/subagent-history-format.d.ts +2 -1
  103. package/dist/hooks/use-app-session-state.d.ts +2 -1
  104. package/dist/hooks/use-auth-panel.d.ts +2 -1
  105. package/dist/hooks/use-brain-panel.d.ts +2 -1
  106. package/dist/hooks/use-chip-staleness-guard.d.ts +4 -3
  107. package/dist/hooks/use-core-tui-commands.d.ts +1 -1
  108. package/dist/hooks/use-director-fleet-bridge.d.ts +2 -4
  109. package/dist/hooks/use-exit-command.d.ts +1 -1
  110. package/dist/hooks/use-file-search.d.ts +3 -7
  111. package/dist/hooks/use-fleet-generation-gate.d.ts +2 -1
  112. package/dist/hooks/use-git-session-status.d.ts +1 -1
  113. package/dist/hooks/use-history-archive.d.ts +3 -2
  114. package/dist/hooks/use-input-history-persistence.d.ts +2 -1
  115. package/dist/hooks/use-mode-picker.d.ts +2 -1
  116. package/dist/hooks/use-model-pick.d.ts +2 -1
  117. package/dist/hooks/use-next-steps-auto-submit.d.ts +2 -2
  118. package/dist/hooks/use-panel-controllers.d.ts +3 -1
  119. package/dist/hooks/use-paste-handling.d.ts +2 -1
  120. package/dist/hooks/use-prompt-picker.d.ts +4 -3
  121. package/dist/hooks/use-session-rewind.d.ts +2 -1
  122. package/dist/hooks/use-shadow-panel.d.ts +2 -1
  123. package/dist/hooks/use-sidebar-panel-data.d.ts +4 -3
  124. package/dist/hooks/use-status-sync-interval.d.ts +2 -1
  125. package/dist/hooks/use-statusline-hidden-sync.d.ts +2 -1
  126. package/dist/hooks/use-statusline-state.d.ts +9 -3
  127. package/dist/hooks/use-stream-chip-expiration.d.ts +3 -2
  128. package/dist/hooks/use-terminal-size.d.ts +3 -2
  129. package/dist/hooks/use-theme-picker-handler.d.ts +2 -1
  130. package/dist/hooks/use-tui-activity.d.ts +2 -1
  131. package/dist/hooks/use-tui-controllers.d.ts +2 -1
  132. package/dist/hooks/use-tui-environment-state.d.ts +7 -5
  133. package/dist/hooks/use-tui-event-bridge.d.ts +1 -1
  134. package/dist/index.js +8993 -8311
  135. package/dist/ink.d.ts +1 -1
  136. package/dist/input-editing.d.ts +2 -1
  137. package/dist/input-tokens.d.ts +2 -1
  138. package/dist/input-validation/action-types.d.ts +1 -1
  139. package/dist/input-validation.d.ts +4 -4
  140. package/dist/kanban-slash.d.ts +8 -32
  141. package/dist/layout-store.d.ts +2 -1
  142. package/dist/markdown-table.d.ts +1 -3
  143. package/dist/memory-context-monitor.d.ts +3 -2
  144. package/dist/memory-lifecycle-entry.d.ts +2 -1
  145. package/dist/memory-slash-format.d.ts +0 -1
  146. package/dist/mouse.d.ts +3 -2
  147. package/dist/overlay-key-router.d.ts +5 -4
  148. package/dist/paste-accumulator.d.ts +3 -2
  149. package/dist/prompt-refinement-start.d.ts +1 -1
  150. package/dist/reducers/composer.d.ts +1 -1
  151. package/dist/reducers/conversation.d.ts +1 -1
  152. package/dist/reducers/helpers.d.ts +16 -3
  153. package/dist/resume-load.d.ts +131 -0
  154. package/dist/run-blocks-controller.d.ts +2 -1
  155. package/dist/run-tui-client-registration.d.ts +3 -2
  156. package/dist/run-tui-options.d.ts +35 -2
  157. package/dist/run-tui-teardown.d.ts +2 -1
  158. package/dist/run-tui-title-controller.d.ts +2 -1
  159. package/dist/scroll-anchor.d.ts +2 -4
  160. package/dist/settings-contracts.d.ts +1 -0
  161. package/dist/slash-command-lifecycle.d.ts +2 -1
  162. package/dist/submit-history.d.ts +2 -1
  163. package/dist/submit-prompt-refinement.d.ts +3 -2
  164. package/dist/terminal-title.d.ts +2 -1
  165. package/dist/theme.d.ts +2 -2
  166. package/dist/token-previews.d.ts +2 -1
  167. package/dist/tui-host-capabilities.d.ts +1 -1
  168. package/dist/tui-memory-counters.d.ts +2 -1
  169. package/dist/ui-contracts.d.ts +3 -3
  170. package/dist/ui-glyphs.d.ts +3 -1
  171. package/dist/workbench-slash.d.ts +2 -1
  172. package/package.json +8 -8
  173. package/dist/react-children-flatten.d.ts +0 -28
@@ -17,7 +17,7 @@
17
17
  * staleness is detected, it bumps a counter that the StatusBar uses as a
18
18
  * `key` fragment to force a full re-render of the chip rail.
19
19
  */
20
- export type ChipStalenessRootCause = 'animation_frozen' | 'data_source_stale' | 'subscription_dropped';
20
+ type ChipStalenessRootCause = 'animation_frozen' | 'data_source_stale' | 'subscription_dropped';
21
21
  export interface ChipStalenessDiagnosis {
22
22
  /** Which chip category is stale. */
23
23
  chip: string;
@@ -28,7 +28,7 @@ export interface ChipStalenessDiagnosis {
28
28
  /** Timestamp when staleness was first detected. */
29
29
  detectedAt: number;
30
30
  }
31
- export interface ChipStalenessGuardState {
31
+ interface ChipStalenessGuardState {
32
32
  /** Bumped every time a forced re-render is triggered. Use as a key fragment. */
33
33
  renderNonce: number;
34
34
  /** Current staleness diagnoses (empty = all healthy). */
@@ -36,7 +36,7 @@ export interface ChipStalenessGuardState {
36
36
  /** Total number of staleness recoveries since mount. */
37
37
  recoveryCount: number;
38
38
  }
39
- export interface UseChipStalenessGuardOptions {
39
+ interface UseChipStalenessGuardOptions {
40
40
  /** Agent run state — determines which chips SHOULD be updating. */
41
41
  agentState: 'idle' | 'running' | 'streaming' | 'aborting';
42
42
  /** Current spinner phase index (advances every SPINNER_INTERVAL_MS while active). */
@@ -80,4 +80,5 @@ export declare function computeTokenFingerprint(input: number | undefined, outpu
80
80
  * Useful for the /statusline detail panel or debug logging.
81
81
  */
82
82
  export declare function formatDiagnosis(d: ChipStalenessDiagnosis): string;
83
+ export {};
83
84
  //# sourceMappingURL=use-chip-staleness-guard.d.ts.map
@@ -1,7 +1,7 @@
1
1
  import type { Director } from '@wrongstack/core/coordination';
2
2
  import { type Dispatch, type MutableRefObject, type SetStateAction } from 'react';
3
- import type { AppProps } from '../app-props.js';
4
3
  import type { Action } from '../app-action-type.js';
4
+ import type { AppProps } from '../app-props.js';
5
5
  import type { State } from '../app-state.js';
6
6
  import { createCronJobsGetter } from '../cron-slash.js';
7
7
  import type { MemoryContextMonitorState } from '../memory-context-monitor.js';
@@ -1,10 +1,7 @@
1
1
  import type { Director } from '@wrongstack/core/coordination';
2
2
  import type { FleetChatVerbosity } from '@wrongstack/core/types';
3
3
  import type { Action, State } from '../app-reducer.js';
4
- /** A completed subagent bubble remains useful, but must not retain an
5
- * arbitrarily large model response in the bridge before its turn boundary. */
6
- export declare const MAX_FLEET_HISTORY_BUFFER_CHARS: number;
7
- export interface UseDirectorFleetBridgeOptions {
4
+ interface UseDirectorFleetBridgeOptions {
8
5
  director: Director | null;
9
6
  dispatch: React.Dispatch<Action>;
10
7
  stateRef: React.MutableRefObject<State>;
@@ -33,4 +30,5 @@ export interface UseDirectorFleetBridgeOptions {
33
30
  * entries are never rehydrated on resume.
34
31
  */
35
32
  export declare function useDirectorFleetBridge({ director, dispatch, stateRef, chatMode, sessionGenerationRef, }: UseDirectorFleetBridgeOptions): void;
33
+ export {};
36
34
  //# sourceMappingURL=use-director-fleet-bridge.d.ts.map
@@ -16,7 +16,7 @@ interface SlashRegistryLike {
16
16
  unregister(name: string): void;
17
17
  get?(name: string): SlashCommand | undefined;
18
18
  }
19
- export interface UseExitCommandOptions {
19
+ interface UseExitCommandOptions {
20
20
  slashRegistry: SlashRegistryLike;
21
21
  dispatch: (action: Action) => void;
22
22
  /**
@@ -9,11 +9,6 @@
9
9
  import type { InputBuilder } from '@wrongstack/core/agent';
10
10
  import type { Action, State } from '../app-reducer.js';
11
11
  import { type TokenPreviewStore } from '../token-previews.js';
12
- /**
13
- * Keystroke coalescing window for `@`-file search. Long enough to swallow a
14
- * burst of typing, short enough that the results feel attached to the keys.
15
- */
16
- export declare const FILE_SEARCH_DEBOUNCE_MS = 150;
17
12
  /**
18
13
  * Find an active `@<query>` token at the cursor. The token starts at the
19
14
  * last `@` not preceded by a non-whitespace char, and runs up to the cursor
@@ -24,7 +19,7 @@ export declare function detectAtToken(buffer: string, cursor: number): {
24
19
  end: number;
25
20
  query: string;
26
21
  } | null;
27
- export interface UseFileSearchOptions {
22
+ interface UseFileSearchOptions {
28
23
  state: State;
29
24
  dispatch: React.Dispatch<Action>;
30
25
  projectRoot: string;
@@ -36,7 +31,7 @@ export interface UseFileSearchOptions {
36
31
  setDraft: (buffer: string, cursor: number) => void;
37
32
  tokenPreviewsRef: React.MutableRefObject<TokenPreviewStore>;
38
33
  }
39
- export interface FileSearchResult {
34
+ interface FileSearchResult {
40
35
  /** Called from the host's Enter handler when the file picker is open. */
41
36
  onPickerEnter: () => Promise<void>;
42
37
  }
@@ -45,4 +40,5 @@ export interface FileSearchResult {
45
40
  * provides the Enter handler for the <FilePicker> component.
46
41
  */
47
42
  export declare function useFileSearch(options: UseFileSearchOptions): FileSearchResult;
43
+ export {};
48
44
  //# sourceMappingURL=use-file-search.d.ts.map
@@ -21,7 +21,7 @@
21
21
  * When `sessionGenerationRef` is absent (no /clear support wired), `isLive`
22
22
  * always returns `true` — backward-compatible no-op.
23
23
  */
24
- export interface FleetGenerationGate {
24
+ interface FleetGenerationGate {
25
25
  /** Record that a subagent was first seen at the current generation.
26
26
  * Call on spawn or first event. No-op when no sessionGenerationRef. */
27
27
  track: (subagentId: string) => void;
@@ -36,4 +36,5 @@ export interface FleetGenerationGate {
36
36
  export declare function useFleetGenerationGate(sessionGenerationRef?: {
37
37
  current: number;
38
38
  } | undefined): FleetGenerationGate;
39
+ export {};
39
40
  //# sourceMappingURL=use-fleet-generation-gate.d.ts.map
@@ -7,7 +7,7 @@ interface GitSessionStatusOptions {
7
7
  setSessionCount: (count: number) => void;
8
8
  /**
9
9
  * Statusline hidden items. The 10s git poll is the only consumer of
10
- * `readGitInfo`, which spawns three `git` child processes per tick —
10
+ * `readGitInfo`, which spawns two `git` child processes per tick —
11
11
  * when the `git` chip is user-hidden, skip the poll entirely until it
12
12
  * is visible again.
13
13
  */
@@ -14,7 +14,7 @@
14
14
  */
15
15
  import type { Action } from '../app-reducer.js';
16
16
  import type { HistoryEntry } from '../history-entry.js';
17
- export interface UseHistoryArchiveOptions {
17
+ interface UseHistoryArchiveOptions {
18
18
  entries: readonly HistoryEntry[];
19
19
  dispatch: React.Dispatch<Action>;
20
20
  /** Root of the session store. Absent for ephemeral (`--no-session`) runs. */
@@ -22,9 +22,10 @@ export interface UseHistoryArchiveOptions {
22
22
  /** Current session id; the archive lives beside the session's own files. */
23
23
  sessionId?: string | undefined;
24
24
  }
25
- export interface HistoryArchiveResult {
25
+ interface HistoryArchiveResult {
26
26
  /** Passed to <ScrollableHistory>; fires when the user reaches the oldest row. */
27
27
  onRequestOlderEntries: () => void;
28
28
  }
29
29
  export declare function useHistoryArchive({ entries, dispatch, sessionsDir, sessionId, }: UseHistoryArchiveOptions): HistoryArchiveResult;
30
+ export {};
30
31
  //# sourceMappingURL=use-history-archive.d.ts.map
@@ -1,5 +1,5 @@
1
1
  import type { Action, State } from '../app-reducer.js';
2
- export interface UseInputHistoryPersistenceOptions {
2
+ interface UseInputHistoryPersistenceOptions {
3
3
  projectRoot: string;
4
4
  inputHistory: State['inputHistory'];
5
5
  dispatch: React.Dispatch<Action>;
@@ -11,4 +11,5 @@ export interface UseInputHistoryPersistenceOptions {
11
11
  * with a 200ms debounce whenever the in-memory list changes.
12
12
  */
13
13
  export declare function useInputHistoryPersistence({ projectRoot, inputHistory, dispatch, }: UseInputHistoryPersistenceOptions): void;
14
+ export {};
14
15
  //# sourceMappingURL=use-input-history-persistence.d.ts.map
@@ -4,7 +4,7 @@ export interface GetModesResult {
4
4
  modes: Mode[];
5
5
  activeId: string | null;
6
6
  }
7
- export interface UseModePickerOptions {
7
+ interface UseModePickerOptions {
8
8
  dispatch: React.Dispatch<Action>;
9
9
  getModes?: (() => Promise<GetModesResult>) | undefined;
10
10
  }
@@ -12,4 +12,5 @@ export declare function buildModePickerOptions(result: GetModesResult): import("
12
12
  export declare function useModePicker({ dispatch, getModes, }: UseModePickerOptions): {
13
13
  openModePicker: () => Promise<void>;
14
14
  };
15
+ export {};
15
16
  //# sourceMappingURL=use-mode-picker.d.ts.map
@@ -14,7 +14,7 @@ export type ModelPickSelection = {
14
14
  providerId: string;
15
15
  model: string;
16
16
  } | null;
17
- export interface UseModelPickRequestOptions {
17
+ interface UseModelPickRequestOptions {
18
18
  dispatch: React.Dispatch<Action>;
19
19
  getPickableProviders?: (() => Promise<Array<{
20
20
  id: string;
@@ -31,4 +31,5 @@ export interface ModelPickRequestController {
31
31
  handleModelPicked: (providerId: string, modelId: string) => void;
32
32
  }
33
33
  export declare function useModelPickRequest(opts: UseModelPickRequestOptions): ModelPickRequestController;
34
+ export {};
34
35
  //# sourceMappingURL=use-model-pick.d.ts.map
@@ -20,14 +20,14 @@ interface NextStepsAutoSubmitOptions {
20
20
  clearDraft: () => void;
21
21
  runBlocksRef: MutableRefObject<(blocks: ContentBlock[]) => Promise<void>>;
22
22
  }
23
- export interface AutoProceedCandidateInput {
23
+ interface AutoProceedCandidateInput {
24
24
  todos?: readonly TodoItem[] | undefined;
25
25
  suggestions?: readonly string[] | undefined;
26
26
  autoSuggestions?: readonly string[] | undefined;
27
27
  yolo?: boolean | undefined;
28
28
  autonomyNextPrompt?: string | undefined;
29
29
  }
30
- export interface AutoProceedCandidate {
30
+ interface AutoProceedCandidate {
31
31
  source: 'todo' | 'suggestion' | 'auto-suggestion';
32
32
  prompt: string;
33
33
  label: string;
@@ -25,9 +25,11 @@ interface PanelControllersOptions {
25
25
  getToolsItems: AppProps['getToolsItems'];
26
26
  onToolToggle: AppProps['onToolToggle'];
27
27
  setLiveToolCount: Dispatch<SetStateAction<number | undefined>>;
28
+ /** Effort levels the active model documents (model-aware settings cycle). */
29
+ getActiveModelReasoningEffortLevels?: AppProps['getActiveModelReasoningEffortLevels'];
28
30
  }
29
31
  /** Owns panel openers and extension picker refresh/toggle controllers. */
30
- export declare function usePanelControllers({ state, stateRef, dispatch, getPickableProviders, getProjectPickerItems, getLiveSessions, onPanelOpen, openStatuslinePicker, openAuthPanel, openModePicker, openBrainPanel, openShadowPanel, openHelpPanel, getSettings, getPluginItems, onPluginToggle, getMcpServers, onMcpToggle, onMcpRestart, getToolsItems, onToolToggle, setLiveToolCount, }: PanelControllersOptions): {
32
+ export declare function usePanelControllers({ state, stateRef, dispatch, getPickableProviders, getProjectPickerItems, getLiveSessions, onPanelOpen, openStatuslinePicker, openAuthPanel, openModePicker, openBrainPanel, openShadowPanel, openHelpPanel, getSettings, getPluginItems, onPluginToggle, getMcpServers, onMcpToggle, onMcpRestart, getToolsItems, onToolToggle, setLiveToolCount, getActiveModelReasoningEffortLevels, }: PanelControllersOptions): {
31
33
  openModelPicker: () => Promise<void>;
32
34
  openProjectPicker: () => Promise<void>;
33
35
  openFKeyPicker: () => void;
@@ -12,7 +12,7 @@ export interface UsePasteHandlingOptions {
12
12
  setDraft: (buffer: string, cursor: number) => void;
13
13
  tokenPreviewsRef: React.MutableRefObject<TokenPreviewStore>;
14
14
  }
15
- export interface PasteHandlingResult {
15
+ interface PasteHandlingResult {
16
16
  pasteAccumRef: React.MutableRefObject<PasteAccumState>;
17
17
  pasteFlushTimerRef: React.MutableRefObject<ReturnType<typeof setTimeout> | null>;
18
18
  commitPaste: (full: string) => Promise<void>;
@@ -29,4 +29,5 @@ export interface PasteHandlingResult {
29
29
  * newlines into the buffer.
30
30
  */
31
31
  export declare function usePasteHandling({ builderRef, dispatch, draftRef, setDraft, tokenPreviewsRef, }: UsePasteHandlingOptions): PasteHandlingResult;
32
+ export {};
32
33
  //# sourceMappingURL=use-paste-handling.d.ts.map
@@ -1,6 +1,6 @@
1
1
  import type { Action } from '../app-reducer.js';
2
2
  import type { PromptPickEntry } from '../components/prompt-picker.js';
3
- export interface PromptLibraryEntry {
3
+ interface PromptLibraryEntry {
4
4
  slug: string;
5
5
  title: string;
6
6
  description: string;
@@ -9,13 +9,13 @@ export interface PromptLibraryEntry {
9
9
  content: string;
10
10
  favorite: boolean;
11
11
  }
12
- export interface PromptPickerOpenPayload {
12
+ interface PromptPickerOpenPayload {
13
13
  all: PromptPickEntry[];
14
14
  categories: string[];
15
15
  recentSlugs: string[];
16
16
  }
17
17
  export declare function buildPromptPickerPayload(all: PromptLibraryEntry[], recentSlugs: string[]): PromptPickerOpenPayload;
18
- export interface UsePromptPickerOptions {
18
+ interface UsePromptPickerOptions {
19
19
  projectRoot: string;
20
20
  dispatch: React.Dispatch<Action>;
21
21
  }
@@ -26,4 +26,5 @@ export declare function usePromptPicker({ projectRoot, dispatch }: UsePromptPick
26
26
  openPromptPicker: () => Promise<void>;
27
27
  setPromptFavorite: (slug: string, favorite: boolean) => Promise<void>;
28
28
  };
29
+ export {};
29
30
  //# sourceMappingURL=use-prompt-picker.d.ts.map
@@ -1,7 +1,7 @@
1
1
  import type { Agent } from '@wrongstack/core/agent';
2
2
  import type { Director } from '@wrongstack/core/coordination';
3
3
  import type { SessionInterruptController } from './use-session-interrupt-controller.js';
4
- export interface UseSessionRewindOptions {
4
+ interface UseSessionRewindOptions {
5
5
  agent: Agent;
6
6
  sessionsDir?: string | undefined;
7
7
  interruptController?: SessionInterruptController | undefined;
@@ -11,4 +11,5 @@ export interface UseSessionRewindOptions {
11
11
  export declare function useSessionRewind({ agent, sessionsDir, interruptController, liveDirector, sessionGenerationRef, }: UseSessionRewindOptions): {
12
12
  handleRewindTo: (checkpointIndex: number) => Promise<void>;
13
13
  };
14
+ export {};
14
15
  //# sourceMappingURL=use-session-rewind.d.ts.map
@@ -1,5 +1,5 @@
1
1
  import type { Action } from '../app-reducer.js';
2
- export interface ShadowPanelHost {
2
+ interface ShadowPanelHost {
3
3
  getShadowData?: (() => {
4
4
  activeId: string | null;
5
5
  running: boolean;
@@ -14,4 +14,5 @@ export declare function useShadowPanel(dispatch: React.Dispatch<Action>, host: S
14
14
  handleShadowStart: () => Promise<void>;
15
15
  handleShadowStop: () => Promise<void>;
16
16
  };
17
+ export {};
17
18
  //# sourceMappingURL=use-shadow-panel.d.ts.map
@@ -15,7 +15,7 @@
15
15
  * reads for panels nobody is looking at. Each hook performs an immediate
16
16
  * first read when enabled, so data is fresh the moment the twin mounts.
17
17
  */
18
- export interface SidebarProcess {
18
+ interface SidebarProcess {
19
19
  pid: number;
20
20
  name: string;
21
21
  status: string;
@@ -30,7 +30,7 @@ export declare function useSidebarProcessList(enabled?: boolean): {
30
30
  totalCount: number;
31
31
  processes: readonly SidebarProcess[];
32
32
  };
33
- export interface SidebarConnection {
33
+ interface SidebarConnection {
34
34
  name: string;
35
35
  status: 'ok' | 'warn' | 'down' | 'unknown';
36
36
  latencyMs?: number | undefined;
@@ -80,7 +80,7 @@ export interface SidebarWrongProxy {
80
80
  * no-throw contract used by every other sidebar probe.
81
81
  */
82
82
  export declare function useSidebarWrongProxy(url: string | undefined, enabled?: boolean): SidebarWrongProxy | null;
83
- export interface SidebarKanbanColumn {
83
+ interface SidebarKanbanColumn {
84
84
  name: string;
85
85
  count: number;
86
86
  }
@@ -94,4 +94,5 @@ export declare function useSidebarKanban(projectRoot: string, enabled?: boolean)
94
94
  totalActive: number;
95
95
  activeCardTitles: readonly string[];
96
96
  };
97
+ export {};
97
98
  //# sourceMappingURL=use-sidebar-panel-data.d.ts.map
@@ -1,5 +1,5 @@
1
1
  import type { Agent } from '@wrongstack/core/agent';
2
- export interface UseStatusSyncIntervalOptions {
2
+ interface UseStatusSyncIntervalOptions {
3
3
  getAutonomy?: (() => string) | undefined;
4
4
  getYolo?: (() => boolean) | undefined;
5
5
  getModeLabel?: (() => string) | undefined;
@@ -20,4 +20,5 @@ export interface UseStatusSyncIntervalOptions {
20
20
  runParallelLoopRef: React.MutableRefObject<() => Promise<void>>;
21
21
  }
22
22
  export declare function useStatusSyncInterval({ getAutonomy, getYolo, getModeLabel, getEternalEngine, getParallelEngine, agent, autonomyLive, yoloLive, liveModeLabel, liveModel, liveProvider, setAutonomyLive, setYoloLive, setLiveModeLabel, setLiveModel, setLiveProvider, runEternalLoopRef, runParallelLoopRef, }: UseStatusSyncIntervalOptions): void;
23
+ export {};
23
24
  //# sourceMappingURL=use-status-sync-interval.d.ts.map
@@ -1,6 +1,6 @@
1
1
  import type { StatuslineItem } from '../components/statusline-picker.js';
2
2
  export declare function statuslineHiddenDiffers(hookHidden: readonly StatuslineItem[], pickerHidden: readonly StatuslineItem[]): boolean;
3
- export interface UseStatuslineHiddenSyncOptions {
3
+ interface UseStatuslineHiddenSyncOptions {
4
4
  pickerOpen: boolean;
5
5
  pickerHidden: readonly StatuslineItem[];
6
6
  hiddenItems: readonly StatuslineItem[];
@@ -11,4 +11,5 @@ export interface UseStatuslineHiddenSyncOptions {
11
11
  * statusline state hook so the visible status bar updates immediately.
12
12
  */
13
13
  export declare function useStatuslineHiddenSync({ pickerOpen, pickerHidden, hiddenItems, setHiddenItems, }: UseStatuslineHiddenSyncOptions): void;
14
+ export {};
14
15
  //# sourceMappingURL=use-statusline-hidden-sync.d.ts.map
@@ -1,11 +1,12 @@
1
+ import type { StatuslineLines } from '@wrongstack/core/statusline';
1
2
  import type { StatuslineItem } from '../components/statusline-picker.js';
2
3
  export type AutonomyStage = 'off' | 'suggest' | 'auto' | 'eternal' | 'eternal-parallel';
3
4
  /**
4
5
  * A statusline chip the user can persistently hide (written to
5
6
  * `statusline.json` and toggled by the `/statusline` command).
6
7
  */
7
- export type StatuslineHiddenItem = StatuslineItem;
8
- export interface UseStatuslineStateOptions {
8
+ type StatuslineHiddenItem = StatuslineItem;
9
+ interface UseStatuslineStateOptions {
9
10
  model: string;
10
11
  provider: string | undefined;
11
12
  effectiveMaxContext: number | undefined;
@@ -21,8 +22,10 @@ export interface UseStatuslineStateOptions {
21
22
  * internally as a `Set<string>` and exposes the same.
22
23
  */
23
24
  statuslineHiddenItems: Set<string> | readonly string[];
25
+ /** Per-chip line assignment (schema v2); absent keys use DEFAULT_LINES. */
26
+ statuslineLines?: StatuslineLines | undefined;
24
27
  }
25
- export interface UseStatuslineState {
28
+ interface UseStatuslineState {
26
29
  liveModel: string;
27
30
  setLiveModel: (v: string) => void;
28
31
  liveProvider: string;
@@ -37,8 +40,11 @@ export interface UseStatuslineState {
37
40
  setLiveModeLabel: (v: string) => void;
38
41
  hiddenItems: StatuslineHiddenItem[];
39
42
  setHiddenItems: (v: StatuslineHiddenItem[]) => void;
43
+ lines: StatuslineLines;
44
+ setLines: (v: StatuslineLines) => void;
40
45
  sessionCount: number;
41
46
  setSessionCount: (v: number) => void;
42
47
  }
43
48
  export declare function useStatuslineState(opts: UseStatuslineStateOptions): UseStatuslineState;
49
+ export {};
44
50
  //# sourceMappingURL=use-statusline-state.d.ts.map
@@ -1,5 +1,5 @@
1
1
  import { type ChipMeta, type StatuslineItem } from '../components/statusline-picker.js';
2
- export type StreamChipAction = {
2
+ type StreamChipAction = {
3
3
  type: 'statuslineChipShow';
4
4
  key: StatuslineItem;
5
5
  expiresIn: number;
@@ -15,11 +15,12 @@ export declare function computeStreamChipActions(input: {
15
15
  visibleChipKeys: readonly StatuslineItem[];
16
16
  }): StreamChipAction[];
17
17
  export declare function computeExpiredChipKeys(chips: readonly ChipMeta[], now?: number): StatuslineItem[];
18
- export interface UseStreamChipExpirationOptions {
18
+ interface UseStreamChipExpirationOptions {
19
19
  brainPrompt: unknown;
20
20
  enhance: unknown;
21
21
  visibleChips: readonly ChipMeta[];
22
22
  dispatch: (action: StreamChipAction) => void;
23
23
  }
24
24
  export declare function useStreamChipExpiration({ brainPrompt, enhance, visibleChips, dispatch, }: UseStreamChipExpirationOptions): void;
25
+ export {};
25
26
  //# sourceMappingURL=use-stream-chip-expiration.d.ts.map
@@ -34,11 +34,11 @@
34
34
  * This hook is the React shape of it: subscribe to the stream you read, with
35
35
  * the fallback stated once per call site rather than remembered.
36
36
  */
37
- export interface TerminalSize {
37
+ interface TerminalSize {
38
38
  readonly columns: number;
39
39
  readonly rows: number;
40
40
  }
41
- export interface UseTerminalSizeOptions {
41
+ interface UseTerminalSizeOptions {
42
42
  /**
43
43
  * Upper bound applied to `columns`. Panels use this to stay inside a pinned
44
44
  * content width — see the bordered-box overflow rule.
@@ -54,4 +54,5 @@ export interface UseTerminalSizeOptions {
54
54
  readonly fallbackRows?: number | undefined;
55
55
  }
56
56
  export declare function useTerminalSize(options?: UseTerminalSizeOptions): TerminalSize;
57
+ export {};
57
58
  //# sourceMappingURL=use-terminal-size.d.ts.map
@@ -1,7 +1,7 @@
1
1
  import type { ConfigStore } from '@wrongstack/core/types';
2
2
  import type { Action } from '../app-reducer.js';
3
3
  import { type ThemeName } from '../theme.js';
4
- export interface UseThemePickerHandlerOptions {
4
+ interface UseThemePickerHandlerOptions {
5
5
  configStore?: ConfigStore | undefined;
6
6
  saveThemePreset?: ((theme: ThemeName) => Promise<void>) | undefined;
7
7
  dispatch: React.Dispatch<Action>;
@@ -10,4 +10,5 @@ export interface UseThemePickerHandlerOptions {
10
10
  export declare function useThemePickerHandler({ configStore, saveThemePreset, dispatch, selectedIndex, }: UseThemePickerHandlerOptions): {
11
11
  onThemePickerEnter: () => void;
12
12
  };
13
+ export {};
13
14
  //# sourceMappingURL=use-theme-picker-handler.d.ts.map
@@ -2,7 +2,7 @@ import type { Agent, InputBuilder } from '@wrongstack/core/agent';
2
2
  import type { AttachmentStore } from '@wrongstack/core/types';
3
3
  import type { Action, State } from '../app-reducer.js';
4
4
  import { type HeapSample } from '../heap-watchdog.js';
5
- export interface UseTuiActivityOptions {
5
+ interface UseTuiActivityOptions {
6
6
  status: State['status'];
7
7
  fleet: State['fleet'];
8
8
  enhanceBusy: boolean;
@@ -37,4 +37,5 @@ export declare function useTuiActivity({ status, fleet, enhanceBusy, thinkingWor
37
37
  enhanceDots: number;
38
38
  refreshGoalSummary: () => void;
39
39
  };
40
+ export {};
40
41
  //# sourceMappingURL=use-tui-activity.d.ts.map
@@ -13,7 +13,7 @@ export interface AgentsMonitorController {
13
13
  visible: boolean;
14
14
  setVisible: (visible: boolean) => void;
15
15
  }
16
- export interface UseTuiControllersOptions {
16
+ interface UseTuiControllersOptions {
17
17
  dispatch: React.Dispatch<Action>;
18
18
  fleetChat: FleetChatVerbosity;
19
19
  enhanceEnabled: boolean;
@@ -30,4 +30,5 @@ export interface UseTuiControllersOptions {
30
30
  * inert mirrors. On unmount we restore mirror-only setters for late callbacks.
31
31
  */
32
32
  export declare function useTuiControllers({ dispatch, fleetChat, enhanceEnabled, agentsMonitorOpen, fleetStreamController, enhanceController, agentsMonitorController, }: UseTuiControllersOptions): void;
33
+ export {};
33
34
  //# sourceMappingURL=use-tui-controllers.d.ts.map
@@ -1,8 +1,8 @@
1
1
  import type { AppProps } from '../app-props.js';
2
- type EnvironmentProps = Omit<Pick<AppProps, 'events' | 'memoryStore' | 'model' | 'provider' | 'effectiveMaxContext' | 'yolo' | 'getAutonomy' | 'modeLabel' | 'statuslineHiddenItems' | 'toolCount' | 'getSettings' | 'setStatuslineHiddenItems' | 'saveStatuslineHiddenItems'>, 'yolo'> & {
2
+ type EnvironmentProps = Omit<Pick<AppProps, 'events' | 'memoryStore' | 'model' | 'provider' | 'effectiveMaxContext' | 'yolo' | 'getAutonomy' | 'modeLabel' | 'statuslineHiddenItems' | 'statuslineLines' | 'toolCount' | 'getSettings' | 'setStatuslineHiddenItems' | 'saveStatuslineHiddenItems'>, 'yolo'> & {
3
3
  yolo: boolean;
4
4
  };
5
- export declare function useTuiEnvironmentState({ events, memoryStore, model, provider, effectiveMaxContext, yolo, getAutonomy, modeLabel, statuslineHiddenItems, toolCount, getSettings, setStatuslineHiddenItems, saveStatuslineHiddenItems, }: EnvironmentProps): {
5
+ export declare function useTuiEnvironmentState({ events, memoryStore, model, provider, effectiveMaxContext, yolo, getAutonomy, modeLabel, statuslineHiddenItems, statuslineLines, toolCount, getSettings, setStatuslineHiddenItems, saveStatuslineHiddenItems, }: EnvironmentProps): {
6
6
  liveModel: string;
7
7
  setLiveModel: (v: string) => void;
8
8
  liveProvider: string;
@@ -15,11 +15,13 @@ export declare function useTuiEnvironmentState({ events, memoryStore, model, pro
15
15
  setAutonomyLive: (v: import("./use-statusline-state.js").AutonomyStage) => void;
16
16
  liveModeLabel: string;
17
17
  setLiveModeLabel: (v: string) => void;
18
- hiddenItems: import("./use-statusline-state.js").StatuslineHiddenItem[];
19
- setHiddenItems: (v: import("./use-statusline-state.js").StatuslineHiddenItem[]) => void;
18
+ hiddenItems: import("@wrongstack/core/statusline").StatuslineItem[];
19
+ setHiddenItems: (v: import("@wrongstack/core/statusline").StatuslineItem[]) => void;
20
+ lines: import("@wrongstack/core/statusline").StatuslineLines;
21
+ setLines: (v: import("@wrongstack/core/statusline").StatuslineLines) => void;
20
22
  sessionCount: number;
21
23
  setSessionCount: (v: number) => void;
22
- hiddenItemsRef: import("react").RefObject<import("../components/statusline-picker.js").StatuslineItem[]>;
24
+ hiddenItemsRef: import("react").RefObject<import("@wrongstack/core/statusline").StatuslineItem[]>;
23
25
  memoryContextMonitor: import("../memory-context-monitor.js").MemoryContextMonitorState;
24
26
  setMemoryContextMonitor: import("react").Dispatch<import("react").SetStateAction<import("../memory-context-monitor.js").MemoryContextMonitorState>>;
25
27
  memoryRecordTotal: number | undefined;
@@ -11,7 +11,7 @@ type ClearHistoryDispatch = React.Dispatch<{
11
11
  } | {
12
12
  type: 'toolStreamClear';
13
13
  }>;
14
- export interface UseTuiEventBridgeOptions {
14
+ interface UseTuiEventBridgeOptions {
15
15
  events: EventBus;
16
16
  dispatch: React.Dispatch<Action>;
17
17
  stateRef: {