open-agents-ai 0.187.581 → 0.187.582

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 CHANGED
@@ -557952,6 +557952,8 @@ var init_status_bar = __esm({
557952
557952
  _suggestDelayTimer = null;
557953
557953
  /** Whether suggestions were manually dismissed via Esc */
557954
557954
  _suggestDismissed = false;
557955
+ /** Coalesces raw stdin + DirectInput change events into one footer repaint. */
557956
+ _inputRedrawScheduled = false;
557955
557957
  /** Suppress hookStdin redraws during Enter processing or overlay operations */
557956
557958
  _suppressStdinRedraw = false;
557957
557959
  /** Lock footer redraws entirely (during install overlay, loading screens, etc.) */
@@ -561015,6 +561017,7 @@ ${CONTENT_BG_SEQ}`);
561015
561017
  */
561016
561018
  hookDirectInput(di, onEscape, onCtrlO, onCtrlL) {
561017
561019
  const self2 = this;
561020
+ di.on("change", () => self2.scheduleInputRedraw());
561018
561021
  if (onEscape) di.on("escape", () => onEscape());
561019
561022
  if (onCtrlO) di.on("ctrl-o", () => onCtrlO());
561020
561023
  if (onCtrlL) di.on("ctrl-l", () => onCtrlL());
@@ -561075,16 +561078,23 @@ ${CONTENT_BG_SEQ}`);
561075
561078
  if (this.stdinHooked) return;
561076
561079
  this.stdinHooked = true;
561077
561080
  process.stdin.on("data", () => {
561078
- if (!this.active) return;
561081
+ this.scheduleInputRedraw();
561082
+ });
561083
+ }
561084
+ scheduleInputRedraw() {
561085
+ if (!this.active || this._resizing) return;
561086
+ if (this._suppressStdinRedraw || _globalFooterLock) return;
561087
+ if (this._inputRedrawScheduled) return;
561088
+ this._inputRedrawScheduled = true;
561089
+ setImmediate(() => {
561090
+ this._inputRedrawScheduled = false;
561091
+ if (!this.active || this._resizing) return;
561079
561092
  if (this._suppressStdinRedraw || _globalFooterLock) return;
561080
- setImmediate(() => {
561081
- if (this._suppressStdinRedraw || _globalFooterLock) return;
561082
- if (this.writeDepth > 0) {
561083
- this.renderInputRowDuringStream();
561084
- } else {
561085
- this.renderFooterAndPositionInput();
561086
- }
561087
- });
561093
+ if (this.writeDepth > 0) {
561094
+ this.renderInputRowDuringStream();
561095
+ } else {
561096
+ this.renderFooterAndPositionInput();
561097
+ }
561088
561098
  });
561089
561099
  }
561090
561100
  };
@@ -592586,8 +592596,11 @@ var init_direct_input = __esm({
592586
592596
  }
592587
592597
  /** Process raw input data — parse escape sequences and printable chars */
592588
592598
  feed(data) {
592599
+ const beforeLine = this.line;
592600
+ const beforeCursor = this.cursor;
592589
592601
  this._buffer += data;
592590
592602
  this._processBuffer();
592603
+ this._emitChangeIfNeeded(beforeLine, beforeCursor);
592591
592604
  }
592592
592605
  /** Pause input processing (for overlay transitions) */
592593
592606
  pause() {
@@ -592615,8 +592628,11 @@ var init_direct_input = __esm({
592615
592628
  }
592616
592629
  /** Set the line content and cursor position (for Esc-to-recall or suggestion apply) */
592617
592630
  setLine(text, cursorPos) {
592631
+ const beforeLine = this.line;
592632
+ const beforeCursor = this.cursor;
592618
592633
  this.line = text;
592619
592634
  this.cursor = cursorPos ?? text.length;
592635
+ this._emitChangeIfNeeded(beforeLine, beforeCursor);
592620
592636
  }
592621
592637
  /** Pre-submit hook — called before Enter submits. Return true to consume Enter. */
592622
592638
  _preSubmit = null;
@@ -592813,6 +592829,10 @@ var init_direct_input = __esm({
592813
592829
  }
592814
592830
  }
592815
592831
  }
592832
+ _emitChangeIfNeeded(beforeLine, beforeCursor) {
592833
+ if (this.line === beforeLine && this.cursor === beforeCursor) return;
592834
+ this.emit("change", { line: this.line, cursor: this.cursor });
592835
+ }
592816
592836
  /** Handle CSI escape sequence: \x1B[ {params} {final} */
592817
592837
  _handleCSI(params, final2) {
592818
592838
  switch (final2) {
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "open-agents-ai",
3
- "version": "0.187.581",
3
+ "version": "0.187.582",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "open-agents-ai",
9
- "version": "0.187.581",
9
+ "version": "0.187.582",
10
10
  "hasInstallScript": true,
11
11
  "license": "CC-BY-NC-4.0",
12
12
  "dependencies": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "open-agents-ai",
3
- "version": "0.187.581",
3
+ "version": "0.187.582",
4
4
  "description": "AI coding agent powered by open-source models (Ollama/vLLM) — interactive TUI with agentic tool-calling loop",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",