open-agents-ai 0.133.0 → 0.135.0

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 +14 -1
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -21418,6 +21418,10 @@ If you're stuck, try a completely different approach. Do NOT repeat what failed
21418
21418
  const errMsg = reqErr instanceof Error ? reqErr.message : String(reqErr);
21419
21419
  const cause = reqErr instanceof Error && reqErr.cause ? ` (${reqErr.cause.message ?? ""} ${reqErr.cause?.code ?? ""})` : "";
21420
21420
  this.emit({ type: "error", content: `Backend error: ${errMsg}${cause}`, timestamp: (/* @__PURE__ */ new Date()).toISOString() });
21421
+ if (/HTTP 404|not found|model.*not found/i.test(errMsg)) {
21422
+ this.emit({ type: "error", content: `Model not available. Use /model to select a different model.`, timestamp: (/* @__PURE__ */ new Date()).toISOString() });
21423
+ break;
21424
+ }
21421
21425
  messages.push({ role: "user", content: "[System: backend request failed, retrying on next turn. The previous request was lost.]" });
21422
21426
  continue;
21423
21427
  }
@@ -44338,7 +44342,7 @@ var init_banner = __esm({
44338
44342
  this._resizeHandler = null;
44339
44343
  }
44340
44344
  }
44341
- /** Render the current frame into the top 3 rows */
44345
+ /** Render the current frame into the top 3 rows (public for refresh callbacks) */
44342
44346
  renderCurrentFrame() {
44343
44347
  if (!isTTY7 || !this.currentDesign)
44344
44348
  return;
@@ -50439,6 +50443,8 @@ var init_status_bar = __esm({
50439
50443
  stdinHooked = false;
50440
50444
  /** COHERE distributed cognitive commons active flag */
50441
50445
  _cohereActive = false;
50446
+ /** Banner refresh callback — called after resize to re-render top rows */
50447
+ _bannerRefresh = null;
50442
50448
  /** Track previous terminal dimensions to clear ghost separators on resize */
50443
50449
  _prevTermRows = 0;
50444
50450
  _prevTermCols = 0;
@@ -51034,6 +51040,10 @@ var init_status_bar = __esm({
51034
51040
  get cohereActive() {
51035
51041
  return this._cohereActive;
51036
51042
  }
51043
+ /** Set a callback to re-render the banner after resize/redraw */
51044
+ setBannerRefresh(refresh) {
51045
+ this._bannerRefresh = refresh;
51046
+ }
51037
51047
  /** Whether content is currently being written to the scroll region */
51038
51048
  get isWritingContent() {
51039
51049
  return this.writeDepth > 0;
@@ -51124,6 +51134,8 @@ var init_status_bar = __esm({
51124
51134
  clearBuf += "\x1B[?7h";
51125
51135
  process.stdout.write(clearBuf);
51126
51136
  this.renderFooterAndPositionInput();
51137
+ if (this._bannerRefresh)
51138
+ this._bannerRefresh();
51127
51139
  }
51128
51140
  }
51129
51141
  /**
@@ -53036,6 +53048,7 @@ async function startInteractive(config, repoPath) {
53036
53048
  if (process.stdout.isTTY) {
53037
53049
  const scrollTop = carouselLines > 0 ? carouselLines + 1 : 1;
53038
53050
  statusBar.activate(scrollTop);
53051
+ statusBar.setBannerRefresh(() => banner.renderCurrentFrame());
53039
53052
  setContentWriteHook({
53040
53053
  begin: () => statusBar.beginContentWrite(),
53041
53054
  end: () => statusBar.endContentWrite(),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "open-agents-ai",
3
- "version": "0.133.0",
3
+ "version": "0.135.0",
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",