UNPKG

vibe-coder-mcp

Version:

Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.

77 lines (76 loc) â€ĸ 2.62 kB
import boxen from 'boxen'; import figlet from 'figlet'; import { themeManager } from '../themes.js'; import { readFileSync } from 'fs'; import { fileURLToPath } from 'url'; import path from 'path'; const __filename = fileURLToPath(import.meta.url); const __dirname = path.dirname(__filename); function getPackageVersion() { try { const packagePath = path.resolve(__dirname, '../../../../package.json'); const packageContent = readFileSync(packagePath, 'utf-8'); const packageJson = JSON.parse(packageContent); return packageJson.version || '0.0.0'; } catch { return '0.0.0'; } } export function getAsciiBanner() { try { return figlet.textSync('Vibe', { font: 'Standard', horizontalLayout: 'default', verticalLayout: 'default' }); } catch { return 'VIBE'; } } export function getBanner() { const asciiArt = getAsciiBanner(); const colors = themeManager.getColors(); const version = getPackageVersion(); const content = colors.primary(asciiArt) + '\n\n' + colors.textBright(`AI Development Assistant v${version}`) + '\n' + colors.textMuted('Powered by OpenRouter & Claude') + '\n\n' + colors.warning('Quick Commands:') + '\n' + colors.success(' /help ') + colors.textMuted('Show available commands') + '\n' + colors.success(' /tools ') + colors.textMuted('List available tools') + '\n' + colors.success(' /quit ') + colors.textMuted('Exit interactive mode'); return boxen(content, { padding: 1, margin: 1, borderStyle: 'round', borderColor: 'cyan', title: '🤖 Vibe Interactive Mode', titleAlignment: 'center' }); } export function getSessionStartMessage() { const time = new Date().toLocaleTimeString(); const colors = themeManager.getColors(); return colors.textMuted(`Session started at ${time}`); } export function getPrompt() { const colors = themeManager.getColors(); return colors.prompt('vibe> '); } export function formatSuccess(message) { const colors = themeManager.getColors(); return colors.success('✅ ' + message); } export function formatError(message) { const colors = themeManager.getColors(); return colors.error('❌ ' + message); } export function formatWarning(message) { const colors = themeManager.getColors(); return colors.warning('âš ī¸ ' + message); } export function formatInfo(message) { const colors = themeManager.getColors(); return colors.info('â„šī¸ ' + message); }