windsurf-memory-optimization
Version:
Memory optimization tools for Windsurf AI
101 lines • 3.88 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.main = void 0;
const memory_manager_1 = require("./memory-manager");
const snapshot_manager_1 = require("./snapshot-manager");
const optimization_manager_1 = require("./optimization-manager");
async function main() {
try {
// Khởi tạo các manager
const memoryManager = new memory_manager_1.MemoryManager();
const snapshotManager = new snapshot_manager_1.SnapshotManager();
const optimizationManager = new optimization_manager_1.OptimizationManager();
// Khởi tạo tất cả
await Promise.all([
memoryManager.init(),
snapshotManager.init(),
optimizationManager.init()
]);
const args = process.argv.slice(2);
const command = args[0];
switch (command) {
case 'scan':
if (args.length < 2) {
console.error('Usage: windsurf-memory scan <directory>');
process.exit(1);
}
const directory = args[1];
try {
const pins = await memoryManager.scanDirectory(directory);
console.log(`Found ${pins.length} memory pins`);
}
catch (error) {
console.error('Error scanning directory:', error);
process.exit(1);
}
break;
case 'list':
try {
const pinsList = await memoryManager.listPins();
console.log(`Found ${pinsList.length} memory pins`);
}
catch (error) {
console.error('Error listing pins:', error);
process.exit(1);
}
break;
case 'snapshot':
if (args.length < 3) {
console.error('Usage: windsurf-memory snapshot create|restore <tag>');
process.exit(1);
}
const action = args[1];
const tag = args[2];
try {
if (action === 'create') {
const filename = await snapshotManager.createSnapshot(tag, []);
console.log(`Created snapshot: ${filename}`);
}
else if (action === 'restore') {
await snapshotManager.restoreSnapshot(tag);
console.log(`Restored snapshot: ${tag}`);
}
else {
console.error('Invalid action. Use create or restore');
process.exit(1);
}
}
catch (error) {
console.error('Error managing snapshot:', error);
process.exit(1);
}
break;
case 'optimize':
try {
await optimizationManager.optimize();
console.log('Optimization completed');
}
catch (error) {
console.error('Error optimizing:', error);
process.exit(1);
}
break;
default:
console.error('Unknown command. Available commands: scan, list, snapshot, optimize');
process.exit(1);
}
}
catch (error) {
console.error('Error:', error);
process.exit(1);
}
}
exports.main = main;
// Chỉ chạy main nếu file này được chạy trực tiếp, không phải qua import
if (require.main === module) {
main().catch(error => {
console.error('Error:', error.message);
process.exit(1);
});
}
//# sourceMappingURL=cli.js.map