@claude-flow/cli 3.0.0-alpha.2 → 3.0.0-alpha.21
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 +172 -6
- package/bin/cli.js +0 -0
- package/dist/src/commands/agent.d.ts.map +1 -1
- package/dist/src/commands/agent.js +43 -27
- package/dist/src/commands/agent.js.map +1 -1
- package/dist/src/commands/analyze.d.ts +19 -0
- package/dist/src/commands/analyze.d.ts.map +1 -0
- package/dist/src/commands/analyze.js +1823 -0
- package/dist/src/commands/analyze.js.map +1 -0
- package/dist/src/commands/claims.d.ts +10 -0
- package/dist/src/commands/claims.d.ts.map +1 -0
- package/dist/src/commands/claims.js +288 -0
- package/dist/src/commands/claims.js.map +1 -0
- package/dist/src/commands/completions.d.ts +10 -0
- package/dist/src/commands/completions.d.ts.map +1 -0
- package/dist/src/commands/completions.js +539 -0
- package/dist/src/commands/completions.js.map +1 -0
- package/dist/src/commands/config.js +2 -2
- package/dist/src/commands/config.js.map +1 -1
- package/dist/src/commands/daemon.d.ts +8 -0
- package/dist/src/commands/daemon.d.ts.map +1 -0
- package/dist/src/commands/daemon.js +545 -0
- package/dist/src/commands/daemon.js.map +1 -0
- package/dist/src/commands/deployment.d.ts +10 -0
- package/dist/src/commands/deployment.d.ts.map +1 -0
- package/dist/src/commands/deployment.js +289 -0
- package/dist/src/commands/deployment.js.map +1 -0
- package/dist/src/commands/doctor.d.ts +10 -0
- package/dist/src/commands/doctor.d.ts.map +1 -0
- package/dist/src/commands/doctor.js +429 -0
- package/dist/src/commands/doctor.js.map +1 -0
- package/dist/src/commands/embeddings.d.ts +18 -0
- package/dist/src/commands/embeddings.d.ts.map +1 -0
- package/dist/src/commands/embeddings.js +616 -0
- package/dist/src/commands/embeddings.js.map +1 -0
- package/dist/src/commands/hive-mind.d.ts.map +1 -1
- package/dist/src/commands/hive-mind.js +252 -35
- package/dist/src/commands/hive-mind.js.map +1 -1
- package/dist/src/commands/hooks.d.ts.map +1 -1
- package/dist/src/commands/hooks.js +326 -2
- package/dist/src/commands/hooks.js.map +1 -1
- package/dist/src/commands/index.d.ts +13 -0
- package/dist/src/commands/index.d.ts.map +1 -1
- package/dist/src/commands/index.js +52 -1
- package/dist/src/commands/index.js.map +1 -1
- package/dist/src/commands/mcp.js +4 -4
- package/dist/src/commands/mcp.js.map +1 -1
- package/dist/src/commands/memory.d.ts.map +1 -1
- package/dist/src/commands/memory.js +236 -170
- package/dist/src/commands/memory.js.map +1 -1
- package/dist/src/commands/migrate.js +1 -1
- package/dist/src/commands/migrate.js.map +1 -1
- package/dist/src/commands/neural.d.ts +10 -0
- package/dist/src/commands/neural.d.ts.map +1 -0
- package/dist/src/commands/neural.js +224 -0
- package/dist/src/commands/neural.js.map +1 -0
- package/dist/src/commands/performance.d.ts +10 -0
- package/dist/src/commands/performance.d.ts.map +1 -0
- package/dist/src/commands/performance.js +262 -0
- package/dist/src/commands/performance.js.map +1 -0
- package/dist/src/commands/plugins.d.ts +10 -0
- package/dist/src/commands/plugins.d.ts.map +1 -0
- package/dist/src/commands/plugins.js +280 -0
- package/dist/src/commands/plugins.js.map +1 -0
- package/dist/src/commands/process.d.ts.map +1 -1
- package/dist/src/commands/process.js +95 -20
- package/dist/src/commands/process.js.map +1 -1
- package/dist/src/commands/providers.d.ts +10 -0
- package/dist/src/commands/providers.d.ts.map +1 -0
- package/dist/src/commands/providers.js +232 -0
- package/dist/src/commands/providers.js.map +1 -0
- package/dist/src/commands/route.d.ts +16 -0
- package/dist/src/commands/route.d.ts.map +1 -0
- package/dist/src/commands/route.js +603 -0
- package/dist/src/commands/route.js.map +1 -0
- package/dist/src/commands/security.d.ts +10 -0
- package/dist/src/commands/security.d.ts.map +1 -0
- package/dist/src/commands/security.js +261 -0
- package/dist/src/commands/security.js.map +1 -0
- package/dist/src/commands/start.js +2 -2
- package/dist/src/commands/start.js.map +1 -1
- package/dist/src/commands/status.d.ts.map +1 -1
- package/dist/src/commands/status.js +26 -2
- package/dist/src/commands/status.js.map +1 -1
- package/dist/src/commands/swarm.js +6 -6
- package/dist/src/commands/swarm.js.map +1 -1
- package/dist/src/index.d.ts +4 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +63 -5
- package/dist/src/index.js.map +1 -1
- package/dist/src/init/claudemd-generator.d.ts.map +1 -1
- package/dist/src/init/claudemd-generator.js +218 -362
- package/dist/src/init/claudemd-generator.js.map +1 -1
- package/dist/src/init/executor.d.ts.map +1 -1
- package/dist/src/init/executor.js +5 -0
- package/dist/src/init/executor.js.map +1 -1
- package/dist/src/init/settings-generator.d.ts.map +1 -1
- package/dist/src/init/settings-generator.js +22 -12
- package/dist/src/init/settings-generator.js.map +1 -1
- package/dist/src/mcp-client.d.ts.map +1 -1
- package/dist/src/mcp-client.js +17 -1
- package/dist/src/mcp-client.js.map +1 -1
- package/dist/src/mcp-server.d.ts.map +1 -1
- package/dist/src/mcp-server.js +5 -0
- package/dist/src/mcp-server.js.map +1 -1
- package/dist/src/mcp-tools/agent-tools.d.ts +1 -1
- package/dist/src/mcp-tools/agent-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/agent-tools.js +350 -14
- package/dist/src/mcp-tools/agent-tools.js.map +1 -1
- package/dist/src/mcp-tools/analyze-tools.d.ts +38 -0
- package/dist/src/mcp-tools/analyze-tools.d.ts.map +1 -0
- package/dist/src/mcp-tools/analyze-tools.js +317 -0
- package/dist/src/mcp-tools/analyze-tools.js.map +1 -0
- package/dist/src/mcp-tools/config-tools.d.ts +1 -1
- package/dist/src/mcp-tools/config-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/config-tools.js +262 -15
- package/dist/src/mcp-tools/config-tools.js.map +1 -1
- package/dist/src/mcp-tools/hive-mind-tools.d.ts +8 -0
- package/dist/src/mcp-tools/hive-mind-tools.d.ts.map +1 -0
- package/dist/src/mcp-tools/hive-mind-tools.js +447 -0
- package/dist/src/mcp-tools/hive-mind-tools.js.map +1 -0
- package/dist/src/mcp-tools/hooks-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/hooks-tools.js +80 -15
- package/dist/src/mcp-tools/hooks-tools.js.map +1 -1
- package/dist/src/mcp-tools/index.d.ts +6 -0
- package/dist/src/mcp-tools/index.d.ts.map +1 -1
- package/dist/src/mcp-tools/index.js +6 -0
- package/dist/src/mcp-tools/index.js.map +1 -1
- package/dist/src/mcp-tools/memory-tools.d.ts +1 -1
- package/dist/src/mcp-tools/memory-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/memory-tools.js +157 -9
- package/dist/src/mcp-tools/memory-tools.js.map +1 -1
- package/dist/src/mcp-tools/session-tools.d.ts +8 -0
- package/dist/src/mcp-tools/session-tools.d.ts.map +1 -0
- package/dist/src/mcp-tools/session-tools.js +315 -0
- package/dist/src/mcp-tools/session-tools.js.map +1 -0
- package/dist/src/mcp-tools/swarm-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/swarm-tools.js +37 -2
- package/dist/src/mcp-tools/swarm-tools.js.map +1 -1
- package/dist/src/mcp-tools/task-tools.d.ts +8 -0
- package/dist/src/mcp-tools/task-tools.d.ts.map +1 -0
- package/dist/src/mcp-tools/task-tools.js +302 -0
- package/dist/src/mcp-tools/task-tools.js.map +1 -0
- package/dist/src/mcp-tools/workflow-tools.d.ts +8 -0
- package/dist/src/mcp-tools/workflow-tools.d.ts.map +1 -0
- package/dist/src/mcp-tools/workflow-tools.js +481 -0
- package/dist/src/mcp-tools/workflow-tools.js.map +1 -0
- package/dist/src/output.d.ts +16 -0
- package/dist/src/output.d.ts.map +1 -1
- package/dist/src/output.js +42 -0
- package/dist/src/output.js.map +1 -1
- package/dist/src/ruvector/ast-analyzer.d.ts +67 -0
- package/dist/src/ruvector/ast-analyzer.d.ts.map +1 -0
- package/dist/src/ruvector/ast-analyzer.js +277 -0
- package/dist/src/ruvector/ast-analyzer.js.map +1 -0
- package/dist/src/ruvector/coverage-router.d.ts +145 -0
- package/dist/src/ruvector/coverage-router.d.ts.map +1 -0
- package/dist/src/ruvector/coverage-router.js +451 -0
- package/dist/src/ruvector/coverage-router.js.map +1 -0
- package/dist/src/ruvector/coverage-tools.d.ts +33 -0
- package/dist/src/ruvector/coverage-tools.d.ts.map +1 -0
- package/dist/src/ruvector/coverage-tools.js +157 -0
- package/dist/src/ruvector/coverage-tools.js.map +1 -0
- package/dist/src/ruvector/diff-classifier.d.ts +175 -0
- package/dist/src/ruvector/diff-classifier.d.ts.map +1 -0
- package/dist/src/ruvector/diff-classifier.js +662 -0
- package/dist/src/ruvector/diff-classifier.js.map +1 -0
- package/dist/src/ruvector/graph-analyzer.d.ts +174 -0
- package/dist/src/ruvector/graph-analyzer.d.ts.map +1 -0
- package/dist/src/ruvector/graph-analyzer.js +878 -0
- package/dist/src/ruvector/graph-analyzer.js.map +1 -0
- package/dist/src/ruvector/index.d.ts +27 -0
- package/dist/src/ruvector/index.d.ts.map +1 -0
- package/dist/src/ruvector/index.js +49 -0
- package/dist/src/ruvector/index.js.map +1 -0
- package/dist/src/ruvector/q-learning-router.d.ts +211 -0
- package/dist/src/ruvector/q-learning-router.d.ts.map +1 -0
- package/dist/src/ruvector/q-learning-router.js +681 -0
- package/dist/src/ruvector/q-learning-router.js.map +1 -0
- package/dist/src/ruvector/vector-db.d.ts +69 -0
- package/dist/src/ruvector/vector-db.d.ts.map +1 -0
- package/dist/src/ruvector/vector-db.js +243 -0
- package/dist/src/ruvector/vector-db.js.map +1 -0
- package/dist/src/services/index.d.ts +7 -0
- package/dist/src/services/index.d.ts.map +1 -0
- package/dist/src/services/index.js +6 -0
- package/dist/src/services/index.js.map +1 -0
- package/dist/src/services/worker-daemon.d.ts +153 -0
- package/dist/src/services/worker-daemon.d.ts.map +1 -0
- package/dist/src/services/worker-daemon.js +567 -0
- package/dist/src/services/worker-daemon.js.map +1 -0
- package/dist/src/suggest.d.ts +53 -0
- package/dist/src/suggest.d.ts.map +1 -0
- package/dist/src/suggest.js +200 -0
- package/dist/src/suggest.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +28 -6
- package/.agentic-flow/intelligence.json +0 -16
- package/.claude-flow/metrics/agent-metrics.json +0 -1
- package/.claude-flow/metrics/performance.json +0 -87
- package/.claude-flow/metrics/task-metrics.json +0 -10
- package/__tests__/README.md +0 -140
- package/__tests__/TEST_SUMMARY.md +0 -144
- package/__tests__/cli.test.ts +0 -558
- package/__tests__/commands.test.ts +0 -726
- package/__tests__/config-adapter.test.ts +0 -362
- package/__tests__/config-loading.test.ts +0 -106
- package/__tests__/coverage/.tmp/coverage-0.json +0 -1
- package/__tests__/coverage/.tmp/coverage-1.json +0 -1
- package/__tests__/coverage/.tmp/coverage-2.json +0 -1
- package/__tests__/coverage/.tmp/coverage-3.json +0 -1
- package/__tests__/coverage/.tmp/coverage-4.json +0 -1
- package/__tests__/coverage/.tmp/coverage-5.json +0 -1
- package/__tests__/mcp-client.test.ts +0 -480
- package/__tests__/p1-commands.test.ts +0 -1064
- package/docs/CONFIG_LOADING.md +0 -236
- package/docs/IMPLEMENTATION_COMPLETE.md +0 -421
- package/docs/MCP_CLIENT_GUIDE.md +0 -620
- package/docs/REFACTORING_SUMMARY.md +0 -247
- package/src/commands/agent.ts +0 -941
- package/src/commands/config.ts +0 -452
- package/src/commands/hive-mind.ts +0 -762
- package/src/commands/hooks.ts +0 -2603
- package/src/commands/index.ts +0 -115
- package/src/commands/init.ts +0 -597
- package/src/commands/mcp.ts +0 -753
- package/src/commands/memory.ts +0 -1063
- package/src/commands/migrate.ts +0 -447
- package/src/commands/process.ts +0 -617
- package/src/commands/session.ts +0 -891
- package/src/commands/start.ts +0 -457
- package/src/commands/status.ts +0 -705
- package/src/commands/swarm.ts +0 -648
- package/src/commands/task.ts +0 -792
- package/src/commands/workflow.ts +0 -742
- package/src/config-adapter.ts +0 -210
- package/src/index.ts +0 -383
- package/src/infrastructure/in-memory-repositories.ts +0 -310
- package/src/init/claudemd-generator.ts +0 -631
- package/src/init/executor.ts +0 -756
- package/src/init/helpers-generator.ts +0 -628
- package/src/init/index.ts +0 -60
- package/src/init/mcp-generator.ts +0 -83
- package/src/init/settings-generator.ts +0 -274
- package/src/init/statusline-generator.ts +0 -211
- package/src/init/types.ts +0 -447
- package/src/mcp-client.ts +0 -227
- package/src/mcp-server.ts +0 -571
- package/src/mcp-tools/agent-tools.ts +0 -92
- package/src/mcp-tools/config-tools.ts +0 -88
- package/src/mcp-tools/hooks-tools.ts +0 -1819
- package/src/mcp-tools/index.ts +0 -12
- package/src/mcp-tools/memory-tools.ts +0 -89
- package/src/mcp-tools/swarm-tools.ts +0 -69
- package/src/mcp-tools/types.ts +0 -33
- package/src/output.ts +0 -593
- package/src/parser.ts +0 -417
- package/src/prompt.ts +0 -619
- package/src/types.ts +0 -287
- package/tmp.json +0 -0
- package/tsconfig.json +0 -16
- package/tsconfig.tsbuildinfo +0 -1
- package/vitest.config.ts +0 -13
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* V3 CLI Smart Error Suggestions
|
|
3
|
+
* Levenshtein distance and command suggestions
|
|
4
|
+
*
|
|
5
|
+
* Created with ruv.io
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Calculate Levenshtein distance between two strings
|
|
9
|
+
*/
|
|
10
|
+
export function levenshteinDistance(a, b) {
|
|
11
|
+
const m = a.length;
|
|
12
|
+
const n = b.length;
|
|
13
|
+
// Early termination for empty strings
|
|
14
|
+
if (m === 0)
|
|
15
|
+
return n;
|
|
16
|
+
if (n === 0)
|
|
17
|
+
return m;
|
|
18
|
+
// Create distance matrix
|
|
19
|
+
const d = Array(m + 1).fill(null).map(() => Array(n + 1).fill(0));
|
|
20
|
+
// Initialize first column
|
|
21
|
+
for (let i = 0; i <= m; i++) {
|
|
22
|
+
d[i][0] = i;
|
|
23
|
+
}
|
|
24
|
+
// Initialize first row
|
|
25
|
+
for (let j = 0; j <= n; j++) {
|
|
26
|
+
d[0][j] = j;
|
|
27
|
+
}
|
|
28
|
+
// Fill in the rest of the matrix
|
|
29
|
+
for (let j = 1; j <= n; j++) {
|
|
30
|
+
for (let i = 1; i <= m; i++) {
|
|
31
|
+
const cost = a[i - 1] === b[j - 1] ? 0 : 1;
|
|
32
|
+
d[i][j] = Math.min(d[i - 1][j] + 1, // deletion
|
|
33
|
+
d[i][j - 1] + 1, // insertion
|
|
34
|
+
d[i - 1][j - 1] + cost // substitution
|
|
35
|
+
);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return d[m][n];
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Calculate similarity score (0-1) between two strings
|
|
42
|
+
*/
|
|
43
|
+
export function similarityScore(a, b) {
|
|
44
|
+
const maxLen = Math.max(a.length, b.length);
|
|
45
|
+
if (maxLen === 0)
|
|
46
|
+
return 1;
|
|
47
|
+
const distance = levenshteinDistance(a.toLowerCase(), b.toLowerCase());
|
|
48
|
+
return 1 - distance / maxLen;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Find similar strings from a list
|
|
52
|
+
*/
|
|
53
|
+
export function findSimilar(input, candidates, options = {}) {
|
|
54
|
+
const { maxSuggestions = 3, minSimilarity = 0.4, maxDistance = 3 } = options;
|
|
55
|
+
const inputLower = input.toLowerCase();
|
|
56
|
+
// Score all candidates
|
|
57
|
+
const scored = candidates
|
|
58
|
+
.map(candidate => ({
|
|
59
|
+
candidate,
|
|
60
|
+
distance: levenshteinDistance(inputLower, candidate.toLowerCase()),
|
|
61
|
+
similarity: similarityScore(inputLower, candidate),
|
|
62
|
+
// Boost prefix matches
|
|
63
|
+
prefixBoost: candidate.toLowerCase().startsWith(inputLower) ? 0.3 : 0
|
|
64
|
+
}))
|
|
65
|
+
.filter(s => s.distance <= maxDistance || s.similarity >= minSimilarity)
|
|
66
|
+
.map(s => ({
|
|
67
|
+
...s,
|
|
68
|
+
score: s.similarity + s.prefixBoost
|
|
69
|
+
}))
|
|
70
|
+
.sort((a, b) => b.score - a.score)
|
|
71
|
+
.slice(0, maxSuggestions);
|
|
72
|
+
return scored.map(s => s.candidate);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Format suggestion message for CLI errors
|
|
76
|
+
*/
|
|
77
|
+
export function formatSuggestion(invalidInput, suggestions, context = 'command') {
|
|
78
|
+
if (suggestions.length === 0) {
|
|
79
|
+
return '';
|
|
80
|
+
}
|
|
81
|
+
const contextMap = {
|
|
82
|
+
command: 'Did you mean',
|
|
83
|
+
subcommand: 'Available subcommands',
|
|
84
|
+
option: 'Did you mean',
|
|
85
|
+
value: 'Valid values'
|
|
86
|
+
};
|
|
87
|
+
const prefix = contextMap[context];
|
|
88
|
+
if (suggestions.length === 1) {
|
|
89
|
+
return `\n ${prefix}: ${suggestions[0]}`;
|
|
90
|
+
}
|
|
91
|
+
return `\n ${prefix}:\n${suggestions.map(s => ` - ${s}`).join('\n')}`;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Common typos and their corrections
|
|
95
|
+
*/
|
|
96
|
+
export const COMMON_TYPOS = {
|
|
97
|
+
'init': 'init',
|
|
98
|
+
'initi': 'init',
|
|
99
|
+
'inizialize': 'init',
|
|
100
|
+
'staus': 'status',
|
|
101
|
+
'stauts': 'status',
|
|
102
|
+
'stats': 'stats',
|
|
103
|
+
'stat': 'status',
|
|
104
|
+
'swarrm': 'swarm',
|
|
105
|
+
'swarn': 'swarm',
|
|
106
|
+
'agnet': 'agent',
|
|
107
|
+
'agen': 'agent',
|
|
108
|
+
'memroy': 'memory',
|
|
109
|
+
'mem': 'memory',
|
|
110
|
+
'memmory': 'memory',
|
|
111
|
+
'confg': 'config',
|
|
112
|
+
'conf': 'config',
|
|
113
|
+
'configu': 'config',
|
|
114
|
+
'hook': 'hooks',
|
|
115
|
+
'hoks': 'hooks',
|
|
116
|
+
'hive': 'hive-mind',
|
|
117
|
+
'hivemind': 'hive-mind',
|
|
118
|
+
'hive_mind': 'hive-mind',
|
|
119
|
+
'neurl': 'neural',
|
|
120
|
+
'nueral': 'neural',
|
|
121
|
+
'securty': 'security',
|
|
122
|
+
'sec': 'security',
|
|
123
|
+
'perf': 'performance',
|
|
124
|
+
'performace': 'performance',
|
|
125
|
+
'provider': 'providers',
|
|
126
|
+
'plugin': 'plugins',
|
|
127
|
+
'dep': 'deployment',
|
|
128
|
+
'depoly': 'deployment',
|
|
129
|
+
'deploy': 'deployment',
|
|
130
|
+
'claim': 'claims',
|
|
131
|
+
'embed': 'embeddings',
|
|
132
|
+
'embeding': 'embeddings',
|
|
133
|
+
'daemon': 'daemon',
|
|
134
|
+
'deamon': 'daemon',
|
|
135
|
+
'doc': 'doctor',
|
|
136
|
+
'docter': 'doctor',
|
|
137
|
+
'complete': 'completions',
|
|
138
|
+
'completion': 'completions',
|
|
139
|
+
'comp': 'completions',
|
|
140
|
+
'task': 'task',
|
|
141
|
+
'taks': 'task',
|
|
142
|
+
'sessio': 'session',
|
|
143
|
+
'sess': 'session',
|
|
144
|
+
'sesssion': 'session',
|
|
145
|
+
'workflow': 'workflow',
|
|
146
|
+
'wf': 'workflow',
|
|
147
|
+
'wokflow': 'workflow'
|
|
148
|
+
};
|
|
149
|
+
/**
|
|
150
|
+
* Get corrected command if it's a common typo
|
|
151
|
+
*/
|
|
152
|
+
export function getTypoCorrection(input) {
|
|
153
|
+
return COMMON_TYPOS[input.toLowerCase()];
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Smart command suggestion for unknown commands
|
|
157
|
+
*/
|
|
158
|
+
export function suggestCommand(unknownCommand, availableCommands) {
|
|
159
|
+
// Check for common typo first
|
|
160
|
+
const correction = getTypoCorrection(unknownCommand);
|
|
161
|
+
if (correction && availableCommands.includes(correction)) {
|
|
162
|
+
return {
|
|
163
|
+
correction,
|
|
164
|
+
suggestions: [correction],
|
|
165
|
+
message: `Did you mean "${correction}"?`
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
// Find similar commands
|
|
169
|
+
const suggestions = findSimilar(unknownCommand, availableCommands, {
|
|
170
|
+
maxSuggestions: 3,
|
|
171
|
+
minSimilarity: 0.3,
|
|
172
|
+
maxDistance: 4
|
|
173
|
+
});
|
|
174
|
+
if (suggestions.length === 0) {
|
|
175
|
+
return {
|
|
176
|
+
suggestions: [],
|
|
177
|
+
message: 'Run "claude-flow --help" to see available commands.'
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
if (suggestions.length === 1) {
|
|
181
|
+
return {
|
|
182
|
+
suggestions,
|
|
183
|
+
message: `Did you mean "${suggestions[0]}"?`
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
return {
|
|
187
|
+
suggestions,
|
|
188
|
+
message: `Did you mean one of these?\n${suggestions.map(s => ` - ${s}`).join('\n')}`
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
export default {
|
|
192
|
+
levenshteinDistance,
|
|
193
|
+
similarityScore,
|
|
194
|
+
findSimilar,
|
|
195
|
+
formatSuggestion,
|
|
196
|
+
suggestCommand,
|
|
197
|
+
getTypoCorrection,
|
|
198
|
+
COMMON_TYPOS
|
|
199
|
+
};
|
|
200
|
+
//# sourceMappingURL=suggest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"suggest.js","sourceRoot":"","sources":["../../src/suggest.ts"],"names":[],"mappings":"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"}
|