@contextvm/ctxcn 1.0.3 → 1.0.5

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 (35) hide show
  1. package/dist/index.js +8 -11
  2. package/dist/index.js.map +1 -1
  3. package/dist/src/commands/add.d.ts.map +1 -1
  4. package/dist/src/commands/add.js +10 -30
  5. package/dist/src/commands/add.js.map +1 -1
  6. package/dist/src/commands/help.d.ts.map +1 -1
  7. package/dist/src/commands/help.js +16 -8
  8. package/dist/src/commands/help.js.map +1 -1
  9. package/dist/src/commands/init.d.ts.map +1 -1
  10. package/dist/src/commands/init.js +8 -19
  11. package/dist/src/commands/init.js.map +1 -1
  12. package/dist/src/commands/update.d.ts.map +1 -1
  13. package/dist/src/commands/update.js +15 -30
  14. package/dist/src/commands/update.js.map +1 -1
  15. package/dist/src/utils/cvm-client.d.ts +9 -0
  16. package/dist/src/utils/cvm-client.d.ts.map +1 -0
  17. package/dist/src/utils/cvm-client.js +31 -0
  18. package/dist/src/utils/cvm-client.js.map +1 -0
  19. package/dist/src/utils/error-handler.d.ts +4 -0
  20. package/dist/src/utils/error-handler.d.ts.map +1 -0
  21. package/dist/src/utils/error-handler.js +14 -0
  22. package/dist/src/utils/error-handler.js.map +1 -0
  23. package/dist/src/utils/file-operations.d.ts +4 -0
  24. package/dist/src/utils/file-operations.d.ts.map +1 -0
  25. package/dist/src/utils/file-operations.js +25 -0
  26. package/dist/src/utils/file-operations.js.map +1 -0
  27. package/dist/src/utils/schema.d.ts +1 -1
  28. package/dist/src/utils/schema.d.ts.map +1 -1
  29. package/dist/src/utils/schema.js +5 -5
  30. package/dist/src/utils/schema.js.map +1 -1
  31. package/dist/src/utils.d.ts +4 -0
  32. package/dist/src/utils.d.ts.map +1 -1
  33. package/dist/src/utils.js +10 -5
  34. package/dist/src/utils.js.map +1 -1
  35. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -3,6 +3,7 @@ import { handleInit } from "./src/commands/init.js";
3
3
  import { handleAdd } from "./src/commands/add.js";
4
4
  import { handleUpdate } from "./src/commands/update.js";
5
5
  import { handleHelp } from "./src/commands/help.js";
6
+ import { handleValidationError, handleCliError, } from "./src/utils/error-handler.js";
6
7
  async function main() {
7
8
  try {
8
9
  const args = process.argv.slice(2);
@@ -11,36 +12,32 @@ async function main() {
11
12
  handleHelp();
12
13
  return;
13
14
  }
15
+ const cwd = process.cwd();
14
16
  switch (command) {
15
17
  case "init":
16
- await handleInit(process.cwd());
18
+ await handleInit(cwd);
17
19
  break;
18
20
  case "add":
19
21
  const pubkey = args[1];
20
22
  if (!pubkey) {
21
- console.error("Error: Missing pubkey for 'add' command.");
22
- console.error("Usage: ctxcn add <pubkey>");
23
- process.exit(1);
23
+ handleValidationError("Missing pubkey for 'add' command.\nUsage: ctxcn add <pubkey>");
24
24
  }
25
- await handleAdd(pubkey, process.cwd());
25
+ await handleAdd(pubkey, cwd);
26
26
  break;
27
27
  case "update":
28
28
  const updatePubkey = args[1];
29
- await handleUpdate(process.cwd(), updatePubkey);
29
+ await handleUpdate(cwd, updatePubkey);
30
30
  break;
31
31
  case "help":
32
32
  handleHelp();
33
33
  break;
34
34
  default:
35
- console.error(`Error: Unknown command '${command}'`);
36
- handleHelp();
37
- process.exit(1);
35
+ handleValidationError(`Unknown command '${command}'`);
38
36
  break;
39
37
  }
40
38
  }
41
39
  catch (error) {
42
- console.error("An unexpected error occurred:", error);
43
- process.exit(1);
40
+ handleCliError(error, "main process");
44
41
  }
45
42
  }
