maistro 1.0.390
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/LICENSE +15 -0
- package/README.md +107 -0
- package/dist/app.d.ts +247 -0
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +4971 -0
- package/dist/app.js.map +1 -0
- package/dist/buildInfo.d.ts +5 -0
- package/dist/buildInfo.d.ts.map +1 -0
- package/dist/buildInfo.js +2 -0
- package/dist/buildInfo.js.map +1 -0
- package/dist/caffeinate.d.ts +72 -0
- package/dist/caffeinate.d.ts.map +1 -0
- package/dist/caffeinate.js +258 -0
- package/dist/caffeinate.js.map +1 -0
- package/dist/claudePath.d.ts +10 -0
- package/dist/claudePath.d.ts.map +1 -0
- package/dist/claudePath.js +34 -0
- package/dist/claudePath.js.map +1 -0
- package/dist/clipboard.d.ts +44 -0
- package/dist/clipboard.d.ts.map +1 -0
- package/dist/clipboard.js +442 -0
- package/dist/clipboard.js.map +1 -0
- package/dist/config.d.ts +211 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +933 -0
- package/dist/config.js.map +1 -0
- package/dist/constants.d.ts +50 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +81 -0
- package/dist/constants.js.map +1 -0
- package/dist/contextBuilder.d.ts +38 -0
- package/dist/contextBuilder.d.ts.map +1 -0
- package/dist/contextBuilder.js +113 -0
- package/dist/contextBuilder.js.map +1 -0
- package/dist/dependencyDetector.d.ts +57 -0
- package/dist/dependencyDetector.d.ts.map +1 -0
- package/dist/dependencyDetector.js +505 -0
- package/dist/dependencyDetector.js.map +1 -0
- package/dist/executor.d.ts +83 -0
- package/dist/executor.d.ts.map +1 -0
- package/dist/executor.js +583 -0
- package/dist/executor.js.map +1 -0
- package/dist/git.d.ts +85 -0
- package/dist/git.d.ts.map +1 -0
- package/dist/git.js +283 -0
- package/dist/git.js.map +1 -0
- package/dist/imageManager.d.ts +161 -0
- package/dist/imageManager.d.ts.map +1 -0
- package/dist/imageManager.js +674 -0
- package/dist/imageManager.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +437 -0
- package/dist/index.js.map +1 -0
- package/dist/input-visual-test.d.ts +9 -0
- package/dist/input-visual-test.d.ts.map +1 -0
- package/dist/input-visual-test.js +108 -0
- package/dist/input-visual-test.js.map +1 -0
- package/dist/inputBox.d.ts +228 -0
- package/dist/inputBox.d.ts.map +1 -0
- package/dist/inputBox.js +966 -0
- package/dist/inputBox.js.map +1 -0
- package/dist/logger.d.ts +136 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +347 -0
- package/dist/logger.js.map +1 -0
- package/dist/orchestrator.d.ts +149 -0
- package/dist/orchestrator.d.ts.map +1 -0
- package/dist/orchestrator.js +821 -0
- package/dist/orchestrator.js.map +1 -0
- package/dist/planner.d.ts +86 -0
- package/dist/planner.d.ts.map +1 -0
- package/dist/planner.js +830 -0
- package/dist/planner.js.map +1 -0
- package/dist/pty-test-runner.d.ts +87 -0
- package/dist/pty-test-runner.d.ts.map +1 -0
- package/dist/pty-test-runner.js +721 -0
- package/dist/pty-test-runner.js.map +1 -0
- package/dist/screen.d.ts +44 -0
- package/dist/screen.d.ts.map +1 -0
- package/dist/screen.js +152 -0
- package/dist/screen.js.map +1 -0
- package/dist/taskQueue.d.ts +70 -0
- package/dist/taskQueue.d.ts.map +1 -0
- package/dist/taskQueue.js +282 -0
- package/dist/taskQueue.js.map +1 -0
- package/dist/tui-test-harness.d.ts +216 -0
- package/dist/tui-test-harness.d.ts.map +1 -0
- package/dist/tui-test-harness.js +527 -0
- package/dist/tui-test-harness.js.map +1 -0
- package/dist/types.d.ts +257 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +46 -0
- package/dist/types.js.map +1 -0
- package/dist/ui-visual-test.d.ts +15 -0
- package/dist/ui-visual-test.d.ts.map +1 -0
- package/dist/ui-visual-test.js +141 -0
- package/dist/ui-visual-test.js.map +1 -0
- package/dist/ui.d.ts +272 -0
- package/dist/ui.d.ts.map +1 -0
- package/dist/ui.js +1531 -0
- package/dist/ui.js.map +1 -0
- package/dist/validator.d.ts +53 -0
- package/dist/validator.d.ts.map +1 -0
- package/dist/validator.js +491 -0
- package/dist/validator.js.map +1 -0
- package/dist/versionCheck.d.ts +63 -0
- package/dist/versionCheck.d.ts.map +1 -0
- package/dist/versionCheck.js +261 -0
- package/dist/versionCheck.js.map +1 -0
- package/package.json +62 -0
package/dist/ui.d.ts
ADDED
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
import { EventEmitter } from 'node:events';
|
|
2
|
+
export interface MenuItem {
|
|
3
|
+
key: string;
|
|
4
|
+
label: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Interface for injectable streams (for testing)
|
|
9
|
+
*/
|
|
10
|
+
export interface TestableStream {
|
|
11
|
+
write: (data: string) => boolean;
|
|
12
|
+
columns?: number;
|
|
13
|
+
}
|
|
14
|
+
export interface TestableInput extends EventEmitter {
|
|
15
|
+
isTTY?: boolean;
|
|
16
|
+
setRawMode?: (mode: boolean) => void;
|
|
17
|
+
resume?: () => void;
|
|
18
|
+
pause?: () => void;
|
|
19
|
+
}
|
|
20
|
+
export declare class InteractiveUI extends EventEmitter {
|
|
21
|
+
private rl;
|
|
22
|
+
private isRawMode;
|
|
23
|
+
private _stdin;
|
|
24
|
+
private _stdout;
|
|
25
|
+
constructor(stdin?: TestableInput, stdout?: TestableStream);
|
|
26
|
+
/**
|
|
27
|
+
* Get the stdin stream (for testing access)
|
|
28
|
+
*/
|
|
29
|
+
get stdin(): TestableInput;
|
|
30
|
+
/**
|
|
31
|
+
* Get the stdout stream (for testing access)
|
|
32
|
+
*/
|
|
33
|
+
get stdout(): TestableStream;
|
|
34
|
+
/**
|
|
35
|
+
* Initialize the UI
|
|
36
|
+
*/
|
|
37
|
+
init(): void;
|
|
38
|
+
/**
|
|
39
|
+
* Enable raw mode for key-by-key input
|
|
40
|
+
*/
|
|
41
|
+
enableRawMode(): void;
|
|
42
|
+
/**
|
|
43
|
+
* Disable raw mode
|
|
44
|
+
*/
|
|
45
|
+
disableRawMode(): void;
|
|
46
|
+
/**
|
|
47
|
+
* Clear the screen and scrollback buffer
|
|
48
|
+
*/
|
|
49
|
+
clear(): void;
|
|
50
|
+
/**
|
|
51
|
+
* Move cursor up N lines
|
|
52
|
+
*/
|
|
53
|
+
cursorUp(n: number): void;
|
|
54
|
+
/**
|
|
55
|
+
* Clear from cursor to end of screen
|
|
56
|
+
*/
|
|
57
|
+
clearToEnd(): void;
|
|
58
|
+
/**
|
|
59
|
+
* Print styled text
|
|
60
|
+
*/
|
|
61
|
+
print(text: string): void;
|
|
62
|
+
/**
|
|
63
|
+
* Print with color
|
|
64
|
+
*/
|
|
65
|
+
printColored(text: string, color: 'green' | 'yellow' | 'red' | 'cyan' | 'gray' | 'bold'): void;
|
|
66
|
+
/**
|
|
67
|
+
* Show a quick-pick menu with command input support
|
|
68
|
+
* @param items Menu items to display
|
|
69
|
+
* @param prompt Header text for the menu
|
|
70
|
+
* @param commandParser Optional callback for custom command parsing
|
|
71
|
+
* @param options Additional options
|
|
72
|
+
* @param options.showInput Whether to show the text input field (default: true if commandParser provided, false otherwise)
|
|
73
|
+
*/
|
|
74
|
+
quickPick(items: MenuItem[], prompt?: string, commandParser?: (input: string) => string | null, options?: {
|
|
75
|
+
showInput?: boolean;
|
|
76
|
+
}): Promise<string | null>;
|
|
77
|
+
/**
|
|
78
|
+
* Prompt for text input
|
|
79
|
+
*/
|
|
80
|
+
prompt(question: string): Promise<string>;
|
|
81
|
+
/**
|
|
82
|
+
* Prompt for text input with Escape support
|
|
83
|
+
* Returns null if Escape is pressed
|
|
84
|
+
* @param prefix - The prompt prefix to display
|
|
85
|
+
* @param placeholder - Optional placeholder text shown when input is empty (displayed in gray)
|
|
86
|
+
*/
|
|
87
|
+
promptWithEscape(prefix: string, placeholder?: string): Promise<string | null>;
|
|
88
|
+
/**
|
|
89
|
+
* Listen for escape key during execution
|
|
90
|
+
*/
|
|
91
|
+
onEscape(callback: () => void): () => void;
|
|
92
|
+
/**
|
|
93
|
+
* Show a spinner during async operation
|
|
94
|
+
*/
|
|
95
|
+
spinner(message: string): {
|
|
96
|
+
stop: (finalMessage?: string) => void;
|
|
97
|
+
};
|
|
98
|
+
/**
|
|
99
|
+
* Wait for any key press
|
|
100
|
+
*/
|
|
101
|
+
waitForKey(message?: string): Promise<void>;
|
|
102
|
+
/**
|
|
103
|
+
* Close the UI
|
|
104
|
+
*/
|
|
105
|
+
close(): void;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Format task status with symbol.
|
|
109
|
+
* For failed/skipped tasks, optionally accepts failureType to show different symbols:
|
|
110
|
+
* - execution failure: red (code was never written)
|
|
111
|
+
* - acceptance failure: yellow/orange (code written but validation failed)
|
|
112
|
+
*/
|
|
113
|
+
/**
|
|
114
|
+
* Get the status icon only (for task lists where name is shown separately)
|
|
115
|
+
*/
|
|
116
|
+
export declare function formatTaskStatusIcon(status: string, failureType?: string): string;
|
|
117
|
+
/**
|
|
118
|
+
* Get the human-readable status name with color
|
|
119
|
+
*/
|
|
120
|
+
export declare function formatStatusName(status: string, failureType?: string): string;
|
|
121
|
+
/**
|
|
122
|
+
* Format task status with icon and name (for status detail views)
|
|
123
|
+
*/
|
|
124
|
+
export declare function formatTaskStatus(status: string, failureType?: string): string;
|
|
125
|
+
/**
|
|
126
|
+
* Format blocked task status symbol
|
|
127
|
+
*/
|
|
128
|
+
export declare function formatBlockedStatus(): string;
|
|
129
|
+
/**
|
|
130
|
+
* Format progress bar with optional skipped tasks display
|
|
131
|
+
* @param completed Number of completed tasks
|
|
132
|
+
* @param total Total number of tasks
|
|
133
|
+
* @param width Width of the progress bar
|
|
134
|
+
* @param skipped Number of skipped tasks (shown in yellow)
|
|
135
|
+
*/
|
|
136
|
+
export declare function progressBar(completed: number, total: number, width?: number, skipped?: number): string;
|
|
137
|
+
/**
|
|
138
|
+
* Task info for planning mode
|
|
139
|
+
*/
|
|
140
|
+
export interface PlanningTask {
|
|
141
|
+
id: string;
|
|
142
|
+
title: string;
|
|
143
|
+
status: string;
|
|
144
|
+
failureType?: string;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Callback for plan modifications during execution
|
|
148
|
+
*/
|
|
149
|
+
export interface PlanModificationCallback {
|
|
150
|
+
/** Called when user wants to skip a pending task */
|
|
151
|
+
onSkipTask?: (taskId: string) => Promise<void>;
|
|
152
|
+
/** Called when user wants to move a task up in the queue */
|
|
153
|
+
onMoveTaskUp?: (taskId: string) => Promise<void>;
|
|
154
|
+
/** Called when user wants to move a task down in the queue */
|
|
155
|
+
onMoveTaskDown?: (taskId: string) => Promise<void>;
|
|
156
|
+
/** Called when user wants to edit a task description */
|
|
157
|
+
onEditTask?: (taskId: string, newDescription: string) => Promise<void>;
|
|
158
|
+
/** Called to get current task list */
|
|
159
|
+
getTasks?: () => Promise<PlanningTask[]>;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Animated progress display for task execution with output streaming and input bar
|
|
163
|
+
*/
|
|
164
|
+
export declare class ProgressDisplay {
|
|
165
|
+
private interval;
|
|
166
|
+
private startTime;
|
|
167
|
+
private taskStartTime;
|
|
168
|
+
private spinnerFrames;
|
|
169
|
+
private frameIndex;
|
|
170
|
+
private lineCount;
|
|
171
|
+
private maxLineCount;
|
|
172
|
+
private isFirstRender;
|
|
173
|
+
private bouncePos;
|
|
174
|
+
private bounceDir;
|
|
175
|
+
private bounceWidth;
|
|
176
|
+
private currentTask;
|
|
177
|
+
private currentTaskId;
|
|
178
|
+
private currentTaskIndex;
|
|
179
|
+
private totalTasks;
|
|
180
|
+
private completedTasks;
|
|
181
|
+
private skippedTasks;
|
|
182
|
+
private phase;
|
|
183
|
+
private isRunning;
|
|
184
|
+
private completedDurationMs;
|
|
185
|
+
private lastOutputLines;
|
|
186
|
+
private maxOutputLines;
|
|
187
|
+
private inputBuffer;
|
|
188
|
+
private inputCursorIndex;
|
|
189
|
+
private onInputCallback;
|
|
190
|
+
private keyHandler;
|
|
191
|
+
private resizeHandler;
|
|
192
|
+
private escPendingPause;
|
|
193
|
+
private escTimeout;
|
|
194
|
+
private planningMode;
|
|
195
|
+
private planningTasks;
|
|
196
|
+
private planningSelectedIndex;
|
|
197
|
+
private planModificationCallback;
|
|
198
|
+
private planningMessage;
|
|
199
|
+
private headerRenderer;
|
|
200
|
+
/**
|
|
201
|
+
* Set a header renderer callback that will be called on each render
|
|
202
|
+
* @param renderer Function that writes header content to stdout
|
|
203
|
+
*/
|
|
204
|
+
setHeaderRenderer(renderer: () => void): void;
|
|
205
|
+
/**
|
|
206
|
+
* Start the animated display
|
|
207
|
+
* @param totalTasks Total number of tasks
|
|
208
|
+
* @param onInput Callback for user input
|
|
209
|
+
* @param initialCompletedDurationMs Duration of already-completed tasks (from previous runs)
|
|
210
|
+
* @param initialSkippedTasks Number of already-skipped tasks
|
|
211
|
+
* @param planModification Optional callbacks for concurrent plan modification
|
|
212
|
+
*/
|
|
213
|
+
start(totalTasks: number, onInput?: (input: string) => void, initialCompletedDurationMs?: number, initialSkippedTasks?: number, planModification?: PlanModificationCallback): void;
|
|
214
|
+
/**
|
|
215
|
+
* Add output line from Claude Code
|
|
216
|
+
*/
|
|
217
|
+
addOutput(line: string): void;
|
|
218
|
+
/**
|
|
219
|
+
* Update when starting a new task
|
|
220
|
+
*/
|
|
221
|
+
startTask(taskName: string, taskIndex: number, taskId?: string): void;
|
|
222
|
+
/**
|
|
223
|
+
* Update phase (executing -> validating -> committing)
|
|
224
|
+
*/
|
|
225
|
+
setPhase(phase: 'executing' | 'validating' | 'committing'): void;
|
|
226
|
+
/**
|
|
227
|
+
* Mark a task as complete
|
|
228
|
+
* @param durationMs Optional duration of the completed task in milliseconds.
|
|
229
|
+
* If not provided, calculates from taskStartTime.
|
|
230
|
+
*/
|
|
231
|
+
completeTask(durationMs?: number): void;
|
|
232
|
+
/**
|
|
233
|
+
* Stop the animated display
|
|
234
|
+
*/
|
|
235
|
+
stop(finalMessage?: string): void;
|
|
236
|
+
/**
|
|
237
|
+
* Enter planning mode - show task list overlay while execution continues
|
|
238
|
+
*/
|
|
239
|
+
private enterPlanningMode;
|
|
240
|
+
/**
|
|
241
|
+
* Exit planning mode and return to normal execution view
|
|
242
|
+
*/
|
|
243
|
+
private exitPlanningMode;
|
|
244
|
+
/**
|
|
245
|
+
* Handle keyboard input in planning mode
|
|
246
|
+
*/
|
|
247
|
+
private handlePlanningKey;
|
|
248
|
+
/**
|
|
249
|
+
* Execute a planning command
|
|
250
|
+
*/
|
|
251
|
+
private executePlanningCommand;
|
|
252
|
+
private clearLines;
|
|
253
|
+
private formatTime;
|
|
254
|
+
/**
|
|
255
|
+
* Get the total working time (sum of completed task durations + current task elapsed)
|
|
256
|
+
*/
|
|
257
|
+
getElapsedTime(): string;
|
|
258
|
+
/**
|
|
259
|
+
* Get the total working time in milliseconds
|
|
260
|
+
*/
|
|
261
|
+
getTotalDurationMs(): number;
|
|
262
|
+
/**
|
|
263
|
+
* Estimate task progress based on phase and elapsed time
|
|
264
|
+
*/
|
|
265
|
+
private getTaskPercent;
|
|
266
|
+
private render;
|
|
267
|
+
/**
|
|
268
|
+
* Log a message without disrupting the display
|
|
269
|
+
*/
|
|
270
|
+
log(message: string): void;
|
|
271
|
+
}
|
|
272
|
+
//# sourceMappingURL=ui.d.ts.map
|
package/dist/ui.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"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"}
|