open-agents-ai 0.138.24 → 0.138.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/index.js +37 -22
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -36600,7 +36600,7 @@ function tuiSelect(opts) {
|
|
|
36600
36600
|
}
|
|
36601
36601
|
stdin.resume();
|
|
36602
36602
|
enterOverlay();
|
|
36603
|
-
overlayWrite("\x1B[?1049h\x1B[2J\x1B[H\x1B[?25l");
|
|
36603
|
+
overlayWrite("\x1B[?1049h\x1B[48;5;234m\x1B[2J\x1B[H\x1B[?25l");
|
|
36604
36604
|
function clampScroll(displayList) {
|
|
36605
36605
|
const cursorPos = displayList.indexOf(cursor);
|
|
36606
36606
|
if (cursorPos < 0)
|
|
@@ -36614,7 +36614,7 @@ function tuiSelect(opts) {
|
|
|
36614
36614
|
scrollOffset = Math.max(0, Math.min(maxOffset, scrollOffset));
|
|
36615
36615
|
}
|
|
36616
36616
|
function render() {
|
|
36617
|
-
overlayWrite("\x1B[H\x1B[2J");
|
|
36617
|
+
overlayWrite("\x1B[48;5;234m\x1B[H\x1B[2J");
|
|
36618
36618
|
const lines = [];
|
|
36619
36619
|
if (title) {
|
|
36620
36620
|
lines.push(`
|
|
@@ -36687,8 +36687,8 @@ function tuiSelect(opts) {
|
|
|
36687
36687
|
lines.push(` ${selectColors.dim("\u2191/\u2193 navigate Enter select" + actionHint + deleteHint + customHint + " Esc " + (filter ? "clear filter" : "cancel") + " Type to filter")}`);
|
|
36688
36688
|
}
|
|
36689
36689
|
lines.push("");
|
|
36690
|
-
const output = lines.join("\n");
|
|
36691
|
-
overlayWrite(output);
|
|
36690
|
+
const output = lines.join("\n").replace(/\x1B\[0m/g, "\x1B[0m\x1B[48;5;234m");
|
|
36691
|
+
overlayWrite("\x1B[48;5;234m" + output);
|
|
36692
36692
|
lastRenderedLines = lines.length;
|
|
36693
36693
|
}
|
|
36694
36694
|
function cleanup() {
|
|
@@ -51308,6 +51308,10 @@ var init_status_bar = __esm({
|
|
|
51308
51308
|
get isActive() {
|
|
51309
51309
|
return this.active;
|
|
51310
51310
|
}
|
|
51311
|
+
/** Whether content is currently being streamed (writeDepth > 0) */
|
|
51312
|
+
get isStreaming() {
|
|
51313
|
+
return this.writeDepth > 0;
|
|
51314
|
+
}
|
|
51311
51315
|
/** Set/get COHERE participation state — shows 🌐 in metrics when active */
|
|
51312
51316
|
setCohereActive(active) {
|
|
51313
51317
|
this._cohereActive = active;
|
|
@@ -51391,13 +51395,13 @@ var init_status_bar = __esm({
|
|
|
51391
51395
|
for (let row = clearStart; row <= rows; row++) {
|
|
51392
51396
|
buf += `\x1B[${row};1H\x1B[2K`;
|
|
51393
51397
|
}
|
|
51394
|
-
buf += `\x1B[${pos.bufferRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildBufferContent(w)}${RESET}\x1B[${pos.topSepRow};1H${PANEL_BG_SEQ}\x1B[2K${RESET}`;
|
|
51395
51398
|
for (let i = 0; i < inputWrap.lines.length; i++) {
|
|
51396
51399
|
const row = pos.inputStartRow + i;
|
|
51397
51400
|
const prefix = i === 0 ? this.promptText : " ".repeat(this.promptWidth);
|
|
51398
|
-
buf += `\x1B[${row};1H${prefix}${inputWrap.lines[i]}`;
|
|
51401
|
+
buf += `\x1B[${row};1H${PANEL_BG_SEQ}\x1B[2K${prefix}${inputWrap.lines[i]}${RESET}`;
|
|
51399
51402
|
}
|
|
51400
|
-
buf += `\x1B[${pos.
|
|
51403
|
+
buf += `\x1B[${pos.bufferRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildBufferContent(w)}${RESET}`;
|
|
51404
|
+
buf += `\x1B[${pos.metricsRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildMetricsLine()}${RESET}\x1B[?7h\x1B[${pos.scrollEnd};1H`;
|
|
51401
51405
|
process.stdout.write(buf);
|
|
51402
51406
|
} else {
|
|
51403
51407
|
this.applyScrollRegion();
|
|
@@ -51902,7 +51906,7 @@ ${CONTENT_BG_SEQ}`);
|
|
|
51902
51906
|
/** Update _currentFooterHeight based on current input. Returns true if height changed. */
|
|
51903
51907
|
updateFooterHeight(termWidth) {
|
|
51904
51908
|
const inputLines = this.computeInputLineCount(termWidth);
|
|
51905
|
-
const newHeight =
|
|
51909
|
+
const newHeight = 2 + inputLines;
|
|
51906
51910
|
if (newHeight !== this._currentFooterHeight) {
|
|
51907
51911
|
this._currentFooterHeight = newHeight;
|
|
51908
51912
|
return true;
|
|
@@ -51912,18 +51916,25 @@ ${CONTENT_BG_SEQ}`);
|
|
|
51912
51916
|
/** Check if footer height would change, WITHOUT actually updating it */
|
|
51913
51917
|
footerHeightChanged(termWidth) {
|
|
51914
51918
|
const inputLines = this.computeInputLineCount(termWidth);
|
|
51915
|
-
return
|
|
51919
|
+
return 2 + inputLines !== this._currentFooterHeight;
|
|
51916
51920
|
}
|
|
51917
|
-
/** Compute absolute row positions for all footer elements
|
|
51921
|
+
/** Compute absolute row positions for all footer elements.
|
|
51922
|
+
* New layout (top to bottom): input → braille → metrics.
|
|
51923
|
+
* No separator lines, no blank rows. */
|
|
51918
51924
|
rowPositions(rows) {
|
|
51919
51925
|
const fh = this._currentFooterHeight;
|
|
51926
|
+
const inputLines = fh - 2;
|
|
51920
51927
|
return {
|
|
51921
51928
|
scrollEnd: Math.max(rows - fh, this.scrollRegionTop + 1),
|
|
51922
|
-
|
|
51923
|
-
|
|
51924
|
-
|
|
51925
|
-
|
|
51926
|
-
metricsRow: rows
|
|
51929
|
+
inputStartRow: rows - fh + 1,
|
|
51930
|
+
// input at TOP of footer
|
|
51931
|
+
bufferRow: rows - fh + 1 + inputLines,
|
|
51932
|
+
// braille below input
|
|
51933
|
+
metricsRow: rows,
|
|
51934
|
+
// metrics at BOTTOM
|
|
51935
|
+
// Legacy (unused but keeps TS happy for any remaining refs)
|
|
51936
|
+
topSepRow: -1,
|
|
51937
|
+
bottomSepRow: -1
|
|
51927
51938
|
};
|
|
51928
51939
|
}
|
|
51929
51940
|
/**
|
|
@@ -52020,14 +52031,16 @@ ${CONTENT_BG_SEQ}`);
|
|
|
52020
52031
|
}
|
|
52021
52032
|
}
|
|
52022
52033
|
const inputWrap = this.wrapInput(w);
|
|
52023
|
-
let buf =
|
|
52034
|
+
let buf = "\x1B[?7l";
|
|
52024
52035
|
for (let i = 0; i < inputWrap.lines.length; i++) {
|
|
52025
52036
|
const row = pos.inputStartRow + i;
|
|
52026
52037
|
const prefix = i === 0 ? this.promptText : " ".repeat(this.promptWidth);
|
|
52027
52038
|
buf += `\x1B[${row};1H${PANEL_BG_SEQ}\x1B[2K${prefix}${inputWrap.lines[i]}${RESET}`;
|
|
52028
52039
|
}
|
|
52029
52040
|
const cursorTermRow = pos.inputStartRow + inputWrap.cursorRow;
|
|
52030
|
-
buf += `\x1B[${pos.
|
|
52041
|
+
buf += `\x1B[${pos.bufferRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildBufferContent(w)}${RESET}`;
|
|
52042
|
+
buf += `\x1B[${pos.metricsRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildMetricsLine()}${RESET}`;
|
|
52043
|
+
buf += `\x1B[?7h\x1B[${cursorTermRow};${inputWrap.cursorCol}H\x1B[?25h`;
|
|
52031
52044
|
process.stdout.write(buf);
|
|
52032
52045
|
}
|
|
52033
52046
|
/**
|
|
@@ -52054,7 +52067,7 @@ ${CONTENT_BG_SEQ}`);
|
|
|
52054
52067
|
const rows = process.stdout.rows ?? 24;
|
|
52055
52068
|
const w = getTermWidth();
|
|
52056
52069
|
const pos = this.rowPositions(rows);
|
|
52057
|
-
const buf = `\x1B7\x1B[?7l\x1B[${pos.bufferRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildBufferContent(w)}${RESET}\x1B[${pos.
|
|
52070
|
+
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
|
|
52058
52071
|
(this.writeDepth === 0 ? "\x1B[?25h" : "");
|
|
52059
52072
|
process.stdout.write(buf);
|
|
52060
52073
|
}
|
|
@@ -52089,14 +52102,12 @@ ${CONTENT_BG_SEQ}`);
|
|
|
52089
52102
|
buf += "\x1BM";
|
|
52090
52103
|
}
|
|
52091
52104
|
buf += "\x1B[?7l";
|
|
52092
|
-
buf += `\x1B[${pos.bufferRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildBufferContent(w)}${RESET}`;
|
|
52093
|
-
buf += `\x1B[${pos.topSepRow};1H${PANEL_BG_SEQ}\x1B[2K${RESET}`;
|
|
52094
52105
|
for (let i = 0; i < inputWrap.lines.length; i++) {
|
|
52095
52106
|
const row = pos.inputStartRow + i;
|
|
52096
52107
|
const prefix = i === 0 ? this.promptText : " ".repeat(this.promptWidth);
|
|
52097
52108
|
buf += `\x1B[${row};1H${PANEL_BG_SEQ}\x1B[2K${prefix}${inputWrap.lines[i]}${RESET}`;
|
|
52098
52109
|
}
|
|
52099
|
-
buf += `\x1B[${pos.
|
|
52110
|
+
buf += `\x1B[${pos.bufferRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildBufferContent(w)}${RESET}`;
|
|
52100
52111
|
buf += `\x1B[${pos.metricsRow};1H${PANEL_BG_SEQ}\x1B[2K${this.buildMetricsLine()}${RESET}`;
|
|
52101
52112
|
buf += "\x1B[?7h";
|
|
52102
52113
|
buf += "\x1B8";
|
|
@@ -53668,10 +53679,14 @@ async function startInteractive(config, repoPath) {
|
|
|
53668
53679
|
checkForUpdate(version).then((updateInfo) => {
|
|
53669
53680
|
if (updateInfo) {
|
|
53670
53681
|
const writeMsg = () => {
|
|
53682
|
+
if (statusBar?.isActive && statusBar.isStreaming) {
|
|
53683
|
+
setTimeout(writeMsg, 3e3);
|
|
53684
|
+
return;
|
|
53685
|
+
}
|
|
53671
53686
|
if (statusBar?.isActive)
|
|
53672
53687
|
statusBar.beginContentWrite();
|
|
53673
53688
|
renderWarning(`Update available: v${updateInfo.currentVersion} \u2192 v${c2.bold(c2.green(updateInfo.latestVersion))}`);
|
|
53674
|
-
renderInfo(`Run /update to install
|
|
53689
|
+
renderInfo(`Run /update to install.`);
|
|
53675
53690
|
if (statusBar?.isActive)
|
|
53676
53691
|
statusBar.endContentWrite();
|
|
53677
53692
|
};
|
package/package.json
CHANGED