UNPKG

@z-test/memory-bank-mcp

Version:
66 lines (65 loc) 2.02 kB
/** * Type definitions for rules in Memory Bank MCP * * This file contains interfaces related to clinerules and mode management. */ /** * Interface for Memory Bank configuration in clinerules */ export interface MemoryBankConfig { /** Files to read from the Memory Bank */ files_to_read?: string[]; /** Files to update in the Memory Bank */ files_to_update?: string[]; /** Custom templates for Memory Bank files */ templates?: Record<string, string>; /** Additional configuration options */ options?: { /** Whether to auto-initialize the Memory Bank if not found */ auto_initialize?: boolean; /** Whether to create missing files */ create_missing_files?: boolean; /** Whether to backup before updates */ backup_before_update?: boolean; }; } /** * Interface to represent the basic structure of rules */ export interface ClineruleBase { /** Mode identifier (architect, ask, code, debug, test) */ mode: string; /** Instructions for the mode */ instructions: { /** General instructions for the mode */ general: string[]; /** Update Memory Bank (UMB) configuration */ umb?: { /** Mode that triggers UMB */ trigger: string; /** Instructions for UMB */ instructions: string[]; /** Whether to override file restrictions */ override_file_restrictions: boolean; }; /** Memory Bank configuration */ memory_bank?: MemoryBankConfig; }; /** Mode triggers configuration */ mode_triggers?: Record<string, Array<{ condition: string; }>>; } /** * Interface for mode state */ export interface ModeState { /** Name of the current mode */ name: string; /** Status of the Memory Bank */ memoryBankStatus: 'ACTIVE' | 'INACTIVE'; /** Whether UMB mode is active */ isUmbActive?: boolean; /** Rules for the current mode */ rules?: ClineruleBase | null; }