46
43
  main();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,KAAK,UAAU,IAAI;IACjB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAExB,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,UAAU,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,MAAM;gBACT,MAAM,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;gBAChC,MAAM;YACR,KAAK,KAAK;gBACR,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACvB,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;oBAC1D,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;oBAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;gBACD,MAAM,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;gBACvC,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC7B,MAAM,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;gBAChD,MAAM;YACR,KAAK,MAAM;gBACT,UAAU,EAAE,CAAC;gBACb,MAAM;YACR;gBACE,OAAO,CAAC,KAAK,CAAC,2BAA2B,OAAO,GAAG,CAAC,CAAC;gBACrD,UAAU,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAChB,MAAM;QACV,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;QACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EACL,qBAAqB,EACrB,cAAc,GACf,MAAM,8BAA8B,CAAC;AAEtC,KAAK,UAAU,IAAI;IACjB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAExB,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,UAAU,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAE1B,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,MAAM;gBACT,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;gBACtB,MAAM;YACR,KAAK,KAAK;gBACR,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACvB,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,qBAAqB,CACnB,8DAA8D,CAC/D,CAAC;gBACJ,CAAC;gBACD,MAAM,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC7B,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC7B,MAAM,YAAY,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;gBACtC,MAAM;YACR,KAAK,MAAM;gBACT,UAAU,EAAE,CAAC;gBACb,MAAM;YACR;gBACE,qBAAqB,CAAC,oBAAoB,OAAO,GAAG,CAAC,CAAC;gBACtD,MAAM;QACV,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,cAAc,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IACxC,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/commands/add.ts"],"names":[],"mappings":"AAaA,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,iBA2I1D"}
