terminal-jarvis 0.0.81 → 0.0.82

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.
package/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  **Unified command center for AI coding tools**
6
6
 
7
- Manage Claude, Gemini, Qwen, and 20 more AI assistants from one terminal interface.
7
+ Manage Claude, Gemini, Qwen, and 22 more AI assistants from one terminal interface.
8
8
 
9
9
  [![NPM Version](https://img.shields.io/npm/v/terminal-jarvis.svg?logo=npm&style=flat-square)](https://www.npmjs.com/package/terminal-jarvis)
10
10
  [![Crates.io](https://img.shields.io/crates/v/terminal-jarvis.svg?logo=rust&style=flat-square)](https://crates.io/crates/terminal-jarvis)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "terminal-jarvis",
3
- "version": "0.0.81",
3
+ "version": "0.0.82",
4
4
  "description": "AI Coding Tools Wrapper - Unified interface for claude-code, gemini-cli, qwen-code, opencode, llxprt, codex, crush, goose, amp, and aider",
5
5
  "bin": {
6
6
  "terminal-jarvis": "bin/terminal-jarvis"
@@ -21,18 +21,17 @@
21
21
  "sync-readme-npm": "npm run generate-tools && cp ../../README.md . && sed -i 's|screenshot_and_demo/|https://raw.githubusercontent.com/BA-CalderonMorales/terminal-jarvis/docs/screenshots_and_demos/screenshots_and_demo/|g' README.md",
22
22
  "build-rust": "cd ../.. && cargo build --release",
23
23
  "copy-configs": "node ./scripts/copy-configs.js",
24
- "typecheck": "tsc --noEmit",
24
+ "typecheck": "tsc --noEmit && echo 'TypeScript type check passed'",
25
25
  "lint": "biome lint src/",
26
26
  "lint:fix": "biome lint --write src/",
27
27
  "format": "biome format src/",
28
28
  "format:fix": "biome format --write src/",
29
29
  "check": "biome check src/",
30
30
  "check:fix": "biome check --write src/",
31
- "test": "vitest run",
31
+ "test": "vitest run --passWithNoTests",
32
32
  "test:watch": "vitest",
33
33
  "test:ui": "vitest --ui",
34
34
  "test:coverage": "vitest run --coverage",
35
- "typecheck": "tsc --noEmit && echo 'TypeScript type check passed'",
36
35
  "test:e2e": "npm run build-rust && vitest run",
37
36
  "build": "npm run copy-configs && npm run sync-readme-npm",
38
37
  "prepack": "npm run build",
@@ -61,14 +60,13 @@
61
60
  "devDependencies": {
62
61
  "@biomejs/biome": "2.1.4",
63
62
  "@types/node": "22.15.3",
64
- "@vitest/ui": "3.2.4",
65
- "cli-testing-library": "3.0.1",
63
+ "@vitest/ui": "4.1.5",
66
64
  "string-width": "8.1.0",
67
65
  "typescript": "5.9.3",
68
- "vitest": "3.2.4",
66
+ "vitest": "4.1.5",
69
67
  "zod": "3.25.56"
70
68
  },
71
69
  "engines": {
72
70
  "node": ">=16.0.0"
73
71
  }
74
- }
72
+ }
@@ -8,7 +8,7 @@
8
8
  - Verify installation
9
9
 
10
10
  Version Hint (used by CI for consistency checks):
11
- Terminal Jarvis v0.0.79
11
+ Terminal Jarvis v0.0.82
12
12
  */
13
13
 
14
14
  const fs = require('fs');
@@ -42,9 +42,7 @@ function error(msg) {
42
42
  /**
43
43
  * Detect platform and return download information
44
44
  */
45
- function getPlatformInfo() {
46
- const platform = os.platform();
47
- const arch = os.arch();
45
+ function getPlatformInfo(platform = os.platform(), arch = os.arch()) {
48
46
 
49
47
  // Map to GitHub release file names
50
48
  if (platform === 'darwin' && (arch === 'x64' || arch === 'arm64')) {
@@ -55,9 +53,9 @@ function getPlatformInfo() {
55
53
  };
56
54
  }
57
55
 
58
- if (platform === 'linux' && (arch === 'x64' || arch === 'arm64')) {
56
+ if ((platform === 'linux' || platform === 'android') && (arch === 'x64' || arch === 'arm64')) {
59
57
  return {
60
- name: 'Linux',
58
+ name: platform === 'android' ? 'Android/Termux' : 'Linux',
61
59
  file: 'terminal-jarvis-linux.tar.gz',
62
60
  isWindows: false
63
61
  };
@@ -193,7 +191,10 @@ function checkPrerequisites() {
193
191
  const platform = os.platform();
194
192
 
195
193
  if (missing.includes('tar')) {
196
- if (platform === 'linux') {
194
+ if (platform === 'android') {
195
+ warn('Install tar using Termux packages:');
196
+ console.log(' pkg update && pkg install -y tar');
197
+ } else if (platform === 'linux') {
197
198
  warn('Install tar using your package manager:');
198
199
  console.log(' Debian/Ubuntu: sudo apt-get update && sudo apt-get install -y tar');
199
200
  console.log(' Fedora/RHEL: sudo dnf install -y tar');
@@ -215,7 +216,7 @@ function checkPrerequisites() {
215
216
  /**
216
217
  * Main installation workflow - optimized for speed
217
218
  */
218
- (async () => {
219
+ async function main() {
219
220
  const startTime = Date.now();
220
221
 
221
222
  // Skip binary download in CI environments - binary hasn't been released yet
@@ -326,4 +327,24 @@ function checkPrerequisites() {
326
327
  // Don't fail npm install completely
327
328
  process.exit(0);
328
329
  }
329
- })();
330
+ }
331
+
332
+ if (require.main === module) {
333
+ void main().catch((err) => {
334
+ error(`Installation failed: ${err && err.message ? err.message : err}`);
335
+ warn('Fallback options:');
336
+ console.log(' 1. Install via cargo: cargo install terminal-jarvis');
337
+ console.log(' 2. Install via Homebrew: brew install ba-calderonmorales/terminal-jarvis/terminal-jarvis');
338
+ console.log(' 3. Download manually from: https://github.com/BA-CalderonMorales/terminal-jarvis/releases');
339
+
340
+ // Don't fail npm install completely
341
+ process.exit(0);
342
+ });
343
+ }
344
+
345
+ module.exports = {
346
+ getPlatformInfo,
347
+ getAssetUrl,
348
+ checkPrerequisites,
349
+ main
350
+ };