open-agents-ai 0.129.0 → 0.130.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 +28 -14
  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" });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "open-agents-ai",
3
- "version": "0.129.0",
3
+ "version": "0.130.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",