terminal-jarvis 0.0.9 → 0.0.11
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/lib/index.d.ts +2 -0
- package/lib/index.js +105 -0
- package/lib/index.js.map +1 -1
- package/package.json +1 -1
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
@@ -1,2 +1,107 @@
|
|
1
|
+
#!/usr/bin/env node
|
1
2
|
"use strict";
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
4
|
+
const child_process_1 = require("child_process");
|
5
|
+
const fs_1 = require("fs");
|
6
|
+
const path_1 = require("path");
|
7
|
+
// Try to find the Rust binary in common locations
|
8
|
+
const possibleBinaries = [
|
9
|
+
(0, path_1.join)(__dirname, '..', '..', '..', 'target', 'debug', 'terminal-jarvis'), // Local debug build
|
10
|
+
(0, path_1.join)(__dirname, '..', '..', '..', 'target', 'release', 'terminal-jarvis'), // Local release build
|
11
|
+
(0, path_1.join)(process.env.HOME || '', '.cargo', 'bin', 'terminal-jarvis'), // Cargo home
|
12
|
+
'/usr/local/bin/terminal-jarvis', // System install
|
13
|
+
];
|
14
|
+
async function findRustBinary() {
|
15
|
+
// First check local build and other possible locations
|
16
|
+
for (const path of possibleBinaries) {
|
17
|
+
if ((0, fs_1.existsSync)(path)) {
|
18
|
+
return path;
|
19
|
+
}
|
20
|
+
}
|
21
|
+
// Then check if terminal-jarvis is available in PATH
|
22
|
+
return new Promise((resolve) => {
|
23
|
+
const child = (0, child_process_1.spawn)('which', ['terminal-jarvis'], { stdio: 'pipe' });
|
24
|
+
let output = '';
|
25
|
+
child.stdout.on('data', (data) => {
|
26
|
+
output += data.toString();
|
27
|
+
});
|
28
|
+
child.on('close', (code) => {
|
29
|
+
if (code === 0 && output.trim()) {
|
30
|
+
const binaryPath = output.trim();
|
31
|
+
// Simple check: if it's not in node_modules and exists, assume it's the Rust binary
|
32
|
+
if (!binaryPath.includes('node_modules') && !binaryPath.includes('.npm') && (0, fs_1.existsSync)(binaryPath)) {
|
33
|
+
resolve(binaryPath);
|
34
|
+
}
|
35
|
+
else {
|
36
|
+
resolve(null);
|
37
|
+
}
|
38
|
+
}
|
39
|
+
else {
|
40
|
+
resolve(null);
|
41
|
+
}
|
42
|
+
});
|
43
|
+
child.on('error', () => resolve(null));
|
44
|
+
});
|
45
|
+
}
|
46
|
+
async function main() {
|
47
|
+
const rustBinary = await findRustBinary();
|
48
|
+
if (rustBinary) {
|
49
|
+
// Run the Rust binary with all arguments
|
50
|
+
const child = (0, child_process_1.spawn)(rustBinary, process.argv.slice(2), {
|
51
|
+
stdio: 'inherit',
|
52
|
+
cwd: process.cwd()
|
53
|
+
});
|
54
|
+
// Add a reasonable timeout to prevent indefinite hanging
|
55
|
+
const timeout = setTimeout(() => {
|
56
|
+
console.log('\n⚠️ Process timed out after 60 seconds');
|
57
|
+
child.kill('SIGTERM');
|
58
|
+
process.exit(1);
|
59
|
+
}, 60000); // 60 second timeout
|
60
|
+
child.on('close', (code) => {
|
61
|
+
clearTimeout(timeout);
|
62
|
+
process.exit(code || 0);
|
63
|
+
});
|
64
|
+
child.on('error', (err) => {
|
65
|
+
clearTimeout(timeout);
|
66
|
+
console.error('Error running terminal-jarvis binary:', err.message);
|
67
|
+
showFallbackMessage();
|
68
|
+
});
|
69
|
+
}
|
70
|
+
else {
|
71
|
+
showFallbackMessage();
|
72
|
+
}
|
73
|
+
}
|
74
|
+
function showFallbackMessage() {
|
75
|
+
console.log("🤖 Terminal Jarvis v0.0.11");
|
76
|
+
console.log("");
|
77
|
+
console.log("⚠️ The full T.JARVIS interactive interface requires the Rust binary.");
|
78
|
+
console.log("");
|
79
|
+
console.log("🔍 Debug: Searched for binary in:");
|
80
|
+
console.log(" • Local builds (target/debug, target/release)");
|
81
|
+
console.log(" • ~/.cargo/bin/terminal-jarvis");
|
82
|
+
console.log(" • /usr/local/bin/terminal-jarvis");
|
83
|
+
console.log(" • PATH (excluding node_modules)");
|
84
|
+
console.log("");
|
85
|
+
console.log("🚀 Install for full functionality:");
|
86
|
+
console.log(" cargo install --git https://github.com/BA-CalderonMorales/terminal-jarvis");
|
87
|
+
console.log("");
|
88
|
+
console.log("📦 Or install Rust first:");
|
89
|
+
console.log(" curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh");
|
90
|
+
console.log(" source ~/.cargo/env");
|
91
|
+
console.log(" cargo install --git https://github.com/BA-CalderonMorales/terminal-jarvis");
|
92
|
+
console.log("");
|
93
|
+
console.log("✨ Features you'll get with the full version:");
|
94
|
+
console.log(" • Interactive T.JARVIS interface with ASCII art");
|
95
|
+
console.log(" • One-click tool installation (claude, gemini, qwen, opencode)");
|
96
|
+
console.log(" • Smart tool detection and management");
|
97
|
+
console.log(" • Real-time status checking");
|
98
|
+
console.log(" • Responsive terminal design");
|
99
|
+
console.log("");
|
100
|
+
console.log("💡 This NPM package serves as a convenient installer and launcher.");
|
101
|
+
process.exit(1);
|
102
|
+
}
|
103
|
+
main().catch((err) => {
|
104
|
+
console.error('Unexpected error:', err);
|
105
|
+
process.exit(1);
|
106
|
+
});
|
2
107
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|