UNPKG

plazbot-cli

Version:
52 lines (44 loc) 1.86 kB
import { Command } from 'commander'; import { Agent } from 'plazbot'; import { getStoredCredentials } from '../../utils/credentials'; import { logger } from '../../utils/logger'; import { ListAgentsOptions, AgentListItem } from '../../types/agent'; export const listCommand = new Command('list') .description('Lista todos los agentes del workspace') .option('--dev', 'Usar ambiente de desarrollo', false) .action(async (options: ListAgentsOptions) => { try { // Obtener credenciales guardadas const credentials = await getStoredCredentials(); // Crear instancia del agente con las credenciales guardadas const agent = new Agent({ workspaceId: credentials.workspace, apiKey: credentials.apiKey, zone: credentials.zone, ...(options.dev && { customUrl: "http://localhost:5090" }) }); // Obtener lista de agentes const agents = await agent.getAgents(); if (agents.length === 0) { logger.info('No se encontraron agentes en este workspace'); return; } logger.info('\nLista de Agentes:'); logger.doubleDivider(); agents.forEach((agent: AgentListItem, index: number) => { logger.info(`${index + 1}. ID: ${agent.id}`); logger.info(` Nombre: ${agent.name}`); logger.info(` Estado: ${agent.enable ? '✅ Activo' : '❌ Inactivo'}`); logger.info(` Descripción: ${agent.description}`); logger.info(` Creado: ${new Date(agent.createdAt).toLocaleString()}`); logger.divider(); }); if (options.dev) { logger.warning('Ambiente: desarrollo'); } } catch (error) { const message = error instanceof Error ? error.message : 'Error desconocido al listar agentes'; logger.error(message); process.exit(1); } });