1
+ {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/commands/add.ts"],"names":[],"mappings":"AASA,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,iBAsH1D"}
@@ -1,23 +1,18 @@
1
- import { Client } from "@modelcontextprotocol/sdk/client";
2
- import { mkdir, writeFile, access } from "fs/promises";
3
1
  import path from "path";
4
2
  import { toPascalCase } from "../utils.js";
5
3
  import { loadConfig, saveConfig } from "../config.js";
6
4
  import { askQuestion, closeReadlineInterface } from "../utils/cli.js";
7
5
  import { generateClientCode } from "../utils/schema.js";
8
- import { ApplesauceRelayPool, NostrClientTransport, PrivateKeySigner, } from "@contextvm/sdk";
6
+ import { createCvmConnection } from "../utils/cvm-client.js";
7
+ import { fileExists, writeFileWithDir } from "../utils/file-operations.js";
8
+ import { handleConfigError, handleCliError } from "../utils/error-handler.js";
9
9
  export async function handleAdd(pubkey, cwd) {
10
10
  console.log("🔍 Checking for configuration file...");
11
11
  // Check if config file exists
12
12
  const configPath = path.join(cwd, "ctxcn.config.json");
13
- try {
14
- await access(configPath);
15
- }
16
- catch (error) {
17
- console.error("❌ Error: Configuration file 'ctxcn.config.json' not found.");
18
- console.error("Please run 'ctxcn init' first to create a configuration file.");
13
+ if (!(await fileExists(configPath))) {
19
14
  closeReadlineInterface();
20
- process.exit(1);
15
+ handleConfigError();
21
16
  }
22
17
  const config = await loadConfig(cwd);
23
18
  // Check if client is already added
@@ -32,20 +27,8 @@ export async function handleAdd(pubkey, cwd) {
32
27
  console.log("🔄 Updating existing client...");
33
28
  }
34
29
  console.log(`🔗 Connecting to server ${pubkey}...`);
35
- const client = new Client({
36
- name: `generator-client`,
37
- version: "1.0.0",
38
- });
39
- const transport = new NostrClientTransport({
40
- signer: new PrivateKeySigner(config.privateKey),
41
- relayHandler: new ApplesauceRelayPool(config.relays),
42
- serverPubkey: pubkey,
43
- });
44
30
  try {
45
- await client.connect(transport);
46
- const serverDetails = client.getServerVersion();
47
- const toolListResult = await client.listTools();
48
- await transport.close();
31
+ const { serverDetails, toolListResult } = await createCvmConnection(pubkey, config, "generator-client");
49
32
  let serverName = toPascalCase(serverDetails?.name || "UnknownServer");
50
33
  // Interactive confirmation
51
34
  console.log(`\n📋 Server Information:`);
@@ -77,7 +60,7 @@ export async function handleAdd(pubkey, cwd) {
77
60
  }
78
61
  const printOnly = choice === "2";
79
62
  const clientName = `${serverName}Client`;
80
- const clientCode = await generateClientCode(pubkey, serverDetails, toolListResult, serverName, config.privateKey);
63
+ const clientCode = await generateClientCode(pubkey, toolListResult, serverName, config.privateKey, config.relays);
81
64
  if (printOnly) {
82
65
  console.log("\n📄 Generated Client Code:");
83
66
  console.log("=".repeat(50));
@@ -85,10 +68,8 @@ export async function handleAdd(pubkey, cwd) {
85
68
  console.log("=".repeat(50));
86
69
  }
87
70
  else {
88
- const outputDir = path.join(cwd, config.source);
89
- await mkdir(outputDir, { recursive: true });
90
- const outputPath = path.join(outputDir, `${clientName}.ts`);
91
- await writeFile(outputPath, clientCode);
71
+ const outputPath = path.join(cwd, config.source, `${clientName}.ts`);
72
+ await writeFileWithDir(outputPath, clientCode);
92
73
  // Add the client to the config if it's not already there
93
74
  if (!config.addedClients) {
94
75
  config.addedClients = [];
@@ -103,9 +84,8 @@ export async function handleAdd(pubkey, cwd) {
103
84
  process.exit(0);
104
85
  }
105
86
  catch (error) {
106
- console.error("❌ Error connecting to server:", error);
107
87
  closeReadlineInterface();
108
- process.exit(1);
88
+ handleCliError(error, "connecting to server");
109
89
  }
110
90
  }
111
91
  //# sourceMappingURL=add.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/commands/add.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/commands/add.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../../src/commands/help.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,SAazB"}
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../../src/commands/help.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,SAqBzB"}
@@ -1,15 +1,23 @@
1
1
  export function handleHelp() {
2
2
  console.log(`
3
- Usage: npx @contextvm/ctxcn <command> [options]
3
+ 🚀 ctxcn - ContextVM Client Generator
4
4
 
5
- Commands:
6
- init Initialize a new project and create a ctxcn.config.json file.
7
- add Add a new CVM server client to your project.
8
- update Update existing CVM server clients with the latest tool definitions.
9
- help Display this help message.
5
+ Usage: npx @contextvm/ctxcn <command> [options]
10
6
 
11
- Options:
12
- --help Display help for a specific command.
7
+ Commands:
8
+ init Initialize a new project and create a ctxcn.config.json file
9
+ add Add a new CVM server client to your project
10
+ update Update existing CVM server clients with the latest tool definitions
11
+ help Display this help message
12
+
13
+ Options:
14
+ --help Display help for a specific command
15
+
16
+ Examples:
17
+ ctxcn init # Initialize project
18
+ ctxcn add <pubkey> # Add a CVM server client
19
+ ctxcn update # Update all clients
20
+ ctxcn update <pubkey> # Update specific client
13
21
  `);
14
22
  }
15
23
  //# sourceMappingURL=help.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"help.js","sourceRoot":"","sources":["../../../src/commands/help.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU;IACxB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;GAWX,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../../src/commands/help.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU;IACxB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;GAmBX,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"AAKA,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,iBAgF3C"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"AAOA,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,iBAsE3C"}
@@ -2,30 +2,24 @@ import { promises as fs } from "fs";
2
2
  import path from "path";
3
3
  import { DEFAULT_CONFIG } from "../config.js";
4
4
  import { askQuestion, closeReadlineInterface } from "../utils/cli.js";
5
+ import { ensureDirectoryExists, fileExists } from "../utils/file-operations.js";
6
+ import { handleValidationError } from "../utils/error-handler.js";
5
7
  export async function handleInit(cwd) {
6
8
  console.log("🚀 Initializing project for ctxcn...");
7
9
  console.log("\n🔍 Verifying project structure...");
8
10
  const packageJsonPath = path.join(cwd, "package.json");
9
- try {
10
- await fs.access(packageJsonPath);
11
- console.log("✔️ Project structure seems valid (package.json found).");
12
- }
13
- catch (error) {
14
- console.error("❌ Error: No package.json found. Please run this command in a valid project root directory.");
15
- process.exit(1);
11
+ if (!(await fileExists(packageJsonPath))) {
12
+ handleValidationError("No package.json found. Please run this command in a valid project root directory.");
16
13
  }
14
+ console.log("✔️ Project structure seems valid (package.json found).");
17
15
  const configPath = path.join(cwd, "ctxcn.config.json");
18
- try {
19
- await fs.access(configPath);
16
+ if (await fileExists(configPath)) {
20
17
  const overwrite = await askQuestion("A `ctxcn.config.json` file already exists. Do you want to overwrite it?", "n");
21
18
  if (overwrite.toLowerCase() !== "y") {
22
19
  console.log("Aborting initialization. Your existing configuration is safe.");
23
20
  process.exit(0);
24
21
  }
25
22
  }
26
- catch (error) {
27
- // Config file doesn't exist, so we can proceed.
28
- }
29
23
  console.log("\n⚙️ Please provide your configuration details:");
30
24
  const source = await askQuestion("Enter the source directory for generated clients", DEFAULT_CONFIG.source);
31
25
  const relaysStr = await askQuestion("Enter the relays to connect to (comma-separated)", DEFAULT_CONFIG.relays.join(", "));
@@ -38,13 +32,8 @@ export async function handleInit(cwd) {
38
32
  await fs.writeFile(configPath, JSON.stringify(config, null, 2));
39
33
  console.log("\n✔️ Configuration file `ctxcn.config.json` created successfully.");
40
34
  const sourceDir = path.join(cwd, config.source);
41
- try {
42
- await fs.access(sourceDir);
43
- }
44
- catch (error) {
45
- await fs.mkdir(sourceDir, { recursive: true });
46
- console.log(`✔️ Source directory \`${config.source}\` created.`);
47
- }
35
+ await ensureDirectoryExists(sourceDir);
36
+ console.log(`✔️ Source directory \`${config.source}\` created.`);
48
37
  console.log("\n📦 Checking for required dependencies...");
49
38
  const packageJsonContent = await fs.readFile(packageJsonPath, "utf-8");
50
39
  const packageJson = JSON.parse(packageJsonContent);
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/commands/update.ts"],"names":[],"mappings":"AA6BA,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,iBA8E9D"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/commands/update.ts"],"names":[],"mappings":"AA8BA,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,iBAsE9D"}
@@ -1,14 +1,18 @@
1
- import { Client } from "@modelcontextprotocol/sdk/client";
2
- import { mkdir, writeFile, access, readdir } from "fs/promises";
1
+ import { readdir } from "fs/promises";
3
2
  import path from "path";
4
3
  import { toPascalCase } from "../utils.js";
5
4
  import { loadConfig } from "../config.js";
6
5
  import { askQuestion, askYesNo, closeReadlineInterface } from "../utils/cli.js";
7
6
  import { generateClientCode } from "../utils/schema.js";
8
- import { ApplesauceRelayPool, NostrClientTransport, PrivateKeySigner, } from "@contextvm/sdk";
7
+ import { createCvmConnection } from "../utils/cvm-client.js";
8
+ import { fileExists, writeFileWithDir } from "../utils/file-operations.js";
9
+ import { handleConfigError, handleCliError } from "../utils/error-handler.js";
9
10
  async function findExistingClientFile(cwd, sourceDir) {
11
+ const outputDir = path.join(cwd, sourceDir);
12
+ if (!(await fileExists(outputDir))) {
13
+ return null;
14
+ }
10
15
  try {
11
- const outputDir = path.join(cwd, sourceDir);
12
16
  const existingFiles = await readdir(outputDir);
13
17
  const existingClientFile = existingFiles.find((file) => file.endsWith(".ts") && file.includes("Client"));
14
18
  return existingClientFile || null;
@@ -21,14 +25,9 @@ export async function handleUpdate(cwd, pubkey) {
21
25
  console.log("🔍 Checking for configuration file...");
22
26
  // Check if config file exists
23
27
  const configPath = path.join(cwd, "ctxcn.config.json");
24
- try {
25
- await access(configPath);
26
- }
27
- catch (error) {
28
- console.error("❌ Error: Configuration file 'ctxcn.config.json' not found.");
29
- console.error("Please run 'ctxcn init' first to create a configuration file.");
28
+ if (!(await fileExists(configPath))) {
30
29
  closeReadlineInterface();
31
- process.exit(1);
30
+ handleConfigError();
32
31
  }
33
32
  const config = await loadConfig(cwd);
34
33
  if (!config.addedClients || config.addedClients.length === 0) {
@@ -82,20 +81,8 @@ export async function handleUpdate(cwd, pubkey) {
82
81
  }
83
82
  async function updateSingleClient(cwd, config, pubkey) {
84
83
  console.log(`\n🔄 Updating client ${pubkey}...`);
85
- const client = new Client({
86
- name: `update-client`,
87
- version: "1.0.0",
88
- });
89
- const transport = new NostrClientTransport({
90
- signer: new PrivateKeySigner(config.privateKey),
91
- relayHandler: new ApplesauceRelayPool(config.relays),
92
- serverPubkey: pubkey,
93
- });
94
84
  try {
95
- await client.connect(transport);
96
- const serverDetails = client.getServerVersion();
97
- const toolListResult = await client.listTools();
98
- await transport.close();
85
+ const { serverDetails, toolListResult } = await createCvmConnection(pubkey, config, "update-client");
99
86
  const newServerName = toPascalCase(serverDetails?.name || "UnknownServer");
100
87
  // Check if there's an existing client file to determine the old name
101
88
  const existingClientFile = await findExistingClientFile(cwd, config.source);
@@ -130,16 +117,14 @@ async function updateSingleClient(cwd, config, pubkey) {
130
117
  console.log("❌ Update cancelled.");
131
118
  return;
132
119
  }
133
- const clientCode = await generateClientCode(pubkey, serverDetails, toolListResult, serverName, config.privateKey);
120
+ const clientCode = await generateClientCode(pubkey, toolListResult, serverName, config.privateKey, config.relays);
134
121
  const clientName = `${serverName}Client`;
135
- const outputDir = path.join(cwd, config.source);
136
- await mkdir(outputDir, { recursive: true });
137
- const outputPath = path.join(outputDir, `${clientName}.ts`);
138
- await writeFile(outputPath, clientCode);
122
+ const outputPath = path.join(cwd, config.source, `${clientName}.ts`);
123
+ await writeFileWithDir(outputPath, clientCode);
139
124
  console.log(`✅ Updated client for ${serverName} at ${outputPath}`);
140
125
  }
141
126
  catch (error) {
142
- console.error(`❌ Error updating client ${pubkey}:`, error);
127
+ handleCliError(error, `updating client ${pubkey}`);
143
128
  }
144
129
  }
145
130
  //# sourceMappingURL=update.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE9E,KAAK,UAAU,sBAAsB,CACnC,GAAW,EACX,SAAiB;IAEjB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC5C,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,kBAAkB,GAAG,aAAa,CAAC,IAAI,CAC3C,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAClE,CAAC;QACF,OAAO,kBAAkB,IAAI,IAAI,CAAC;IACpC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAW,EAAE,MAAe;IAC7D,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;IAErD,8BAA8B;IAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IACvD,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;QACpC,sBAAsB,EAAE,CAAC;QACzB,iBAAiB,EAAE,CAAC;IACtB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;IAErC,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7D,OAAO,CAAC,GAAG,CACT,8EAA8E,CAC/E,CAAC;QACF,sBAAsB,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,YAAoB,CAAC;IAEzB,IAAI,MAAM,EAAE,CAAC;QACX,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1C,OAAO,CAAC,GAAG,CACT,wBAAwB,MAAM,uCAAuC,CACtE,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YAC9B,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;gBACvC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;YACH,sBAAsB,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,YAAY,GAAG,MAAM,CAAC;IACxB,CAAC;SAAM,CAAC;QACN,iDAAiD;QACjD,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACnC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;YACvC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B,mEAAmE,EACnE,GAAG,CACJ,CAAC;QAEF,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,EAAE,CAAC;YACnC,qBAAqB;YACrB,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;YAC1C,KAAK,MAAM,YAAY,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;gBAC/C,MAAM,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;YACtD,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;YACnD,sBAAsB,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACnC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;gBACrD,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;gBACtC,sBAAsB,EAAE,CAAC;gBACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAE,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,MAAM,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IACpD,sBAAsB,EAAE,CAAC;IACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,GAAW,EAAE,MAAW,EAAE,MAAc;IACxE,OAAO,CAAC,GAAG,CAAC,wBAAwB,MAAM,KAAK,CAAC,CAAC;IAEjD,IAAI,CAAC;QACH,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,mBAAmB,CACjE,MAAM,EACN,MAAM,EACN,eAAe,CAChB,CAAC;QAEF,MAAM,aAAa,GAAG,YAAY,CAAC,aAAa,EAAE,IAAI,IAAI,eAAe,CAAC,CAAC;QAE3E,qEAAqE;QACrE,MAAM,kBAAkB,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAE5E,IAAI,aAAa,GAAkB,IAAI,CAAC;QACxC,IAAI,kBAAkB,EAAE,CAAC;YACvB,iDAAiD;YACjD,aAAa,GAAG,kBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,UAAU,GAAG,aAAa,CAAC;QAE/B,mCAAmC;QACnC,IAAI,aAAa,IAAI,aAAa,KAAK,aAAa,EAAE,CAAC;YACrD,OAAO,CAAC,GAAG,CACT,sCAAsC,aAAa,SAAS,aAAa,IAAI,CAC9E,CAAC;YACF,MAAM,UAAU,GAAG,MAAM,QAAQ,CAC/B,yCAAyC,EACzC,KAAK,CACN,CAAC;YAEF,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,UAAU,GAAG,aAAa,CAAC;gBAC3B,OAAO,CAAC,GAAG,CAAC,gCAAgC,UAAU,EAAE,CAAC,CAAC;YAC5D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,8BAA8B,UAAU,EAAE,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,YAAY,aAAa,EAAE,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,eAAe,aAAa,EAAE,OAAO,IAAI,SAAS,EAAE,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,mBAAmB,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAE9D,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACrC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAS,EAAE,KAAa,EAAE,EAAE;YACxD,OAAO,CAAC,GAAG,CACT,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,WAAW,IAAI,gBAAgB,EAAE,CACzE,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,oCAAoC,EAAE,IAAI,CAAC,CAAC;QAE3E,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YACnC,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,kBAAkB,CACzC,MAAM,EACN,cAAc,EACd,UAAU,EACV,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,MAAM,CACd,CAAC;QACF,MAAM,UAAU,GAAG,GAAG,UAAU,QAAQ,CAAC;QAEzC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,UAAU,KAAK,CAAC,CAAC;QACrE,MAAM,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAE/C,OAAO,CAAC,GAAG,CAAC,wBAAwB,UAAU,OAAO,UAAU,EAAE,CAAC,CAAC;IACrE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,cAAc,CAAC,KAAK,EAAE,mBAAmB,MAAM,EAAE,CAAC,CAAC;IACrD,CAAC;AACH,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { Client } from "@modelcontextprotocol/sdk/client";
2
+ import type { Config } from "../config.js";
3
+ export interface CvmConnectionResult {
4
+ client: Client;
5
+ serverDetails: any;
6
+ toolListResult: any;
7
+ }
8
+ export declare function createCvmConnection(pubkey: string, config: Config, clientName?: string): Promise<CvmConnectionResult>;
9
+ //# sourceMappingURL=cvm-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cvm-client.d.ts","sourceRoot":"","sources":["../../../src/utils/cvm-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAM1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,GAAG,CAAC;IACnB,cAAc,EAAE,GAAG,CAAC;CACrB;AAED,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,UAAU,GAAE,MAAuB,GAClC,OAAO,CAAC,mBAAmB,CAAC,CA6B9B"}
@@ -0,0 +1,31 @@
1
+ import { Client } from "@modelcontextprotocol/sdk/client";
2
+ import { ApplesauceRelayPool, NostrClientTransport, PrivateKeySigner, } from "@contextvm/sdk";
3
+ export async function createCvmConnection(pubkey, config, clientName = "ctxcn-client") {
4
+ const client = new Client({
5
+ name: clientName,
6
+ version: "1.0.0",
7
+ });
8
+ const transport = new NostrClientTransport({
9
+ signer: config.privateKey
10
+ ? new PrivateKeySigner(config.privateKey)
11
+ : new PrivateKeySigner(""),
12
+ relayHandler: new ApplesauceRelayPool(config.relays),
13
+ serverPubkey: pubkey,
14
+ });
15
+ try {
16
+ await client.connect(transport);
17
+ const serverDetails = client.getServerVersion();
18
+ const toolListResult = await client.listTools();
19
+ await transport.close();
20
+ return {
21
+ client,
22
+ serverDetails,
23
+ toolListResult,
24
+ };
25
+ }
26
+ catch (error) {
27
+ await transport.close().catch(() => { }); // Ignore close errors
28
+ throw error;
29
+ }
30
+ }
31
+ //# sourceMappingURL=cvm-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cvm-client.js","sourceRoot":"","sources":["../../../src/utils/cvm-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AASxB,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,MAAc,EACd,MAAc,EACd,aAAqB,cAAc;IAEnC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;QACxB,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,OAAO;KACjB,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC;QACzC,MAAM,EAAE,MAAM,CAAC,UAAU;YACvB,CAAC,CAAC,IAAI,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC;YACzC,CAAC,CAAC,IAAI,gBAAgB,CAAC,EAAE,CAAC;QAC5B,YAAY,EAAE,IAAI,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC;QACpD,YAAY,EAAE,MAAM;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChC,MAAM,aAAa,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAChD,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;QAChD,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAExB,OAAO;YACL,MAAM;YACN,aAAa;YACb,cAAc;SACf,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,sBAAsB;QAC/D,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare function handleCliError(error: unknown, context: string): void;
2
+ export declare function handleConfigError(): void;
3
+ export declare function handleValidationError(message: string): void;
4
+ //# sourceMappingURL=error-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-handler.d.ts","sourceRoot":"","sources":["../../../src/utils/error-handler.ts"],"names":[],"mappings":"AAAA,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAGpE;AAED,wBAAgB,iBAAiB,IAAI,IAAI,CAMxC;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAG3D"}
@@ -0,0 +1,14 @@
1
+ export function handleCliError(error, context) {
2
+ console.error(`❌ Error in ${context}:`, error);
3
+ process.exit(1);
4
+ }
5
+ export function handleConfigError() {
6
+ console.error("❌ Error: Configuration file 'ctxcn.config.json' not found.");
7
+ console.error("Please run 'ctxcn init' first to create a configuration file.");
8
+ process.exit(1);
9
+ }
10
+ export function handleValidationError(message) {
11
+ console.error(`❌ Validation Error: ${message}`);
12
+ process.exit(1);
13
+ }
14
+ //# sourceMappingURL=error-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-handler.js","sourceRoot":"","sources":["../../../src/utils/error-handler.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,cAAc,CAAC,KAAc,EAAE,OAAe;IAC5D,OAAO,CAAC,KAAK,CAAC,cAAc,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC;IAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAC5E,OAAO,CAAC,KAAK,CACX,+DAA+D,CAChE,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,OAAO,CAAC,KAAK,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;IAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare function ensureDirectoryExists(dirPath: string): Promise<void>;
2
+ export declare function fileExists(filePath: string): Promise<boolean>;
3
+ export declare function writeFileWithDir(filePath: string, content: string): Promise<void>;
4
+ //# sourceMappingURL=file-operations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-operations.d.ts","sourceRoot":"","sources":["../../../src/utils/file-operations.ts"],"names":[],"mappings":"AAGA,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAM1E;AAED,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAOnE;AAED,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAIf"}
@@ -0,0 +1,25 @@
1
+ import { promises as fs } from "fs";
2
+ import path from "path";
3
+ export async function ensureDirectoryExists(dirPath) {
4
+ try {
5
+ await fs.access(dirPath);
6
+ }
7
+ catch (error) {
8
+ await fs.mkdir(dirPath, { recursive: true });
9
+ }
10
+ }
11
+ export async function fileExists(filePath) {
12
+ try {
13
+ await fs.access(filePath);
14
+ return true;
15
+ }
16
+ catch (error) {
17
+ return false;
18
+ }
19
+ }
20
+ export async function writeFileWithDir(filePath, content) {
21
+ const dir = path.dirname(filePath);
22
+ await ensureDirectoryExists(dir);
23
+ await fs.writeFile(filePath, content, "utf-8");
24
+ }
25
+ //# sourceMappingURL=file-operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-operations.js","sourceRoot":"","sources":["../../../src/utils/file-operations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAAe;IACzD,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,QAAgB;IAC/C,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAAgB,EAChB,OAAe;IAEf,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,qBAAqB,CAAC,GAAG,CAAC,CAAC;IACjC,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACjD,CAAC"}
@@ -7,5 +7,5 @@ export declare function extractSchemaProperties(schema: JSONSchema): Array<{
7
7
  required: boolean;
8
8
  }>;
9
9
  export declare function generateTypeFromSchema(schema: JSONSchema | boolean, typeName: string): Promise<string>;
10
- export declare function generateClientCode(pubkey: string, serverDetails: any, toolListResult: any, serverName: string, privateKey?: string): Promise<string>;
10
+ export declare function generateClientCode(pubkey: string, toolListResult: any, serverName: string, privateKey?: string, relays?: string[]): Promise<string>;
11
11
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/utils/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAI5D,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAuChE;AAED,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAiBhE;AAoBD,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,UAAU,GACjB,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAAC,CAmB1D;AAeD,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,UAAU,GAAG,OAAO,EAC5B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAejB;AAED,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,GAAG,EAClB,cAAc,EAAE,GAAG,EACnB,UAAU,EAAE,MAAM,EAClB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CA2BjB"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/utils/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAI5D,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAuChE;AAED,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAiBhE;AAoBD,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,UAAU,GACjB,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAAC,CAmB1D;AAeD,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,UAAU,GAAG,OAAO,EAC5B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAejB;AAED,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,GAAG,EACnB,UAAU,EAAE,MAAM,EAClB,UAAU,CAAC,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,MAAM,CAAC,CA4BjB"}
@@ -108,7 +108,7 @@ export async function generateTypeFromSchema(schema, typeName) {
108
108
  additionalProperties: false,
109
109
  });
110
110
  }
111
- export async function generateClientCode(pubkey, serverDetails, toolListResult, serverName, privateKey) {
111
+ export async function generateClientCode(pubkey, toolListResult, serverName, privateKey, relays) {
112
112
  const classMethods = [];
113
113
  const serverTypeMethods = [];
114
114
  for (const tool of toolListResult.tools) {
@@ -119,7 +119,7 @@ export async function generateClientCode(pubkey, serverDetails, toolListResult,
119
119
  const clientName = `${serverName}Client`;
120
120
  const serverType = generateServerType(serverName, serverTypeMethods);
121
121
  const genericCallMethod = generateGenericCallMethod();
122
- return assembleClientCode(clientName, pubkey, serverType, genericCallMethod, classMethods, serverName, privateKey);
122
+ return assembleClientCode(clientName, pubkey, serverType, genericCallMethod, classMethods, serverName, privateKey, relays);
123
123
  }
124
124
  async function generateToolMethods(tool, serverName) {
125
125
  const toolName = tool.name;
@@ -273,7 +273,7 @@ function generateGenericCallMethod() {
273
273
  return result.structuredContent as T;
274
274
  }`;
275
275
  }
276
- function assembleClientCode(clientName, pubkey, serverType, genericCallMethod, classMethods, serverName, privateKey) {
276
+ function assembleClientCode(clientName, pubkey, serverType, genericCallMethod, classMethods, serverName, privateKey, relays) {
277
277
  return `import { Client } from "@modelcontextprotocol/sdk/client";
278
278
  import type { Transport } from "@modelcontextprotocol/sdk/shared/transport.js";
279
279
  import {
@@ -300,8 +300,8 @@ export class ${clientName} implements ${serverName} {
300
300
 
301
301
  const {
302
302
  privateKey,
303
- relays = ["wss://relay.contextvm.org"],
304
- signer = new PrivateKeySigner(privateKey || process.env.CTXCN_PRIVATE_KEY${privateKey ? ` || "${privateKey}"` : ""}),
303
+ relays = ${relays ? JSON.stringify(relays) : `["wss://relay.contextvm.org"]`},
304
+ signer = new PrivateKeySigner(privateKey || ""}),
305
305
  relayHandler = new ApplesauceRelayPool(relays),
306
306
  ...rest
307
307
  } = options;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/utils/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/utils/schema.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,6 @@
1
+ /**
2
+ * Convert a string to PascalCase
3
+ * Handles various separators: spaces, hyphens, underscores, and forward slashes
4
+ */
1
5
  export declare const toPascalCase: (s: string) => string;
2
6
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,YAAY,GAAI,GAAG,MAAM,KAAG,MAWxC,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,GAAG,MAAM,KAAG,MAcxC,CAAC"}
package/dist/src/utils.js CHANGED
@@ -1,12 +1,17 @@
1
- // Helper function to convert a string to PascalCase
1
+ /**
2
+ * Convert a string to PascalCase
3
+ * Handles various separators: spaces, hyphens, underscores, and forward slashes
4
+ */
2
5
  export const toPascalCase = (s) => {
3
- if (!s) {
6
+ if (!s || typeof s !== "string") {
4
7
  return "";
5
8
  }
6
- // First replace forward slashes with hyphens to handle names like 'example-servers/everything'
9
+ // Replace forward slashes with hyphens to handle names like 'example-servers/everything'
7
10
  const normalized = s.replace(/\//g, "-");
8
- // Convert to camelCase first, then capitalize the first letter.
9
- const camelCased = normalized.replace(/([-_ ]\w)/g, (g) => g ? g.charAt(1).toUpperCase() : "");
11
+ // Convert to camelCase first, then capitalize the first letter
12
+ const camelCased = normalized
13
+ .toLowerCase()
14
+ .replace(/([-_ ]\w)/g, (g) => (g ? g.charAt(1).toUpperCase() : ""));
10
15
  return camelCased.charAt(0).toUpperCase() + camelCased.slice(1);
11
16
  };
12
17
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAS,EAAU,EAAE;IAChD,IAAI,CAAC,CAAC,EAAE,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,+FAA+F;IAC/F,MAAM,UAAU,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACzC,gEAAgE;IAChE,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE,CACxD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CACnC,CAAC;IACF,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAClE,CAAC,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAS,EAAU,EAAE;IAChD,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,yFAAyF;IACzF,MAAM,UAAU,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAEzC,+DAA+D;IAC/D,MAAM,UAAU,GAAG,UAAU;SAC1B,WAAW,EAAE;SACb,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAEtE,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAClE,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@contextvm/ctxcn",
3
- "version": "1.0.3",
3
+ "version": "1.0.5",
4
4
  "description": "A command-line utility inspired by shadcn that streamlines the integration of ContextVM (CVM) servers into your TypeScript projects",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",