@convext/cli 0.3.2 → 1.0.7

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.
@@ -1,23 +1,16 @@
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.mcpCommand = mcpCommand;
7
- exports.mcpStatusCommand = mcpStatusCommand;
8
- const node_fs_1 = require("node:fs");
9
- const node_path_1 = require("node:path");
10
- const node_os_1 = require("node:os");
11
- const chalk_1 = __importDefault(require("chalk"));
12
- const ora_1 = __importDefault(require("ora"));
13
- const prompts_js_1 = require("../utils/prompts.js");
14
- const config_js_1 = require("../config.js");
1
+ import { existsSync, readFileSync, writeFileSync, mkdirSync } from "node:fs";
2
+ import { join, dirname } from "node:path";
3
+ import { homedir } from "node:os";
4
+ import chalk from "chalk";
5
+ import ora from "ora";
6
+ import { promptConfirm, promptSelect } from "../utils/prompts.js";
7
+ import { getApiUrl } from "../config.js";
15
8
  const EDITORS = [
16
9
  {
17
10
  name: "Claude Code",
18
11
  id: "claude-code",
19
12
  configPaths: [
20
- (0, node_path_1.join)((0, node_os_1.homedir)(), ".claude", "mcp.json"),
13
+ join(homedir(), ".claude", "mcp.json"),
21
14
  ],
22
15
  projectConfigName: ".mcp.json",
23
16
  supportsHttp: true,
@@ -28,8 +21,8 @@ const EDITORS = [
28
21
  name: "Cursor",
29
22
  id: "cursor",
30
23
  configPaths: [
31
- (0, node_path_1.join)((0, node_os_1.homedir)(), ".cursor", "mcp.json"),
32
- (0, node_path_1.join)((0, node_os_1.homedir)(), "Library", "Application Support", "Cursor", "User", "globalStorage", "mcp.json"),
24
+ join(homedir(), ".cursor", "mcp.json"),
25
+ join(homedir(), "Library", "Application Support", "Cursor", "User", "globalStorage", "mcp.json"),
33
26
  ],
34
27
  projectConfigName: ".mcp.json",
35
28
  supportsHttp: true,
@@ -40,8 +33,8 @@ const EDITORS = [
40
33
  name: "Windsurf",
41
34
  id: "windsurf",
42
35
  configPaths: [
43
- (0, node_path_1.join)((0, node_os_1.homedir)(), ".windsurf", "mcp.json"),
44
- (0, node_path_1.join)((0, node_os_1.homedir)(), ".codeium", "windsurf", "mcp.json"),
36
+ join(homedir(), ".windsurf", "mcp.json"),
37
+ join(homedir(), ".codeium", "windsurf", "mcp.json"),
45
38
  ],
46
39
  projectConfigName: ".mcp.json",
47
40
  supportsHttp: true,
@@ -52,7 +45,7 @@ const EDITORS = [
52
45
  name: "VS Code (with MCP extension)",
53
46
  id: "vscode",
54
47
  configPaths: [
55
- (0, node_path_1.join)((0, node_os_1.homedir)(), ".vscode", "mcp.json"),
48
+ join(homedir(), ".vscode", "mcp.json"),
56
49
  ],
57
50
  projectConfigName: ".vscode/mcp.json",
58
51
  supportsHttp: true,
@@ -90,13 +83,13 @@ function detectCurrentEditor() {
90
83
  // This helps when running from a plain terminal
91
84
  const editorsWithConfig = EDITORS.filter(e => {
92
85
  for (const configPath of e.configPaths) {
93
- if ((0, node_fs_1.existsSync)(configPath)) {
86
+ if (existsSync(configPath)) {
94
87
  return true;
95
88
  }
96
89
  }
97
90
  // Also check project-level config
98
- const projectConfig = (0, node_path_1.join)(process.cwd(), e.projectConfigName);
99
- return (0, node_fs_1.existsSync)(projectConfig);
91
+ const projectConfig = join(process.cwd(), e.projectConfigName);
92
+ return existsSync(projectConfig);
100
93
  });
101
94
  // If only one editor has config, assume that's the one
102
95
  if (editorsWithConfig.length === 1) {
@@ -106,10 +99,10 @@ function detectCurrentEditor() {
106
99
  }
107
100
  function findExistingConfig(editor) {
108
101
  // Check project-level config first
109
- const projectConfig = (0, node_path_1.join)(process.cwd(), editor.projectConfigName);
110
- if ((0, node_fs_1.existsSync)(projectConfig)) {
102
+ const projectConfig = join(process.cwd(), editor.projectConfigName);
103
+ if (existsSync(projectConfig)) {
111
104
  try {
112
- const content = (0, node_fs_1.readFileSync)(projectConfig, "utf-8");
105
+ const content = readFileSync(projectConfig, "utf-8");
113
106
  return { path: projectConfig, config: JSON.parse(content) };
114
107
  }
115
108
  catch {
@@ -118,9 +111,9 @@ function findExistingConfig(editor) {
118
111
  }
119
112
  // Check global configs
120
113
  for (const configPath of editor.configPaths) {
121
- if ((0, node_fs_1.existsSync)(configPath)) {
114
+ if (existsSync(configPath)) {
122
115
  try {
123
- const content = (0, node_fs_1.readFileSync)(configPath, "utf-8");
116
+ const content = readFileSync(configPath, "utf-8");
124
117
  return { path: configPath, config: JSON.parse(content) };
125
118
  }
126
119
  catch {
@@ -156,7 +149,7 @@ function generateNpxConfig() {
156
149
  };
157
150
  }
158
151
  function generateHttpConfig() {
159
- const apiUrl = (0, config_js_1.getApiUrl)();
152
+ const apiUrl = getApiUrl();
160
153
  return {
161
154
  type: "http",
162
155
  url: `${apiUrl}/mcp`,
@@ -168,16 +161,16 @@ function generateHttpConfig() {
168
161
  function checkEnvironmentToken() {
169
162
  return Boolean(process.env.CONVEXT_TOKEN);
170
163
  }
171
- async function mcpCommand(options) {
172
- const spinner = (0, ora_1.default)();
173
- console.log(chalk_1.default.bold("\nConvext MCP Configuration\n"));
164
+ export async function mcpCommand(options) {
165
+ const spinner = ora();
166
+ console.log(chalk.bold("\nConvext MCP Configuration\n"));
174
167
  // Step 1: Detect or select editor
175
168
  let editor;
176
169
  if (options.editor) {
177
170
  editor = EDITORS.find(e => e.id === options.editor || e.name.toLowerCase().includes(options.editor.toLowerCase()));
178
171
  if (!editor) {
179
- console.log(chalk_1.default.red(`Unknown editor: ${options.editor}`));
180
- console.log(chalk_1.default.gray(`Available: ${EDITORS.map(e => e.id).join(", ")}`));
172
+ console.log(chalk.red(`Unknown editor: ${options.editor}`));
173
+ console.log(chalk.gray(`Available: ${EDITORS.map(e => e.id).join(", ")}`));
181
174
  process.exit(1);
182
175
  }
183
176
  }
@@ -185,15 +178,15 @@ async function mcpCommand(options) {
185
178
  editor = detectCurrentEditor();
186
179
  }
187
180
  if (!editor) {
188
- console.log(chalk_1.default.yellow("Could not detect current editor/agent."));
189
- console.log(chalk_1.default.gray("Select your editor to configure MCP:\n"));
190
- editor = await (0, prompts_js_1.promptSelect)("Which editor do you want to configure?", EDITORS.map(e => ({
181
+ console.log(chalk.yellow("Could not detect current editor/agent."));
182
+ console.log(chalk.gray("Select your editor to configure MCP:\n"));
183
+ editor = await promptSelect("Which editor do you want to configure?", EDITORS.map(e => ({
191
184
  label: e.name,
192
185
  value: e,
193
186
  })), 0);
194
187
  }
195
188
  else {
196
- console.log(chalk_1.default.green(`✓ Detected: ${editor.name}`));
189
+ console.log(chalk.green(`✓ Detected: ${editor.name}`));
197
190
  }
198
191
  // Step 2: Check existing configuration
199
192
  spinner.start("Checking MCP configuration...");
@@ -202,138 +195,138 @@ async function mcpCommand(options) {
202
195
  if (existing) {
203
196
  const status = isConvextConfigured(existing.config);
204
197
  if (status.configured) {
205
- console.log(chalk_1.default.green(`✓ Convext MCP already configured (${status.method})`));
206
- console.log(chalk_1.default.gray(` Config: ${existing.path}`));
198
+ console.log(chalk.green(`✓ Convext MCP already configured (${status.method})`));
199
+ console.log(chalk.gray(` Config: ${existing.path}`));
207
200
  // Check environment token
208
201
  if (!checkEnvironmentToken()) {
209
- console.log(chalk_1.default.yellow("\n⚠ CONVEXT_TOKEN environment variable not set"));
210
- console.log(chalk_1.default.gray(" The MCP server needs this to authenticate.\n"));
202
+ console.log(chalk.yellow("\n⚠ CONVEXT_TOKEN environment variable not set"));
203
+ console.log(chalk.gray(" The MCP server needs this to authenticate.\n"));
211
204
  showTokenInstructions();
212
205
  }
213
206
  else {
214
- console.log(chalk_1.default.green("✓ CONVEXT_TOKEN is set"));
207
+ console.log(chalk.green("✓ CONVEXT_TOKEN is set"));
215
208
  }
216
209
  if (!options.fix) {
217
- const update = await (0, prompts_js_1.promptConfirm)("Update configuration anyway?", false);
210
+ const update = await promptConfirm("Update configuration anyway?", false);
218
211
  if (!update) {
219
212
  return;
220
213
  }
221
214
  }
222
215
  }
223
216
  else if (status.needsUpdate) {
224
- console.log(chalk_1.default.yellow("⚠ Convext MCP configured but needs update"));
225
- console.log(chalk_1.default.gray(` Config: ${existing.path}`));
217
+ console.log(chalk.yellow("⚠ Convext MCP configured but needs update"));
218
+ console.log(chalk.gray(` Config: ${existing.path}`));
226
219
  }
227
220
  else {
228
- console.log(chalk_1.default.yellow("⚠ MCP config exists but Convext not configured"));
229
- console.log(chalk_1.default.gray(` Config: ${existing.path}`));
221
+ console.log(chalk.yellow("⚠ MCP config exists but Convext not configured"));
222
+ console.log(chalk.gray(` Config: ${existing.path}`));
230
223
  }
231
224
  }
232
225
  else {
233
- console.log(chalk_1.default.yellow("⚠ No MCP configuration found"));
226
+ console.log(chalk.yellow("⚠ No MCP configuration found"));
234
227
  }
235
228
  // Step 3: Select configuration method
236
- console.log("\n" + chalk_1.default.bold("Configuration Options:"));
237
- console.log(chalk_1.default.gray(" npx: Uses @convext/mcp-server package (recommended)"));
238
- console.log(chalk_1.default.gray(" http: Direct HTTP connection to Convext API\n"));
239
- const method = await (0, prompts_js_1.promptSelect)("Which method do you want to use?", [
229
+ console.log("\n" + chalk.bold("Configuration Options:"));
230
+ console.log(chalk.gray(" npx: Uses @convext/mcp-server package (recommended)"));
231
+ console.log(chalk.gray(" http: Direct HTTP connection to Convext API\n"));
232
+ const method = await promptSelect("Which method do you want to use?", [
240
233
  { label: "npx @convext/mcp-server (recommended)", value: "npx" },
241
234
  { label: "Direct HTTP connection", value: "http" },
242
235
  ], 0);
243
236
  // Step 4: Select scope (project or global)
244
- const scope = await (0, prompts_js_1.promptSelect)("Where should the config be saved?", [
237
+ const scope = await promptSelect("Where should the config be saved?", [
245
238
  { label: `Project (${editor.projectConfigName})`, value: "project" },
246
239
  { label: `Global (${editor.configPaths[0]})`, value: "global" },
247
240
  ], 0);
248
241
  // Step 5: Generate and write config
249
242
  const serverConfig = method === "npx" ? generateNpxConfig() : generateHttpConfig();
250
243
  const configPath = scope === "project"
251
- ? (0, node_path_1.join)(process.cwd(), editor.projectConfigName)
244
+ ? join(process.cwd(), editor.projectConfigName)
252
245
  : editor.configPaths[0];
253
246
  // Read existing config or create new
254
247
  let config = { mcpServers: {} };
255
- if ((0, node_fs_1.existsSync)(configPath)) {
248
+ if (existsSync(configPath)) {
256
249
  try {
257
- config = JSON.parse((0, node_fs_1.readFileSync)(configPath, "utf-8"));
250
+ config = JSON.parse(readFileSync(configPath, "utf-8"));
258
251
  if (!config.mcpServers) {
259
252
  config.mcpServers = {};
260
253
  }
261
254
  }
262
255
  catch {
263
256
  // Invalid JSON, start fresh but preserve file
264
- console.log(chalk_1.default.yellow(` Warning: ${configPath} had invalid JSON, creating new config`));
257
+ console.log(chalk.yellow(` Warning: ${configPath} had invalid JSON, creating new config`));
265
258
  }
266
259
  }
267
260
  // Add/update convext server
268
261
  config.mcpServers.convext = serverConfig;
269
262
  // Ensure directory exists
270
- const configDir = (0, node_path_1.dirname)(configPath);
271
- if (!(0, node_fs_1.existsSync)(configDir)) {
272
- (0, node_fs_1.mkdirSync)(configDir, { recursive: true });
263
+ const configDir = dirname(configPath);
264
+ if (!existsSync(configDir)) {
265
+ mkdirSync(configDir, { recursive: true });
273
266
  }
274
267
  // Write config
275
- (0, node_fs_1.writeFileSync)(configPath, JSON.stringify(config, null, 2) + "\n");
276
- console.log(chalk_1.default.green(`\n✓ MCP configuration saved to ${configPath}`));
268
+ writeFileSync(configPath, JSON.stringify(config, null, 2) + "\n");
269
+ console.log(chalk.green(`\n✓ MCP configuration saved to ${configPath}`));
277
270
  // Step 6: Check/remind about CONVEXT_TOKEN
278
271
  if (!checkEnvironmentToken()) {
279
- console.log(chalk_1.default.yellow("\n⚠ Important: Set CONVEXT_TOKEN environment variable\n"));
272
+ console.log(chalk.yellow("\n⚠ Important: Set CONVEXT_TOKEN environment variable\n"));
280
273
  showTokenInstructions();
281
274
  }
282
275
  else {
283
- console.log(chalk_1.default.green("✓ CONVEXT_TOKEN is already set"));
276
+ console.log(chalk.green("✓ CONVEXT_TOKEN is already set"));
284
277
  }
285
278
  // Step 7: Show next steps
286
- console.log("\n" + chalk_1.default.bold("Next Steps:"));
287
- console.log(` 1. ${chalk_1.default.cyan("Restart " + editor.name)} for changes to take effect`);
288
- console.log(` 2. Ask the AI: ${chalk_1.default.gray('"What Convext rules apply to this project?"')}`);
279
+ console.log("\n" + chalk.bold("Next Steps:"));
280
+ console.log(` 1. ${chalk.cyan("Restart " + editor.name)} for changes to take effect`);
281
+ console.log(` 2. Ask the AI: ${chalk.gray('"What Convext rules apply to this project?"')}`);
289
282
  console.log(` 3. The AI will use the MCP server to fetch your rules\n`);
290
283
  if (scope === "project") {
291
- console.log(chalk_1.default.gray(` Tip: Commit ${editor.projectConfigName} to share with your team\n`));
284
+ console.log(chalk.gray(` Tip: Commit ${editor.projectConfigName} to share with your team\n`));
292
285
  }
293
286
  }
294
287
  function showTokenInstructions() {
295
- console.log(chalk_1.default.bold(" Set CONVEXT_TOKEN:"));
296
- console.log(chalk_1.default.gray(" macOS/Linux (add to ~/.zshrc or ~/.bashrc):"));
297
- console.log(chalk_1.default.cyan(' export CONVEXT_TOKEN="your_token_here"'));
288
+ console.log(chalk.bold(" Set CONVEXT_TOKEN:"));
289
+ console.log(chalk.gray(" macOS/Linux (add to ~/.zshrc or ~/.bashrc):"));
290
+ console.log(chalk.cyan(' export CONVEXT_TOKEN="your_token_here"'));
298
291
  console.log();
299
- console.log(chalk_1.default.gray(" Or for system-wide (macOS):"));
300
- console.log(chalk_1.default.cyan(" launchctl setenv CONVEXT_TOKEN your_token_here"));
292
+ console.log(chalk.gray(" Or for system-wide (macOS):"));
293
+ console.log(chalk.cyan(" launchctl setenv CONVEXT_TOKEN your_token_here"));
301
294
  console.log();
302
- console.log(chalk_1.default.gray(" Get your token from: ") + chalk_1.default.cyan((0, config_js_1.getApiUrl)() + "/settings/api_tokens"));
295
+ console.log(chalk.gray(" Get your token from: ") + chalk.cyan(getApiUrl() + "/settings/api_tokens"));
303
296
  }
304
- function mcpStatusCommand() {
305
- console.log(chalk_1.default.bold("\nMCP Configuration Status\n"));
297
+ export function mcpStatusCommand() {
298
+ console.log(chalk.bold("\nMCP Configuration Status\n"));
306
299
  // Check environment token
307
300
  const hasToken = checkEnvironmentToken();
308
301
  if (hasToken) {
309
- console.log(chalk_1.default.green("✓ CONVEXT_TOKEN is set"));
302
+ console.log(chalk.green("✓ CONVEXT_TOKEN is set"));
310
303
  }
311
304
  else {
312
- console.log(chalk_1.default.red("✗ CONVEXT_TOKEN not set"));
305
+ console.log(chalk.red("✗ CONVEXT_TOKEN not set"));
313
306
  }
314
307
  console.log();
315
308
  // Check each editor
316
309
  for (const editor of EDITORS) {
317
310
  const existing = findExistingConfig(editor);
318
311
  if (!existing) {
319
- console.log(chalk_1.default.gray(`○ ${editor.name}: not configured`));
312
+ console.log(chalk.gray(`○ ${editor.name}: not configured`));
320
313
  continue;
321
314
  }
322
315
  const status = isConvextConfigured(existing.config);
323
316
  if (status.configured) {
324
- console.log(chalk_1.default.green(`✓ ${editor.name}: configured (${status.method})`));
325
- console.log(chalk_1.default.gray(` ${existing.path}`));
317
+ console.log(chalk.green(`✓ ${editor.name}: configured (${status.method})`));
318
+ console.log(chalk.gray(` ${existing.path}`));
326
319
  }
327
320
  else if (status.needsUpdate) {
328
- console.log(chalk_1.default.yellow(`⚠ ${editor.name}: needs update`));
329
- console.log(chalk_1.default.gray(` ${existing.path}`));
321
+ console.log(chalk.yellow(`⚠ ${editor.name}: needs update`));
322
+ console.log(chalk.gray(` ${existing.path}`));
330
323
  }
331
324
  else {
332
- console.log(chalk_1.default.yellow(`○ ${editor.name}: MCP config exists, Convext not added`));
333
- console.log(chalk_1.default.gray(` ${existing.path}`));
325
+ console.log(chalk.yellow(`○ ${editor.name}: MCP config exists, Convext not added`));
326
+ console.log(chalk.gray(` ${existing.path}`));
334
327
  }
335
328
  }
336
329
  console.log();
337
- console.log(chalk_1.default.gray("Run 'convext mcp' to configure MCP for an editor"));
330
+ console.log(chalk.gray("Run 'convext mcp' to configure MCP for an editor"));
338
331
  }
339
332
  //# sourceMappingURL=mcp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"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"}