UNPKG

@toolprint/hypertool-mcp

Version:

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

77 lines • 4.17 kB
/** * Persona Content Pack System * * This module provides a complete system for managing tool configurations * through YAML-based personas. Personas allow users to quickly switch between * different development contexts and tool configurations. * * @fileoverview Main entry point for the persona system * @module persona */ // Enums export { PersonaErrorCode, PersonaEvents } from "./types.js"; // Error classes and utilities export { PersonaError, PersonaDiscoveryError, PersonaValidationError, PersonaActivationError, PersonaRuntimeError, // Factory functions createPersonaNotFoundError, createSchemaValidationError, createYamlParseError, createToolResolutionError, createToolsetNotFoundError, createPermissionError, createFileSystemError, createMcpConfigConflictError, createDuplicatePersonaNameError, createActivationFailedError, createArchiveExtractionError, // Utility functions isPersonaError, isRecoverableError, getErrorCode, formatErrorForUser, createErrorSummary, } from "./errors.js"; // Schema validation export { PersonaNameSchema, ToolIdSchema, PersonaToolsetSchema, PersonaMetadataSchema, PersonaConfigSchema, validatePersonaConfig, validatePersonaToolsets, createValidationErrorSummary, SUPPORTED_PERSONA_FILES, isSupportedPersonaFile, extractPersonaNameFromPath, } from "./schemas.js"; // File system scanner export { scanForPersonas, scanDirectory, isPersonaDirectory, isPersonaArchive, getStandardSearchPaths, validateSearchPath, hasPersonasInPaths, } from "./scanner.js"; // YAML Parser export { parsePersonaYAML, parsePersonaYAMLFile, parseMultiplePersonaFiles, parseResultToValidationResult, isPersonaConfigFile, getSupportedPersonaFiles, isValidYAMLSyntax, extractPersonaNameFromYAML, } from "./parser.js"; // Persona Discovery Engine export { PersonaDiscovery, defaultPersonaDiscovery, discoverPersonas, refreshPersonaDiscovery, hasAvailablePersonas, getDiscoveryCacheStats, clearDiscoveryCache, } from "./discovery.js"; // Persona Validator export { PersonaValidator, createPersonaValidator, validatePersona, validateMultiplePersonas, } from "./validator.js"; // Persona Loader export { PersonaLoader, createPersonaLoader, loadPersona, loadMultiplePersonas, discoverAndLoadAllPersonas, defaultPersonaLoader, } from "./loader.js"; // Persona Cache System export { PersonaCache, createPersonaCache, defaultPersonaCache, PersonaCacheFactory, EvictionReason, CacheEvents, } from "./cache.js"; // Persona Manager export { PersonaManager, createPersonaManager, defaultPersonaManager, } from "./manager.js"; // Toolset Bridge Integration export { PersonaToolsetBridge, createPersonaToolsetBridge, convertPersonaToolset, } from "./toolset-bridge.js"; // MCP Configuration Integration export { PersonaMcpIntegration, createPersonaMcpIntegration, personaHasMcpConfig, validatePersonaMcpConfigFile, } from "./mcp-integration.js"; // Archive Handling export { packPersona, unpackPersona, listArchiveContents, isHtpArchive, } from "./archive.js"; // Persona Installation export { installPersona, analyzeSource, checkPersonaExists, getStandardPersonasDir, listInstalledPersonas, uninstallPersona, SourceType, } from "./installer.js"; /** * Version information for the persona system */ export const PERSONA_SYSTEM_VERSION = "1.0.0"; /** * Default configuration values */ export const PERSONA_DEFAULTS = { /** Default cache TTL in milliseconds (5 minutes) */ CACHE_TTL: 5 * 60 * 1000, /** Default maximum cache size */ MAX_CACHE_SIZE: 100, /** Default maximum directory scan depth */ MAX_SCAN_DEPTH: 3, /** Standard persona search paths */ STANDARD_SEARCH_PATHS: [ "~/.toolprint/hypertool-mcp/personas", "./personas", ".", ], /** Supported persona file names */ SUPPORTED_CONFIG_FILES: ["persona.yaml", "persona.yml"], /** Supported archive extensions */ SUPPORTED_ARCHIVE_EXTENSIONS: [".htp"], /** Default ignore patterns for discovery */ DEFAULT_IGNORE_PATTERNS: [ "**/node_modules/**", "**/.git/**", "**/dist/**", "**/build/**", "**/.DS_Store", "**/Thumbs.db", ], }; //# sourceMappingURL=index.js.map