open-agents-ai 0.187.87 → 0.187.89

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.
Files changed (2) hide show
  1. package/dist/index.js +27 -16
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -279500,27 +279500,33 @@ var init_status_bar = __esm({
279500
279500
  return this._cohereActive;
279501
279501
  }
279502
279502
  // ── Mouse tracking management ──────────────────────────────────────
279503
- // Terminal mouse tracking (?1002h) captures all mouse events, preventing
279504
- // native text selection. We disable it when idle (allowing selection) and
279505
- // re-enable when scroll/streaming starts (allowing mouse scroll).
279506
- // Users can always hold Shift for selection as a universal fallback.
279507
- /** Enable mouse tracking (click + scroll + motion during drag) */
279503
+ // TUI uses ?1000h (normal tracking) for native text selection.
279504
+ // Neovim mode uses ?1002h (cell-motion) for mouse=a drag support.
279505
+ // All mode transitions check neovim focus to avoid conflicts.
279506
+ /** Callback to check if neovim has focus (set by interactive.ts to avoid circular import) */
279507
+ _isNeovimFocused = null;
279508
+ /** Register neovim focus checker — called from interactive.ts after neovim-mode imports */
279509
+ setNeovimFocusChecker(checker) {
279510
+ this._isNeovimFocused = checker;
279511
+ }
279512
+ /** Enable mouse tracking — respects neovim focus state */
279508
279513
  enableMouseTracking() {
279509
279514
  if (this._mouseTrackingEnabled || isOverlayActive())
279510
279515
  return;
279516
+ if (this._isNeovimFocused?.())
279517
+ return;
279511
279518
  this._mouseTrackingEnabled = true;
279512
279519
  if (process.stdout.isTTY) {
279513
- this._trueStdoutWrite.call(process.stdout, "\x1B[?1002h\x1B[?1006h");
279520
+ this._trueStdoutWrite.call(process.stdout, "\x1B[?1000h\x1B[?1006h");
279514
279521
  }
279515
279522
  }
279516
- /** Disable mouse tracking entirely (only for overlay transitions + exit).
279517
- * NOT called on idle — mouse stays active for clicks, scroll, buttons. */
279523
+ /** Disable mouse tracking entirely (overlay transitions + exit). */
279518
279524
  disableMouseTracking() {
279519
279525
  if (!this._mouseTrackingEnabled || isOverlayActive())
279520
279526
  return;
279521
279527
  this._mouseTrackingEnabled = false;
279522
279528
  if (process.stdout.isTTY) {
279523
- this._trueStdoutWrite.call(process.stdout, "\x1B[?1002l\x1B[?1006l");
279529
+ this._trueStdoutWrite.call(process.stdout, "\x1B[?1000l\x1B[?1006l");
279524
279530
  }
279525
279531
  }
279526
279532
  /** Schedule mouse tracking disable after idle timeout.
@@ -281185,7 +281191,7 @@ ${tuiBgSeq()}`);
281185
281191
  function cleanup() {
281186
281192
  stdin.removeListener("data", onData);
281187
281193
  process.stdout.removeListener("resize", onResize);
281188
- overlayWrite("\x1B[?1003l\x1B[?1002l\x1B[?1006l\x1B[?1049l\x1B[?25h");
281194
+ overlayWrite("\x1B[?1003l\x1B[?1002l\x1B[?1000l\x1B[?1006l\x1B[?1049l\x1B[?25h");
281189
281195
  leaveOverlay();
281190
281196
  if (typeof stdin.setRawMode === "function") {
281191
281197
  stdin.setRawMode(hadRawMode ?? false);
@@ -288842,7 +288848,10 @@ Error: ${err2 instanceof Error ? err2.message : String(err2)}`);
288842
288848
  }
288843
288849
  }
288844
288850
  if (process.stdout.isTTY) {
288845
- process.stdout.write("\x1B[?1002h\x1B[?1006h");
288851
+ process.stdout.write("\x1B[?1000h\x1B[?1006h");
288852
+ }
288853
+ if (process.stdout.isTTY) {
288854
+ process.stdout.write("\x1B[?1002l\x1B[?1003l");
288846
288855
  }
288847
288856
  } catch (err) {
288848
288857
  renderWarning(` Could not install system build deps: ${err instanceof Error ? err.message : String(err)}`);
@@ -295352,14 +295361,14 @@ async function showExposeDashboard(gateway, rl, ctx3) {
295352
295361
  }
295353
295362
  };
295354
295363
  if (process.stdout.isTTY) {
295355
- process.stdout.write("\x1B[?1002l\x1B[?1006l");
295364
+ process.stdout.write("\x1B[?1000l\x1B[?1002l\x1B[?1006l");
295356
295365
  }
295357
295366
  process.stdin.on("data", onData);
295358
295367
  const cleanup = () => {
295359
295368
  stopped = true;
295360
295369
  process.stdin.removeListener("data", onData);
295361
295370
  if (process.stdout.isTTY) {
295362
- process.stdout.write("\x1B[?1002h\x1B[?1006h");
295371
+ process.stdout.write("\x1B[?1000h\x1B[?1006h");
295363
295372
  }
295364
295373
  };
295365
295374
  const origResolve = resolve39;
@@ -309735,6 +309744,7 @@ Rationale: ${proposal.rationale}${provenanceNote}`;
309735
309744
  }
309736
309745
  });
309737
309746
  origTtyWriteRef = null;
309747
+ statusBar.setNeovimFocusChecker(() => isNeovimFocused());
309738
309748
  let _escapeHandler = null;
309739
309749
  statusBar.hookDirectInput(rl, () => {
309740
309750
  _escapeHandler?.();
@@ -309783,7 +309793,7 @@ Rationale: ${proposal.rationale}${provenanceNote}`;
309783
309793
  process.stdin.setRawMode(true);
309784
309794
  }
309785
309795
  if (process.stdout.isTTY) {
309786
- process.stdout.write("\x1B[?1002h\x1B[?1006h");
309796
+ process.stdout.write("\x1B[?1000h\x1B[?1006h");
309787
309797
  }
309788
309798
  function persistHistoryLine(line) {
309789
309799
  if (!line.trim())
@@ -310254,7 +310264,7 @@ Rationale: ${proposal.rationale}${provenanceNote}`;
310254
310264
  }
310255
310265
  sudoPromptPending = true;
310256
310266
  if (process.stdout.isTTY) {
310257
- process.stdout.write("\x1B[?1002l\x1B[?1006l");
310267
+ process.stdout.write("\x1B[?1000l\x1B[?1002l\x1B[?1006l");
310258
310268
  }
310259
310269
  writeContent(() => {
310260
310270
  process.stdout.write(`
@@ -311866,7 +311876,8 @@ ${result.content.slice(0, 2e3)}${result.content.length > 2e3 ? "\n[truncated]" :
311866
311876
  sessionSudoPassword = input;
311867
311877
  activeTask.runner.setSudoPassword(input);
311868
311878
  if (process.stdout.isTTY) {
311869
- process.stdout.write("\x1B[?1002h\x1B[?1006h");
311879
+ const mouseMode = isNeovimFocused() ? "\x1B[?1002h\x1B[?1006h" : "\x1B[?1000h\x1B[?1006h";
311880
+ process.stdout.write(mouseMode);
311870
311881
  }
311871
311882
  statusBar.setInputStateProvider(() => ({
311872
311883
  line: rl.line ?? "",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "open-agents-ai",
3
- "version": "0.187.87",
3
+ "version": "0.187.89",
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",