acs-framework-cli
Version:
🚀 CLI inteligente para configurar automáticamente el Augmented Context Standard (ACS) Framework. Context-as-Code que convierte tu conocimiento en un activo versionado.
55 lines (44 loc) • 2.44 kB
JavaScript
const chalk = require('chalk');
const path = require('path');
// Función para mostrar mensaje de migración y redirigir a acs-hub
function showMigrationMessage(commandName, commandDescription) {
console.log(chalk.cyan.bold('\n🚀 ACS Framework - Experiencia Mejorada'));
console.log(chalk.gray('═══════════════════════════════════════════'));
console.log(chalk.yellow(`\n⚡ ¡Llevamos la experiencia al siguiente nivel!`));
console.log(chalk.white(`\nEl comando ${chalk.cyan(commandName)} ahora está integrado en nuestro hub central.`));
console.log(chalk.gray(`${commandDescription}`));
console.log(chalk.green.bold('\n🎯 Ahora solo necesitas recordar un comando:'));
console.log(chalk.cyan.bold(' acs-hub'));
console.log(chalk.gray('\n💡 Beneficios del hub central:'));
console.log(chalk.gray(' • Una sola interfaz para todas las funciones'));
console.log(chalk.gray(' • Menús contextuales inteligentes'));
console.log(chalk.gray(' • No más comandos que recordar'));
console.log(chalk.gray(' • Experiencia fluida y guiada'));
console.log(chalk.yellow.bold('\n👆 Ejecuta "acs-hub" y encontrarás esta función en el menú'));
console.log(chalk.gray('═══════════════════════════════════════════\n'));
}
// Detectar qué comando se está ejecutando
const commandName = path.basename(process.argv[1], '.js');
const commandMappings = {
'acs-upgrade': 'Migración segura de plantillas ACS',
'acs-master': 'Hub central inteligente (ahora llamado acs-hub)',
'acs-init': 'Configuración inicial de ACS Framework',
'acs-validate': 'Validación de documentación ACS',
'acs-agent': 'Agente IA para actualizaciones automáticas',
'acs-facts': 'Extractor de información del proyecto'
};
// Si se llama directamente a este script con un comando específico
if (process.argv.length > 2) {
const targetCommand = process.argv[2];
if (commandMappings[targetCommand]) {
showMigrationMessage(targetCommand, commandMappings[targetCommand]);
process.exit(0);
}
}
// Si se llama como comando directo
if (commandMappings[commandName]) {
showMigrationMessage(commandName, commandMappings[commandName]);
process.exit(0);
}
module.exports = { showMigrationMessage };