open-agents-ai 0.129.0 → 0.131.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 +36 -15
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -41463,8 +41463,15 @@ async function handleExposeConfig(ctx) {
41463
41463
  }
41464
41464
  async function showModelPicker(ctx, local = false) {
41465
41465
  try {
41466
- renderInfo("Loading models...");
41466
+ const BRAILLE_CYCLE = ["\u2800", "\u2840", "\u28C0", "\u28C4", "\u28E4", "\u28E6", "\u28F6", "\u28F7", "\u28FF", "\u28F7", "\u28F6", "\u28E6", "\u28E4", "\u28C4", "\u28C0", "\u2840"];
41467
+ let spinFrame = 0;
41468
+ const spinTimer = setInterval(() => {
41469
+ process.stdout.write(`\r ${c2.cyan("\u25CF")} Loading models ${c2.cyan(BRAILLE_CYCLE[spinFrame++ % BRAILLE_CYCLE.length])}`);
41470
+ }, 80);
41467
41471
  const models = await fetchModels(ctx.config.backendUrl, ctx.config.apiKey);
41472
+ clearInterval(spinTimer);
41473
+ process.stdout.write(`\r ${c2.green("\u2714")} ${models.length} models loaded${" ".repeat(20)}
41474
+ `);
41468
41475
  if (models.length === 0) {
41469
41476
  renderWarning("No models found.");
41470
41477
  return;
@@ -42386,21 +42393,28 @@ async function handleUpdate(subcommand, ctx) {
42386
42393
  }
42387
42394
  };
42388
42395
  }
42389
- renderInfo("Checking for updates...");
42390
- const info = await checkForUpdate(currentVersion, true);
42391
42396
  const { exec: exec4, execSync: es2 } = await import("node:child_process");
42392
42397
  const execA = (cmd, opts) => new Promise((res, rej) => exec4(cmd, { encoding: "utf8", timeout: opts?.timeout ?? 3e4, cwd: opts?.cwd }, (err, stdout) => err ? rej(err) : res((stdout || "").trim())));
42393
- let needsSudo = false;
42394
- try {
42395
- const prefix = await execA("npm prefix -g", { timeout: 5e3 });
42396
- const { accessSync, constants } = await import("node:fs");
42397
- try {
42398
- accessSync(prefix, constants.W_OK);
42399
- } catch {
42400
- needsSudo = true;
42401
- }
42402
- } catch {
42403
- }
42398
+ const checkSpinner = startInlineSpinner("Loading update manager");
42399
+ const [info, sudoInfo] = await Promise.all([
42400
+ checkForUpdate(currentVersion, true),
42401
+ (async () => {
42402
+ try {
42403
+ const prefix = await execA("npm prefix -g", { timeout: 5e3 });
42404
+ const { accessSync, constants } = await import("node:fs");
42405
+ try {
42406
+ accessSync(prefix, constants.W_OK);
42407
+ return false;
42408
+ } catch {
42409
+ return true;
42410
+ }
42411
+ } catch {
42412
+ return false;
42413
+ }
42414
+ })()
42415
+ ]);
42416
+ const needsSudo = sudoInfo;
42417
+ checkSpinner.stop(`v${currentVersion} \u2014 ${info ? `update available \u2192 v${info.latestVersion}` : "up to date"}`);
42404
42418
  const items = [];
42405
42419
  const skipKeys = [];
42406
42420
  items.push({ key: "hdr_status", label: selectColors.dim(`\u2500\u2500\u2500 v${currentVersion} \u2500\u2500\u2500`), kind: "header" });
@@ -52954,6 +52968,13 @@ async function startInteractive(config, repoPath) {
52954
52968
  }
52955
52969
  initOaDirectory(repoRoot);
52956
52970
  const savedSettings = resolveSettings(repoRoot);
52971
+ if (process.stdout.isTTY && !isResumed) {
52972
+ process.stdout.write("\x1B[2J\x1B[H");
52973
+ process.stdout.write(`
52974
+ \x1B[2mStarting open-agents...\x1B[0m
52975
+
52976
+ `);
52977
+ }
52957
52978
  let memoryDb = null;
52958
52979
  let taskMemoryStore = null;
52959
52980
  let failureStore = null;
@@ -53022,7 +53043,7 @@ async function startInteractive(config, repoPath) {
53022
53043
  `;
53023
53044
  renderInfo(resumeMsg);
53024
53045
  } else {
53025
- process.stdout.write("\x1B[2J\x1B[H");
53046
+ process.stdout.write("\x1B[H");
53026
53047
  banner.setDesign(createDefaultBanner(version));
53027
53048
  carouselLines = banner.start();
53028
53049
  renderRichHeader({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "open-agents-ai",
3
- "version": "0.129.0",
3
+ "version": "0.131.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",