UNPKG

@mickdarling/dollhousemcp

Version:

DollhouseMCP - A Model Context Protocol (MCP) server that enables dynamic AI persona management from markdown files, allowing Claude and other compatible AI assistants to activate and switch between different behavioral personas.

107 lines 2.92 kB
/** * Configuration interface for the persona active indicator system. * Controls how persona information is displayed in AI responses. * * @interface IndicatorConfig * @example * ```typescript * const config: IndicatorConfig = { * enabled: true, * style: 'full', * showEmoji: true, * showName: true, * showVersion: true, * showAuthor: true, * showCategory: false, * separator: ' | ', * emoji: '🎭', * bracketStyle: 'square' * }; * ``` */ export interface IndicatorConfig { /** Whether to show the indicator at all */ enabled: boolean; /** Format style: 'full', 'minimal', 'compact', 'custom' */ style: 'full' | 'minimal' | 'compact' | 'custom'; /** * Custom format template (used when style is 'custom') * Available placeholders: {emoji}, {name}, {version}, {author}, {category} */ customFormat?: string; /** Whether to include specific elements */ showEmoji: boolean; showName: boolean; showVersion: boolean; showAuthor: boolean; showCategory: boolean; /** Separator between indicator and response */ separator: string; /** Emoji to use (defaults to 🎭) */ emoji: string; /** Bracket style: 'square', 'round', 'curly', 'angle', 'none' */ bracketStyle: 'square' | 'round' | 'curly' | 'angle' | 'none'; } export declare const DEFAULT_INDICATOR_CONFIG: IndicatorConfig; export declare const INDICATOR_STYLES: { full: string; minimal: string; compact: string; custom: string; }; export declare const BRACKETS: { square: { open: string; close: string; }; round: { open: string; close: string; }; curly: { open: string; close: string; }; angle: { open: string; close: string; }; none: { open: string; close: string; }; }; /** * Load indicator configuration from environment variables or use defaults. * Environment variables take precedence over default values. * * @returns {IndicatorConfig} The loaded configuration * @example * ```typescript * // Set environment variables before loading * process.env.DOLLHOUSE_INDICATOR_STYLE = 'minimal'; * process.env.DOLLHOUSE_INDICATOR_EMOJI = '🤖'; * * const config = loadIndicatorConfig(); * // config.style === 'minimal' * // config.emoji === '🤖' * ``` */ export declare function loadIndicatorConfig(): IndicatorConfig; /** * Validate custom format template for valid placeholders */ export declare function validateCustomFormat(format: string): { valid: boolean; error?: string; }; /** * Format the indicator based on configuration and persona metadata */ export declare function formatIndicator(config: IndicatorConfig, metadata: { name: string; version?: string; author?: string; category?: string; }): string; //# sourceMappingURL=indicator-config.d.ts.map