erosolar-cli 1.7.397 → 1.7.399
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/shell/interactiveShell.d.ts +6 -4
- package/dist/shell/interactiveShell.d.ts.map +1 -1
- package/dist/shell/interactiveShell.js +95 -37
- package/dist/shell/interactiveShell.js.map +1 -1
- package/dist/shell/shellApp.js +1 -1
- package/dist/shell/shellApp.js.map +1 -1
- package/dist/shell/terminalInput.d.ts +0 -18
- package/dist/shell/terminalInput.d.ts.map +1 -1
- package/dist/shell/terminalInput.js +0 -27
- package/dist/shell/terminalInput.js.map +1 -1
- package/dist/shell/terminalInputAdapter.d.ts +0 -13
- package/dist/shell/terminalInputAdapter.d.ts.map +1 -1
- package/dist/shell/terminalInputAdapter.js +0 -19
- package/dist/shell/terminalInputAdapter.js.map +1 -1
- package/dist/ui/ShellUIAdapter.js +1 -1
- package/dist/ui/ShellUIAdapter.js.map +1 -1
- package/dist/ui/assistantBlockRenderer.d.ts +1 -1
- package/dist/ui/assistantBlockRenderer.d.ts.map +1 -1
- package/dist/ui/assistantBlockRenderer.js +2 -2
- package/dist/ui/assistantBlockRenderer.js.map +1 -1
- package/dist/ui/display.d.ts +8 -5
- package/dist/ui/display.d.ts.map +1 -1
- package/dist/ui/display.js +23 -25
- package/dist/ui/display.js.map +1 -1
- package/dist/ui/theme.d.ts +80 -81
- package/dist/ui/theme.d.ts.map +1 -1
- package/package.json +4 -4
|
@@ -123,7 +123,7 @@ export declare class InteractiveShell {
|
|
|
123
123
|
private readonly version;
|
|
124
124
|
private readonly alternateScreenEnabled;
|
|
125
125
|
private inputInitialized;
|
|
126
|
-
private
|
|
126
|
+
private assistantStreamActive;
|
|
127
127
|
constructor(config: ShellConfig);
|
|
128
128
|
private parallelAgentDisplayLines;
|
|
129
129
|
private setupParallelAgentTracking;
|
|
@@ -241,9 +241,11 @@ export declare class InteractiveShell {
|
|
|
241
241
|
private refreshControlBar;
|
|
242
242
|
private refreshFeatureStatusDisplay;
|
|
243
243
|
private writeLocked;
|
|
244
|
-
private
|
|
245
|
-
private
|
|
246
|
-
private
|
|
244
|
+
private startAssistantStream;
|
|
245
|
+
private streamAssistantChunk;
|
|
246
|
+
private finalizeAssistantStream;
|
|
247
|
+
private enqueueAssistantStream;
|
|
248
|
+
private writeAssistantBlock;
|
|
247
249
|
private renderAssistantBlock;
|
|
248
250
|
private isStreamingUiActive;
|
|
249
251
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactiveShell.d.ts","sourceRoot":"","sources":["../../src/shell/interactiveShell.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"interactiveShell.d.ts","sourceRoot":"","sources":["../../src/shell/interactiveShell.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,6 +37,7 @@ import { generateTestFlows, detectBugs, detectUIUpdates, saveTestFlows, saveBugR
|
|
|
37
37
|
import { TerminalInputAdapter } from './terminalInputAdapter.js';
|
|
38
38
|
import { renderSessionFrame } from '../ui/unified/layout.js';
|
|
39
39
|
import { isUpdateInProgress, maybeOfferCliUpdate } from './updateManager.js';
|
|
40
|
+
import { writeLock } from '../ui/writeLock.js';
|
|
40
41
|
import { enterStreamingMode, exitStreamingMode } from '../ui/globalWriteLock.js';
|
|
41
42
|
import { setGlobalAIEnhancer } from '../tools/localExplore.js';
|
|
42
43
|
import { createProvider } from '../providers/providerFactory.js';
|
|
@@ -183,7 +184,7 @@ export class InteractiveShell {
|
|
|
183
184
|
version;
|
|
184
185
|
alternateScreenEnabled;
|
|
185
186
|
inputInitialized = false;
|
|
186
|
-
|
|
187
|
+
assistantStreamActive = false;
|
|
187
188
|
constructor(config) {
|
|
188
189
|
this.profile = config.profile;
|
|
189
190
|
this.profileLabel = config.profileLabel;
|
|
@@ -199,7 +200,7 @@ export class InteractiveShell {
|
|
|
199
200
|
this.sessionRestoreConfig = config.sessionRestore ?? { mode: 'none' };
|
|
200
201
|
this._enabledPlugins = config.enabledPlugins ?? [];
|
|
201
202
|
this.version = config.version ?? '0.0.0';
|
|
202
|
-
this.assistantBlocksEnabled =
|
|
203
|
+
this.assistantBlocksEnabled = config.assistantBlocksEnabled ?? true;
|
|
203
204
|
// Alternate screen disabled - use terminal-native mode for proper scrollback and text selection
|
|
204
205
|
this.alternateScreenEnabled = false;
|
|
205
206
|
this.initializeSessionHistory();
|
|
@@ -297,7 +298,7 @@ export class InteractiveShell {
|
|
|
297
298
|
});
|
|
298
299
|
if (this.assistantBlocksEnabled) {
|
|
299
300
|
this.assistantBlockRenderer = new AssistantBlockRenderer({
|
|
300
|
-
write: (text) => this.
|
|
301
|
+
write: (text) => this.writeAssistantBlock(text),
|
|
301
302
|
updates: this.uiUpdates,
|
|
302
303
|
});
|
|
303
304
|
}
|
|
@@ -454,15 +455,15 @@ export class InteractiveShell {
|
|
|
454
455
|
`${theme.ui.muted('Current')}: ${theme.info(context.currentVersion)}`,
|
|
455
456
|
`${theme.ui.muted('Latest')}: ${theme.success(context.latestVersion)}`,
|
|
456
457
|
'',
|
|
457
|
-
`${theme.primary('
|
|
458
|
-
`${theme.ui.muted('
|
|
458
|
+
`${theme.primary('▶ Yes (recommended)')} ${theme.ui.muted('install now')}`,
|
|
459
|
+
`${theme.ui.muted(' No')} ${theme.ui.muted('skip for now')}`,
|
|
459
460
|
'',
|
|
460
|
-
'Press Enter
|
|
461
|
+
theme.ui.muted('Press Enter for Yes, or type n/2 to skip.'),
|
|
461
462
|
];
|
|
462
463
|
display.showSystemMessage(lines.join('\n'));
|
|
463
464
|
const prompt = createInterface({ input, output });
|
|
464
465
|
try {
|
|
465
|
-
const raw = (await prompt.question('
|
|
466
|
+
const raw = (await prompt.question('Update now? [Y/n]: ')).trim().toLowerCase();
|
|
466
467
|
if (!raw || raw === 'y' || raw === 'yes' || raw === '1' || raw === 'update') {
|
|
467
468
|
return true;
|
|
468
469
|
}
|
|
@@ -1342,28 +1343,66 @@ export class InteractiveShell {
|
|
|
1342
1343
|
// Route through display stream so scroll regions and streaming locks stay in sync
|
|
1343
1344
|
display.stream(content);
|
|
1344
1345
|
}
|
|
1345
|
-
|
|
1346
|
-
this.
|
|
1346
|
+
startAssistantStream(metadata) {
|
|
1347
|
+
if (this.assistantStreamActive) {
|
|
1348
|
+
return;
|
|
1349
|
+
}
|
|
1350
|
+
this.assistantStreamActive = true;
|
|
1351
|
+
if (!this.assistantBlocksEnabled || !this.assistantBlockRenderer) {
|
|
1352
|
+
return;
|
|
1353
|
+
}
|
|
1354
|
+
const header = this.assistantBlockRenderer.formatHeader('response', metadata);
|
|
1355
|
+
this.enqueueAssistantStream(`\n${header}\n`);
|
|
1356
|
+
}
|
|
1357
|
+
streamAssistantChunk(chunk) {
|
|
1358
|
+
if (!chunk) {
|
|
1359
|
+
return;
|
|
1360
|
+
}
|
|
1361
|
+
if (!this.assistantStreamActive) {
|
|
1362
|
+
this.startAssistantStream({
|
|
1363
|
+
contextWindowTokens: this.activeContextWindowTokens,
|
|
1364
|
+
});
|
|
1365
|
+
}
|
|
1366
|
+
this.enqueueAssistantStream(chunk);
|
|
1347
1367
|
}
|
|
1348
|
-
|
|
1349
|
-
if (!this.
|
|
1368
|
+
finalizeAssistantStream() {
|
|
1369
|
+
if (!this.assistantStreamActive) {
|
|
1350
1370
|
return;
|
|
1351
1371
|
}
|
|
1352
|
-
this.
|
|
1372
|
+
this.assistantStreamActive = false;
|
|
1373
|
+
if (this.assistantBlocksEnabled && this.assistantBlockRenderer) {
|
|
1374
|
+
this.enqueueAssistantStream('\n\n');
|
|
1375
|
+
}
|
|
1353
1376
|
}
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
if (buffered.trim()) {
|
|
1358
|
-
return buffered;
|
|
1377
|
+
enqueueAssistantStream(content) {
|
|
1378
|
+
if (!content) {
|
|
1379
|
+
return;
|
|
1359
1380
|
}
|
|
1360
|
-
|
|
1381
|
+
const run = () => this.writeAssistantBlock(content);
|
|
1382
|
+
this.uiUpdates.enqueue({
|
|
1383
|
+
lane: 'stream',
|
|
1384
|
+
mode: ['streaming', 'processing', 'idle'],
|
|
1385
|
+
priority: 'high',
|
|
1386
|
+
description: 'assistant stream flush',
|
|
1387
|
+
run,
|
|
1388
|
+
});
|
|
1389
|
+
}
|
|
1390
|
+
writeAssistantBlock(content) {
|
|
1391
|
+
if (!content) {
|
|
1392
|
+
return;
|
|
1393
|
+
}
|
|
1394
|
+
// Ensure assistant block writes are serialized with terminal input renders
|
|
1395
|
+
writeLock.safeWrite(() => {
|
|
1396
|
+
this.terminalInput.streamContent(content);
|
|
1397
|
+
});
|
|
1361
1398
|
}
|
|
1362
1399
|
renderAssistantBlock(type, content, metadata) {
|
|
1363
1400
|
if (!this.assistantBlockRenderer) {
|
|
1364
1401
|
return;
|
|
1365
1402
|
}
|
|
1366
1403
|
this.assistantBlockRenderer.renderBlock(type, content, metadata);
|
|
1404
|
+
// Ensure the prompt stays pinned below freshly written blocks
|
|
1405
|
+
this.renderPromptArea();
|
|
1367
1406
|
}
|
|
1368
1407
|
isStreamingUiActive() {
|
|
1369
1408
|
return this.streamingHeartbeatStart !== null;
|
|
@@ -1544,7 +1583,6 @@ export class InteractiveShell {
|
|
|
1544
1583
|
this.stopStreamingHeartbeat();
|
|
1545
1584
|
// Enter global streaming mode - blocks all non-streaming UI output
|
|
1546
1585
|
enterStreamingMode();
|
|
1547
|
-
this.resetAssistantStreamBuffer();
|
|
1548
1586
|
this.streamingStatusBase = label;
|
|
1549
1587
|
this.streamingStatusDetail = null;
|
|
1550
1588
|
this.latestThoughtSummary = null;
|
|
@@ -1561,6 +1599,7 @@ export class InteractiveShell {
|
|
|
1561
1599
|
this.uiUpdates.startHeartbeat('streaming', {
|
|
1562
1600
|
intervalMs: 1000,
|
|
1563
1601
|
lane: 'heartbeat',
|
|
1602
|
+
priority: 'high',
|
|
1564
1603
|
mode: ['streaming', 'processing'],
|
|
1565
1604
|
coalesceKey: 'streaming:heartbeat',
|
|
1566
1605
|
run: () => {
|
|
@@ -2130,14 +2169,30 @@ export class InteractiveShell {
|
|
|
2130
2169
|
break;
|
|
2131
2170
|
}
|
|
2132
2171
|
};
|
|
2172
|
+
const suppressCommandOutput = this.isStreamingUiActive();
|
|
2133
2173
|
let capturedOutput = '';
|
|
2134
2174
|
try {
|
|
2135
|
-
const { output: outputBuffer } = await display.captureOutput(runCommand
|
|
2175
|
+
const { output: outputBuffer } = await display.captureOutput(runCommand, {
|
|
2176
|
+
silenceOutput: suppressCommandOutput,
|
|
2177
|
+
});
|
|
2136
2178
|
capturedOutput = outputBuffer;
|
|
2179
|
+
if (suppressCommandOutput && capturedOutput.trim()) {
|
|
2180
|
+
const normalized = capturedOutput.endsWith('\n') ? capturedOutput : `${capturedOutput}\n`;
|
|
2181
|
+
this.writeLocked(normalized);
|
|
2182
|
+
}
|
|
2137
2183
|
}
|
|
2138
2184
|
catch (error) {
|
|
2139
2185
|
capturedOutput = error?.capturedOutput ?? capturedOutput;
|
|
2140
|
-
|
|
2186
|
+
if (suppressCommandOutput) {
|
|
2187
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
2188
|
+
const { output: errorOutput } = await display.captureOutput(() => display.showError(message, error), { silenceOutput: true });
|
|
2189
|
+
const streamedError = errorOutput || message;
|
|
2190
|
+
capturedOutput = capturedOutput || streamedError;
|
|
2191
|
+
this.writeLocked(streamedError.endsWith('\n') ? streamedError : `${streamedError}\n`);
|
|
2192
|
+
}
|
|
2193
|
+
else {
|
|
2194
|
+
display.showError(error instanceof Error ? error.message : String(error), error);
|
|
2195
|
+
}
|
|
2141
2196
|
}
|
|
2142
2197
|
const panelContent = this.buildInlineCommandPanel(command, capturedOutput);
|
|
2143
2198
|
this.terminalInput.setInlineCommandPanel(panelContent);
|
|
@@ -5777,36 +5832,32 @@ What's the next action?`;
|
|
|
5777
5832
|
};
|
|
5778
5833
|
this.agent = this.runtimeSession.createAgent(selection, {
|
|
5779
5834
|
onStreamChunk: (chunk) => {
|
|
5780
|
-
|
|
5781
|
-
this.appendAssistantStreamChunk(chunk);
|
|
5782
|
-
return;
|
|
5783
|
-
}
|
|
5784
|
-
// Stream output using clean streamContent() - chat box floats below
|
|
5785
|
-
this.terminalInput.streamContent(chunk);
|
|
5835
|
+
this.streamAssistantChunk(chunk);
|
|
5786
5836
|
},
|
|
5787
5837
|
onStreamFallback: (info) => this.handleStreamingFallback(info),
|
|
5788
5838
|
onAssistantMessage: (content, metadata) => {
|
|
5789
5839
|
const enriched = this.buildDisplayMetadata(metadata);
|
|
5790
5840
|
const usingBlocks = this.assistantBlocksEnabled && this.assistantBlockRenderer !== null;
|
|
5791
|
-
const
|
|
5792
|
-
const parsed = this.splitThinkingResponse(sourceContent);
|
|
5841
|
+
const parsed = this.splitThinkingResponse(content);
|
|
5793
5842
|
const thinking = parsed?.thinking ?? null;
|
|
5794
5843
|
const shouldRenderThoughtBlock = Boolean(thinking) && !this.hasShownThoughtProcess;
|
|
5795
|
-
const responseContent = parsed ? parsed.response?.trim() ?? '' :
|
|
5796
|
-
const narrativeContent = parsed?.response ??
|
|
5844
|
+
const responseContent = parsed ? parsed.response?.trim() ?? '' : content.trim();
|
|
5845
|
+
const narrativeContent = parsed?.response ?? content;
|
|
5797
5846
|
if (metadata.isFinal) {
|
|
5798
5847
|
if (thinking) {
|
|
5799
5848
|
// Update status + summary, but skip the legacy UI output when blocks are enabled
|
|
5800
5849
|
this.presentThoughtProcess(thinking, enriched, {
|
|
5801
5850
|
wasStreamed: usingBlocks || metadata.wasStreamed,
|
|
5802
5851
|
});
|
|
5803
|
-
if (usingBlocks && shouldRenderThoughtBlock) {
|
|
5852
|
+
if (usingBlocks && shouldRenderThoughtBlock && !metadata.wasStreamed) {
|
|
5804
5853
|
this.renderAssistantBlock('thought', thinking, enriched);
|
|
5805
5854
|
}
|
|
5806
5855
|
}
|
|
5807
5856
|
if (usingBlocks) {
|
|
5808
|
-
|
|
5809
|
-
|
|
5857
|
+
if (!metadata.wasStreamed) {
|
|
5858
|
+
const body = responseContent || content;
|
|
5859
|
+
this.renderAssistantBlock('response', body, enriched);
|
|
5860
|
+
}
|
|
5810
5861
|
}
|
|
5811
5862
|
else if (!metadata.wasStreamed && responseContent) {
|
|
5812
5863
|
display.showAssistantMessage(responseContent, enriched);
|
|
@@ -5824,6 +5875,9 @@ What's the next action?`;
|
|
|
5824
5875
|
// Auto-verify changes: build first (catches type errors), then tests
|
|
5825
5876
|
void this.enforceAutoBuild('final-response');
|
|
5826
5877
|
void this.enforceAutoTests('final-response');
|
|
5878
|
+
if (metadata.wasStreamed) {
|
|
5879
|
+
this.finalizeAssistantStream();
|
|
5880
|
+
}
|
|
5827
5881
|
}
|
|
5828
5882
|
else {
|
|
5829
5883
|
if (thinking) {
|
|
@@ -5835,8 +5889,12 @@ What's the next action?`;
|
|
|
5835
5889
|
// Stop spinner and show the narrative text directly
|
|
5836
5890
|
display.stopThinking();
|
|
5837
5891
|
if (usingBlocks) {
|
|
5838
|
-
|
|
5839
|
-
|
|
5892
|
+
if (metadata.wasStreamed) {
|
|
5893
|
+
this.finalizeAssistantStream();
|
|
5894
|
+
}
|
|
5895
|
+
else {
|
|
5896
|
+
this.renderAssistantBlock('thought', narrativeContent, enriched);
|
|
5897
|
+
}
|
|
5840
5898
|
}
|
|
5841
5899
|
else if (!metadata.wasStreamed) {
|
|
5842
5900
|
const narrative = parsed?.response ?? content;
|
|
@@ -6416,7 +6474,7 @@ What's the next action?`;
|
|
|
6416
6474
|
const detail = detailText ? ` Error: ${detailText}` : '';
|
|
6417
6475
|
const reason = info.reason ? ` (${info.reason.replace(/-/g, ' ')})` : '';
|
|
6418
6476
|
const partialNote = info.partialResponse ? ' Received partial stream before failure.' : '';
|
|
6419
|
-
this.
|
|
6477
|
+
this.finalizeAssistantStream();
|
|
6420
6478
|
display.showWarning(`Streaming failed${reason}, retrying without streaming.${detail}${partialNote}`);
|
|
6421
6479
|
this.startStreamingHeartbeat('Fallback in progress');
|
|
6422
6480
|
this.requestPromptRefresh(true);
|