Volver al inicio

Barra de Estado Personalizada Claude Code con Monitoreo de VPS en Tiempo Real

Guía para crear una barra de estado personalizada para Claude Code con monitoreo de VPS en tiempo real. El sistema muestra el estado del servidor, costo de sesión actual, límites de Claude API y detecta automáticamente el servidor activo. La solución está construida en bash y jq sin dependencias de Node.js.

Monitoreo de VPS Directamente en Claude Code: Creación de una Barra de Estado Personalizada
Advertisement 728x90

# Barra de Estado Personalizada para Claude Code: Monitoreo en Tiempo Real de VPS

Los desarrolladores que manejan Claude Code en múltiples servidores suelen perder tiempo cambiando de contexto para verificar el estado de la infraestructura. ¿La solución? Una barra de estado personalizada que muestra métricas clave de la sesión y monitoreo de VPS directamente en el editor, sin necesidad de cambiar de contexto.

Arquitectura del Sistema

El sistema de monitoreo se basa en dos componentes principales: un demonio en segundo plano para consultar servidores y un script cliente para mostrar los datos. El demonio vps-poller.sh ejecuta consultas SSH a tus servidores cada 30 segundos, capturando cuatro métricas esenciales:

  • Uso de RAM
  • Carga de CPU
  • Uso de disco
  • Tiempo de actividad del sistema

Los datos se almacenan en caché como archivos JSON en /tmp/, por lo que el script cliente statusline.sh puede obtener la información más reciente al instante, sin llamadas de red adicionales. Esto mantiene la interfaz de Claude Code ágil y responsive.

Google AdInline article slot

Ventajas clave de la arquitectura:

  • Bajo consumo de red gracias al caché
  • Cero retrasos en la visualización
  • Diseño modular: el demonio se ejecuta de forma independiente
  • Maneja múltiples servidores simultáneamente

Autoenfoque en el Servidor Activo

¿Trabajas con varias instancias de VPS? El mayor inconveniente es identificar cuál está en uso en este momento. Este sistema lo resuelve analizando automáticamente los logs de Claude Code.

El script examina los últimos 20 KB del transcripto de la sesión, usando dos estrategias para detectar el servidor activo:

Google AdInline article slot
  • Identifica comandos SSH (ssh, scp, sftp) y empareja direcciones IP con tu lista preconfigurada de servidores
  • Búsqueda alternativa por nombres de servidores MCP si usas exclusivamente el Protocolo de Contexto de Modelo

Así se ve en acción:

# Trabajando con el servidor 'main' vía SSH
▶ main●(R:42% D:55%) new● sec●

# Cambiando a 'sec' vía MCP
main● new● ▶ sec●(R:61% D:70%)

# Servidor 'new' con alta carga (siempre destacado)
▶ main●(R:42% D:55%) new◉(R:92%) sec●

Los indicadores de estado incluyen:

  • ● — todo bien
  • ◉ — alta carga (RAM > 85% o disco > 90%)
  • ✗ — servidor no accesible
  • ↻ — reiniciado recientemente
  • ▶ — servidor activo actualmente

Integración con la API de Claude y Seguimiento de Costos

La barra de estado se conecta con la API de Claude para mostrar límites de uso en tiempo real y estimaciones de costos de sesión. Detecta automáticamente tu tipo de cuenta:

Google AdInline article slot
  • Suscriptores de Claude Max ven costos teóricos de sesión
  • Usuarios de API obtienen el gasto real

Métricas de la API de Claude mostradas:

  • Modelo activo — modelo actual (p. ej., Opus 4.6)
  • Relleno de contexto — barra de progreso con codificación por colores (verde → amarillo → rojo)
  • Cuota restante — porcentaje usado para límites de 5 horas (H) y semanales (W)
  • Costo de sesión — gasto estimado en la API

Los datos de la API se almacenan en caché por 2 minutos para reducir la carga, extrayendo tokens OAuth del almacén de credenciales del sistema.

Instalación y Configuración

La configuración está simplificada para un despliegue rápido, idealmente desde Claude Code mismo.

Instalación rápida vía Claude Code:

Clona https://github.com/CreatmanCEO/claude-statusline y ejecuta install.sh --ru

Instalación manual para usuarios avanzados:

git clone https://github.com/CreatmanCEO/claude-statusline.git ~/claude-statusline
bash ~/claude-statusline/install.sh --ru

Configuración del monitoreo de VPS:

  • Añade servidores a ~/.claude/statusline.conf
  • Establece SHOW_VPS=remote
  • Lista servidores en VPS_SERVERS
  • Inicia el demonio: ~/claude-statusline/vps-poller.sh start

Notas por plataforma:

  • Linux/macOS: soporte completo de funciones
  • Windows: instala solo vía Claude Code (omite PowerShell)
  • Requiere bash y jq preinstalados para manejo de JSON

Características Principales

Monitoreo instantáneo de VPS — estado de servidores sin cambiar de herramienta

Autoenfoque — detecta el servidor activo desde los logs de Claude Code

Integración con API de Claude — límites en tiempo real y costo de sesión

Ligero — puro bash + jq, sin Node.js ni entornos pesados

Multiplataforma — Linux, macOS, Windows (con limitaciones)

Correcciones de Compatibilidad

El desarrollo y pruebas resolvieron problemas mayores:

Permisos en Windows:

  • chmod falla en PowerShell
  • Solución: instrucciones solo para Claude Code

Almacenamiento de tokens OAuth:

  • Windows: .credentials.json
  • Unix: .credentials
  • Solución: el script verifica ambos

Comillas en JSON anidadas:

  • echo distorsiona el JSON
  • Solución: cambio a printf con escape adecuado

Ruta de bash en Windows:

  • command -v bash devuelve rutas con espacios
  • Solución: llamada directa a bash, sin verificación de ruta

Todas las correcciones se implementaron en un día tras el lanzamiento: la velocidad del open source en acción.

Funciones Avanzadas y Personalización

Adapta la barra de estado a tu flujo de trabajo con múltiples modos de visualización.

Segmentos personalizables:

  • Info de Git: rama actual y estado de cambios
  • Estadísticas de código: líneas añadidas/eliminadas en la sesión
  • Temporizador de sesión: tiempo dedicado al trabajo
  • Herramientas del sistema: soporte para MCP y otros protocolos

Ajustes de rendimiento:

  • Huella mínima: demonio usa <1% de CPU
  • Caché inteligente: actualiza solo en cambios
  • Carga perezosa: omite módulos no usados

El proyecto evoluciona con aportes de la comunidad. Próximamente: más protocolos de monitoreo, ajustes de UI e integraciones con herramientas de desarrollo.

— Editorial Team

Advertisement 728x90

Leer después