mycontext-cli 2.0.25 → 2.0.27

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.
Files changed (105) hide show
  1. package/README.md +184 -37
  2. package/dist/cli.js +92 -80
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/build-app.d.ts +6 -1
  5. package/dist/commands/build-app.d.ts.map +1 -1
  6. package/dist/commands/build-app.js +97 -9
  7. package/dist/commands/build-app.js.map +1 -1
  8. package/dist/commands/compile-prd.d.ts.map +1 -1
  9. package/dist/commands/compile-prd.js +7 -0
  10. package/dist/commands/compile-prd.js.map +1 -1
  11. package/dist/commands/export-progress.d.ts +34 -0
  12. package/dist/commands/export-progress.d.ts.map +1 -0
  13. package/dist/commands/export-progress.js +552 -0
  14. package/dist/commands/export-progress.js.map +1 -0
  15. package/dist/commands/generate-context-files.d.ts.map +1 -1
  16. package/dist/commands/generate-context-files.js +10 -2
  17. package/dist/commands/generate-context-files.js.map +1 -1
  18. package/dist/commands/generate.d.ts +8 -1
  19. package/dist/commands/generate.d.ts.map +1 -1
  20. package/dist/commands/generate.js +212 -0
  21. package/dist/commands/generate.js.map +1 -1
  22. package/dist/commands/help.d.ts +17 -0
  23. package/dist/commands/help.d.ts.map +1 -0
  24. package/dist/commands/help.js +329 -0
  25. package/dist/commands/help.js.map +1 -0
  26. package/dist/commands/import-project-plan.d.ts +27 -0
  27. package/dist/commands/import-project-plan.d.ts.map +1 -0
  28. package/dist/commands/import-project-plan.js +411 -0
  29. package/dist/commands/import-project-plan.js.map +1 -0
  30. package/dist/commands/pm-integration.d.ts +18 -0
  31. package/dist/commands/pm-integration.d.ts.map +1 -0
  32. package/dist/commands/pm-integration.js +385 -0
  33. package/dist/commands/pm-integration.js.map +1 -0
  34. package/dist/commands/setup-complete.d.ts +16 -0
  35. package/dist/commands/setup-complete.d.ts.map +1 -0
  36. package/dist/commands/setup-complete.js +468 -0
  37. package/dist/commands/setup-complete.js.map +1 -0
  38. package/dist/commands/setup-shadcn.d.ts +20 -0
  39. package/dist/commands/setup-shadcn.d.ts.map +1 -0
  40. package/dist/commands/setup-shadcn.js +241 -0
  41. package/dist/commands/setup-shadcn.js.map +1 -0
  42. package/dist/commands/suggest.d.ts +15 -0
  43. package/dist/commands/suggest.d.ts.map +1 -0
  44. package/dist/commands/suggest.js +288 -0
  45. package/dist/commands/suggest.js.map +1 -0
  46. package/dist/commands/update.d.ts +0 -4
  47. package/dist/commands/update.d.ts.map +1 -1
  48. package/dist/commands/update.js +7 -197
  49. package/dist/commands/update.js.map +1 -1
  50. package/dist/commands/workflow.d.ts +16 -0
  51. package/dist/commands/workflow.d.ts.map +1 -0
  52. package/dist/commands/workflow.js +464 -0
  53. package/dist/commands/workflow.js.map +1 -0
  54. package/dist/package.json +1 -1
  55. package/dist/services/PMIntegrationService.d.ts +46 -0
  56. package/dist/services/PMIntegrationService.d.ts.map +1 -0
  57. package/dist/services/PMIntegrationService.js +363 -0
  58. package/dist/services/PMIntegrationService.js.map +1 -0
  59. package/dist/services/WebhookServer.d.ts +37 -0
  60. package/dist/services/WebhookServer.d.ts.map +1 -0
  61. package/dist/services/WebhookServer.js +231 -0
  62. package/dist/services/WebhookServer.js.map +1 -0
  63. package/dist/types/index.d.ts +1 -0
  64. package/dist/types/index.d.ts.map +1 -1
  65. package/dist/types/index.js +2 -0
  66. package/dist/types/index.js.map +1 -1
  67. package/dist/types/pm-integration.d.ts +241 -0
  68. package/dist/types/pm-integration.d.ts.map +1 -0
  69. package/dist/types/pm-integration.js +24 -0
  70. package/dist/types/pm-integration.js.map +1 -0
  71. package/dist/utils/NextJSProjectValidator.d.ts.map +1 -1
  72. package/dist/utils/NextJSProjectValidator.js +14 -7
  73. package/dist/utils/NextJSProjectValidator.js.map +1 -1
  74. package/dist/utils/ProjectStateAnalyzer.d.ts +46 -0
  75. package/dist/utils/ProjectStateAnalyzer.d.ts.map +1 -0
  76. package/dist/utils/ProjectStateAnalyzer.js +311 -0
  77. package/dist/utils/ProjectStateAnalyzer.js.map +1 -0
  78. package/dist/utils/ProjectStructureValidator.d.ts +12 -0
  79. package/dist/utils/ProjectStructureValidator.d.ts.map +1 -1
  80. package/dist/utils/ProjectStructureValidator.js +111 -14
  81. package/dist/utils/ProjectStructureValidator.js.map +1 -1
  82. package/dist/utils/claudeAgentClient.d.ts +4 -0
  83. package/dist/utils/claudeAgentClient.d.ts.map +1 -1
  84. package/dist/utils/claudeAgentClient.js +90 -20
  85. package/dist/utils/claudeAgentClient.js.map +1 -1
  86. package/dist/utils/errorHandler.d.ts +31 -74
  87. package/dist/utils/errorHandler.d.ts.map +1 -1
  88. package/dist/utils/errorHandler.js +190 -276
  89. package/dist/utils/errorHandler.js.map +1 -1
  90. package/dist/utils/hybridAIClient.js +1 -1
  91. package/dist/utils/hybridAIClient.js.map +1 -1
  92. package/dist/utils/mcpTools.d.ts +9 -9
  93. package/dist/utils/nextStepsSuggester.d.ts +52 -0
  94. package/dist/utils/nextStepsSuggester.d.ts.map +1 -0
  95. package/dist/utils/nextStepsSuggester.js +438 -0
  96. package/dist/utils/nextStepsSuggester.js.map +1 -0
  97. package/dist/utils/progress.d.ts +31 -1
  98. package/dist/utils/progress.d.ts.map +1 -1
  99. package/dist/utils/progress.js +110 -2
  100. package/dist/utils/progress.js.map +1 -1
  101. package/dist/utils/workflowEngine.d.ts +96 -0
  102. package/dist/utils/workflowEngine.d.ts.map +1 -0
  103. package/dist/utils/workflowEngine.js +793 -0
  104. package/dist/utils/workflowEngine.js.map +1 -0
  105. package/package.json +1 -1
