@wundr.io/cli 1.0.0 ā 1.0.1
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 +696 -280
- package/package.json +4 -4
- package/src/commands/computer-setup-commands.ts +160 -0
- package/src/tests/computer-setup-integration.test.ts +439 -0
- package/src/utils/backup-rollback-manager.ts +361 -0
- package/src/utils/claude-config-installer.ts +732 -0
- package/dist/ai/ai-service.d.ts +0 -152
- package/dist/ai/ai-service.d.ts.map +0 -1
- package/dist/ai/ai-service.js +0 -430
- package/dist/ai/ai-service.js.map +0 -1
- package/dist/ai/claude-client.d.ts +0 -130
- package/dist/ai/claude-client.d.ts.map +0 -1
- package/dist/ai/claude-client.js +0 -339
- package/dist/ai/claude-client.js.map +0 -1
- package/dist/ai/conversation-manager.d.ts +0 -164
- package/dist/ai/conversation-manager.d.ts.map +0 -1
- package/dist/ai/conversation-manager.js +0 -612
- package/dist/ai/conversation-manager.js.map +0 -1
- package/dist/ai/index.d.ts +0 -5
- package/dist/ai/index.d.ts.map +0 -1
- package/dist/ai/index.js +0 -8
- package/dist/ai/index.js.map +0 -1
- package/dist/cli.d.ts +0 -36
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js +0 -173
- package/dist/cli.js.map +0 -1
- package/dist/commands/ai.d.ts +0 -89
- package/dist/commands/ai.d.ts.map +0 -1
- package/dist/commands/ai.js +0 -735
- package/dist/commands/ai.js.map +0 -1
- package/dist/commands/analyze-optimized.d.ts +0 -14
- package/dist/commands/analyze-optimized.d.ts.map +0 -1
- package/dist/commands/analyze-optimized.js +0 -437
- package/dist/commands/analyze-optimized.js.map +0 -1
- package/dist/commands/analyze.d.ts +0 -65
- package/dist/commands/analyze.d.ts.map +0 -1
- package/dist/commands/analyze.js +0 -435
- package/dist/commands/analyze.js.map +0 -1
- package/dist/commands/batch.d.ts +0 -71
- package/dist/commands/batch.d.ts.map +0 -1
- package/dist/commands/batch.js +0 -738
- package/dist/commands/batch.js.map +0 -1
- package/dist/commands/chat.d.ts +0 -71
- package/dist/commands/chat.d.ts.map +0 -1
- package/dist/commands/chat.js +0 -674
- package/dist/commands/chat.js.map +0 -1
- package/dist/commands/claude-init.d.ts +0 -28
- package/dist/commands/claude-init.d.ts.map +0 -1
- package/dist/commands/claude-init.js +0 -587
- package/dist/commands/claude-init.js.map +0 -1
- package/dist/commands/claude-setup.d.ts +0 -32
- package/dist/commands/claude-setup.d.ts.map +0 -1
- package/dist/commands/claude-setup.js +0 -570
- package/dist/commands/claude-setup.js.map +0 -1
- package/dist/commands/computer-setup-commands.d.ts +0 -39
- package/dist/commands/computer-setup-commands.d.ts.map +0 -1
- package/dist/commands/computer-setup-commands.js +0 -563
- package/dist/commands/computer-setup-commands.js.map +0 -1
- package/dist/commands/computer-setup.d.ts +0 -7
- package/dist/commands/computer-setup.d.ts.map +0 -1
- package/dist/commands/computer-setup.js +0 -481
- package/dist/commands/computer-setup.js.map +0 -1
- package/dist/commands/create-command.d.ts +0 -7
- package/dist/commands/create-command.d.ts.map +0 -1
- package/dist/commands/create-command.js +0 -158
- package/dist/commands/create-command.js.map +0 -1
- package/dist/commands/create.d.ts +0 -74
- package/dist/commands/create.d.ts.map +0 -1
- package/dist/commands/create.js +0 -556
- package/dist/commands/create.js.map +0 -1
- package/dist/commands/dashboard.d.ts +0 -91
- package/dist/commands/dashboard.d.ts.map +0 -1
- package/dist/commands/dashboard.js +0 -537
- package/dist/commands/dashboard.js.map +0 -1
- package/dist/commands/govern.d.ts +0 -70
- package/dist/commands/govern.d.ts.map +0 -1
- package/dist/commands/govern.js +0 -480
- package/dist/commands/govern.js.map +0 -1
- package/dist/commands/init.d.ts +0 -55
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/init.js +0 -584
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/performance-optimizer.d.ts +0 -30
- package/dist/commands/performance-optimizer.d.ts.map +0 -1
- package/dist/commands/performance-optimizer.js +0 -649
- package/dist/commands/performance-optimizer.js.map +0 -1
- package/dist/commands/plugins.d.ts +0 -87
- package/dist/commands/plugins.d.ts.map +0 -1
- package/dist/commands/plugins.js +0 -685
- package/dist/commands/plugins.js.map +0 -1
- package/dist/commands/setup.d.ts +0 -29
- package/dist/commands/setup.d.ts.map +0 -1
- package/dist/commands/setup.js +0 -399
- package/dist/commands/setup.js.map +0 -1
- package/dist/commands/test-init.d.ts +0 -9
- package/dist/commands/test-init.d.ts.map +0 -1
- package/dist/commands/test-init.js +0 -222
- package/dist/commands/test-init.js.map +0 -1
- package/dist/commands/test.d.ts +0 -25
- package/dist/commands/test.d.ts.map +0 -1
- package/dist/commands/test.js +0 -217
- package/dist/commands/test.js.map +0 -1
- package/dist/commands/watch.d.ts +0 -76
- package/dist/commands/watch.d.ts.map +0 -1
- package/dist/commands/watch.js +0 -610
- package/dist/commands/watch.js.map +0 -1
- package/dist/context/context-manager.d.ts +0 -155
- package/dist/context/context-manager.d.ts.map +0 -1
- package/dist/context/context-manager.js +0 -383
- package/dist/context/context-manager.js.map +0 -1
- package/dist/context/index.d.ts +0 -3
- package/dist/context/index.d.ts.map +0 -1
- package/dist/context/index.js +0 -6
- package/dist/context/index.js.map +0 -1
- package/dist/context/session-manager.d.ts +0 -207
- package/dist/context/session-manager.d.ts.map +0 -1
- package/dist/context/session-manager.js +0 -682
- package/dist/context/session-manager.js.map +0 -1
- package/dist/index.d.ts +0 -8
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -51
- package/dist/index.js.map +0 -1
- package/dist/interactive/interactive-mode.d.ts +0 -76
- package/dist/interactive/interactive-mode.d.ts.map +0 -1
- package/dist/interactive/interactive-mode.js +0 -730
- package/dist/interactive/interactive-mode.js.map +0 -1
- package/dist/nlp/command-mapper.d.ts +0 -174
- package/dist/nlp/command-mapper.d.ts.map +0 -1
- package/dist/nlp/command-mapper.js +0 -623
- package/dist/nlp/command-mapper.js.map +0 -1
- package/dist/nlp/command-parser.d.ts +0 -106
- package/dist/nlp/command-parser.d.ts.map +0 -1
- package/dist/nlp/command-parser.js +0 -416
- package/dist/nlp/command-parser.js.map +0 -1
- package/dist/nlp/index.d.ts +0 -5
- package/dist/nlp/index.d.ts.map +0 -1
- package/dist/nlp/index.js +0 -8
- package/dist/nlp/index.js.map +0 -1
- package/dist/nlp/intent-classifier.d.ts +0 -59
- package/dist/nlp/intent-classifier.d.ts.map +0 -1
- package/dist/nlp/intent-classifier.js +0 -384
- package/dist/nlp/intent-classifier.js.map +0 -1
- package/dist/nlp/intent-parser.d.ts +0 -152
- package/dist/nlp/intent-parser.d.ts.map +0 -1
- package/dist/nlp/intent-parser.js +0 -739
- package/dist/nlp/intent-parser.js.map +0 -1
- package/dist/plugins/plugin-manager.d.ts +0 -120
- package/dist/plugins/plugin-manager.d.ts.map +0 -1
- package/dist/plugins/plugin-manager.js +0 -595
- package/dist/plugins/plugin-manager.js.map +0 -1
- package/dist/types/index.d.ts +0 -224
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js +0 -3
- package/dist/types/index.js.map +0 -1
- package/dist/utils/config-manager.d.ts +0 -73
- package/dist/utils/config-manager.d.ts.map +0 -1
- package/dist/utils/config-manager.js +0 -339
- package/dist/utils/config-manager.js.map +0 -1
- package/dist/utils/error-handler.d.ts +0 -46
- package/dist/utils/error-handler.d.ts.map +0 -1
- package/dist/utils/error-handler.js +0 -169
- package/dist/utils/error-handler.js.map +0 -1
- package/dist/utils/logger.d.ts +0 -25
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/logger.js +0 -94
- package/dist/utils/logger.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"claude-init.js","sourceRoot":"","sources":["../../src/commands/claude-init.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { Command } from 'commander';
|
|
2
|
-
/**
|
|
3
|
-
* Claude Setup Commands
|
|
4
|
-
* Comprehensive setup for Claude Code, Claude Flow, and MCP tools
|
|
5
|
-
*/
|
|
6
|
-
export declare class ClaudeSetupCommands {
|
|
7
|
-
private program;
|
|
8
|
-
constructor(program: Command);
|
|
9
|
-
private registerCommands;
|
|
10
|
-
private runCompleteSetup;
|
|
11
|
-
private installMcpTools;
|
|
12
|
-
private configureAgents;
|
|
13
|
-
private validateInstallation;
|
|
14
|
-
private installChromeExtension;
|
|
15
|
-
private setupOptimizations;
|
|
16
|
-
private addOptimizationToShell;
|
|
17
|
-
private installChrome;
|
|
18
|
-
private setupClaudeConfig;
|
|
19
|
-
private isClaudeInstalled;
|
|
20
|
-
private isClaudeFlowInstalled;
|
|
21
|
-
private isChromeInstalled;
|
|
22
|
-
private claudeDirExists;
|
|
23
|
-
private agentsConfigured;
|
|
24
|
-
private mcpServersConfigured;
|
|
25
|
-
private listAgents;
|
|
26
|
-
private getProfileAgents;
|
|
27
|
-
private generateAgentConfig;
|
|
28
|
-
private printNextSteps;
|
|
29
|
-
}
|
|
30
|
-
declare const createClaudeSetupCommands: (program: Command) => ClaudeSetupCommands;
|
|
31
|
-
export default createClaudeSetupCommands;
|
|
32
|
-
//# sourceMappingURL=claude-setup.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"claude-setup.d.ts","sourceRoot":"","sources":["../../src/commands/claude-setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC;;;GAGG;AACH,qBAAa,mBAAmB;IAClB,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,OAAO;IAIpC,OAAO,CAAC,gBAAgB;YA8EV,gBAAgB;YA6ChB,eAAe;YAoEf,eAAe;YAoCf,oBAAoB;YAsCpB,sBAAsB;YAetB,kBAAkB;YAmIlB,sBAAsB;YA4EtB,aAAa;YAkBb,iBAAiB;IA2B/B,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,qBAAqB;IAS7B,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,oBAAoB;IAc5B,OAAO,CAAC,UAAU;IAqClB,OAAO,CAAC,gBAAgB;IA2BxB,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,cAAc;CAYvB;AAED,QAAA,MAAM,yBAAyB,GAAI,SAAS,OAAO,wBACjB,CAAC;AACnC,eAAe,yBAAyB,CAAC"}
|
|
@@ -1,570 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ClaudeSetupCommands = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const chalk_1 = tslib_1.__importDefault(require("chalk"));
|
|
6
|
-
const ora_1 = tslib_1.__importDefault(require("ora"));
|
|
7
|
-
const child_process_1 = require("child_process");
|
|
8
|
-
const path = tslib_1.__importStar(require("path"));
|
|
9
|
-
const fs = tslib_1.__importStar(require("fs"));
|
|
10
|
-
/**
|
|
11
|
-
* Claude Setup Commands
|
|
12
|
-
* Comprehensive setup for Claude Code, Claude Flow, and MCP tools
|
|
13
|
-
*/
|
|
14
|
-
class ClaudeSetupCommands {
|
|
15
|
-
program;
|
|
16
|
-
constructor(program) {
|
|
17
|
-
this.program = program;
|
|
18
|
-
this.registerCommands();
|
|
19
|
-
}
|
|
20
|
-
registerCommands() {
|
|
21
|
-
const claudeSetup = this.program
|
|
22
|
-
.command('claude-setup')
|
|
23
|
-
.alias('cs')
|
|
24
|
-
.description('Setup Claude Code, Claude Flow, and MCP tools')
|
|
25
|
-
.addHelpText('after', chalk_1.default.gray(`
|
|
26
|
-
Examples:
|
|
27
|
-
${chalk_1.default.green('wundr claude-setup')} Interactive Claude setup
|
|
28
|
-
${chalk_1.default.green('wundr claude-setup mcp')} Install all MCP tools
|
|
29
|
-
${chalk_1.default.green('wundr claude-setup agents')} Configure all 54 agents
|
|
30
|
-
${chalk_1.default.green('wundr claude-setup optimize')} Setup hardware-adaptive optimizations
|
|
31
|
-
${chalk_1.default.green('wundr claude-setup validate')} Validate Claude installation
|
|
32
|
-
`));
|
|
33
|
-
// Main setup command
|
|
34
|
-
claudeSetup
|
|
35
|
-
.command('install', { isDefault: true })
|
|
36
|
-
.description('Complete Claude ecosystem installation')
|
|
37
|
-
.option('--skip-chrome', 'Skip Chrome installation')
|
|
38
|
-
.option('--skip-mcp', 'Skip MCP tools installation')
|
|
39
|
-
.option('--skip-agents', 'Skip agent configuration')
|
|
40
|
-
.action(async (options) => {
|
|
41
|
-
await this.runCompleteSetup(options);
|
|
42
|
-
});
|
|
43
|
-
// MCP tools installation
|
|
44
|
-
claudeSetup
|
|
45
|
-
.command('mcp')
|
|
46
|
-
.description('Install and configure MCP tools')
|
|
47
|
-
.option('--tool <tool>', 'Install specific tool (firecrawl, context7, playwright, browser, sequentialthinking)')
|
|
48
|
-
.action(async (options) => {
|
|
49
|
-
await this.installMcpTools(options);
|
|
50
|
-
});
|
|
51
|
-
// Agent configuration
|
|
52
|
-
claudeSetup
|
|
53
|
-
.command('agents')
|
|
54
|
-
.description('Configure Claude Flow agents')
|
|
55
|
-
.option('--list', 'List available agents')
|
|
56
|
-
.option('--enable <agents>', 'Enable specific agents (comma-separated)')
|
|
57
|
-
.option('--profile <profile>', 'Use profile-specific agents')
|
|
58
|
-
.action(async (options) => {
|
|
59
|
-
await this.configureAgents(options);
|
|
60
|
-
});
|
|
61
|
-
// Validation
|
|
62
|
-
claudeSetup
|
|
63
|
-
.command('validate')
|
|
64
|
-
.description('Validate Claude installation')
|
|
65
|
-
.option('--fix', 'Attempt to fix issues')
|
|
66
|
-
.action(async (options) => {
|
|
67
|
-
await this.validateInstallation(options);
|
|
68
|
-
});
|
|
69
|
-
// Chrome extension
|
|
70
|
-
claudeSetup
|
|
71
|
-
.command('extension')
|
|
72
|
-
.description('Install Browser MCP Chrome extension')
|
|
73
|
-
.action(async () => {
|
|
74
|
-
await this.installChromeExtension();
|
|
75
|
-
});
|
|
76
|
-
// Hardware optimization
|
|
77
|
-
claudeSetup
|
|
78
|
-
.command('optimize')
|
|
79
|
-
.description('Setup hardware-adaptive Claude Code optimizations')
|
|
80
|
-
.option('--force', 'Force reinstallation of optimization scripts')
|
|
81
|
-
.action(async (options) => {
|
|
82
|
-
await this.setupOptimizations(options);
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
async runCompleteSetup(options) {
|
|
86
|
-
const spinner = (0, ora_1.default)();
|
|
87
|
-
console.log(chalk_1.default.cyan.bold('\nš¤ Claude Ecosystem Setup\n'));
|
|
88
|
-
try {
|
|
89
|
-
// Step 1: Install Claude CLI
|
|
90
|
-
if (!this.isClaudeInstalled()) {
|
|
91
|
-
spinner.start('Installing Claude CLI...');
|
|
92
|
-
(0, child_process_1.execSync)('npm install -g @anthropic/claude-cli', { stdio: 'inherit' });
|
|
93
|
-
spinner.succeed('Claude CLI installed');
|
|
94
|
-
}
|
|
95
|
-
else {
|
|
96
|
-
console.log(chalk_1.default.green('ā Claude CLI already installed'));
|
|
97
|
-
}
|
|
98
|
-
// Step 2: Install Chrome (if needed and not skipped)
|
|
99
|
-
if (!options.skipChrome && !this.isChromeInstalled()) {
|
|
100
|
-
spinner.start('Installing Google Chrome...');
|
|
101
|
-
await this.installChrome();
|
|
102
|
-
spinner.succeed('Chrome installed');
|
|
103
|
-
}
|
|
104
|
-
// Step 3: Install MCP tools (if not skipped)
|
|
105
|
-
if (!options.skipMcp) {
|
|
106
|
-
await this.installMcpTools({});
|
|
107
|
-
}
|
|
108
|
-
// Step 4: Configure agents (if not skipped)
|
|
109
|
-
if (!options.skipAgents) {
|
|
110
|
-
await this.configureAgents({ profile: 'fullstack' });
|
|
111
|
-
}
|
|
112
|
-
// Step 5: Setup Claude configuration
|
|
113
|
-
spinner.start('Configuring Claude settings...');
|
|
114
|
-
await this.setupClaudeConfig();
|
|
115
|
-
spinner.succeed('Claude configured');
|
|
116
|
-
console.log(chalk_1.default.green.bold('\nā
Claude ecosystem setup complete!\n'));
|
|
117
|
-
this.printNextSteps();
|
|
118
|
-
}
|
|
119
|
-
catch (error) {
|
|
120
|
-
spinner.fail('Setup failed');
|
|
121
|
-
console.error(chalk_1.default.red(error));
|
|
122
|
-
process.exit(1);
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
async installMcpTools(options) {
|
|
126
|
-
const spinner = (0, ora_1.default)();
|
|
127
|
-
const scriptPath = path.join(__dirname, '../../../../scripts/install-mcp-tools.sh');
|
|
128
|
-
if (!fs.existsSync(scriptPath)) {
|
|
129
|
-
console.error(chalk_1.default.red('ā MCP tools installation script not found'));
|
|
130
|
-
console.log(chalk_1.default.yellow('Please ensure the script exists at: ' + scriptPath));
|
|
131
|
-
return;
|
|
132
|
-
}
|
|
133
|
-
console.log(chalk_1.default.cyan('\nš¦ Installing MCP Tools...\n'));
|
|
134
|
-
if (options.tool) {
|
|
135
|
-
// Install specific tool
|
|
136
|
-
spinner.start(`Installing ${options.tool} MCP...`);
|
|
137
|
-
try {
|
|
138
|
-
const installCommands = {
|
|
139
|
-
firecrawl: 'npx claude mcp add firecrawl npx @firecrawl/mcp-server',
|
|
140
|
-
context7: 'npx claude mcp add context7 npx @context7/mcp-server',
|
|
141
|
-
playwright: 'npx claude mcp add playwright npx @playwright/mcp-server',
|
|
142
|
-
browser: 'npx claude mcp add browser npx @browser/mcp-server',
|
|
143
|
-
sequentialthinking: 'npm install -g @modelcontextprotocol/server-sequentialthinking',
|
|
144
|
-
};
|
|
145
|
-
const command = installCommands[options.tool];
|
|
146
|
-
if (command) {
|
|
147
|
-
(0, child_process_1.execSync)(command, { stdio: 'inherit' });
|
|
148
|
-
spinner.succeed(`${options.tool} MCP installed`);
|
|
149
|
-
}
|
|
150
|
-
else {
|
|
151
|
-
spinner.fail(`Unknown tool: ${options.tool}`);
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
catch (error) {
|
|
155
|
-
spinner.fail(`Failed to install ${options.tool}`);
|
|
156
|
-
console.error(error);
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
else {
|
|
160
|
-
// Install all tools using the script
|
|
161
|
-
console.log(chalk_1.default.gray('Running comprehensive MCP tools installation...'));
|
|
162
|
-
const install = (0, child_process_1.spawn)('bash', [scriptPath], {
|
|
163
|
-
stdio: 'inherit',
|
|
164
|
-
shell: true,
|
|
165
|
-
});
|
|
166
|
-
return new Promise((resolve, reject) => {
|
|
167
|
-
install.on('close', code => {
|
|
168
|
-
if (code === 0) {
|
|
169
|
-
console.log(chalk_1.default.green('\nā
All MCP tools installed successfully'));
|
|
170
|
-
resolve();
|
|
171
|
-
}
|
|
172
|
-
else {
|
|
173
|
-
reject(new Error(`Installation failed with code ${code}`));
|
|
174
|
-
}
|
|
175
|
-
});
|
|
176
|
-
});
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
async configureAgents(options) {
|
|
180
|
-
const spinner = (0, ora_1.default)();
|
|
181
|
-
if (options.list) {
|
|
182
|
-
this.listAgents();
|
|
183
|
-
return;
|
|
184
|
-
}
|
|
185
|
-
spinner.start('Configuring Claude Flow agents...');
|
|
186
|
-
const agents = options.enable
|
|
187
|
-
? options.enable.split(',')
|
|
188
|
-
: this.getProfileAgents(options.profile || 'fullstack');
|
|
189
|
-
// Create agent configurations
|
|
190
|
-
const homeDir = process.env.HOME || process.env.USERPROFILE || '';
|
|
191
|
-
const agentsDir = path.join(homeDir, '.claude', 'agents');
|
|
192
|
-
try {
|
|
193
|
-
fs.mkdirSync(agentsDir, { recursive: true });
|
|
194
|
-
for (const agent of agents) {
|
|
195
|
-
const config = this.generateAgentConfig(agent);
|
|
196
|
-
fs.writeFileSync(path.join(agentsDir, `${agent}.json`), JSON.stringify(config, null, 2));
|
|
197
|
-
}
|
|
198
|
-
spinner.succeed(`${agents.length} agents configured`);
|
|
199
|
-
}
|
|
200
|
-
catch (error) {
|
|
201
|
-
spinner.fail('Failed to configure agents');
|
|
202
|
-
console.error(error);
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
async validateInstallation(options) {
|
|
206
|
-
console.log(chalk_1.default.cyan('\nš Validating Claude Installation...\n'));
|
|
207
|
-
const checks = [
|
|
208
|
-
{ name: 'Claude CLI', check: () => this.isClaudeInstalled() },
|
|
209
|
-
{ name: 'Claude Flow', check: () => this.isClaudeFlowInstalled() },
|
|
210
|
-
{ name: 'Chrome Browser', check: () => this.isChromeInstalled() },
|
|
211
|
-
{ name: 'Claude Directory', check: () => this.claudeDirExists() },
|
|
212
|
-
{ name: 'Agent Configurations', check: () => this.agentsConfigured() },
|
|
213
|
-
{ name: 'MCP Servers', check: () => this.mcpServersConfigured() },
|
|
214
|
-
];
|
|
215
|
-
let allPassed = true;
|
|
216
|
-
for (const check of checks) {
|
|
217
|
-
const passed = check.check();
|
|
218
|
-
if (passed) {
|
|
219
|
-
console.log(chalk_1.default.green(`ā ${check.name}`));
|
|
220
|
-
}
|
|
221
|
-
else {
|
|
222
|
-
console.log(chalk_1.default.red(`ā ${check.name}`));
|
|
223
|
-
allPassed = false;
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
if (allPassed) {
|
|
227
|
-
console.log(chalk_1.default.green.bold('\nā
All checks passed!'));
|
|
228
|
-
}
|
|
229
|
-
else if (options.fix) {
|
|
230
|
-
console.log(chalk_1.default.yellow('\nš§ Attempting to fix issues...'));
|
|
231
|
-
await this.runCompleteSetup({});
|
|
232
|
-
}
|
|
233
|
-
else {
|
|
234
|
-
console.log(chalk_1.default.yellow('\nā ļø Some checks failed. Run with --fix to attempt repairs.'));
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
async installChromeExtension() {
|
|
238
|
-
console.log(chalk_1.default.cyan('\nš Browser MCP Chrome Extension Setup\n'));
|
|
239
|
-
const homeDir = process.env.HOME || process.env.USERPROFILE || '';
|
|
240
|
-
const extensionDir = path.join(homeDir, '.claude', 'browser-extension');
|
|
241
|
-
console.log(chalk_1.default.white('Extension location: ' + extensionDir));
|
|
242
|
-
console.log(chalk_1.default.yellow('\nTo install:'));
|
|
243
|
-
console.log('1. Open Chrome and navigate to chrome://extensions');
|
|
244
|
-
console.log('2. Enable "Developer mode" (top right)');
|
|
245
|
-
console.log('3. Click "Load unpacked"');
|
|
246
|
-
console.log(`4. Select: ${extensionDir}`);
|
|
247
|
-
console.log('\nā
The extension will then be active!');
|
|
248
|
-
}
|
|
249
|
-
async setupOptimizations(options) {
|
|
250
|
-
const spinner = (0, ora_1.default)();
|
|
251
|
-
console.log(chalk_1.default.cyan.bold('\nā” Claude Code Hardware-Adaptive Optimization Setup\n'));
|
|
252
|
-
try {
|
|
253
|
-
const homeDir = process.env.HOME || process.env.USERPROFILE || '';
|
|
254
|
-
const scriptsDir = path.join(homeDir, '.claude', 'scripts');
|
|
255
|
-
const resourcesDir = path.join(__dirname, '../../../computer-setup/resources/scripts');
|
|
256
|
-
// Check if optimization scripts already exist
|
|
257
|
-
const scriptsExist = fs.existsSync(scriptsDir);
|
|
258
|
-
if (scriptsExist && !options.force) {
|
|
259
|
-
const { overwrite } = await (await Promise.resolve().then(() => tslib_1.__importStar(require('inquirer')))).default.prompt([
|
|
260
|
-
{
|
|
261
|
-
type: 'confirm',
|
|
262
|
-
name: 'overwrite',
|
|
263
|
-
message: 'Optimization scripts already exist. Do you want to reinstall?',
|
|
264
|
-
default: false,
|
|
265
|
-
},
|
|
266
|
-
]);
|
|
267
|
-
if (!overwrite) {
|
|
268
|
-
console.log(chalk_1.default.yellow('Optimization setup cancelled'));
|
|
269
|
-
return;
|
|
270
|
-
}
|
|
271
|
-
}
|
|
272
|
-
// Step 1: Create scripts directory
|
|
273
|
-
spinner.start('Creating scripts directory...');
|
|
274
|
-
fs.mkdirSync(scriptsDir, { recursive: true });
|
|
275
|
-
spinner.succeed('Scripts directory ready');
|
|
276
|
-
// Step 2: Copy optimization scripts
|
|
277
|
-
spinner.start('Installing optimization scripts...');
|
|
278
|
-
if (!fs.existsSync(resourcesDir)) {
|
|
279
|
-
spinner.fail('Optimization scripts not found in resources');
|
|
280
|
-
console.error(chalk_1.default.red(`Expected scripts at: ${resourcesDir}\nPlease ensure @wundr/computer-setup is installed.`));
|
|
281
|
-
return;
|
|
282
|
-
}
|
|
283
|
-
// Copy all scripts
|
|
284
|
-
const scripts = [
|
|
285
|
-
'detect-hardware-limits.js',
|
|
286
|
-
'claude-optimized',
|
|
287
|
-
'orchestrator.js',
|
|
288
|
-
'cleanup-zombies.sh',
|
|
289
|
-
'README-ORCHESTRATION.md',
|
|
290
|
-
'QUICK-START.md',
|
|
291
|
-
];
|
|
292
|
-
for (const script of scripts) {
|
|
293
|
-
const src = path.join(resourcesDir, script);
|
|
294
|
-
const dest = path.join(scriptsDir, script);
|
|
295
|
-
if (fs.existsSync(src)) {
|
|
296
|
-
fs.copyFileSync(src, dest);
|
|
297
|
-
}
|
|
298
|
-
else {
|
|
299
|
-
console.warn(chalk_1.default.yellow(`ā ļø Script not found: ${script}`));
|
|
300
|
-
}
|
|
301
|
-
}
|
|
302
|
-
// Make executable scripts executable
|
|
303
|
-
const executableScripts = ['claude-optimized', 'cleanup-zombies.sh'];
|
|
304
|
-
for (const script of executableScripts) {
|
|
305
|
-
const scriptPath = path.join(scriptsDir, script);
|
|
306
|
-
if (fs.existsSync(scriptPath)) {
|
|
307
|
-
(0, child_process_1.execSync)(`chmod +x "${scriptPath}"`, { stdio: 'pipe' });
|
|
308
|
-
}
|
|
309
|
-
}
|
|
310
|
-
spinner.succeed('Optimization scripts installed');
|
|
311
|
-
// Step 3: Configure shell
|
|
312
|
-
spinner.start('Configuring shell environment...');
|
|
313
|
-
await this.addOptimizationToShell(homeDir);
|
|
314
|
-
spinner.succeed('Shell configuration updated');
|
|
315
|
-
console.log(chalk_1.default.green.bold('\nā
Optimization setup complete!\n'));
|
|
316
|
-
// Show what was installed
|
|
317
|
-
console.log(chalk_1.default.cyan('š¦ Installed Scripts:'));
|
|
318
|
-
console.log(chalk_1.default.white(' ⢠detect-hardware-limits.js - Hardware detection'));
|
|
319
|
-
console.log(chalk_1.default.white(' ⢠claude-optimized - Optimized Claude wrapper'));
|
|
320
|
-
console.log(chalk_1.default.white(' ⢠orchestrator.js - Fault-tolerant orchestration'));
|
|
321
|
-
console.log(chalk_1.default.white(' ⢠cleanup-zombies.sh - Process cleanup utility'));
|
|
322
|
-
console.log(chalk_1.default.cyan('\nš§ Shell Aliases:'));
|
|
323
|
-
console.log(chalk_1.default.white(' ⢠claude - Hardware-optimized Claude wrapper'));
|
|
324
|
-
console.log(chalk_1.default.white(' ⢠claude-stats - Show hardware statistics'));
|
|
325
|
-
console.log(chalk_1.default.white(' ⢠claude-cleanup - Clean up zombie processes'));
|
|
326
|
-
console.log(chalk_1.default.white(' ⢠claude-orchestrate - Run multi-task orchestrator'));
|
|
327
|
-
console.log(chalk_1.default.cyan('\nš Next Steps:'));
|
|
328
|
-
console.log('1. Restart your terminal (or run: source ~/.zshrc)');
|
|
329
|
-
console.log('2. Run "claude-stats" to see your hardware configuration');
|
|
330
|
-
console.log('3. Use "claude" command as normal - now optimized!');
|
|
331
|
-
console.log('4. Read ~/.claude/scripts/QUICK-START.md for advanced usage');
|
|
332
|
-
}
|
|
333
|
-
catch (error) {
|
|
334
|
-
spinner.fail('Optimization setup failed');
|
|
335
|
-
console.error(chalk_1.default.red(error));
|
|
336
|
-
throw error;
|
|
337
|
-
}
|
|
338
|
-
}
|
|
339
|
-
async addOptimizationToShell(homeDir) {
|
|
340
|
-
const shellConfigs = [
|
|
341
|
-
path.join(homeDir, '.zshrc'),
|
|
342
|
-
path.join(homeDir, '.bashrc'),
|
|
343
|
-
];
|
|
344
|
-
const optimizationConfig = `
|
|
345
|
-
# āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
|
|
346
|
-
# Claude Code - Hardware-Adaptive Configuration (Auto-generated by Wundr)
|
|
347
|
-
# āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
|
|
348
|
-
|
|
349
|
-
# Ensure PATH includes usr/local/bin
|
|
350
|
-
export PATH="/usr/local/bin:$PATH"
|
|
351
|
-
|
|
352
|
-
# Hardware-adaptive V8 memory configuration
|
|
353
|
-
if [ -f "$HOME/.claude/scripts/detect-hardware-limits.js" ]; then
|
|
354
|
-
eval "$(node $HOME/.claude/scripts/detect-hardware-limits.js export 2>/dev/null)"
|
|
355
|
-
fi
|
|
356
|
-
|
|
357
|
-
# Alias 'claude' to use hardware-optimized wrapper
|
|
358
|
-
if [ -f "$HOME/.claude/scripts/claude-optimized" ]; then
|
|
359
|
-
alias claude="$HOME/.claude/scripts/claude-optimized"
|
|
360
|
-
else
|
|
361
|
-
# Fallback to standard claude if optimization scripts not available
|
|
362
|
-
alias claude='npx @anthropic-ai/claude-code'
|
|
363
|
-
fi
|
|
364
|
-
|
|
365
|
-
# Convenience aliases for Claude optimization tools
|
|
366
|
-
alias claude-stats='node $HOME/.claude/scripts/detect-hardware-limits.js 2>/dev/null'
|
|
367
|
-
alias claude-cleanup='$HOME/.claude/scripts/cleanup-zombies.sh 2>/dev/null'
|
|
368
|
-
alias claude-orchestrate='node $HOME/.claude/scripts/orchestrator.js'
|
|
369
|
-
|
|
370
|
-
# āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
|
|
371
|
-
`;
|
|
372
|
-
for (const configFile of shellConfigs) {
|
|
373
|
-
if (fs.existsSync(configFile)) {
|
|
374
|
-
const content = fs.readFileSync(configFile, 'utf8');
|
|
375
|
-
// Check if optimization config already exists
|
|
376
|
-
if (content.includes('Claude Code - Hardware-Adaptive Configuration (Auto-generated by Wundr)')) {
|
|
377
|
-
// Remove old config and add new one
|
|
378
|
-
const lines = content.split('\n');
|
|
379
|
-
const startIdx = lines.findIndex(line => line.includes('Claude Code - Hardware-Adaptive Configuration (Auto-generated by Wundr)'));
|
|
380
|
-
if (startIdx !== -1) {
|
|
381
|
-
// Find the end of the config block
|
|
382
|
-
let endIdx = startIdx;
|
|
383
|
-
for (let i = startIdx + 1; i < lines.length; i++) {
|
|
384
|
-
if (lines[i]?.includes('āāāāāāāāāāāāāāā')) {
|
|
385
|
-
endIdx = i;
|
|
386
|
-
break;
|
|
387
|
-
}
|
|
388
|
-
}
|
|
389
|
-
// Remove old config
|
|
390
|
-
lines.splice(startIdx - 1, endIdx - startIdx + 3);
|
|
391
|
-
const newContent = lines.join('\n');
|
|
392
|
-
fs.writeFileSync(configFile, newContent + optimizationConfig);
|
|
393
|
-
}
|
|
394
|
-
}
|
|
395
|
-
else {
|
|
396
|
-
// Add new config
|
|
397
|
-
fs.appendFileSync(configFile, optimizationConfig);
|
|
398
|
-
}
|
|
399
|
-
}
|
|
400
|
-
}
|
|
401
|
-
}
|
|
402
|
-
async installChrome() {
|
|
403
|
-
if (process.platform === 'darwin') {
|
|
404
|
-
(0, child_process_1.execSync)('curl -L -o ~/Downloads/googlechrome.dmg "https://dl.google.com/chrome/mac/stable/GGRO/googlechrome.dmg"');
|
|
405
|
-
(0, child_process_1.execSync)('hdiutil attach ~/Downloads/googlechrome.dmg');
|
|
406
|
-
(0, child_process_1.execSync)('cp -R "/Volumes/Google Chrome/Google Chrome.app" /Applications/');
|
|
407
|
-
(0, child_process_1.execSync)('hdiutil detach "/Volumes/Google Chrome"');
|
|
408
|
-
(0, child_process_1.execSync)('rm ~/Downloads/googlechrome.dmg');
|
|
409
|
-
}
|
|
410
|
-
else {
|
|
411
|
-
console.log(chalk_1.default.yellow('Chrome installation is only automated for macOS'));
|
|
412
|
-
}
|
|
413
|
-
}
|
|
414
|
-
async setupClaudeConfig() {
|
|
415
|
-
const homeDir = process.env.HOME || process.env.USERPROFILE || '';
|
|
416
|
-
const configPath = path.join(homeDir, '.claude', 'settings.json');
|
|
417
|
-
const config = {
|
|
418
|
-
claudeCodeOptions: {
|
|
419
|
-
enabledMcpjsonServers: [
|
|
420
|
-
'claude-flow',
|
|
421
|
-
'firecrawl',
|
|
422
|
-
'context7',
|
|
423
|
-
'playwright',
|
|
424
|
-
'browser',
|
|
425
|
-
'sequentialthinking',
|
|
426
|
-
],
|
|
427
|
-
gitAutoCompact: true,
|
|
428
|
-
contextCompactionThreshold: 100000,
|
|
429
|
-
enableHooks: true,
|
|
430
|
-
enableAgentCoordination: true,
|
|
431
|
-
enableNeuralTraining: true,
|
|
432
|
-
enablePerformanceTracking: true,
|
|
433
|
-
},
|
|
434
|
-
};
|
|
435
|
-
fs.mkdirSync(path.dirname(configPath), { recursive: true });
|
|
436
|
-
fs.writeFileSync(configPath, JSON.stringify(config, null, 2));
|
|
437
|
-
}
|
|
438
|
-
isClaudeInstalled() {
|
|
439
|
-
try {
|
|
440
|
-
(0, child_process_1.execSync)('claude --version', { stdio: 'ignore' });
|
|
441
|
-
return true;
|
|
442
|
-
}
|
|
443
|
-
catch {
|
|
444
|
-
return false;
|
|
445
|
-
}
|
|
446
|
-
}
|
|
447
|
-
isClaudeFlowInstalled() {
|
|
448
|
-
try {
|
|
449
|
-
(0, child_process_1.execSync)('npx claude-flow@alpha --version', { stdio: 'ignore' });
|
|
450
|
-
return true;
|
|
451
|
-
}
|
|
452
|
-
catch {
|
|
453
|
-
return false;
|
|
454
|
-
}
|
|
455
|
-
}
|
|
456
|
-
isChromeInstalled() {
|
|
457
|
-
if (process.platform === 'darwin') {
|
|
458
|
-
return fs.existsSync('/Applications/Google Chrome.app');
|
|
459
|
-
}
|
|
460
|
-
return true; // Assume installed on other platforms
|
|
461
|
-
}
|
|
462
|
-
claudeDirExists() {
|
|
463
|
-
const homeDir = process.env.HOME || process.env.USERPROFILE || '';
|
|
464
|
-
return fs.existsSync(path.join(homeDir, '.claude'));
|
|
465
|
-
}
|
|
466
|
-
agentsConfigured() {
|
|
467
|
-
const homeDir = process.env.HOME || process.env.USERPROFILE || '';
|
|
468
|
-
const agentsDir = path.join(homeDir, '.claude', 'agents');
|
|
469
|
-
if (!fs.existsSync(agentsDir))
|
|
470
|
-
return false;
|
|
471
|
-
const files = fs.readdirSync(agentsDir);
|
|
472
|
-
return files.length > 0;
|
|
473
|
-
}
|
|
474
|
-
mcpServersConfigured() {
|
|
475
|
-
const homeDir = process.env.HOME || process.env.USERPROFILE || '';
|
|
476
|
-
const settingsPath = path.join(homeDir, '.claude', 'settings.json');
|
|
477
|
-
if (!fs.existsSync(settingsPath))
|
|
478
|
-
return false;
|
|
479
|
-
try {
|
|
480
|
-
const settings = JSON.parse(fs.readFileSync(settingsPath, 'utf8'));
|
|
481
|
-
return settings.claudeCodeOptions?.enabledMcpjsonServers?.length > 0;
|
|
482
|
-
}
|
|
483
|
-
catch {
|
|
484
|
-
return false;
|
|
485
|
-
}
|
|
486
|
-
}
|
|
487
|
-
listAgents() {
|
|
488
|
-
console.log(chalk_1.default.cyan('\nš Available Claude Flow Agents:\n'));
|
|
489
|
-
const categories = {
|
|
490
|
-
'Core Development': [
|
|
491
|
-
'coder',
|
|
492
|
-
'reviewer',
|
|
493
|
-
'tester',
|
|
494
|
-
'planner',
|
|
495
|
-
'researcher',
|
|
496
|
-
],
|
|
497
|
-
'Swarm Coordination': [
|
|
498
|
-
'hierarchical-coordinator',
|
|
499
|
-
'mesh-coordinator',
|
|
500
|
-
'adaptive-coordinator',
|
|
501
|
-
],
|
|
502
|
-
'GitHub Integration': [
|
|
503
|
-
'github-modes',
|
|
504
|
-
'pr-manager',
|
|
505
|
-
'issue-tracker',
|
|
506
|
-
'release-manager',
|
|
507
|
-
],
|
|
508
|
-
Specialized: [
|
|
509
|
-
'backend-dev',
|
|
510
|
-
'mobile-dev',
|
|
511
|
-
'ml-developer',
|
|
512
|
-
'system-architect',
|
|
513
|
-
],
|
|
514
|
-
};
|
|
515
|
-
for (const [category, agents] of Object.entries(categories)) {
|
|
516
|
-
console.log(chalk_1.default.yellow(`${category}:`));
|
|
517
|
-
agents.forEach(agent => console.log(` ⢠${agent}`));
|
|
518
|
-
console.log();
|
|
519
|
-
}
|
|
520
|
-
}
|
|
521
|
-
getProfileAgents(profile) {
|
|
522
|
-
const profileAgents = {
|
|
523
|
-
frontend: ['coder', 'reviewer', 'tester', 'mobile-dev'],
|
|
524
|
-
backend: [
|
|
525
|
-
'coder',
|
|
526
|
-
'reviewer',
|
|
527
|
-
'tester',
|
|
528
|
-
'backend-dev',
|
|
529
|
-
'system-architect',
|
|
530
|
-
],
|
|
531
|
-
fullstack: [
|
|
532
|
-
'coder',
|
|
533
|
-
'reviewer',
|
|
534
|
-
'tester',
|
|
535
|
-
'planner',
|
|
536
|
-
'researcher',
|
|
537
|
-
'system-architect',
|
|
538
|
-
],
|
|
539
|
-
devops: ['planner', 'cicd-engineer', 'perf-analyzer', 'github-modes'],
|
|
540
|
-
};
|
|
541
|
-
return (profileAgents[profile] ||
|
|
542
|
-
profileAgents.fullstack || ['coder', 'reviewer', 'tester']);
|
|
543
|
-
}
|
|
544
|
-
generateAgentConfig(agentName) {
|
|
545
|
-
return {
|
|
546
|
-
name: agentName,
|
|
547
|
-
enabled: true,
|
|
548
|
-
description: `${agentName} agent for Claude Flow`,
|
|
549
|
-
configuration: {
|
|
550
|
-
maxTokens: 8000,
|
|
551
|
-
temperature: 0.7,
|
|
552
|
-
topP: 0.9,
|
|
553
|
-
enableMemory: true,
|
|
554
|
-
enableLearning: true,
|
|
555
|
-
},
|
|
556
|
-
};
|
|
557
|
-
}
|
|
558
|
-
printNextSteps() {
|
|
559
|
-
console.log(chalk_1.default.cyan('š Next Steps:'));
|
|
560
|
-
console.log('1. Configure API keys for MCP tools (if needed)');
|
|
561
|
-
console.log('2. Install Browser MCP Chrome extension: wundr claude-setup extension');
|
|
562
|
-
console.log('3. Restart Claude Desktop to load new configurations');
|
|
563
|
-
console.log('4. Initialize a project: wundr claude-init');
|
|
564
|
-
console.log('5. Start coding with Claude Flow: npx claude-flow@alpha sparc tdd "feature"');
|
|
565
|
-
}
|
|
566
|
-
}
|
|
567
|
-
exports.ClaudeSetupCommands = ClaudeSetupCommands;
|
|
568
|
-
const createClaudeSetupCommands = (program) => new ClaudeSetupCommands(program);
|
|
569
|
-
exports.default = createClaudeSetupCommands;
|
|
570
|
-
//# sourceMappingURL=claude-setup.js.map
|