antri_cli 1.38.0 → 1.39.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.
@@ -5,7 +5,7 @@ import dotenv from 'dotenv';
5
5
  // Load .env if present
6
6
  dotenv.config();
7
7
  const DEFAULT_CONFIG = {
8
- version: '1.38.0',
8
+ version: '1.39.0',
9
9
  provider: 'deepseek',
10
10
  model: 'deepseek-v4-flash-(latest)',
11
11
  mode: 'vibe',
@@ -1,6 +1,10 @@
1
1
  export declare class Updater {
2
- static readonly CURRENT_VERSION = "1.38.0";
2
+ static readonly CURRENT_VERSION = "1.39.0";
3
3
  static readonly PACKAGE_NAME = "antri_cli";
4
+ /**
5
+ * Fetches latest release version directly from registry.npmjs.org (cache-free)
6
+ */
7
+ static getLatestVersion(): Promise<string>;
4
8
  /**
5
9
  * Checks for available updates and self-updates the global antri CLI
6
10
  */
@@ -1 +1 @@
1
- {"version":3,"file":"updater.d.ts","sourceRoot":"","sources":["../../src/core/updater.ts"],"names":[],"mappings":"AAQA,qBAAa,OAAO;IAClB,gBAAuB,eAAe,YAAY;IAClD,gBAAuB,YAAY,eAAe;IAElD;;OAEG;WACiB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;CAmD/C"}
1
+ {"version":3,"file":"updater.d.ts","sourceRoot":"","sources":["../../src/core/updater.ts"],"names":[],"mappings":"AAQA,qBAAa,OAAO;IAClB,gBAAuB,eAAe,YAAY;IAClD,gBAAuB,YAAY,eAAe;IAElD;;OAEG;WACiB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAoBvD;;OAEG;WACiB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;CAyD/C"}
@@ -4,8 +4,32 @@ import chalk from 'chalk';
4
4
  import ora from 'ora';
5
5
  const execPromise = util.promisify(exec);
6
6
  export class Updater {
7
- static CURRENT_VERSION = '1.38.0';
7
+ static CURRENT_VERSION = '1.39.0';
8
8
  static PACKAGE_NAME = 'antri_cli';
9
+ /**
10
+ * Fetches latest release version directly from registry.npmjs.org (cache-free)
11
+ */
12
+ static async getLatestVersion() {
13
+ try {
14
+ const response = await fetch(`https://registry.npmjs.org/${this.PACKAGE_NAME}/latest`, {
15
+ headers: { 'Cache-Control': 'no-cache' },
16
+ signal: AbortSignal.timeout(4000),
17
+ });
18
+ if (response.ok) {
19
+ const data = await response.json();
20
+ if (data && data.version)
21
+ return data.version.trim();
22
+ }
23
+ }
24
+ catch { }
25
+ try {
26
+ const { stdout } = await execPromise(`npm view ${this.PACKAGE_NAME} version`, { timeout: 6000 });
27
+ if (stdout && stdout.trim())
28
+ return stdout.trim();
29
+ }
30
+ catch { }
31
+ return this.CURRENT_VERSION;
32
+ }
9
33
  /**
10
34
  * Checks for available updates and self-updates the global antri CLI
11
35
  */
@@ -19,41 +43,43 @@ export class Updater {
19
43
  color: 'cyan',
20
44
  }).start();
21
45
  try {
22
- // 1. Fetch latest version info from npm registry
23
- let latestVersion = this.CURRENT_VERSION;
24
- try {
25
- const { stdout } = await execPromise(`npm view ${this.PACKAGE_NAME} version`, { timeout: 8000 });
26
- if (stdout && stdout.trim()) {
27
- latestVersion = stdout.trim();
28
- }
29
- }
30
- catch {
31
- // If package not published yet or offline, simulate check
32
- latestVersion = this.CURRENT_VERSION;
46
+ const latestVersion = await this.getLatestVersion();
47
+ if (this.CURRENT_VERSION === latestVersion) {
48
+ spinner.succeed(chalk.green(`You are already running the latest version of ANTRI Code (v${this.CURRENT_VERSION})!`));
49
+ console.log(chalk.hex('#64748b')('Zero update needed · System is completely up to date.'));
50
+ console.log(chalk.hex('#334155')('─'.repeat(68)));
51
+ console.log();
52
+ return true;
33
53
  }
34
- spinner.text = chalk.hex('#a5b4fc')(`Latest release: v${latestVersion}. Installing update cleanly...`);
35
- // 2. Run clean global install
54
+ spinner.text = chalk.hex('#a5b4fc')(`New release found: v${latestVersion}. Upgrading global package...`);
55
+ let updated = false;
36
56
  try {
37
- await execPromise(`npm install -g ${this.PACKAGE_NAME}@latest`, {
57
+ await execPromise(`npm install -g ${this.PACKAGE_NAME}@latest --force`, {
38
58
  timeout: 45000,
39
59
  });
60
+ updated = true;
40
61
  }
41
62
  catch (installErr) {
42
- // Local directory fallback if linked locally
43
- try {
44
- await execPromise('npm install -g .', { timeout: 30000 });
45
- }
46
- catch { }
63
+ // Windows file locking fallback
64
+ spinner.info(chalk.yellow(`Update available: v${latestVersion} (Current: v${this.CURRENT_VERSION})`));
65
+ console.log(chalk.hex('#94a3b8')('\nOn Windows, the running process cannot overwrite itself in-place.'));
66
+ console.log(`👉 Run this in your terminal to complete the update:`);
67
+ console.log(chalk.bold.cyan(` npm install -g ${this.PACKAGE_NAME}@latest\n`));
68
+ console.log(chalk.hex('#334155')('─'.repeat(68)));
69
+ console.log();
70
+ return true;
71
+ }
72
+ if (updated) {
73
+ spinner.succeed(chalk.green(`Successfully updated ${chalk.bold('ANTRI Code')} to v${latestVersion}!`));
74
+ console.log(chalk.hex('#64748b')('Zero lockfile churn · Clean global update complete.'));
75
+ console.log(chalk.hex('#334155')('─'.repeat(68)));
76
+ console.log();
47
77
  }
48
- spinner.succeed(chalk.green(`Successfully updated ${chalk.bold('ANTRI Code')} to the latest version (v${latestVersion})!`));
49
- console.log(chalk.hex('#64748b')('Zero lockfile churn · Clean global swap complete.'));
50
- console.log(chalk.hex('#334155')('─'.repeat(68)));
51
- console.log();
52
78
  return true;
53
79
  }
54
80
  catch (err) {
55
- spinner.fail(chalk.red(`Self-update check completed with note: ${err.message}`));
56
- console.log(chalk.hex('#94a3b8')('You are running the latest compiled build.'));
81
+ spinner.fail(chalk.red(`Self-update check note: ${err.message}`));
82
+ console.log(chalk.hex('#94a3b8')(`You are on v${this.CURRENT_VERSION}.`));
57
83
  console.log(chalk.hex('#334155')('─'.repeat(68)));
58
84
  console.log();
59
85
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"updater.js","sourceRoot":"","sources":["../../src/core/updater.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"updater.js","sourceRoot":"","sources":["../../src/core/updater.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@
15
15
  <header class="app-header">
16
16
  <div class="brand-zone">
17
17
  <span class="logo-mark">ANTRI</span>
18
- <span class="version-tag">v1.38.0</span>
18
+ <span class="version-tag">v1.39.0</span>
19
19
  </div>
20
20
 
21
21
  <!-- Mode Toggle -->
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "antri_cli",
3
- "version": "1.38.0",
3
+ "version": "1.39.0",
4
4
  "description": "ANTRI Code - An intelligent, terminal-first AI coding chatbot, proactive facilitator, and autonomous meta-agent",
5
5
  "type": "module",
6
6
  "bin": {