@andrebuzeli/advanced-memory-markdown-mcp
Version:
Advanced Memory Bank MCP v3.1.5 - Sistema avançado de gerenciamento de memória com isolamento de projetos por IDE, sincronização sob demanda, backup a cada 30min, apenas arquivos .md principais sincronizados, pasta reasoning temporária com limpeza automát
116 lines • 2.84 kB
TypeScript
/**
* Backup Scheduler - Sistema de backup automático
* Realiza backups a cada 30min no formato MEMORY_BANK_BACKUP_ROOT/projectName/Mes-Ano/projectName_dia_hora-min/
*/
export interface BackupConfig {
projectName: string;
projectPath: string;
memoryBankRoot: string;
backupRoot: string;
intervalMinutes: number;
maxBackupsPerMonth: number;
enableAutoCleanup: boolean;
}
export interface BackupInfo {
timestamp: number;
backupPath: string;
filesCount: number;
sizeBytes: number;
duration: number;
success: boolean;
error?: string;
}
export declare class BackupScheduler {
private config;
private timer;
private isRunning;
private lastBackup;
private backupHistory;
constructor(config: BackupConfig);
/**
* Inicia o agendamento de backups
*/
start(): void;
/**
* Para o agendamento de backups
*/
stop(): void;
/**
* Força um backup manual
*/
forceBackup(): Promise<BackupInfo>;
/**
* Realiza o backup
*/
private performBackup;
/**
* Gera o caminho do backup seguindo o formato especificado
* MEMORY_BANK_BACKUP_ROOT/projectName/Mes-Ano/projectName_dia_hora-min/
*/
private generateBackupPath;
/**
* Copia os arquivos de memória para o backup
*/
private copyMemoryFiles;
/**
* Copia diretório e retorna estatísticas
*/
private copyDirectoryWithStats;
/**
* Limpa backups antigos
*/
private cleanupOldBackups;
/**
* Limpa backups de um mês específico
*/
private cleanupMonthBackups;
/**
* Extrai timestamp do nome do backup
*/
private parseBackupTimestamp;
/**
* Remove diretório recursivamente
*/
private deleteDirectory;
/**
* Verifica se caminho existe
*/
private pathExists;
/**
* Formata bytes em formato legível
*/
private formatBytes;
/**
* Obtém informações do último backup
*/
getLastBackup(): BackupInfo | null;
/**
* Obtém histórico de backups
*/
getBackupHistory(): BackupInfo[];
/**
* Obtém estatísticas do scheduler
*/
getStats(): {
isRunning: boolean;
intervalMinutes: number;
lastBackup: BackupInfo | null;
totalBackups: number;
successfulBackups: number;
failedBackups: number;
};
/**
* Lista backups existentes
*/
listExistingBackups(): Promise<Array<{
month: string;
backups: Array<{
name: string;
path: string;
timestamp: number;
size: number;
}>;
}>>;
}
export declare function createBackupScheduler(config: BackupConfig): BackupScheduler;
//# sourceMappingURL=backup-scheduler.d.ts.map