open-agents-ai 0.138.38 → 0.138.40
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/index.js +23 -29
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -51331,7 +51331,7 @@ var init_status_bar = __esm({
|
|
|
51331
51331
|
}
|
|
51332
51332
|
this.stopAllMetrics();
|
|
51333
51333
|
const rows = process.stdout.rows ?? 24;
|
|
51334
|
-
|
|
51334
|
+
this.termWrite(`\x1B[1;${rows}r`);
|
|
51335
51335
|
}
|
|
51336
51336
|
/** Whether the status bar is currently active */
|
|
51337
51337
|
get isActive() {
|
|
@@ -51431,7 +51431,7 @@ var init_status_bar = __esm({
|
|
|
51431
51431
|
}
|
|
51432
51432
|
buf += `\x1B[${pos.bufferRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildBufferContent(w)}${RESET}`;
|
|
51433
51433
|
buf += `\x1B[${pos.metricsRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildMetricsLine()}${RESET}\x1B[?7h\x1B[${pos.scrollEnd};1H`;
|
|
51434
|
-
|
|
51434
|
+
this.termWrite(buf);
|
|
51435
51435
|
} else {
|
|
51436
51436
|
this.applyScrollRegion();
|
|
51437
51437
|
let clearBuf = "\x1B[?7l";
|
|
@@ -51439,7 +51439,7 @@ var init_status_bar = __esm({
|
|
|
51439
51439
|
clearBuf += `\x1B[${row};1H\x1B[2K`;
|
|
51440
51440
|
}
|
|
51441
51441
|
clearBuf += "\x1B[?7h";
|
|
51442
|
-
|
|
51442
|
+
this.termWrite(clearBuf);
|
|
51443
51443
|
this.renderFooterAndPositionInput();
|
|
51444
51444
|
if (this._bannerRefresh)
|
|
51445
51445
|
this._bannerRefresh();
|
|
@@ -51466,6 +51466,11 @@ var init_status_bar = __esm({
|
|
|
51466
51466
|
_origWrite = null;
|
|
51467
51467
|
/** True stdout.write captured at construction — immune to interceptor stacking */
|
|
51468
51468
|
_trueStdoutWrite = process.stdout.write.bind(process.stdout);
|
|
51469
|
+
/** Write directly to the terminal, bypassing ALL interceptors.
|
|
51470
|
+
* ALL footer/input/braille rendering MUST use this, never process.stdout.write. */
|
|
51471
|
+
termWrite(data) {
|
|
51472
|
+
this._trueStdoutWrite.call(process.stdout, data);
|
|
51473
|
+
}
|
|
51469
51474
|
beginContentWrite() {
|
|
51470
51475
|
if (!this.active)
|
|
51471
51476
|
return;
|
|
@@ -51605,7 +51610,7 @@ ${CONTENT_BG_SEQ}`);
|
|
|
51605
51610
|
return;
|
|
51606
51611
|
const rows = process.stdout.rows ?? 24;
|
|
51607
51612
|
const pos = this.rowPositions(rows);
|
|
51608
|
-
|
|
51613
|
+
this.termWrite(`\x1B[${pos.inputStartRow};1H\x1B[2K\x1B[?25h`);
|
|
51609
51614
|
}
|
|
51610
51615
|
/** Strip ANSI escape codes to measure visible character width */
|
|
51611
51616
|
static visWidth(s) {
|
|
@@ -52025,7 +52030,7 @@ ${CONTENT_BG_SEQ}`);
|
|
|
52025
52030
|
this.updateFooterHeight();
|
|
52026
52031
|
const rows = process.stdout.rows ?? 24;
|
|
52027
52032
|
const pos = this.rowPositions(rows);
|
|
52028
|
-
|
|
52033
|
+
this.termWrite(`\x1B[${this.scrollRegionTop};${pos.scrollEnd}r\x1B[${pos.scrollEnd};1H`);
|
|
52029
52034
|
}
|
|
52030
52035
|
/**
|
|
52031
52036
|
* Draw the COMPLETE footer — separators, prompt, metrics — in a single
|
|
@@ -52051,15 +52056,15 @@ ${CONTENT_BG_SEQ}`);
|
|
|
52051
52056
|
let scrollUp = `\x1B[${oldScrollEnd};1H`;
|
|
52052
52057
|
for (let i = 0; i < heightDelta; i++)
|
|
52053
52058
|
scrollUp += "\n";
|
|
52054
|
-
|
|
52055
|
-
|
|
52059
|
+
this.termWrite(scrollUp);
|
|
52060
|
+
this.termWrite(`\x1B[${this.scrollRegionTop};${pos.scrollEnd}r`);
|
|
52056
52061
|
} else {
|
|
52057
52062
|
const absD = Math.abs(heightDelta);
|
|
52058
|
-
|
|
52063
|
+
this.termWrite(`\x1B[${this.scrollRegionTop};${pos.scrollEnd}r`);
|
|
52059
52064
|
let scrollDown = `\x1B[${this.scrollRegionTop};1H`;
|
|
52060
52065
|
for (let i = 0; i < absD; i++)
|
|
52061
52066
|
scrollDown += "\x1BM";
|
|
52062
|
-
|
|
52067
|
+
this.termWrite(scrollDown);
|
|
52063
52068
|
}
|
|
52064
52069
|
}
|
|
52065
52070
|
const inputWrap = this.wrapInput(w);
|
|
@@ -52073,7 +52078,7 @@ ${CONTENT_BG_SEQ}`);
|
|
|
52073
52078
|
buf += `\x1B[${pos.bufferRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildBufferContent(w)}${RESET}`;
|
|
52074
52079
|
buf += `\x1B[${pos.metricsRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildMetricsLine()}${RESET}`;
|
|
52075
52080
|
buf += `\x1B[?7h\x1B[${cursorTermRow};${inputWrap.cursorCol}H\x1B[?25h`;
|
|
52076
|
-
|
|
52081
|
+
this.termWrite(buf);
|
|
52077
52082
|
}
|
|
52078
52083
|
/**
|
|
52079
52084
|
* Redraw footer while preserving the current cursor position.
|
|
@@ -52103,7 +52108,7 @@ ${CONTENT_BG_SEQ}`);
|
|
|
52103
52108
|
const pos = this.rowPositions(rows);
|
|
52104
52109
|
const buf = `\x1B7\x1B[?7l\x1B[${pos.bufferRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildBufferContent(w)}${RESET}\x1B[${pos.metricsRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildMetricsLine()}${RESET}\x1B[?7h\x1B8` + // DEC restore cursor
|
|
52105
52110
|
(this.writeDepth === 0 ? "\x1B[?25h" : "");
|
|
52106
|
-
|
|
52111
|
+
this.termWrite(buf);
|
|
52107
52112
|
}
|
|
52108
52113
|
/**
|
|
52109
52114
|
* Render the input rows during an active content write (streaming).
|
|
@@ -52185,7 +52190,7 @@ ${CONTENT_BG_SEQ}`);
|
|
|
52185
52190
|
const w = getTermWidth();
|
|
52186
52191
|
const pos = this.rowPositions(rows);
|
|
52187
52192
|
const content = this.buildBufferContent(w);
|
|
52188
|
-
|
|
52193
|
+
this.termWrite(`\x1B7\x1B[?7l\x1B[${pos.bufferRow};1H${PANEL_BG_SEQ}\x1B[2K${content}${RESET}\x1B[?7h\x1B8`);
|
|
52189
52194
|
}
|
|
52190
52195
|
/**
|
|
52191
52196
|
* Hook into process.stdin to redraw footer after every keystroke.
|
|
@@ -53365,7 +53370,6 @@ ${entry.fullContent}`
|
|
|
53365
53370
|
streamTextBuffer = "";
|
|
53366
53371
|
if (!isNeovimActive()) {
|
|
53367
53372
|
if (stream?.enabled) {
|
|
53368
|
-
stream?.muteReadline?.();
|
|
53369
53373
|
if (statusBar?.isActive)
|
|
53370
53374
|
statusBar.beginContentWrite();
|
|
53371
53375
|
stream.renderer.onStreamStart();
|
|
@@ -53403,9 +53407,10 @@ ${entry.fullContent}`
|
|
|
53403
53407
|
} else {
|
|
53404
53408
|
if (stream?.enabled) {
|
|
53405
53409
|
stream.renderer.onStreamEnd();
|
|
53406
|
-
if (statusBar?.isActive)
|
|
53410
|
+
if (statusBar?.isActive) {
|
|
53407
53411
|
statusBar.endContentWrite();
|
|
53408
|
-
|
|
53412
|
+
statusBar.positionAtInput();
|
|
53413
|
+
}
|
|
53409
53414
|
}
|
|
53410
53415
|
if (config.verbose && streamDurationMs > 0) {
|
|
53411
53416
|
const streamChars = event.content?.length ?? 0;
|
|
@@ -54071,6 +54076,7 @@ Rationale: ${proposal.rationale}${provenanceNote}`;
|
|
|
54071
54076
|
completer
|
|
54072
54077
|
});
|
|
54073
54078
|
statusBar.hookReadlineScroll(rl);
|
|
54079
|
+
rl.output = null;
|
|
54074
54080
|
function persistHistoryLine(line) {
|
|
54075
54081
|
if (!line.trim())
|
|
54076
54082
|
return;
|
|
@@ -55744,20 +55750,8 @@ Execute this skill now. Follow the behavioral guidance above.`;
|
|
|
55744
55750
|
statusBar.setProcessing(true);
|
|
55745
55751
|
const task = startTask(skillPrompt, currentConfig, repoRoot, voiceEngine, {
|
|
55746
55752
|
enabled: streamEnabled,
|
|
55747
|
-
renderer: streamRenderer
|
|
55748
|
-
|
|
55749
|
-
if (rl.output) {
|
|
55750
|
-
rl._savedOutput = rl.output;
|
|
55751
|
-
rl.output = null;
|
|
55752
|
-
}
|
|
55753
|
-
},
|
|
55754
|
-
unmuteReadline: () => {
|
|
55755
|
-
if (rl._savedOutput) {
|
|
55756
|
-
rl.output = rl._savedOutput;
|
|
55757
|
-
delete rl._savedOutput;
|
|
55758
|
-
}
|
|
55759
|
-
showPrompt();
|
|
55760
|
-
}
|
|
55753
|
+
renderer: streamRenderer
|
|
55754
|
+
// rl.output permanently null — all display via footer renderer
|
|
55761
55755
|
}, {
|
|
55762
55756
|
contextStores,
|
|
55763
55757
|
taskMemoryStore: taskMemoryStore ?? void 0,
|
package/package.json
CHANGED