claudeup 1.4.0 → 1.4.2
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/index.js +25 -6
- package/dist/index.js.map +1 -1
- package/dist/main.js +34 -3
- package/dist/main.js.map +1 -1
- package/dist/services/claude-runner.js +1 -1
- package/dist/services/claude-runner.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,20 +1,37 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { render } from 'ink';
|
|
3
3
|
import React from 'react';
|
|
4
|
+
import { spawn } from 'node:child_process';
|
|
4
5
|
import { App, VERSION } from './ui/InkApp.js';
|
|
5
6
|
import { prerunClaude } from './prerunner/index.js';
|
|
7
|
+
import { checkForUpdates } from './services/version-check.js';
|
|
6
8
|
async function main() {
|
|
7
9
|
const args = process.argv.slice(2);
|
|
8
|
-
//
|
|
10
|
+
// Detect "claudeup claude [args]" subcommand
|
|
9
11
|
if (args[0] === 'claude') {
|
|
10
12
|
const claudeArgs = args.slice(1); // All args after "claude"
|
|
11
13
|
const exitCode = await prerunClaude(claudeArgs);
|
|
12
14
|
process.exit(exitCode);
|
|
13
|
-
return;
|
|
15
|
+
return;
|
|
14
16
|
}
|
|
15
|
-
// Handle
|
|
17
|
+
// Handle "claudeup update" - self-update command
|
|
18
|
+
if (args[0] === 'update') {
|
|
19
|
+
console.log('Updating claudeup...');
|
|
20
|
+
const proc = spawn('npm', ['install', '-g', 'claudeup@latest'], {
|
|
21
|
+
stdio: 'inherit',
|
|
22
|
+
shell: true,
|
|
23
|
+
});
|
|
24
|
+
proc.on('exit', (code) => process.exit(code || 0));
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
// Handle --version flag - show version and check for updates
|
|
16
28
|
if (args.includes('--version') || args.includes('-v')) {
|
|
17
|
-
console.log(VERSION);
|
|
29
|
+
console.log(`claudeup v${VERSION}`);
|
|
30
|
+
const result = await checkForUpdates();
|
|
31
|
+
if (result.updateAvailable) {
|
|
32
|
+
console.log(`\nUpdate available: v${result.latestVersion}`);
|
|
33
|
+
console.log('Run: claudeup update');
|
|
34
|
+
}
|
|
18
35
|
process.exit(0);
|
|
19
36
|
}
|
|
20
37
|
// Handle --help flag
|
|
@@ -25,15 +42,17 @@ TUI tool for managing Claude Code plugins, MCPs, and configuration.
|
|
|
25
42
|
|
|
26
43
|
Usage: claudeup [options]
|
|
27
44
|
claudeup claude [claude-args...] Run claude with auto-update prerunner
|
|
45
|
+
claudeup update Update claudeup to latest version
|
|
28
46
|
|
|
29
47
|
Options:
|
|
30
|
-
-v, --version Show version
|
|
48
|
+
-v, --version Show version and check for updates
|
|
31
49
|
-h, --help Show this help message
|
|
32
50
|
--no-refresh Skip auto-refresh of marketplaces on startup
|
|
33
51
|
|
|
34
|
-
|
|
52
|
+
Commands:
|
|
35
53
|
claudeup claude [args...] Check for plugin updates (cached 1h), update if needed,
|
|
36
54
|
then run 'claude' with all provided arguments.
|
|
55
|
+
claudeup update Update claudeup itself to latest version.
|
|
37
56
|
|
|
38
57
|
Navigation:
|
|
39
58
|
[1] Plugins Manage plugin marketplaces and installed plugins
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,6CAA6C;IAC7C,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QACzB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,0BAA0B;QAC5D,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvB,OAAO;IACT,CAAC;IAED,iDAAiD;IACjD,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,iBAAiB,CAAC,EAAE;YAC9D,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;QACnD,OAAO;IACT,CAAC;IAED,6DAA6D;IAC7D,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,eAAe,EAAE,CAAC;QACvC,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,wBAAwB,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC;YAC5D,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,qBAAqB;IACrB,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BnC,CAAC,CAAC;QACC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,qBAAqB;IACrB,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;AACnC,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;IACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
package/dist/main.js
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
3
|
import { render } from 'ink';
|
|
4
|
+
import { spawn } from 'node:child_process';
|
|
4
5
|
import { App, VERSION } from './ui/InkApp.js';
|
|
6
|
+
import { prerunClaude } from './prerunner/index.js';
|
|
7
|
+
import { checkForUpdates } from './services/version-check.js';
|
|
5
8
|
// ANSI escape codes for terminal control
|
|
6
9
|
const ENTER_ALT_SCREEN = '\x1b[?1049h';
|
|
7
10
|
const EXIT_ALT_SCREEN = '\x1b[?1049l';
|
|
@@ -10,9 +13,31 @@ const SHOW_CURSOR = '\x1b[?25h';
|
|
|
10
13
|
const CLEAR_SCREEN = '\x1b[2J\x1b[H';
|
|
11
14
|
async function main() {
|
|
12
15
|
const args = process.argv.slice(2);
|
|
13
|
-
// Handle
|
|
16
|
+
// Handle "claudeup claude [args]" - prerunner mode
|
|
17
|
+
if (args[0] === 'claude') {
|
|
18
|
+
const claudeArgs = args.slice(1);
|
|
19
|
+
const exitCode = await prerunClaude(claudeArgs);
|
|
20
|
+
process.exit(exitCode);
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
// Handle "claudeup update" - self-update command
|
|
24
|
+
if (args[0] === 'update') {
|
|
25
|
+
console.log('Updating claudeup...');
|
|
26
|
+
const proc = spawn('npm', ['install', '-g', 'claudeup@latest'], {
|
|
27
|
+
stdio: 'inherit',
|
|
28
|
+
shell: true,
|
|
29
|
+
});
|
|
30
|
+
proc.on('exit', (code) => process.exit(code || 0));
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
// Handle --version flag - show version and check for updates
|
|
14
34
|
if (args.includes('--version') || args.includes('-v')) {
|
|
15
|
-
console.log(VERSION);
|
|
35
|
+
console.log(`claudeup v${VERSION}`);
|
|
36
|
+
const result = await checkForUpdates();
|
|
37
|
+
if (result.updateAvailable) {
|
|
38
|
+
console.log(`\nUpdate available: v${result.latestVersion}`);
|
|
39
|
+
console.log('Run: claudeup update');
|
|
40
|
+
}
|
|
16
41
|
process.exit(0);
|
|
17
42
|
}
|
|
18
43
|
// Handle --help flag
|
|
@@ -22,12 +47,18 @@ async function main() {
|
|
|
22
47
|
TUI tool for managing Claude Code plugins, MCPs, and configuration.
|
|
23
48
|
|
|
24
49
|
Usage: claudeup [options]
|
|
50
|
+
claudeup claude [args...] Run claude with auto-update prerunner
|
|
51
|
+
claudeup update Update claudeup to latest version
|
|
25
52
|
|
|
26
53
|
Options:
|
|
27
|
-
-v, --version Show version
|
|
54
|
+
-v, --version Show version and check for updates
|
|
28
55
|
-h, --help Show this help message
|
|
29
56
|
--no-refresh Skip auto-refresh of marketplaces on startup
|
|
30
57
|
|
|
58
|
+
Commands:
|
|
59
|
+
claude [args...] Check for plugin updates (1h cache), then run claude
|
|
60
|
+
update Update claudeup itself to latest version
|
|
61
|
+
|
|
31
62
|
Navigation:
|
|
32
63
|
[1] Plugins Manage plugin marketplaces and installed plugins
|
|
33
64
|
[2] MCP Setup and manage MCP servers
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.tsx"],"names":[],"mappings":";;AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.tsx"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ export async function runClaude(args) {
|
|
|
17
17
|
return new Promise((resolve) => {
|
|
18
18
|
const proc = spawn('claude', args, {
|
|
19
19
|
stdio: 'inherit', // Pass through stdin, stdout, stderr
|
|
20
|
-
shell:
|
|
20
|
+
shell: true, // Required to find 'claude' in PATH on all systems
|
|
21
21
|
});
|
|
22
22
|
proc.on('exit', (code) => resolve(code || 0));
|
|
23
23
|
proc.on('error', (err) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-runner.js","sourceRoot":"","sources":["../../src/services/claude-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAElD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAc;IAC5C,yBAAyB;IACzB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrD,OAAO,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACxE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,yCAAyC;IACzC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE;YACjC,KAAK,EAAE,SAAS,EAAE,qCAAqC;YACvD,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"claude-runner.js","sourceRoot":"","sources":["../../src/services/claude-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAElD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAc;IAC5C,yBAAyB;IACzB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrD,OAAO,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACxE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,yCAAyC;IACzC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE;YACjC,KAAK,EAAE,SAAS,EAAE,qCAAqC;YACvD,KAAK,EAAE,IAAI,EAAE,mDAAmD;SACjE,CAAC,CAAC;QAEH,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACvB,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YACpD,OAAO,CAAC,CAAC,CAAC,CAAC;QACb,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
|