@@ -0,0 +1,241 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.SetupShadcnCommand = void 0;
40
+ const child_process_1 = require("child_process");
41
+ const fs = __importStar(require("fs-extra"));
42
+ const path = __importStar(require("path"));
43
+ const chalk_1 = __importDefault(require("chalk"));
44
+ const spinner_1 = require("../utils/spinner");
45
+ class SetupShadcnCommand {
46
+ constructor() {
47
+ this.spinner = new spinner_1.EnhancedSpinner("Setting up shadcn/ui...");
48
+ }
49
+ async execute(options) {
50
+ const projectRoot = process.cwd();
51
+ console.log(chalk_1.default.blue("🎨 Setting up shadcn/ui components...\n"));
52
+ // Check if we're in a Next.js project
53
+ if (!(await this.isValidProject(projectRoot))) {
54
+ console.log(chalk_1.default.red("❌ Not in a valid Next.js project"));
55
+ console.log(" Please run this command from your Next.js project root");
56
+ process.exit(1);
57
+ }
58
+ // Check if shadcn is already initialized
59
+ if ((await this.isShadcnInitialized(projectRoot)) && !options.force) {
60
+ console.log(chalk_1.default.yellow("⚠️ shadcn/ui is already initialized"));
61
+ console.log(" Use --force to reinitialize");
62
+ return;
63
+ }
64
+ // Initialize shadcn/ui first
65
+ await this.initializeShadcn(projectRoot);
66
+ // Install components
67
+ if (options.all) {
68
+ await this.installAllComponents(projectRoot);
69
+ }
70
+ else if (options.components && options.components.length > 0) {
71
+ await this.installSpecificComponents(projectRoot, options.components);
72
+ }
73
+ else {
74
+ // Interactive mode - let user choose
75
+ await this.interactiveComponentInstallation(projectRoot);
76
+ }
77
+ console.log(chalk_1.default.green("\n✅ shadcn/ui setup completed!"));
78
+ console.log(chalk_1.default.gray(" Run: mycontext generate-components all --with-tests"));
79
+ }
80
+ async isValidProject(projectRoot) {
81
+ const packageJsonPath = path.join(projectRoot, "package.json");
82
+ const nextConfigPath = path.join(projectRoot, "next.config.js");
83
+ if (!(await fs.pathExists(packageJsonPath)))
84
+ return false;
85
+ try {
86
+ const packageJson = await fs.readJson(packageJsonPath);
87
+ return !!(packageJson.dependencies?.next || packageJson.devDependencies?.next);
88
+ }
89
+ catch {
90
+ return false;
91
+ }
92
+ }
93
+ async isShadcnInitialized(projectRoot) {
94
+ const componentsPath = path.join(projectRoot, "components.json");
95
+ const uiPath = path.join(projectRoot, "components", "ui");
96
+ return ((await fs.pathExists(componentsPath)) && (await fs.pathExists(uiPath)));
97
+ }
98
+ async initializeShadcn(projectRoot) {
99
+ console.log(chalk_1.default.cyan("📦 Initializing shadcn/ui..."));
100
+ // Check package manager
101
+ const packageManager = await this.detectPackageManager(projectRoot);
102
+ // Run shadcn init
103
+ await this.runShadcnCommand(projectRoot, packageManager, ["init", "--yes"]);
104
+ }
105
+ async installAllComponents(projectRoot) {
106
+ console.log(chalk_1.default.cyan("\n📦 Installing all essential shadcn/ui components..."));
107
+ console.log(chalk_1.default.gray(" This may take a few minutes...\n"));
108
+ const components = [
109
+ "accordion",
110
+ "alert",
111
+ "alert-dialog",
112
+ "aspect-ratio",
113
+ "avatar",
114
+ "badge",
115
+ "breadcrumb",
116
+ "button",
117
+ "calendar",
118
+ "card",
119
+ "carousel",
120
+ "chart",
121
+ "checkbox",
122
+ "collapsible",
123
+ "command",
124
+ "context-menu",
125
+ "dialog",
126
+ "drawer",
127
+ "dropdown-menu",
128
+ "form",
129
+ "hover-card",
130
+ "input",
131
+ "input-otp",
132
+ "label",
133
+ "menubar",
134
+ "navigation-menu",
135
+ "pagination",
136
+ "popover",
137
+ "progress",
138
+ "radio-group",
139
+ "resizable",
140
+ "scroll-area",
141
+ "select",
142
+ "separator",
143
+ "sheet",
144
+ "sidebar",
145
+ "skeleton",
146
+ "slider",
147
+ "sonner",
148
+ "switch",
149
+ "table",
150
+ "tabs",
151
+ "textarea",
152
+ "toggle",
153
+ "toggle-group",
154
+ "tooltip",
155
+ "field",
156
+ "button-group",
157
+ "empty",
158
+ "input-group",
159
+ "spinner",
160
+ ];
161
+ const packageManager = await this.detectPackageManager(projectRoot);
162
+ // Install components in batches to avoid overwhelming the terminal
163
+ const batchSize = 10;
164
+ for (let i = 0; i < components.length; i += batchSize) {
165
+ const batch = components.slice(i, i + batchSize);
166
+ console.log(chalk_1.default.gray(` Installing batch ${Math.floor(i / batchSize) + 1}/${Math.ceil(components.length / batchSize)}: ${batch.join(", ")}`));
167
+ await this.runShadcnCommand(projectRoot, packageManager, [
168
+ "add",
169
+ ...batch,
170
+ ]);
171
+ // Small delay between batches
172
+ if (i + batchSize < components.length) {
173
+ await new Promise((resolve) => setTimeout(resolve, 1000));
174
+ }
175
+ }
176
+ }
177
+ async installSpecificComponents(projectRoot, components) {
178
+ console.log(chalk_1.default.cyan(`\n📦 Installing ${components.length} shadcn/ui components...`));
179
+ const packageManager = await this.detectPackageManager(projectRoot);
180
+ await this.runShadcnCommand(projectRoot, packageManager, [
181
+ "add",
182
+ ...components,
183
+ ]);
184
+ }
185
+ async interactiveComponentInstallation(projectRoot) {
186
+ console.log(chalk_1.default.cyan("\n📦 Interactive shadcn/ui component installation"));
187
+ console.log(chalk_1.default.gray(" You will now interact directly with shadcn/ui CLI\n"));
188
+ const packageManager = await this.detectPackageManager(projectRoot);
189
+ // Provide instructions to user
190
+ console.log(chalk_1.default.yellow("💡 Instructions:"));
191
+ console.log(" • Select the components you need");
192
+ console.log(" • Use spacebar to select/deselect components");
193
+ console.log(" • Press Enter to confirm selection");
194
+ console.log(" • Press Ctrl+C to cancel\n");
195
+ // Let user interact with shadcn directly
196
+ await this.runShadcnCommand(projectRoot, packageManager, ["add"]);
197
+ }
198
+ async runShadcnCommand(projectRoot, packageManager, args) {
199
+ return new Promise((resolve, reject) => {
200
+ const command = packageManager === "npm"
201
+ ? "npx"
202
+ : packageManager === "pnpm"
203
+ ? "pnpm dlx"
204
+ : "yarn dlx";
205
+ const fullCommand = [command, "shadcn@latest", ...args];
206
+ console.log(chalk_1.default.gray(` Running: ${fullCommand.join(" ")}`));
207
+ const child = (0, child_process_1.spawn)(command, ["shadcn@latest", ...args], {
208
+ cwd: projectRoot,
209
+ stdio: "inherit", // Pass all stdio directly to user
210
+ shell: true,
211
+ });
212
+ child.on("close", (code) => {
213
+ if (code === 0) {
214
+ resolve();
215
+ }
216
+ else {
217
+ reject(new Error(`shadcn command failed with code ${code}`));
218
+ }
219
+ });
220
+ child.on("error", (error) => {
221
+ reject(error);
222
+ });
223
+ });
224
+ }
225
+ async detectPackageManager(projectRoot) {
226
+ // Check for lock files
227
+ const pnpmLock = path.join(projectRoot, "pnpm-lock.yaml");
228
+ const yarnLock = path.join(projectRoot, "yarn.lock");
229
+ const packageLock = path.join(projectRoot, "package-lock.json");
230
+ if (await fs.pathExists(pnpmLock))
231
+ return "pnpm";
232
+ if (await fs.pathExists(yarnLock))
233
+ return "yarn";
234
+ if (await fs.pathExists(packageLock))
235
+ return "npm";
236
+ // Default to npm if no lock file found
237
+ return "npm";
238
+ }
239
+ }
240
+ exports.SetupShadcnCommand = SetupShadcnCommand;
241
+ //# sourceMappingURL=setup-shadcn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-shadcn.js","sourceRoot":"","sources":["../../src/commands/setup-shadcn.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { Command } from "commander";
2
+ export declare class SuggestCommand {
3
+ private program;
4
+ constructor(program: Command);
5
+ execute(options: {
6
+ command?: string;
7
+ limit?: number;
8
+ }): Promise<void>;
9
+ private showContextSuggestions;
10
+ private suggestSimilarCommands;
11
+ private getAllCommands;
12
+ private findSimilarCommands;
13
+ private calculateSimilarity;
14
+ }
15
+ //# sourceMappingURL=suggest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suggest.d.ts","sourceRoot":"","sources":["../../src/commands/suggest.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWpC,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAU;gBAEb,OAAO,EAAE,OAAO;IAItB,OAAO,CAAC,OAAO,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YAU7D,sBAAsB;YA+CtB,sBAAsB;IAyDpC,OAAO,CAAC,cAAc;IA4JtB,OAAO,CAAC,mBAAmB;IA0C3B,OAAO,CAAC,mBAAmB;CAkD5B"}
@@ -0,0 +1,288 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SuggestCommand = void 0;
7
+ const chalk_1 = __importDefault(require("chalk"));
8
+ const nextStepsSuggester_1 = require("../utils/nextStepsSuggester");
9
+ class SuggestCommand {
10
+ constructor(program) {
11
+ this.program = program;
12
+ }
13
+ async execute(options) {
14
+ const projectRoot = process.cwd();
15
+ if (options.command) {
16
+ await this.suggestSimilarCommands(options.command, options.limit);
17
+ }
18
+ else {
19
+ await this.showContextSuggestions(projectRoot);
20
+ }
21
+ }
22
+ async showContextSuggestions(projectRoot) {
23
+ console.log(chalk_1.default.blue("💡 Context-Aware Suggestions\n"));
24
+ // Get intelligent suggestions based on project state
25
+ const suggestions = await nextStepsSuggester_1.NextStepsSuggester.getIntelligentSuggestions(projectRoot);
26
+ if (suggestions.length === 0) {
27
+ console.log(chalk_1.default.green("🎉 Your project appears to be complete!"));
28
+ console.log(chalk_1.default.gray("No suggestions needed at this time."));
29
+ console.log();
30
+ console.log(chalk_1.default.yellow("Available commands if you need them:"));
31
+ console.log(` ${chalk_1.default.cyan("mycontext status")} - Check project status`);
32
+ console.log(` ${chalk_1.default.cyan("mycontext validate")} - Validate project quality`);
33
+ console.log(` ${chalk_1.default.cyan("mycontext workflow list")} - See available workflows`);
34
+ return;
35
+ }
36
+ console.log(chalk_1.default.green("Recommended Actions:"));
37
+ suggestions.slice(0, 5).forEach((suggestion, index) => {
38
+ console.log(` ${index + 1}. ${suggestion.description}`);
39
+ console.log(chalk_1.default.gray(` ${suggestion.command}`));
40
+ if (suggestion.context) {
41
+ console.log(chalk_1.default.gray(` ℹ️ ${suggestion.context}`));
42
+ }
43
+ console.log();
44
+ });
45
+ console.log(chalk_1.default.yellow("Quick Commands:"));
46
+ console.log(` ${chalk_1.default.cyan("mycontext setup-complete --auto-continue")} - Complete project setup`);
47
+ console.log(` ${chalk_1.default.cyan("mycontext workflow suggest")} - More workflow suggestions`);
48
+ console.log(` ${chalk_1.default.cyan("mycontext help")} - Context-aware help`);
49
+ }
50
+ async suggestSimilarCommands(input, limit = 5) {
51
+ const availableCommands = this.getAllCommands();
52
+ const matches = this.findSimilarCommands(input, availableCommands);
53
+ if (matches.length === 0) {
54
+ console.log(chalk_1.default.red(`❌ No commands found similar to "${input}"`));
55
+ console.log();
56
+ console.log(chalk_1.default.yellow("💡 Try these instead:"));
57
+ console.log(` ${chalk_1.default.cyan("mycontext help")} - Show available commands`);
58
+ console.log(` ${chalk_1.default.cyan("mycontext suggest")} - Get context-aware suggestions`);
59
+ return;
60
+ }
61
+ console.log(chalk_1.default.blue(`🔍 Suggestions for "${input}"\n`));
62
+ matches.slice(0, limit).forEach((match, index) => {
63
+ const similarityPercent = Math.round(match.similarity * 100);
64
+ const similarityIcon = similarityPercent > 80 ? "🎯" : similarityPercent > 60 ? "💡" : "🤔";
65
+ console.log(`${index + 1}. ${similarityIcon} ${chalk_1.default.cyan(match.command)}`);
66
+ console.log(` ${match.description}`);
67
+ console.log(chalk_1.default.gray(` Category: ${match.category} • Similarity: ${similarityPercent}%`));
68
+ console.log();
69
+ });
70
+ if (matches.length > limit) {
71
+ console.log(chalk_1.default.gray(`... and ${matches.length - limit} more suggestions`));
72
+ }
73
+ console.log(chalk_1.default.yellow("💡 Pro Tips:"));
74
+ console.log(chalk_1.default.gray(" • Use tab completion for faster command entry"));
75
+ console.log(chalk_1.default.gray(" • Run 'mycontext help' for detailed command reference"));
76
+ console.log(chalk_1.default.gray(" • Use 'mycontext suggest' for context-aware recommendations"));
77
+ }
78
+ getAllCommands() {
79
+ return [
80
+ // Core commands
81
+ {
82
+ command: "init <project-name>",
83
+ description: "Initialize a new MyContext project",
84
+ category: "Setup",
85
+ },
86
+ {
87
+ command: "setup-complete",
88
+ description: "Analyze and complete project setup automatically",
89
+ category: "Setup",
90
+ },
91
+ {
92
+ command: "generate <type>",
93
+ description: "Generate code, types, components, or architecture",
94
+ category: "Generation",
95
+ },
96
+ {
97
+ command: "generate-components [target]",
98
+ description: "Generate React components with AI",
99
+ category: "Generation",
100
+ },
101
+ {
102
+ command: "generate-context-files",
103
+ description: "Generate detailed project context files",
104
+ category: "Generation",
105
+ },
106
+ {
107
+ command: "compile-prd",
108
+ description: "Compile comprehensive PRD from context files",
109
+ category: "Generation",
110
+ },
111
+ {
112
+ command: "validate [target]",
113
+ description: "Validate project quality and structure",
114
+ category: "Quality",
115
+ },
116
+ {
117
+ command: "status",
118
+ description: "Show current project status and health",
119
+ category: "Info",
120
+ },
121
+ {
122
+ command: "help [topic]",
123
+ description: "Show context-aware help and guidance",
124
+ category: "Info",
125
+ },
126
+ {
127
+ command: "suggest [command]",
128
+ description: "Get command suggestions and recommendations",
129
+ category: "Info",
130
+ },
131
+ // Workflow commands
132
+ {
133
+ command: "workflow list",
134
+ description: "List all available workflows",
135
+ category: "Workflow",
136
+ },
137
+ {
138
+ command: "workflow start <id>",
139
+ description: "Start a specific workflow",
140
+ category: "Workflow",
141
+ },
142
+ {
143
+ command: "workflow status",
144
+ description: "Check current workflow progress",
145
+ category: "Workflow",
146
+ },
147
+ {
148
+ command: "workflow continue",
149
+ description: "Resume the current workflow",
150
+ category: "Workflow",
151
+ },
152
+ {
153
+ command: "workflow stop",
154
+ description: "Stop the current workflow",
155
+ category: "Workflow",
156
+ },
157
+ {
158
+ command: "workflow suggest",
159
+ description: "Get intelligent workflow recommendations",
160
+ category: "Workflow",
161
+ },
162
+ // Setup commands
163
+ {
164
+ command: "setup-shadcn",
165
+ description: "Configure shadcn/ui component library",
166
+ category: "Setup",
167
+ },
168
+ {
169
+ command: "setup-instantdb",
170
+ description: "Configure InstantDB for real-time data",
171
+ category: "Setup",
172
+ },
173
+ {
174
+ command: "setup-database",
175
+ description: "Set up database configuration",
176
+ category: "Setup",
177
+ },
178
+ // Utility commands
179
+ {
180
+ command: "promote",
181
+ description: "Move components from development to production",
182
+ category: "Deployment",
183
+ },
184
+ {
185
+ command: "preview",
186
+ description: "Preview generated components",
187
+ category: "Development",
188
+ },
189
+ {
190
+ command: "agent-flow",
191
+ description: "Manage AI agent workflows",
192
+ category: "AI",
193
+ },
194
+ {
195
+ command: "generate-todos",
196
+ description: "Generate TODO items from PRD",
197
+ category: "Planning",
198
+ },
199
+ {
200
+ command: "sanitize",
201
+ description: "Clean and sanitize project files",
202
+ category: "Maintenance",
203
+ },
204
+ {
205
+ command: "build-strategy",
206
+ description: "Generate build and deployment strategies",
207
+ category: "Deployment",
208
+ },
209
+ {
210
+ command: "health-check",
211
+ description: "Check system and provider health",
212
+ category: "Info",
213
+ },
214
+ {
215
+ command: "migrate",
216
+ description: "Migrate project configuration",
217
+ category: "Maintenance",
218
+ },
219
+ {
220
+ command: "update",
221
+ description: "Update MyContext CLI to latest version",
222
+ category: "Maintenance",
223
+ },
224
+ ];
225
+ }
226
+ findSimilarCommands(input, commands) {
227
+ const inputLower = input.toLowerCase();
228
+ const matches = [];
229
+ for (const cmd of commands) {
230
+ const commandSimilarity = this.calculateSimilarity(inputLower, cmd.command.toLowerCase());
231
+ const descriptionSimilarity = this.calculateSimilarity(inputLower, cmd.description.toLowerCase());
232
+ const categorySimilarity = this.calculateSimilarity(inputLower, cmd.category.toLowerCase());
233
+ const maxSimilarity = Math.max(commandSimilarity, descriptionSimilarity, categorySimilarity);
234
+ if (maxSimilarity > 0.3) {
235
+ // Only include reasonably similar matches
236
+ matches.push({
237
+ command: cmd.command,
238
+ description: cmd.description,
239
+ similarity: maxSimilarity,
240
+ category: cmd.category,
241
+ });
242
+ }
243
+ }
244
+ // Sort by similarity (highest first)
245
+ return matches.sort((a, b) => b.similarity - a.similarity);
246
+ }
247
+ calculateSimilarity(str1, str2) {
248
+ if (str1 === str2)
249
+ return 1.0;
250
+ // Simple fuzzy matching using substring similarity
251
+ const len1 = str1.length;
252
+ const len2 = str2.length;
253
+ if (len1 === 0)
254
+ return len2 === 0 ? 1.0 : 0.0;
255
+ if (len2 === 0)
256
+ return 0.0;
257
+ // Check for exact substring matches
258
+ if (str2.toLowerCase().includes(str1.toLowerCase()) ||
259
+ str1.toLowerCase().includes(str2.toLowerCase())) {
260
+ return 0.8; // High similarity for substring matches
261
+ }
262
+ // Calculate word overlap
263
+ const words1 = str1.toLowerCase().split(/[\s\-_]+/);
264
+ const words2 = str2.toLowerCase().split(/[\s\-_]+/);
265
+ let commonWords = 0;
266
+ for (const word1 of words1) {
267
+ if (words2.some((word2) => word2.includes(word1) || word1.includes(word2))) {
268
+ commonWords++;
269
+ }
270
+ }
271
+ const wordSimilarity = commonWords / Math.max(words1.length, words2.length);
272
+ // Character-level similarity (simple)
273
+ let charMatches = 0;
274
+ const shorter = len1 < len2 ? str1 : str2;
275
+ const longer = len1 < len2 ? str2 : str1;
276
+ for (let i = 0; i < shorter.length; i++) {
277
+ const char = shorter[i];
278
+ if (char && longer.includes(char)) {
279
+ charMatches++;
280
+ }
281
+ }
282
+ const charSimilarity = charMatches / shorter.length;
283
+ // Combine word and character similarity
284
+ return wordSimilarity * 0.7 + charSimilarity * 0.3;
285
+ }
286
+ }
287
+ exports.SuggestCommand = SuggestCommand;
288
+ //# sourceMappingURL=suggest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suggest.js","sourceRoot":"","sources":["../../src/commands/suggest.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,5 @@
1
1
  export declare class UpdateCommand {
2
2
  execute(): Promise<void>;
3
- private getCurrentVersion;
4
- private getLatestVersion;
5
3
  private runCommand;
6
- private filterOutput;
7
- private printNextCommands;
8
4
  }
9
5
  //# sourceMappingURL=update.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAIA,qBAAa,aAAa;IAClB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAuJ9B,OAAO,CAAC,iBAAiB;IAuBzB,OAAO,CAAC,gBAAgB;YAkBV,UAAU;IA8CxB,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,iBAAiB;CAW1B"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAIA,qBAAa,aAAa;IAClB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAehB,UAAU;CAoBzB"}