claude-flow 2.7.23 → 2.7.25
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/bin/claude-flow +1 -1
- package/dist/src/cli/simple-commands/config.js +115 -257
- package/dist/src/cli/simple-commands/config.js.map +1 -1
- package/dist/src/core/version.js +2 -2
- package/dist/src/core/version.js.map +1 -1
- package/dist/src/memory/swarm-memory.js +416 -348
- package/dist/src/memory/swarm-memory.js.map +1 -1
- package/dist/src/utils/metrics-reader.js +0 -10
- package/docs/OPTIONAL_LOCAL_EMBEDDINGS.md +462 -0
- package/docs/TRANSFORMER_INITIALIZATION_ISSUE.md +362 -0
- package/package.json +3 -2
package/bin/claude-flow
CHANGED
|
@@ -1,265 +1,123 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
break;
|
|
17
|
-
case 'validate':
|
|
18
|
-
await validateConfig(subArgs, flags);
|
|
19
|
-
break;
|
|
20
|
-
case 'reset':
|
|
21
|
-
await resetConfig(subArgs, flags);
|
|
22
|
-
break;
|
|
23
|
-
default:
|
|
24
|
-
showConfigHelp();
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
async function initConfig(subArgs, flags) {
|
|
28
|
-
const force = subArgs.includes('--force') || subArgs.includes('-f');
|
|
29
|
-
const configFile = 'claude-flow.config.json';
|
|
30
|
-
try {
|
|
31
|
-
const exists = await fileExists(configFile);
|
|
32
|
-
if (exists && !force) {
|
|
33
|
-
printWarning('Configuration file already exists');
|
|
34
|
-
console.log('Use --force to overwrite existing configuration');
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
|
-
printSuccess('Initializing Claude-Flow configuration...');
|
|
38
|
-
const defaultConfig = {
|
|
39
|
-
version: '1.0.71',
|
|
40
|
-
terminal: {
|
|
41
|
-
poolSize: 10,
|
|
42
|
-
recycleAfter: 20,
|
|
43
|
-
healthCheckInterval: 30000,
|
|
44
|
-
type: 'auto'
|
|
45
|
-
},
|
|
46
|
-
orchestrator: {
|
|
47
|
-
maxConcurrentTasks: 10,
|
|
48
|
-
taskTimeout: 300000,
|
|
49
|
-
defaultPriority: 5
|
|
50
|
-
},
|
|
51
|
-
memory: {
|
|
52
|
-
backend: 'json',
|
|
53
|
-
path: './memory/claude-flow-data.json',
|
|
54
|
-
cacheSize: 1000,
|
|
55
|
-
indexing: true
|
|
56
|
-
},
|
|
57
|
-
agents: {
|
|
58
|
-
maxAgents: 20,
|
|
59
|
-
defaultCapabilities: [
|
|
60
|
-
'research',
|
|
61
|
-
'code',
|
|
62
|
-
'terminal'
|
|
63
|
-
],
|
|
64
|
-
resourceLimits: {
|
|
65
|
-
memory: '1GB',
|
|
66
|
-
cpu: '50%'
|
|
67
|
-
}
|
|
68
|
-
},
|
|
69
|
-
mcp: {
|
|
70
|
-
port: 3000,
|
|
71
|
-
host: 'localhost',
|
|
72
|
-
timeout: 30000
|
|
73
|
-
},
|
|
74
|
-
logging: {
|
|
75
|
-
level: 'info',
|
|
76
|
-
file: './claude-flow.log',
|
|
77
|
-
maxSize: '10MB',
|
|
78
|
-
maxFiles: 5
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import inquirer from 'inquirer';
|
|
4
|
+
import { ProviderManager } from '../../execution/provider-manager.js';
|
|
5
|
+
export function createConfigCommand() {
|
|
6
|
+
const config = new Command('config').description('Manage provider configuration');
|
|
7
|
+
config.command('set-provider').description('Set default provider').argument('<provider>', 'Provider name (anthropic, openrouter, onnx, gemini)').option('-m, --model <model>', 'Default model for provider').action(async (provider, options)=>{
|
|
8
|
+
try {
|
|
9
|
+
const manager = new ProviderManager();
|
|
10
|
+
await manager.setDefaultProvider(provider);
|
|
11
|
+
if (options.model) {
|
|
12
|
+
await manager.configureProvider(provider, {
|
|
13
|
+
model: options.model,
|
|
14
|
+
enabled: true
|
|
15
|
+
});
|
|
79
16
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
console.log('✓ Default settings configured');
|
|
84
|
-
console.log('\nNext steps:');
|
|
85
|
-
console.log('1. Review settings: claude-flow config show');
|
|
86
|
-
console.log('2. Customize values: claude-flow config set <key> <value>');
|
|
87
|
-
console.log('3. Validate config: claude-flow config validate');
|
|
88
|
-
} catch (err) {
|
|
89
|
-
printError(`Failed to initialize configuration: ${err.message}`);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
async function showConfig(subArgs, flags) {
|
|
93
|
-
const configFile = 'claude-flow.config.json';
|
|
94
|
-
const format = getFlag(subArgs, '--format') || 'pretty';
|
|
95
|
-
try {
|
|
96
|
-
const config = await readJsonFile(configFile);
|
|
97
|
-
printSuccess('Current configuration:');
|
|
98
|
-
if (format === 'json') {
|
|
99
|
-
console.log(JSON.stringify(config, null, 2));
|
|
100
|
-
} else {
|
|
101
|
-
console.log('\n📋 System Configuration:');
|
|
102
|
-
console.log(` Version: ${config.version || 'unknown'}`);
|
|
103
|
-
console.log('\n🖥️ Terminal Pool:');
|
|
104
|
-
console.log(` Pool Size: ${config.terminal?.poolSize || 10}`);
|
|
105
|
-
console.log(` Recycle After: ${config.terminal?.recycleAfter || 20} commands`);
|
|
106
|
-
console.log(` Health Check: ${config.terminal?.healthCheckInterval || 30000}ms`);
|
|
107
|
-
console.log('\n🎭 Orchestrator:');
|
|
108
|
-
console.log(` Max Concurrent Tasks: ${config.orchestrator?.maxConcurrentTasks || 10}`);
|
|
109
|
-
console.log(` Task Timeout: ${config.orchestrator?.taskTimeout || 300000}ms`);
|
|
110
|
-
console.log('\n💾 Memory:');
|
|
111
|
-
console.log(` Backend: ${config.memory?.backend || 'json'}`);
|
|
112
|
-
console.log(` Path: ${config.memory?.path || './memory/claude-flow-data.json'}`);
|
|
113
|
-
console.log('\n🤖 Agents:');
|
|
114
|
-
console.log(` Max Agents: ${config.agents?.maxAgents || 20}`);
|
|
115
|
-
console.log(` Resource Limits: ${JSON.stringify(config.agents?.resourceLimits || {})}`);
|
|
116
|
-
}
|
|
117
|
-
} catch (err) {
|
|
118
|
-
printError('Configuration file not found');
|
|
119
|
-
console.log('Run "claude-flow config init" to create default configuration');
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
async function getConfigValue(subArgs, flags) {
|
|
123
|
-
const key = subArgs[1];
|
|
124
|
-
const configFile = 'claude-flow.config.json';
|
|
125
|
-
if (!key) {
|
|
126
|
-
printError('Usage: config get <key>');
|
|
127
|
-
console.log('Examples:');
|
|
128
|
-
console.log(' claude-flow config get terminal.poolSize');
|
|
129
|
-
console.log(' claude-flow config get orchestrator.maxConcurrentTasks');
|
|
130
|
-
return;
|
|
131
|
-
}
|
|
132
|
-
try {
|
|
133
|
-
const config = await readJsonFile(configFile);
|
|
134
|
-
const value = getNestedValue(config, key);
|
|
135
|
-
if (value !== undefined) {
|
|
136
|
-
console.log(`${key}: ${JSON.stringify(value)}`);
|
|
137
|
-
} else {
|
|
138
|
-
printWarning(`Configuration key '${key}' not found`);
|
|
139
|
-
}
|
|
140
|
-
} catch (err) {
|
|
141
|
-
printError('Configuration file not found');
|
|
142
|
-
console.log('Run "claude-flow config init" to create configuration');
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
async function setConfigValue(subArgs, flags) {
|
|
146
|
-
const key = subArgs[1];
|
|
147
|
-
const value = subArgs[2];
|
|
148
|
-
const configFile = 'claude-flow.config.json';
|
|
149
|
-
if (!key || value === undefined) {
|
|
150
|
-
printError('Usage: config set <key> <value>');
|
|
151
|
-
console.log('Examples:');
|
|
152
|
-
console.log(' claude-flow config set terminal.poolSize 15');
|
|
153
|
-
console.log(' claude-flow config set orchestrator.taskTimeout 600000');
|
|
154
|
-
return;
|
|
155
|
-
}
|
|
156
|
-
try {
|
|
157
|
-
let config = await readJsonFile(configFile, {});
|
|
158
|
-
let parsedValue = value;
|
|
159
|
-
if (value === 'true') parsedValue = true;
|
|
160
|
-
else if (value === 'false') parsedValue = false;
|
|
161
|
-
else if (!isNaN(value) && value.trim() !== '') parsedValue = Number(value);
|
|
162
|
-
setNestedValue(config, key, parsedValue);
|
|
163
|
-
await writeJsonFile(configFile, config);
|
|
164
|
-
printSuccess(`Set ${key} = ${JSON.stringify(parsedValue)}`);
|
|
165
|
-
} catch (err) {
|
|
166
|
-
printError(`Failed to set configuration: ${err.message}`);
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
async function validateConfig(subArgs, flags) {
|
|
170
|
-
const configFile = 'claude-flow.config.json';
|
|
171
|
-
try {
|
|
172
|
-
const config = await readJsonFile(configFile);
|
|
173
|
-
printSuccess('Validating configuration...');
|
|
174
|
-
const errors = [];
|
|
175
|
-
const warnings = [];
|
|
176
|
-
const requiredSections = [
|
|
177
|
-
'terminal',
|
|
178
|
-
'orchestrator',
|
|
179
|
-
'memory'
|
|
180
|
-
];
|
|
181
|
-
for (const section of requiredSections){
|
|
182
|
-
if (!config[section]) {
|
|
183
|
-
errors.push(`Missing required section: ${section}`);
|
|
17
|
+
console.log(chalk.green(`✓ Default provider set to: ${provider}`));
|
|
18
|
+
if (options.model) {
|
|
19
|
+
console.log(chalk.green(`✓ Default model set to: ${options.model}`));
|
|
184
20
|
}
|
|
21
|
+
} catch (error) {
|
|
22
|
+
console.error(chalk.red('✗ Error:'), error.message);
|
|
23
|
+
process.exit(1);
|
|
185
24
|
}
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
25
|
+
});
|
|
26
|
+
config.command('list-providers').alias('list').description('List configured providers').option('-f, --format <format>', 'Output format (text, json)', 'text').action(async (options)=>{
|
|
27
|
+
try {
|
|
28
|
+
const manager = new ProviderManager();
|
|
29
|
+
const providers = manager.listProviders();
|
|
30
|
+
const defaultProvider = manager.getDefaultProvider();
|
|
31
|
+
if (options.format === 'json') {
|
|
32
|
+
console.log(JSON.stringify({
|
|
33
|
+
defaultProvider,
|
|
34
|
+
providers
|
|
35
|
+
}, null, 2));
|
|
36
|
+
} else {
|
|
37
|
+
console.log(chalk.cyan('\n📋 Configured Providers:\n'));
|
|
38
|
+
console.log(chalk.white(`Default: ${chalk.bold(defaultProvider)}\n`));
|
|
39
|
+
providers.forEach((provider)=>{
|
|
40
|
+
const isDefault = provider.name === defaultProvider;
|
|
41
|
+
const prefix = isDefault ? chalk.green('●') : chalk.gray('○');
|
|
42
|
+
const status = provider.enabled ? chalk.green('enabled') : chalk.gray('disabled');
|
|
43
|
+
console.log(`${prefix} ${chalk.bold(provider.name)}`);
|
|
44
|
+
console.log(` Model: ${provider.model || 'default'}`);
|
|
45
|
+
console.log(` Priority: ${provider.priority || 'balanced'}`);
|
|
46
|
+
console.log(` Status: ${status}`);
|
|
47
|
+
console.log('');
|
|
48
|
+
});
|
|
205
49
|
}
|
|
50
|
+
} catch (error) {
|
|
51
|
+
console.error(chalk.red('✗ Error:'), error.message);
|
|
52
|
+
process.exit(1);
|
|
206
53
|
}
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
54
|
+
});
|
|
55
|
+
config.command('wizard').description('Interactive provider configuration wizard').action(async ()=>{
|
|
56
|
+
try {
|
|
57
|
+
const manager = new ProviderManager();
|
|
58
|
+
console.log(chalk.cyan('\n🧙 Provider Configuration Wizard\n'));
|
|
59
|
+
const answers = await inquirer.prompt([
|
|
60
|
+
{
|
|
61
|
+
type: 'list',
|
|
62
|
+
name: 'defaultProvider',
|
|
63
|
+
message: 'Select default provider:',
|
|
64
|
+
choices: [
|
|
65
|
+
{
|
|
66
|
+
name: 'Anthropic (Highest quality)',
|
|
67
|
+
value: 'anthropic'
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
name: 'OpenRouter (99% cost savings)',
|
|
71
|
+
value: 'openrouter'
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
name: 'ONNX (Free local inference)',
|
|
75
|
+
value: 'onnx'
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
name: 'Gemini (Free tier)',
|
|
79
|
+
value: 'gemini'
|
|
80
|
+
}
|
|
81
|
+
]
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
type: 'list',
|
|
85
|
+
name: 'optimization',
|
|
86
|
+
message: 'Optimization priority:',
|
|
87
|
+
choices: [
|
|
88
|
+
{
|
|
89
|
+
name: 'Balanced (recommended)',
|
|
90
|
+
value: 'balanced'
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
name: 'Cost (cheapest)',
|
|
94
|
+
value: 'cost'
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
name: 'Quality (best results)',
|
|
98
|
+
value: 'quality'
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
name: 'Speed (fastest)',
|
|
102
|
+
value: 'speed'
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
name: 'Privacy (local only)',
|
|
106
|
+
value: 'privacy'
|
|
107
|
+
}
|
|
108
|
+
]
|
|
109
|
+
}
|
|
110
|
+
]);
|
|
111
|
+
await manager.setDefaultProvider(answers.defaultProvider);
|
|
112
|
+
console.log(chalk.green('\n✓ Configuration saved successfully!'));
|
|
113
|
+
console.log(chalk.gray(`\nDefault provider: ${answers.defaultProvider}`));
|
|
114
|
+
console.log(chalk.gray(`Optimization: ${answers.optimization}`));
|
|
115
|
+
} catch (error) {
|
|
116
|
+
console.error(chalk.red('\n✗ Error:'), error.message);
|
|
117
|
+
process.exit(1);
|
|
118
|
+
}
|
|
119
|
+
});
|
|
120
|
+
return config;
|
|
263
121
|
}
|
|
264
122
|
|
|
265
123
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/cli/simple-commands/config.js"],"sourcesContent":["// config.js - Configuration management commands\nimport {\n printSuccess,\n printError,\n printWarning,\n readJsonFile,\n writeJsonFile,\n fileExists,\n} from '../utils.js';\n\nexport async function configCommand(subArgs, flags) {\n const configCmd = subArgs[0];\n\n switch (configCmd) {\n case 'init':\n await initConfig(subArgs, flags);\n break;\n\n case 'show':\n await showConfig(subArgs, flags);\n break;\n\n case 'get':\n await getConfigValue(subArgs, flags);\n break;\n\n case 'set':\n await setConfigValue(subArgs, flags);\n break;\n\n case 'validate':\n await validateConfig(subArgs, flags);\n break;\n\n case 'reset':\n await resetConfig(subArgs, flags);\n break;\n\n default:\n showConfigHelp();\n }\n}\n\nasync function initConfig(subArgs, flags) {\n const force = subArgs.includes('--force') || subArgs.includes('-f');\n const configFile = 'claude-flow.config.json';\n\n try {\n // Check if config already exists\n const exists = await fileExists(configFile);\n if (exists && !force) {\n printWarning('Configuration file already exists');\n console.log('Use --force to overwrite existing configuration');\n return;\n }\n\n printSuccess('Initializing Claude-Flow configuration...');\n\n // Create default configuration\n const defaultConfig = {\n version: '1.0.71',\n terminal: {\n poolSize: 10,\n recycleAfter: 20,\n healthCheckInterval: 30000,\n type: 'auto',\n },\n orchestrator: {\n maxConcurrentTasks: 10,\n taskTimeout: 300000,\n defaultPriority: 5,\n },\n memory: {\n backend: 'json',\n path: './memory/claude-flow-data.json',\n cacheSize: 1000,\n indexing: true,\n },\n agents: {\n maxAgents: 20,\n defaultCapabilities: ['research', 'code', 'terminal'],\n resourceLimits: {\n memory: '1GB',\n cpu: '50%',\n },\n },\n mcp: {\n port: 3000,\n host: 'localhost',\n timeout: 30000,\n },\n logging: {\n level: 'info',\n file: './claude-flow.log',\n maxSize: '10MB',\n maxFiles: 5,\n },\n };\n\n await writeJsonFile(configFile, defaultConfig);\n console.log(`✓ Created ${configFile}`);\n console.log('✓ Default settings configured');\n console.log('\\nNext steps:');\n console.log('1. Review settings: claude-flow config show');\n console.log('2. Customize values: claude-flow config set <key> <value>');\n console.log('3. Validate config: claude-flow config validate');\n } catch (err) {\n printError(`Failed to initialize configuration: ${err.message}`);\n }\n}\n\nasync function showConfig(subArgs, flags) {\n const configFile = 'claude-flow.config.json';\n const format = getFlag(subArgs, '--format') || 'pretty';\n\n try {\n const config = await readJsonFile(configFile);\n\n printSuccess('Current configuration:');\n\n if (format === 'json') {\n console.log(JSON.stringify(config, null, 2));\n } else {\n // Pretty format\n console.log('\\n📋 System Configuration:');\n console.log(` Version: ${config.version || 'unknown'}`);\n console.log('\\n🖥️ Terminal Pool:');\n console.log(` Pool Size: ${config.terminal?.poolSize || 10}`);\n console.log(` Recycle After: ${config.terminal?.recycleAfter || 20} commands`);\n console.log(` Health Check: ${config.terminal?.healthCheckInterval || 30000}ms`);\n console.log('\\n🎭 Orchestrator:');\n console.log(` Max Concurrent Tasks: ${config.orchestrator?.maxConcurrentTasks || 10}`);\n console.log(` Task Timeout: ${config.orchestrator?.taskTimeout || 300000}ms`);\n console.log('\\n💾 Memory:');\n console.log(` Backend: ${config.memory?.backend || 'json'}`);\n console.log(` Path: ${config.memory?.path || './memory/claude-flow-data.json'}`);\n console.log('\\n🤖 Agents:');\n console.log(` Max Agents: ${config.agents?.maxAgents || 20}`);\n console.log(` Resource Limits: ${JSON.stringify(config.agents?.resourceLimits || {})}`);\n }\n } catch (err) {\n printError('Configuration file not found');\n console.log('Run \"claude-flow config init\" to create default configuration');\n }\n}\n\nasync function getConfigValue(subArgs, flags) {\n const key = subArgs[1];\n const configFile = 'claude-flow.config.json';\n\n if (!key) {\n printError('Usage: config get <key>');\n console.log('Examples:');\n console.log(' claude-flow config get terminal.poolSize');\n console.log(' claude-flow config get orchestrator.maxConcurrentTasks');\n return;\n }\n\n try {\n const config = await readJsonFile(configFile);\n const value = getNestedValue(config, key);\n\n if (value !== undefined) {\n console.log(`${key}: ${JSON.stringify(value)}`);\n } else {\n printWarning(`Configuration key '${key}' not found`);\n }\n } catch (err) {\n printError('Configuration file not found');\n console.log('Run \"claude-flow config init\" to create configuration');\n }\n}\n\nasync function setConfigValue(subArgs, flags) {\n const key = subArgs[1];\n const value = subArgs[2];\n const configFile = 'claude-flow.config.json';\n\n if (!key || value === undefined) {\n printError('Usage: config set <key> <value>');\n console.log('Examples:');\n console.log(' claude-flow config set terminal.poolSize 15');\n console.log(' claude-flow config set orchestrator.taskTimeout 600000');\n return;\n }\n\n try {\n let config = await readJsonFile(configFile, {});\n\n // Parse value appropriately\n let parsedValue = value;\n if (value === 'true') parsedValue = true;\n else if (value === 'false') parsedValue = false;\n else if (!isNaN(value) && value.trim() !== '') parsedValue = Number(value);\n\n // Set nested value\n setNestedValue(config, key, parsedValue);\n\n await writeJsonFile(configFile, config);\n printSuccess(`Set ${key} = ${JSON.stringify(parsedValue)}`);\n } catch (err) {\n printError(`Failed to set configuration: ${err.message}`);\n }\n}\n\nasync function validateConfig(subArgs, flags) {\n const configFile = 'claude-flow.config.json';\n\n try {\n const config = await readJsonFile(configFile);\n\n printSuccess('Validating configuration...');\n\n const errors = [];\n const warnings = [];\n\n // Validate required sections\n const requiredSections = ['terminal', 'orchestrator', 'memory'];\n for (const section of requiredSections) {\n if (!config[section]) {\n errors.push(`Missing required section: ${section}`);\n }\n }\n\n // Validate specific values\n if (\n config.terminal?.poolSize &&\n (config.terminal.poolSize < 1 || config.terminal.poolSize > 100)\n ) {\n warnings.push('Terminal pool size should be between 1 and 100');\n }\n\n if (config.orchestrator?.maxConcurrentTasks && config.orchestrator.maxConcurrentTasks < 1) {\n errors.push('Max concurrent tasks must be at least 1');\n }\n\n if (config.agents?.maxAgents && config.agents.maxAgents < 1) {\n errors.push('Max agents must be at least 1');\n }\n\n // Report results\n if (errors.length === 0 && warnings.length === 0) {\n printSuccess('✅ Configuration is valid');\n } else {\n if (errors.length > 0) {\n printError(`Found ${errors.length} error(s):`);\n errors.forEach((error) => console.log(` ❌ ${error}`));\n }\n\n if (warnings.length > 0) {\n printWarning(`Found ${warnings.length} warning(s):`);\n warnings.forEach((warning) => console.log(` ⚠️ ${warning}`));\n }\n }\n } catch (err) {\n printError('Configuration file not found or invalid');\n console.log('Run \"claude-flow config init\" to create valid configuration');\n }\n}\n\nasync function resetConfig(subArgs, flags) {\n const force = subArgs.includes('--force') || subArgs.includes('-f');\n\n if (!force) {\n printWarning('This will reset configuration to defaults');\n console.log('Use --force to confirm reset');\n return;\n }\n\n await initConfig(['--force'], flags);\n printSuccess('Configuration reset to defaults');\n}\n\n// Helper functions\nfunction getNestedValue(obj, path) {\n return path.split('.').reduce((current, key) => current?.[key], obj);\n}\n\nfunction setNestedValue(obj, path, value) {\n const keys = path.split('.');\n const last = keys.pop();\n const target = keys.reduce((current, key) => {\n if (!current[key]) current[key] = {};\n return current[key];\n }, obj);\n target[last] = value;\n}\n\nfunction getFlag(args, flagName) {\n const index = args.indexOf(flagName);\n return index !== -1 && index + 1 < args.length ? args[index + 1] : null;\n}\n\n// fileExists is now imported from utils.js\n\nfunction showConfigHelp() {\n console.log('Configuration commands:');\n console.log(' init [--force] Create default configuration');\n console.log(' show [--format json] Display current configuration');\n console.log(' get <key> Get configuration value');\n console.log(' set <key> <value> Set configuration value');\n console.log(' validate Validate configuration');\n console.log(' reset --force Reset to defaults');\n console.log();\n console.log('Configuration Keys:');\n console.log(' terminal.poolSize Terminal pool size');\n console.log(' terminal.recycleAfter Commands before recycle');\n console.log(' orchestrator.maxConcurrentTasks Max parallel tasks');\n console.log(' orchestrator.taskTimeout Task timeout in ms');\n console.log(' memory.backend Memory storage backend');\n console.log(' memory.path Memory database path');\n console.log(' agents.maxAgents Maximum number of agents');\n console.log();\n console.log('Examples:');\n console.log(' claude-flow config init');\n console.log(' claude-flow config set terminal.poolSize 15');\n console.log(' claude-flow config get orchestrator.maxConcurrentTasks');\n console.log(' claude-flow config validate');\n}\n"],"names":["printSuccess","printError","printWarning","readJsonFile","writeJsonFile","fileExists","configCommand","subArgs","flags","configCmd","initConfig","showConfig","getConfigValue","setConfigValue","validateConfig","resetConfig","showConfigHelp","force","includes","configFile","exists","console","log","defaultConfig","version","terminal","poolSize","recycleAfter","healthCheckInterval","type","orchestrator","maxConcurrentTasks","taskTimeout","defaultPriority","memory","backend","path","cacheSize","indexing","agents","maxAgents","defaultCapabilities","resourceLimits","cpu","mcp","port","host","timeout","logging","level","file","maxSize","maxFiles","err","message","format","getFlag","config","JSON","stringify","key","value","getNestedValue","undefined","parsedValue","isNaN","trim","Number","setNestedValue","errors","warnings","requiredSections","section","push","length","forEach","error","warning","obj","split","reduce","current","keys","last","pop","target","args","flagName","index","indexOf"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/cli/simple-commands/config.ts"],"sourcesContent":["/**\n * Config CLI Commands - Manage provider configuration\n */\n\nimport { Command } from 'commander';\nimport chalk from 'chalk';\nimport inquirer from 'inquirer';\nimport { ProviderManager } from '../../execution/provider-manager.js';\n\nexport function createConfigCommand(): Command {\n const config = new Command('config')\n .description('Manage provider configuration');\n\n // config set-provider command\n config\n .command('set-provider')\n .description('Set default provider')\n .argument('<provider>', 'Provider name (anthropic, openrouter, onnx, gemini)')\n .option('-m, --model <model>', 'Default model for provider')\n .action(async (provider, options) => {\n try {\n const manager = new ProviderManager();\n\n await manager.setDefaultProvider(provider);\n\n if (options.model) {\n await manager.configureProvider(provider, {\n model: options.model,\n enabled: true,\n } as any);\n }\n\n console.log(chalk.green(`✓ Default provider set to: ${provider}`));\n if (options.model) {\n console.log(chalk.green(`✓ Default model set to: ${options.model}`));\n }\n } catch (error: any) {\n console.error(chalk.red('✗ Error:'), error.message);\n process.exit(1);\n }\n });\n\n // config list-providers command\n config\n .command('list-providers')\n .alias('list')\n .description('List configured providers')\n .option('-f, --format <format>', 'Output format (text, json)', 'text')\n .action(async (options) => {\n try {\n const manager = new ProviderManager();\n const providers = manager.listProviders();\n const defaultProvider = manager.getDefaultProvider();\n\n if (options.format === 'json') {\n console.log(JSON.stringify({ defaultProvider, providers }, null, 2));\n } else {\n console.log(chalk.cyan('\\n📋 Configured Providers:\\n'));\n console.log(chalk.white(`Default: ${chalk.bold(defaultProvider)}\\n`));\n\n providers.forEach(provider => {\n const isDefault = provider.name === defaultProvider;\n const prefix = isDefault ? chalk.green('●') : chalk.gray('○');\n const status = provider.enabled ? chalk.green('enabled') : chalk.gray('disabled');\n\n console.log(`${prefix} ${chalk.bold(provider.name)}`);\n console.log(` Model: ${provider.model || 'default'}`);\n console.log(` Priority: ${provider.priority || 'balanced'}`);\n console.log(` Status: ${status}`);\n console.log('');\n });\n }\n } catch (error: any) {\n console.error(chalk.red('✗ Error:'), error.message);\n process.exit(1);\n }\n });\n\n // config wizard command\n config\n .command('wizard')\n .description('Interactive provider configuration wizard')\n .action(async () => {\n try {\n const manager = new ProviderManager();\n\n console.log(chalk.cyan('\\n🧙 Provider Configuration Wizard\\n'));\n\n const answers = await inquirer.prompt([\n {\n type: 'list',\n name: 'defaultProvider',\n message: 'Select default provider:',\n choices: [\n { name: 'Anthropic (Highest quality)', value: 'anthropic' },\n { name: 'OpenRouter (99% cost savings)', value: 'openrouter' },\n { name: 'ONNX (Free local inference)', value: 'onnx' },\n { name: 'Gemini (Free tier)', value: 'gemini' },\n ],\n },\n {\n type: 'list',\n name: 'optimization',\n message: 'Optimization priority:',\n choices: [\n { name: 'Balanced (recommended)', value: 'balanced' },\n { name: 'Cost (cheapest)', value: 'cost' },\n { name: 'Quality (best results)', value: 'quality' },\n { name: 'Speed (fastest)', value: 'speed' },\n { name: 'Privacy (local only)', value: 'privacy' },\n ],\n },\n ]);\n\n await manager.setDefaultProvider(answers.defaultProvider);\n\n console.log(chalk.green('\\n✓ Configuration saved successfully!'));\n console.log(chalk.gray(`\\nDefault provider: ${answers.defaultProvider}`));\n console.log(chalk.gray(`Optimization: ${answers.optimization}`));\n } catch (error: any) {\n console.error(chalk.red('\\n✗ Error:'), error.message);\n process.exit(1);\n }\n });\n\n return config;\n}\n"],"names":["Command","chalk","inquirer","ProviderManager","createConfigCommand","config","description","command","argument","option","action","provider","options","manager","setDefaultProvider","model","configureProvider","enabled","console","log","green","error","red","message","process","exit","alias","providers","listProviders","defaultProvider","getDefaultProvider","format","JSON","stringify","cyan","white","bold","forEach","isDefault","name","prefix","gray","status","priority","answers","prompt","type","choices","value","optimization"],"mappings":"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"}lags) {\n const force = subArgs.includes('--force') || subArgs.includes('-f');\n\n if (!force) {\n printWarning('This will reset configuration to defaults');\n console.log('Use --force to confirm reset');\n return;\n }\n\n await initConfig(['--force'], flags);\n printSuccess('Configuration reset to defaults');\n}\n\n// Helper functions\nfunction getNestedValue(obj, path) {\n return path.split('.').reduce((current, key) => current?.[key], obj);\n}\n\nfunction setNestedValue(obj, path, value) {\n const keys = path.split('.');\n const last = keys.pop();\n const target = keys.reduce((current, key) => {\n if (!current[key]) current[key] = {};\n return current[key];\n }, obj);\n target[last] = value;\n}\n\nfunction getFlag(args, flagName) {\n const index = args.indexOf(flagName);\n return index !== -1 && index + 1 < args.length ? args[index + 1] : null;\n}\n\n// fileExists is now imported from utils.js\n\nfunction showConfigHelp() {\n console.log('Configuration commands:');\n console.log(' init [--force] Create default configuration');\n console.log(' show [--format json] Display current configuration');\n console.log(' get <key> Get configuration value');\n console.log(' set <key> <value> Set configuration value');\n console.log(' validate Validate configuration');\n console.log(' reset --force Reset to defaults');\n console.log();\n console.log('Configuration Keys:');\n console.log(' terminal.poolSize Terminal pool size');\n console.log(' terminal.recycleAfter Commands before recycle');\n console.log(' orchestrator.maxConcurrentTasks Max parallel tasks');\n console.log(' orchestrator.taskTimeout Task timeout in ms');\n console.log(' memory.backend Memory storage backend');\n console.log(' memory.path Memory database path');\n console.log(' agents.maxAgents Maximum number of agents');\n console.log();\n console.log('Examples:');\n console.log(' claude-flow config init');\n console.log(' claude-flow config set terminal.poolSize 15');\n console.log(' claude-flow config get orchestrator.maxConcurrentTasks');\n console.log(' claude-flow config validate');\n}\n"],"names":["printSuccess","printError","printWarning","readJsonFile","writeJsonFile","fileExists","configCommand","subArgs","flags","configCmd","initConfig","showConfig","getConfigValue","setConfigValue","validateConfig","resetConfig","showConfigHelp","force","includes","configFile","exists","console","log","defaultConfig","version","terminal","poolSize","recycleAfter","healthCheckInterval","type","orchestrator","maxConcurrentTasks","taskTimeout","defaultPriority","memory","backend","path","cacheSize","indexing","agents","maxAgents","defaultCapabilities","resourceLimits","cpu","mcp","port","host","timeout","logging","level","file","maxSize","maxFiles","err","message","format","getFlag","config","JSON","stringify","key","value","getNestedValue","undefined","parsedValue","isNaN","trim","Number","setNestedValue","errors","warnings","requiredSections","section","push","length","forEach","error","warning","obj","split","reduce","current","keys","last","pop","target","args","flagName","index","indexOf"],"mappings":"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"}
|
package/dist/src/core/version.js
CHANGED
|
@@ -12,7 +12,7 @@ try {
|
|
|
12
12
|
BUILD_DATE = new Date().toISOString().split('T')[0];
|
|
13
13
|
} catch (error) {
|
|
14
14
|
console.warn('Warning: Could not read version from package.json, using fallback');
|
|
15
|
-
VERSION = '2.0.0-alpha.
|
|
15
|
+
VERSION = '2.0.0-alpha.91';
|
|
16
16
|
BUILD_DATE = new Date().toISOString().split('T')[0];
|
|
17
17
|
}
|
|
18
18
|
export { VERSION, BUILD_DATE };
|
|
@@ -23,4 +23,4 @@ export function displayVersion() {
|
|
|
23
23
|
console.log(getVersionString());
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
//# sourceMappingURL=version.js.
|
|
26
|
+
//# sourceMappingURL=version.js.mapp
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/core/version.
|
|
1
|
+
{"version":3,"sources":["../../../src/core/version.ts"],"sourcesContent":["/**\n * Centralized version management\n * Reads version from package.json to ensure consistency\n */\n\nimport { readFileSync } from 'fs';\nimport { join, dirname } from 'path';\nimport { fileURLToPath } from 'url';\n\n// Get the directory of this module\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\n// Read version from package.json\nlet VERSION: string;\nlet BUILD_DATE: string;\n\ntry {\n // Navigate to project root and read package.json\n const packageJsonPath = join(__dirname, '../../package.json');\n const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));\n VERSION = packageJson.version;\n BUILD_DATE = new Date().toISOString().split('T')[0];\n} catch (error) {\n // Fallback version if package.json can't be read\n console.warn('Warning: Could not read version from package.json, using fallback');\n VERSION = '2.0.0-alpha.91';\n BUILD_DATE = new Date().toISOString().split('T')[0];\n}\n\nexport { VERSION, BUILD_DATE };\n\n// Helper function to get formatted version string\nexport function getVersionString(includeV = true): string {\n return includeV ? `v${VERSION}` : VERSION;\n}\n\n// Helper function for version display in CLI\nexport function displayVersion(): void {\n console.log(getVersionString());\n}"],"names":["readFileSync","join","dirname","fileURLToPath","__filename","url","__dirname","VERSION","BUILD_DATE","packageJsonPath","packageJson","JSON","parse","version","Date","toISOString","split","error","console","warn","getVersionString","includeV","displayVersion","log"],"mappings":"AAKA,SAASA,YAAY,QAAQ,KAAK;AAClC,SAASC,IAAI,EAAEC,OAAO,QAAQ,OAAO;AACrC,SAASC,aAAa,QAAQ,MAAM;AAGpC,MAAMC,aAAaD,cAAc,YAAYE,GAAG;AAChD,MAAMC,YAAYJ,QAAQE;AAG1B,IAAIG;AACJ,IAAIC;AAEJ,IAAI;IAEF,MAAMC,kBAAkBR,KAAKK,WAAW;IACxC,MAAMI,cAAcC,KAAKC,KAAK,CAACZ,aAAaS,iBAAiB;IAC7DF,UAAUG,YAAYG,OAAO;IAC7BL,aAAa,IAAIM,OAAOC,WAAW,GAAGC,KAAK,CAAC,IAAI,CAAC,EAAE;AACrD,EAAE,OAAOC,OAAO;IAEdC,QAAQC,IAAI,CAAC;IACbZ,UAAU;IACVC,aAAa,IAAIM,OAAOC,WAAW,GAAGC,KAAK,CAAC,IAAI,CAAC,EAAE;AACrD;AAEA,SAAST,OAAO,EAAEC,UAAU,GAAG;AAG/B,OAAO,SAASY,iBAAiBC,WAAW,IAAI;IAC9C,OAAOA,WAAW,CAAC,CAAC,EAAEd,SAAS,GAAGA;AACpC;AAGA,OAAO,SAASe;IACdJ,QAAQK,GAAG,CAACH;AACd"}
|