@trikhub/cli 0.4.0 → 0.6.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.
- package/README.md +1 -7
- package/dist/cli.js +7 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/install.d.ts +6 -5
- package/dist/commands/install.d.ts.map +1 -1
- package/dist/commands/install.js +148 -74
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +16 -1
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/mcp.d.ts +11 -0
- package/dist/commands/mcp.d.ts.map +1 -0
- package/dist/commands/mcp.js +96 -0
- package/dist/commands/mcp.js.map +1 -0
- package/dist/commands/publish.d.ts.map +1 -1
- package/dist/commands/publish.js +38 -32
- package/dist/commands/publish.js.map +1 -1
- package/dist/commands/uninstall.d.ts +4 -2
- package/dist/commands/uninstall.d.ts.map +1 -1
- package/dist/commands/uninstall.js +78 -26
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/commands/upgrade.d.ts.map +1 -1
- package/dist/commands/upgrade.js +122 -5
- package/dist/commands/upgrade.js.map +1 -1
- package/dist/lib/registry.d.ts +1 -0
- package/dist/lib/registry.d.ts.map +1 -1
- package/dist/lib/registry.js +5 -0
- package/dist/lib/registry.js.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* trik mcp command
|
|
3
|
+
*
|
|
4
|
+
* Starts the TrikHub MCP server for AI-assisted trik development.
|
|
5
|
+
*/
|
|
6
|
+
import chalk from 'chalk';
|
|
7
|
+
import { spawn } from 'child_process';
|
|
8
|
+
import { createRequire } from 'module';
|
|
9
|
+
import path from 'path';
|
|
10
|
+
import { fileURLToPath } from 'url';
|
|
11
|
+
export async function mcpCommand(options) {
|
|
12
|
+
// Find the MCP package entry point
|
|
13
|
+
const require = createRequire(import.meta.url);
|
|
14
|
+
let mcpPath;
|
|
15
|
+
try {
|
|
16
|
+
// Try to resolve @trikhub/mcp
|
|
17
|
+
mcpPath = require.resolve('@trikhub/mcp');
|
|
18
|
+
}
|
|
19
|
+
catch {
|
|
20
|
+
// Fallback to relative path in monorepo
|
|
21
|
+
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
22
|
+
mcpPath = path.resolve(__dirname, '../../../mcp/dist/index.js');
|
|
23
|
+
}
|
|
24
|
+
if (options.stdio) {
|
|
25
|
+
// Start in stdio mode (for MCP clients like Claude Code)
|
|
26
|
+
console.error(chalk.cyan('Starting TrikHub MCP server in stdio mode...'));
|
|
27
|
+
const child = spawn('node', [mcpPath], {
|
|
28
|
+
stdio: 'inherit',
|
|
29
|
+
});
|
|
30
|
+
child.on('error', (error) => {
|
|
31
|
+
console.error(chalk.red(`Failed to start MCP server: ${error.message}`));
|
|
32
|
+
process.exit(1);
|
|
33
|
+
});
|
|
34
|
+
child.on('exit', (code) => {
|
|
35
|
+
process.exit(code ?? 0);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
// Print configuration instructions
|
|
40
|
+
console.log();
|
|
41
|
+
console.log(chalk.bold.cyan('TrikHub MCP Server'));
|
|
42
|
+
console.log();
|
|
43
|
+
console.log(chalk.dim('An MCP server that helps you create, validate, and manage Triks'));
|
|
44
|
+
console.log(chalk.dim('using AI assistants in your IDE.'));
|
|
45
|
+
console.log();
|
|
46
|
+
console.log(chalk.bold('Setup for Claude Code'));
|
|
47
|
+
console.log();
|
|
48
|
+
console.log('Add this to your Claude Code MCP settings:');
|
|
49
|
+
console.log();
|
|
50
|
+
console.log(chalk.green(`{
|
|
51
|
+
"mcpServers": {
|
|
52
|
+
"trikhub": {
|
|
53
|
+
"command": "npx",
|
|
54
|
+
"args": ["-y", "@trikhub/mcp"]
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}`));
|
|
58
|
+
console.log();
|
|
59
|
+
console.log(chalk.bold('Setup for VS Code (with MCP extension)'));
|
|
60
|
+
console.log();
|
|
61
|
+
console.log('Add to your settings.json:');
|
|
62
|
+
console.log();
|
|
63
|
+
console.log(chalk.green(`{
|
|
64
|
+
"mcp.servers": {
|
|
65
|
+
"trikhub": {
|
|
66
|
+
"command": "npx",
|
|
67
|
+
"args": ["-y", "@trikhub/mcp"]
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}`));
|
|
71
|
+
console.log();
|
|
72
|
+
console.log(chalk.bold('Or run directly'));
|
|
73
|
+
console.log();
|
|
74
|
+
console.log(` ${chalk.cyan('trik mcp --stdio')} - Start MCP server in stdio mode`);
|
|
75
|
+
console.log(` ${chalk.cyan('npx @trikhub/mcp')} - Run standalone`);
|
|
76
|
+
console.log();
|
|
77
|
+
console.log(chalk.bold('Available Tools'));
|
|
78
|
+
console.log();
|
|
79
|
+
console.log(' • analyze_trik_requirements - Understand what to build');
|
|
80
|
+
console.log(' • design_action - Design action schemas');
|
|
81
|
+
console.log(' • design_schema - Create JSON schemas');
|
|
82
|
+
console.log(' • scaffold_trik - Generate complete project');
|
|
83
|
+
console.log(' • validate_manifest - Check manifest for errors');
|
|
84
|
+
console.log(' • diagnose_error - Explain and fix errors');
|
|
85
|
+
console.log();
|
|
86
|
+
console.log(chalk.bold('Available Prompts'));
|
|
87
|
+
console.log();
|
|
88
|
+
console.log(' • create-trik - Guided trik creation');
|
|
89
|
+
console.log(' • debug-manifest - Debug manifest issues');
|
|
90
|
+
console.log(' • add-api-integration - Add API action');
|
|
91
|
+
console.log();
|
|
92
|
+
console.log(chalk.dim('Learn more: https://trikhub.com/docs/mcp-server'));
|
|
93
|
+
console.log();
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=mcp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAYH,UAAU,cAAc;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AA0FD,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAYH,UAAU,cAAc;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AA0FD,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAwQ3E"}
|
package/dist/commands/publish.js
CHANGED
|
@@ -187,40 +187,46 @@ export async function publishCommand(options) {
|
|
|
187
187
|
const trikName = manifest.id || manifest.name;
|
|
188
188
|
const fullName = `@${owner}/${trikName}`;
|
|
189
189
|
// Step 4: Verify git remote matches trikhub.json repository
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
190
|
+
// Skip this check if TRIKHUB_SKIP_REMOTE_CHECK is set (for E2E testing with mock remotes)
|
|
191
|
+
if (process.env.TRIKHUB_SKIP_REMOTE_CHECK === 'true') {
|
|
192
|
+
console.log(chalk.dim(' Skipping git remote verification (TRIKHUB_SKIP_REMOTE_CHECK=true)'));
|
|
193
|
+
}
|
|
194
|
+
else {
|
|
195
|
+
spinner.start('Verifying git remote...');
|
|
196
|
+
try {
|
|
197
|
+
const gitRemote = execSync('git remote get-url origin', {
|
|
198
|
+
cwd: repoDir,
|
|
199
|
+
encoding: 'utf-8',
|
|
200
|
+
stdio: ['pipe', 'pipe', 'pipe'],
|
|
201
|
+
}).trim();
|
|
202
|
+
// Normalize URLs for comparison (handle SSH and HTTPS variants)
|
|
203
|
+
const normalizeGitUrl = (url) => {
|
|
204
|
+
return url
|
|
205
|
+
.replace(/^git@github\.com:/, 'github.com/')
|
|
206
|
+
.replace(/^https?:\/\//, '')
|
|
207
|
+
.replace(/\.git$/, '')
|
|
208
|
+
.toLowerCase();
|
|
209
|
+
};
|
|
210
|
+
const normalizedRemote = normalizeGitUrl(gitRemote);
|
|
211
|
+
if (!normalizedRemote.includes(githubRepo.toLowerCase())) {
|
|
212
|
+
spinner.fail('Git remote does not match trikhub.json repository');
|
|
213
|
+
console.log(chalk.red('\nRepository mismatch detected:'));
|
|
214
|
+
console.log(chalk.dim(` trikhub.json: ${repoUrl}`));
|
|
215
|
+
console.log(chalk.dim(` git remote: ${gitRemote}`));
|
|
216
|
+
console.log();
|
|
217
|
+
console.log(chalk.dim('Update trikhub.json to match your git remote, or push to the correct repository.'));
|
|
218
|
+
process.exit(1);
|
|
219
|
+
}
|
|
220
|
+
spinner.succeed('Git remote verified');
|
|
221
|
+
}
|
|
222
|
+
catch {
|
|
223
|
+
// Not a git repo or no remote configured
|
|
224
|
+
spinner.fail('Not a git repository or no remote configured');
|
|
225
|
+
console.log(chalk.dim('Initialize git and add a remote that matches trikhub.json:'));
|
|
226
|
+
console.log(chalk.dim(` git init`));
|
|
227
|
+
console.log(chalk.dim(` git remote add origin ${repoUrl}`));
|
|
213
228
|
process.exit(1);
|
|
214
229
|
}
|
|
215
|
-
spinner.succeed('Git remote verified');
|
|
216
|
-
}
|
|
217
|
-
catch {
|
|
218
|
-
// Not a git repo or no remote configured
|
|
219
|
-
spinner.fail('Not a git repository or no remote configured');
|
|
220
|
-
console.log(chalk.dim('Initialize git and add a remote that matches trikhub.json:'));
|
|
221
|
-
console.log(chalk.dim(` git init`));
|
|
222
|
-
console.log(chalk.dim(` git remote add origin ${repoUrl}`));
|
|
223
|
-
process.exit(1);
|
|
224
230
|
}
|
|
225
231
|
console.log(chalk.dim(` Trik: ${fullName}`));
|
|
226
232
|
console.log(chalk.dim(` Repo: ${githubRepo}`));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
* Removes a trik from both package.json and .trikhub/config.json.
|
|
5
5
|
*
|
|
6
6
|
* Workflow:
|
|
7
|
-
* 1.
|
|
8
|
-
* 2.
|
|
7
|
+
* 1. Check if it's a cross-language trik (stored in .trikhub/triks/)
|
|
8
|
+
* 2. Remove from .trikhub/config.json
|
|
9
|
+
* 3. If cross-language: delete from .trikhub/triks/
|
|
10
|
+
* 4. If same-language: run npm/pnpm/yarn uninstall
|
|
9
11
|
*/
|
|
10
12
|
export declare function uninstallCommand(trikInput: string): Promise<void>;
|
|
11
13
|
//# sourceMappingURL=uninstall.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA2JH,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAqFvE"}
|
|
@@ -4,11 +4,13 @@
|
|
|
4
4
|
* Removes a trik from both package.json and .trikhub/config.json.
|
|
5
5
|
*
|
|
6
6
|
* Workflow:
|
|
7
|
-
* 1.
|
|
8
|
-
* 2.
|
|
7
|
+
* 1. Check if it's a cross-language trik (stored in .trikhub/triks/)
|
|
8
|
+
* 2. Remove from .trikhub/config.json
|
|
9
|
+
* 3. If cross-language: delete from .trikhub/triks/
|
|
10
|
+
* 4. If same-language: run npm/pnpm/yarn uninstall
|
|
9
11
|
*/
|
|
10
12
|
import { existsSync } from 'node:fs';
|
|
11
|
-
import { readFile, writeFile } from 'node:fs/promises';
|
|
13
|
+
import { readFile, writeFile, rm } from 'node:fs/promises';
|
|
12
14
|
import { join } from 'node:path';
|
|
13
15
|
import { spawn } from 'node:child_process';
|
|
14
16
|
import chalk from 'chalk';
|
|
@@ -69,6 +71,8 @@ async function readNpmConfig(baseDir) {
|
|
|
69
71
|
const config = JSON.parse(content);
|
|
70
72
|
return {
|
|
71
73
|
triks: Array.isArray(config.triks) ? config.triks : [],
|
|
74
|
+
trikhub: config.trikhub ?? {},
|
|
75
|
+
runtimes: config.runtimes ?? {},
|
|
72
76
|
};
|
|
73
77
|
}
|
|
74
78
|
catch {
|
|
@@ -83,15 +87,46 @@ async function writeNpmConfig(config, baseDir) {
|
|
|
83
87
|
await writeFile(configPath, JSON.stringify(config, null, 2) + '\n', 'utf-8');
|
|
84
88
|
}
|
|
85
89
|
/**
|
|
86
|
-
* Remove a trik from the config
|
|
90
|
+
* Remove a trik from the config and return its runtime
|
|
87
91
|
*/
|
|
88
92
|
async function removeTrikFromConfig(packageName, baseDir) {
|
|
89
93
|
const config = await readNpmConfig(baseDir);
|
|
90
94
|
if (!config.triks.includes(packageName)) {
|
|
91
|
-
return false;
|
|
95
|
+
return { wasInConfig: false };
|
|
92
96
|
}
|
|
97
|
+
// Get the runtime before removing
|
|
98
|
+
const runtime = config.runtimes?.[packageName];
|
|
99
|
+
// Remove from all config fields
|
|
93
100
|
config.triks = config.triks.filter((t) => t !== packageName);
|
|
101
|
+
if (config.trikhub && packageName in config.trikhub) {
|
|
102
|
+
delete config.trikhub[packageName];
|
|
103
|
+
}
|
|
104
|
+
if (config.runtimes && packageName in config.runtimes) {
|
|
105
|
+
delete config.runtimes[packageName];
|
|
106
|
+
}
|
|
94
107
|
await writeNpmConfig(config, baseDir);
|
|
108
|
+
return { wasInConfig: true, runtime };
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Get the path to a cross-language trik in .trikhub/triks/
|
|
112
|
+
*/
|
|
113
|
+
function getTrikDirPath(baseDir, packageName) {
|
|
114
|
+
// Handle scoped packages: @scope/name -> .trikhub/triks/@scope/name
|
|
115
|
+
if (packageName.startsWith('@')) {
|
|
116
|
+
const parts = packageName.split('/');
|
|
117
|
+
return join(baseDir, '.trikhub', 'triks', parts[0], parts[1]);
|
|
118
|
+
}
|
|
119
|
+
return join(baseDir, '.trikhub', 'triks', packageName);
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Remove a cross-language trik directory from .trikhub/triks/
|
|
123
|
+
*/
|
|
124
|
+
async function removeTrikDirectory(baseDir, packageName) {
|
|
125
|
+
const trikDir = getTrikDirPath(baseDir, packageName);
|
|
126
|
+
if (!existsSync(trikDir)) {
|
|
127
|
+
return false;
|
|
128
|
+
}
|
|
129
|
+
await rm(trikDir, { recursive: true, force: true });
|
|
95
130
|
return true;
|
|
96
131
|
}
|
|
97
132
|
export async function uninstallCommand(trikInput) {
|
|
@@ -110,35 +145,52 @@ export async function uninstallCommand(trikInput) {
|
|
|
110
145
|
console.log(chalk.red('No package.json found in current directory.'));
|
|
111
146
|
process.exit(1);
|
|
112
147
|
}
|
|
113
|
-
// Remove from config first
|
|
148
|
+
// Remove from config first and get the runtime
|
|
114
149
|
spinner.start(`Removing ${chalk.cyan(packageName)} from config...`);
|
|
115
|
-
const wasInConfig = await removeTrikFromConfig(packageName, baseDir);
|
|
150
|
+
const { wasInConfig, runtime } = await removeTrikFromConfig(packageName, baseDir);
|
|
116
151
|
if (!wasInConfig) {
|
|
117
152
|
spinner.info(`${chalk.yellow(packageName)} was not in .trikhub/config.json`);
|
|
118
153
|
}
|
|
119
154
|
else {
|
|
120
155
|
spinner.succeed(`Removed ${chalk.green(packageName)} from .trikhub/config.json`);
|
|
121
156
|
}
|
|
122
|
-
//
|
|
123
|
-
const
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
157
|
+
// Check if the trik is stored in .trikhub/triks/ (TrikHub-managed)
|
|
158
|
+
const trikDirPath = getTrikDirPath(baseDir, packageName);
|
|
159
|
+
const isInTriksDir = existsSync(trikDirPath);
|
|
160
|
+
// Also check node_modules for npm-based triks
|
|
161
|
+
const nodeModulesPath = join(baseDir, 'node_modules', ...packageName.split('/'));
|
|
162
|
+
const isInNodeModules = existsSync(nodeModulesPath);
|
|
163
|
+
// Remove from .trikhub/triks/ if present (TrikHub-managed triks)
|
|
164
|
+
if (isInTriksDir) {
|
|
165
|
+
spinner.start(`Removing ${chalk.cyan(packageName)} from .trikhub/triks/...`);
|
|
166
|
+
await removeTrikDirectory(baseDir, packageName);
|
|
167
|
+
spinner.succeed(`Removed ${chalk.green(packageName)} from .trikhub/triks/`);
|
|
168
|
+
}
|
|
169
|
+
// Remove from node_modules if present (npm-based triks)
|
|
170
|
+
if (isInNodeModules) {
|
|
171
|
+
const pm = detectPackageManager(baseDir);
|
|
172
|
+
// Build uninstall command
|
|
173
|
+
const uninstallArgs = [];
|
|
174
|
+
switch (pm) {
|
|
175
|
+
case 'pnpm':
|
|
176
|
+
uninstallArgs.push('remove', packageName);
|
|
177
|
+
break;
|
|
178
|
+
case 'yarn':
|
|
179
|
+
uninstallArgs.push('remove', packageName);
|
|
180
|
+
break;
|
|
181
|
+
case 'npm':
|
|
182
|
+
default:
|
|
183
|
+
uninstallArgs.push('uninstall', '--prefix', baseDir, packageName);
|
|
184
|
+
break;
|
|
185
|
+
}
|
|
186
|
+
spinner.start(`Uninstalling ${chalk.cyan(packageName)}...`);
|
|
187
|
+
spinner.stopAndPersist({ symbol: '📦', text: `Uninstalling ${chalk.cyan(packageName)}...` });
|
|
188
|
+
await runCommand(pm, uninstallArgs, baseDir);
|
|
189
|
+
}
|
|
190
|
+
if (!isInTriksDir && !isInNodeModules && !wasInConfig) {
|
|
191
|
+
console.log(chalk.yellow(`${packageName} was not installed`));
|
|
192
|
+
return;
|
|
137
193
|
}
|
|
138
|
-
// Run package manager uninstall
|
|
139
|
-
spinner.start(`Uninstalling ${chalk.cyan(packageName)}...`);
|
|
140
|
-
spinner.stopAndPersist({ symbol: '📦', text: `Uninstalling ${chalk.cyan(packageName)}...` });
|
|
141
|
-
await runCommand(pm, uninstallArgs, baseDir);
|
|
142
194
|
console.log();
|
|
143
195
|
console.log(chalk.green(`✓ Uninstalled ${packageName}`));
|
|
144
196
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upgrade.d.ts","sourceRoot":"","sources":["../../src/commands/upgrade.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"upgrade.d.ts","sourceRoot":"","sources":["../../src/commands/upgrade.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAoBH,UAAU,cAAc;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AA2ED,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,IAAI,CAAC,CAuIf;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAkF9E"}
|
package/dist/commands/upgrade.js
CHANGED
|
@@ -3,7 +3,9 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Upgrades an installed trik to the latest version.
|
|
5
5
|
*/
|
|
6
|
-
import { rmSync } from 'node:fs';
|
|
6
|
+
import { existsSync, rmSync } from 'node:fs';
|
|
7
|
+
import { readFile } from 'node:fs/promises';
|
|
8
|
+
import { join } from 'node:path';
|
|
7
9
|
import chalk from 'chalk';
|
|
8
10
|
import ora from 'ora';
|
|
9
11
|
import * as semver from 'semver';
|
|
@@ -12,6 +14,64 @@ import { registry } from '../lib/registry.js';
|
|
|
12
14
|
import { getConfigContext } from '../lib/config.js';
|
|
13
15
|
import { getInstalledTrik, getInstalledTriks, isTrikInstalled, removeFromLockfile, getTrikPath, } from '../lib/storage.js';
|
|
14
16
|
import { installCommand } from './install.js';
|
|
17
|
+
/**
|
|
18
|
+
* Read npm-based config.json
|
|
19
|
+
*/
|
|
20
|
+
async function readNpmConfig(baseDir) {
|
|
21
|
+
const configPath = join(baseDir, '.trikhub', 'config.json');
|
|
22
|
+
if (!existsSync(configPath)) {
|
|
23
|
+
return { triks: [] };
|
|
24
|
+
}
|
|
25
|
+
try {
|
|
26
|
+
const content = await readFile(configPath, 'utf-8');
|
|
27
|
+
const config = JSON.parse(content);
|
|
28
|
+
return {
|
|
29
|
+
triks: Array.isArray(config.triks) ? config.triks : [],
|
|
30
|
+
trikhub: config.trikhub ?? {},
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
return { triks: [] };
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Check if a trik is installed (checks both lockfile and npm config)
|
|
39
|
+
*/
|
|
40
|
+
async function isAnyTrikInstalled(fullName, ctx) {
|
|
41
|
+
// Check lockfile first (TrikHub registry triks)
|
|
42
|
+
if (isTrikInstalled(fullName, ctx)) {
|
|
43
|
+
return true;
|
|
44
|
+
}
|
|
45
|
+
// Check npm config (npm-based triks)
|
|
46
|
+
if (ctx.scope === 'local') {
|
|
47
|
+
const npmConfig = await readNpmConfig(process.cwd());
|
|
48
|
+
return npmConfig.triks.includes(fullName);
|
|
49
|
+
}
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Get installed trik info (checks both lockfile and npm config)
|
|
54
|
+
*/
|
|
55
|
+
async function getAnyInstalledTrik(fullName, ctx) {
|
|
56
|
+
// Check lockfile first
|
|
57
|
+
const lockfileTrik = getInstalledTrik(fullName, ctx);
|
|
58
|
+
if (lockfileTrik) {
|
|
59
|
+
return lockfileTrik;
|
|
60
|
+
}
|
|
61
|
+
// Check npm config
|
|
62
|
+
if (ctx.scope === 'local') {
|
|
63
|
+
const npmConfig = await readNpmConfig(process.cwd());
|
|
64
|
+
if (npmConfig.triks.includes(fullName)) {
|
|
65
|
+
const version = npmConfig.trikhub?.[fullName] || 'unknown';
|
|
66
|
+
return {
|
|
67
|
+
fullName,
|
|
68
|
+
version,
|
|
69
|
+
isNpmBased: true,
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
return null;
|
|
74
|
+
}
|
|
15
75
|
export async function upgradeCommand(trikInput, options) {
|
|
16
76
|
const spinner = ora();
|
|
17
77
|
try {
|
|
@@ -19,8 +79,9 @@ export async function upgradeCommand(trikInput, options) {
|
|
|
19
79
|
const ctx = getConfigContext();
|
|
20
80
|
// Parse the trik name
|
|
21
81
|
const { fullName } = parseTrikName(trikInput);
|
|
22
|
-
// Check if installed in this scope
|
|
23
|
-
|
|
82
|
+
// Check if installed in this scope (lockfile or npm config)
|
|
83
|
+
const isInstalled = await isAnyTrikInstalled(fullName, ctx);
|
|
84
|
+
if (!isInstalled) {
|
|
24
85
|
console.log(chalk.red(`${fullName} is not installed`));
|
|
25
86
|
if (ctx.scope === 'local') {
|
|
26
87
|
console.log(chalk.dim(` (checked in ${ctx.trikhubDir})`));
|
|
@@ -28,7 +89,7 @@ export async function upgradeCommand(trikInput, options) {
|
|
|
28
89
|
console.log(chalk.dim(`Use 'trik install ${fullName}' to install it`));
|
|
29
90
|
process.exit(1);
|
|
30
91
|
}
|
|
31
|
-
const installed =
|
|
92
|
+
const installed = await getAnyInstalledTrik(fullName, ctx);
|
|
32
93
|
if (!installed) {
|
|
33
94
|
console.log(chalk.red(`Could not find installation info for ${fullName}`));
|
|
34
95
|
process.exit(1);
|
|
@@ -36,6 +97,21 @@ export async function upgradeCommand(trikInput, options) {
|
|
|
36
97
|
// Fetch latest version from registry
|
|
37
98
|
spinner.start(`Checking for updates to ${chalk.cyan(fullName)}...`);
|
|
38
99
|
const trikInfo = await registry.getTrik(fullName);
|
|
100
|
+
// For npm-based triks not in TrikHub registry, suggest npm update
|
|
101
|
+
if ('isNpmBased' in installed && installed.isNpmBased) {
|
|
102
|
+
if (!trikInfo) {
|
|
103
|
+
// Not in TrikHub registry - pure npm package
|
|
104
|
+
spinner.stop();
|
|
105
|
+
console.log(chalk.yellow(`${fullName} is installed via npm (not in TrikHub registry).`));
|
|
106
|
+
console.log(chalk.dim(`Current version: v${installed.version}`));
|
|
107
|
+
console.log();
|
|
108
|
+
console.log(chalk.cyan('To upgrade, run:'));
|
|
109
|
+
console.log(chalk.dim(` npm update ${fullName}`));
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
// In TrikHub registry - we can check for updates and upgrade
|
|
113
|
+
spinner.stop();
|
|
114
|
+
}
|
|
39
115
|
if (!trikInfo) {
|
|
40
116
|
spinner.fail(`Trik ${chalk.red(fullName)} not found in registry`);
|
|
41
117
|
process.exit(1);
|
|
@@ -48,7 +124,48 @@ export async function upgradeCommand(trikInput, options) {
|
|
|
48
124
|
return;
|
|
49
125
|
}
|
|
50
126
|
spinner.text = `Upgrading ${chalk.cyan(fullName)} from v${currentVersion} to v${latestVersion}...`;
|
|
51
|
-
//
|
|
127
|
+
// Handle npm-based triks - migrate to TrikHub-managed installation
|
|
128
|
+
if ('isNpmBased' in installed && installed.isNpmBased) {
|
|
129
|
+
spinner.stop();
|
|
130
|
+
console.log(chalk.cyan(`\nMigrating ${fullName} to TrikHub-managed installation...\n`));
|
|
131
|
+
const { execSync } = await import('node:child_process');
|
|
132
|
+
const { writeFile } = await import('node:fs/promises');
|
|
133
|
+
try {
|
|
134
|
+
// 1. Remove from node_modules
|
|
135
|
+
console.log(chalk.dim(' Removing npm installation...'));
|
|
136
|
+
execSync(`npm uninstall ${fullName}`, {
|
|
137
|
+
stdio: 'pipe',
|
|
138
|
+
cwd: process.cwd(),
|
|
139
|
+
});
|
|
140
|
+
// 2. Remove from config.json triks array (keep trikhub version tracking)
|
|
141
|
+
const configPath = join(process.cwd(), '.trikhub', 'config.json');
|
|
142
|
+
if (existsSync(configPath)) {
|
|
143
|
+
const configContent = await readFile(configPath, 'utf-8');
|
|
144
|
+
const config = JSON.parse(configContent);
|
|
145
|
+
// Remove from triks array
|
|
146
|
+
config.triks = (config.triks || []).filter((t) => t !== fullName);
|
|
147
|
+
// Remove from trikhub tracking (will be managed via triks.lock)
|
|
148
|
+
if (config.trikhub)
|
|
149
|
+
delete config.trikhub[fullName];
|
|
150
|
+
await writeFile(configPath, JSON.stringify(config, null, 2));
|
|
151
|
+
}
|
|
152
|
+
// 3. Install via TrikHub registry
|
|
153
|
+
console.log(chalk.dim(` Installing ${fullName}@${latestVersion} from TrikHub registry...`));
|
|
154
|
+
await installCommand(fullName, { version: latestVersion });
|
|
155
|
+
console.log();
|
|
156
|
+
console.log(chalk.green(`✓ Upgraded ${fullName} from v${currentVersion} → v${latestVersion}`));
|
|
157
|
+
console.log(chalk.dim(` Now managed by TrikHub (installed to .trikhub/triks/)`));
|
|
158
|
+
}
|
|
159
|
+
catch (error) {
|
|
160
|
+
console.error(chalk.red(`\nFailed to upgrade ${fullName}`));
|
|
161
|
+
if (error instanceof Error) {
|
|
162
|
+
console.error(chalk.dim(error.message));
|
|
163
|
+
}
|
|
164
|
+
process.exit(1);
|
|
165
|
+
}
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
168
|
+
// For TrikHub registry triks, remove and reinstall
|
|
52
169
|
const installPath = getTrikPath(fullName, ctx);
|
|
53
170
|
rmSync(installPath, { recursive: true, force: true });
|
|
54
171
|
removeFromLockfile(fullName, ctx);
|