UNPKG

@toolprint/hypertool-mcp

Version:

HyperTool MCP proxy server for routing requests between clients and multiple underlying MCP servers

43 lines • 1.91 kB
/** * Enable Extension Command */ import { Command } from "commander"; import { ExtensionManager } from "../../extensions/index.js"; export function extensionsEnable() { return new Command("enable") .description("Enable an extension") .argument("<extension>", "Extension name") .option("--config <path>", "Path to configuration file") .option("--extensions-dir <path>", "Path to extensions directory") .action(async (extensionName, options) => { try { const extensionManager = new ExtensionManager(options.config, options.extensionsDir); await extensionManager.initialize(); const ext = extensionManager.getExtensionConfig(extensionName); if (!ext) { console.error(`Extension '${extensionName}' not found.`); process.exit(1); } if (ext.enabled) { console.log(`Extension '${extensionName}' is already enabled.`); return; } await extensionManager.enableExtension(extensionName); console.log(`✓ Extension '${extensionName}' enabled`); // Check validation status const updatedExt = extensionManager.getExtensionConfig(extensionName); if (updatedExt && !updatedExt.validationResult.isValid) { console.log(); console.warn(`⚠ Extension has configuration issues and will not run:`); updatedExt.validationResult.errors.forEach((error) => console.warn(` - ${error}`)); console.log(); console.log(`Run 'hypertool extensions config ${extensionName} --suggest' for help.`); } } catch (error) { console.error(`Failed to enable extension: ${error.message}`); process.exit(1); } }); } //# sourceMappingURL=enable.js.map