feat: add als generator chatbot and storage
This commit is contained in:
41
scripts/chatbot.js
Executable file
41
scripts/chatbot.js
Executable file
@@ -0,0 +1,41 @@
|
||||
#!/usr/bin/env node
|
||||
const readline = require('readline');
|
||||
const { generateFromPrompt } = require('../data/lib/alsGenerator');
|
||||
const path = require('path');
|
||||
|
||||
const rl = readline.createInterface({
|
||||
input: process.stdin,
|
||||
output: process.stdout,
|
||||
prompt: 'als-bot> '
|
||||
});
|
||||
|
||||
console.log('Chatbot ALS listo. Escribe "generame un als de ..." o "salir".');
|
||||
rl.prompt();
|
||||
|
||||
rl.on('line', async (line) => {
|
||||
const input = line.trim();
|
||||
if (!input) {
|
||||
rl.prompt();
|
||||
return;
|
||||
}
|
||||
if (['salir', 'exit', 'quit'].includes(input.toLowerCase())) {
|
||||
rl.close();
|
||||
return;
|
||||
}
|
||||
try {
|
||||
const result = await generateFromPrompt(input);
|
||||
console.log('Nuevo ALS listo:', {
|
||||
projectName: result.plan.projectName,
|
||||
output: path.relative(process.cwd(), result.outputPath),
|
||||
templateHash: result.plan.templateHash
|
||||
});
|
||||
} catch (err) {
|
||||
console.error('No se pudo generar el ALS:', err.message);
|
||||
}
|
||||
rl.prompt();
|
||||
});
|
||||
|
||||
rl.on('close', () => {
|
||||
console.log('Hasta luego 👋');
|
||||
process.exit(0);
|
||||
});
|
||||
Reference in New Issue
Block a user