@solidxai/solidctl 0.1.27-beta.0 → 0.1.28
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/dist/commands/agent-helper.d.ts +1 -0
- package/dist/commands/agent-helper.js +119 -0
- package/dist/commands/agent-helper.js.map +1 -0
- package/dist/commands/agent.command.js +3 -2
- package/dist/commands/agent.command.js.map +1 -1
- package/dist/commands/mcp.command.js +2 -1
- package/dist/commands/mcp.command.js.map +1 -1
- package/dist/helper.js +2 -1
- package/dist/helper.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function ensureAgentInstalled(): string;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ensureAgentInstalled = ensureAgentInstalled;
|
|
7
|
+
const child_process_1 = require("child_process");
|
|
8
|
+
const fs_1 = __importDefault(require("fs"));
|
|
9
|
+
const path_1 = __importDefault(require("path"));
|
|
10
|
+
const os_1 = __importDefault(require("os"));
|
|
11
|
+
const AGENT_PACKAGE = 'solidx-ai-agent';
|
|
12
|
+
const VENV_DIR = path_1.default.join(os_1.default.homedir(), '.solidx', 'venv');
|
|
13
|
+
const VENV_BIN = path_1.default.join(VENV_DIR, process.platform === 'win32' ? 'Scripts' : 'bin');
|
|
14
|
+
const VENV_AGENT_BIN = path_1.default.join(VENV_BIN, process.platform === 'win32' ? 'solidx-agent.exe' : 'solidx-agent');
|
|
15
|
+
function commandExists(cmd) {
|
|
16
|
+
const result = (0, child_process_1.spawnSync)(process.platform === 'win32' ? 'where' : 'which', [cmd], { stdio: 'pipe' });
|
|
17
|
+
return result.status === 0;
|
|
18
|
+
}
|
|
19
|
+
function findAgentBinary() {
|
|
20
|
+
const pathBinary = process.platform === 'win32' ? 'solidx-agent.cmd' : 'solidx-agent';
|
|
21
|
+
if (commandExists(pathBinary)) {
|
|
22
|
+
return pathBinary;
|
|
23
|
+
}
|
|
24
|
+
if (fs_1.default.existsSync(VENV_AGENT_BIN)) {
|
|
25
|
+
return VENV_AGENT_BIN;
|
|
26
|
+
}
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
function findPython() {
|
|
30
|
+
for (const cmd of ['python3', 'python']) {
|
|
31
|
+
const result = (0, child_process_1.spawnSync)(cmd, ['--version'], { stdio: 'pipe' });
|
|
32
|
+
if (result.status === 0) {
|
|
33
|
+
const output = (result.stdout?.toString() || '') + (result.stderr?.toString() || '');
|
|
34
|
+
const match = output.match(/Python\s+(\d+)\.(\d+)/);
|
|
35
|
+
if (match && (+match[1] > 3 || (+match[1] === 3 && +match[2] >= 11))) {
|
|
36
|
+
return cmd;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
function findUv() {
|
|
43
|
+
if (commandExists('uv')) {
|
|
44
|
+
return 'uv';
|
|
45
|
+
}
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
function ensureVenv(pythonCmd, uvCmd) {
|
|
49
|
+
if (fs_1.default.existsSync(path_1.default.join(VENV_DIR, 'pyvenv.cfg'))) {
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
fs_1.default.mkdirSync(path_1.default.dirname(VENV_DIR), { recursive: true });
|
|
53
|
+
console.log(`📦 Creating virtual environment at ${VENV_DIR}`);
|
|
54
|
+
if (uvCmd) {
|
|
55
|
+
const result = (0, child_process_1.spawnSync)(uvCmd, ['venv', VENV_DIR, '--python', pythonCmd], {
|
|
56
|
+
stdio: 'inherit',
|
|
57
|
+
});
|
|
58
|
+
if (result.status === 0)
|
|
59
|
+
return true;
|
|
60
|
+
console.warn('⚠ uv venv failed, falling back to python -m venv');
|
|
61
|
+
}
|
|
62
|
+
const result = (0, child_process_1.spawnSync)(pythonCmd, ['-m', 'venv', VENV_DIR], {
|
|
63
|
+
stdio: 'inherit',
|
|
64
|
+
});
|
|
65
|
+
return result.status === 0;
|
|
66
|
+
}
|
|
67
|
+
function installAgent(pythonCmd, uvCmd) {
|
|
68
|
+
const pipBin = path_1.default.join(VENV_BIN, process.platform === 'win32' ? 'pip.exe' : 'pip');
|
|
69
|
+
console.log(`📦 Installing ${AGENT_PACKAGE}...`);
|
|
70
|
+
if (uvCmd) {
|
|
71
|
+
const result = (0, child_process_1.spawnSync)(uvCmd, ['pip', 'install', AGENT_PACKAGE, '--python', pipBin], {
|
|
72
|
+
stdio: 'inherit',
|
|
73
|
+
});
|
|
74
|
+
if (result.status === 0)
|
|
75
|
+
return true;
|
|
76
|
+
console.warn('⚠ uv pip install failed, falling back to pip');
|
|
77
|
+
}
|
|
78
|
+
const result = (0, child_process_1.spawnSync)(pipBin, ['install', AGENT_PACKAGE], {
|
|
79
|
+
stdio: 'inherit',
|
|
80
|
+
shell: process.platform === 'win32',
|
|
81
|
+
});
|
|
82
|
+
return result.status === 0;
|
|
83
|
+
}
|
|
84
|
+
function ensureAgentInstalled() {
|
|
85
|
+
const existing = findAgentBinary();
|
|
86
|
+
if (existing) {
|
|
87
|
+
return existing;
|
|
88
|
+
}
|
|
89
|
+
console.log(`⚠ solidx-agent not found in PATH`);
|
|
90
|
+
const pythonCmd = findPython();
|
|
91
|
+
if (!pythonCmd) {
|
|
92
|
+
console.error('❌ Python 3.11+ is required but not found.\n' +
|
|
93
|
+
' Install Python 3.11+ and try again, or manually run:\n' +
|
|
94
|
+
` pip install ${AGENT_PACKAGE}`);
|
|
95
|
+
process.exit(1);
|
|
96
|
+
}
|
|
97
|
+
const uvCmd = findUv();
|
|
98
|
+
if (!ensureVenv(pythonCmd, uvCmd)) {
|
|
99
|
+
console.error('❌ Failed to create virtual environment at ' + VENV_DIR + '\n' +
|
|
100
|
+
' Try creating it manually:\n' +
|
|
101
|
+
` ${pythonCmd} -m venv ${VENV_DIR}`);
|
|
102
|
+
process.exit(1);
|
|
103
|
+
}
|
|
104
|
+
if (!installAgent(pythonCmd, uvCmd)) {
|
|
105
|
+
console.error('❌ Failed to install ' + AGENT_PACKAGE + '\n' +
|
|
106
|
+
' Try installing manually:\n' +
|
|
107
|
+
` ${VENV_BIN}/pip install ${AGENT_PACKAGE}`);
|
|
108
|
+
process.exit(1);
|
|
109
|
+
}
|
|
110
|
+
if (!fs_1.default.existsSync(VENV_AGENT_BIN)) {
|
|
111
|
+
console.error('❌ Package installed but solidx-agent binary not found at ' + VENV_AGENT_BIN + '\n' +
|
|
112
|
+
' The package may not have installed correctly. Try:\n' +
|
|
113
|
+
` ${VENV_BIN}/pip install --force-reinstall ${AGENT_PACKAGE}`);
|
|
114
|
+
process.exit(1);
|
|
115
|
+
}
|
|
116
|
+
console.log(`✔ ${AGENT_PACKAGE} installed successfully`);
|
|
117
|
+
return VENV_AGENT_BIN;
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=agent-helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-helper.js","sourceRoot":"","sources":["../../src/commands/agent-helper.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ const child_process_1 = require("child_process");
|
|
|
8
8
|
const path_1 = __importDefault(require("path"));
|
|
9
9
|
const dotenv_1 = require("dotenv");
|
|
10
10
|
const helper_1 = require("../helper");
|
|
11
|
+
const agent_helper_1 = require("./agent-helper");
|
|
11
12
|
function resolveDatabaseUrl() {
|
|
12
13
|
if (process.env.DATABASE_URL)
|
|
13
14
|
return process.env.DATABASE_URL;
|
|
@@ -50,7 +51,7 @@ function registerAgentCommand(program) {
|
|
|
50
51
|
if (missing.length)
|
|
51
52
|
console.warn(`⚠ Missing env: ${missing.join(', ')}`);
|
|
52
53
|
console.log(`▶ Starting SolidX AI Agent server on ${options.host}:${options.port}`);
|
|
53
|
-
const agentCommand =
|
|
54
|
+
const agentCommand = (0, agent_helper_1.ensureAgentInstalled)();
|
|
54
55
|
const result = (0, child_process_1.spawnSync)(agentCommand, ['serve', '--port', options.port, '--host', options.host, '--log-level', options.logLevel], {
|
|
55
56
|
cwd: projectRoot,
|
|
56
57
|
stdio: 'inherit',
|
|
@@ -96,7 +97,7 @@ function registerAgentCommand(program) {
|
|
|
96
97
|
if (missing.length)
|
|
97
98
|
console.warn(`⚠ Missing env: ${missing.join(', ')}`);
|
|
98
99
|
console.log(`▶ Running SolidX AI Agent: ${task}`);
|
|
99
|
-
const agentCommand =
|
|
100
|
+
const agentCommand = (0, agent_helper_1.ensureAgentInstalled)();
|
|
100
101
|
const result = (0, child_process_1.spawnSync)(agentCommand, args, {
|
|
101
102
|
cwd: projectRoot,
|
|
102
103
|
stdio: 'inherit',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.command.js","sourceRoot":"","sources":["../../src/commands/agent.command.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"agent.command.js","sourceRoot":"","sources":["../../src/commands/agent.command.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ const child_process_1 = require("child_process");
|
|
|
8
8
|
const path_1 = __importDefault(require("path"));
|
|
9
9
|
const dotenv_1 = require("dotenv");
|
|
10
10
|
const helper_1 = require("../helper");
|
|
11
|
+
const agent_helper_1 = require("./agent-helper");
|
|
11
12
|
function resolveDatabaseUrl() {
|
|
12
13
|
if (process.env.DATABASE_URL)
|
|
13
14
|
return process.env.DATABASE_URL;
|
|
@@ -63,7 +64,7 @@ function registerMcpCommand(program) {
|
|
|
63
64
|
}
|
|
64
65
|
printBridgeSummary(env);
|
|
65
66
|
console.log(`▶ Starting SolidX MCP Server on ${options.host}:${options.port}`);
|
|
66
|
-
const agentCommand =
|
|
67
|
+
const agentCommand = (0, agent_helper_1.ensureAgentInstalled)();
|
|
67
68
|
const result = (0, child_process_1.spawnSync)(agentCommand, [
|
|
68
69
|
'mcp-remote',
|
|
69
70
|
'--host', options.host,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.command.js","sourceRoot":"","sources":["../../src/commands/mcp.command.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"mcp.command.js","sourceRoot":"","sources":["../../src/commands/mcp.command.ts"],"names":[],"mappings":"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"}
|
package/dist/helper.js
CHANGED
|
@@ -12,7 +12,8 @@ function validateProjectRoot() {
|
|
|
12
12
|
const cwd = process.cwd();
|
|
13
13
|
for (const file of requiredProjectFiles) {
|
|
14
14
|
if (!fs_1.default.existsSync(path_1.default.join(cwd, file))) {
|
|
15
|
-
console.error(`Ensure you are running this command from the SolidX project root. Missing file: ${file}`
|
|
15
|
+
console.error(`Ensure you are running this command from the SolidX project root. Missing file: ${file}\n` +
|
|
16
|
+
`Run this command from the directory containing your SolidX project (with solid-api/ and solid-ui/ subdirectories).`);
|
|
16
17
|
process.exit(1);
|
|
17
18
|
}
|
|
18
19
|
}
|
package/dist/helper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":";;;;;AAKA,
|
|
1
|
+
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":";;;;;AAKA,kDAYC;AAED,sDAcC;AAjCD,4CAAoB;AACpB,gDAAwB;AAExB,MAAM,oBAAoB,GAAG,CAAC,wBAAwB,EAAE,uBAAuB,CAAU,CAAC;AAE1F,SAAgB,mBAAmB;IACjC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAE1B,KAAK,MAAM,IAAI,IAAI,oBAAoB,EAAE,CAAC;QACxC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,KAAK,CACX,mFAAmF,IAAI,IAAI;gBAC3F,oHAAoH,CACrH,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAgB,qBAAqB,CAAC,WAAqC,EAAE,UAAkB;IAC7F,mBAAmB,EAAE,CAAC;IAEtB,MAAM,eAAe,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;IAC9E,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAEtE,CAAC;IAEF,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;QACvC,OAAO,CAAC,KAAK,CACX,UAAU,WAAW,8BAA8B,UAAU,uCAAuC,CACrG,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
|