Skip to main content
Glama

Self-Improving Memory MCP

by SuperPiTT
CONTEXT_MONITOR.md6.42 kB
# 📊 Context Monitor for Claude Code Status Line Monitorea en tiempo real el uso de contexto (tokens) directamente en la barra de estado de Claude Code. ## 🎯 Características - ✅ **Actualización en vivo** cada 300ms - ✅ **Indicadores visuales** con colores y emojis - ✅ **Alertas automáticas** al 80% y 90% - ✅ **Barra de progreso** visual (versión avanzada) - ✅ **Estimación precisa** basada en tamaño del transcript - ✅ **Costo estimado de API** en tiempo real (Claude Sonnet 4.5) ## 📦 Versiones Disponibles ### Versión Simple (`statusline-context-monitor.sh`) Muestra: `✓ Context: 85,000/200,000 (42%) | ~$0.76 API` ### Versión Avanzada (`statusline-context-advanced.sh`) Muestra: `✓ [████████░░░░░░░░░░░░] 42% (85,000/200,000) | ~$0.76 API` ## 🚀 Instalación ### Opción 1: Comando Interactivo (Recomendado) ```bash /statusline ``` Luego selecciona el script deseado desde `.claude/lib/` ### Opción 2: Configuración Manual Edita `.claude/settings.json`: ```json { "statusLine": ".claude/lib/statusline-context-monitor.sh" } ``` O para la versión avanzada: ```json { "statusLine": ".claude/lib/statusline-context-advanced.sh" } ``` ## 🎨 Indicadores Visuales | Estado | Umbral | Color | Icono | Descripción | |--------|--------|-------|-------|-------------| | **OK** | < 80% | 🟢 Verde | ✓ | Uso normal | | **WARNING** | 80-90% | 🟡 Amarillo | ⚠️ | Acercándose al límite | | **CRITICAL** | > 90% | 🔴 Rojo | 🔴 | Riesgo de compactación | ## 📊 Umbrales ```bash MAX_TOKENS=200000 # Límite máximo WARN_THRESHOLD=160000 # 80% - Warning CRITICAL_THRESHOLD=180000 # 90% - Critical ``` ## 💰 Cálculo de Costos **Modelo**: Claude Sonnet 4.5 **Precios API**: - Input: $3.00 por millón de tokens - Output: $15.00 por millón de tokens **Estimación**: Asume división 50/50 input/output = **$9.00 promedio por millón de tokens** **Ejemplos**: - 50k tokens = ~$0.45 - 100k tokens = ~$0.90 - 160k tokens (80%) = ~$1.44 - 200k tokens (máx) = ~$1.80 **Nota**: El costo real variará según la proporción real de input/output en tu conversación. ## 🔧 Personalización Edita el script para ajustar umbrales: ```bash nano .claude/lib/statusline-context-monitor.sh ``` Cambia los valores: ```bash MAX_TOKENS=200000 # Tu límite WARN_THRESHOLD=150000 # Tu threshold de warning CRITICAL_THRESHOLD=170000 # Tu threshold crítico ``` ## 🧪 Testing Prueba el script manualmente: ```bash # Simular input de Claude Code echo '{"transcript_path":"/ruta/al/transcript.md"}' | \ .claude/lib/statusline-context-monitor.sh ``` Deberías ver algo como: ``` ✓ Context: 85,234/200,000 tokens (42%) [OK] ``` ## 📈 Cómo Funciona 1. **Lectura del Transcript**: Lee el archivo de conversación actual 2. **Estimación de Tokens**: Divide tamaño en bytes / 4 (aproximación conservadora) 3. **Cálculo de %**: `(tokens_usados / tokens_max) * 100` 4. **Renderizado**: Aplica colores y emojis según umbrales 5. **Actualización**: Claude Code re-ejecuta cada 300ms ## ⚡ Performance - **Overhead**: < 5ms por actualización - **CPU**: Negligible - **Precisión**: ±5% (conservadora, tiende a sobreestimar) ## 🎯 Casos de Uso ### Para Sesiones Largas Usa el monitor para saber cuándo ejecutar `/checkpoint` antes de autocompact: ``` ⚠️ Context: 165,000/200,000 tokens (82%) [WARNING] ``` 👆 Momento ideal para guardar checkpoint ### Para Análisis Pesados Monitorea antes de ejecutar `export_graph` o `detect_contradictions`: ``` ✓ Context: 50,000/200,000 tokens (25%) [OK] ``` 👆 Seguro ejecutar análisis completos ### Para Debugging Identifica qué operaciones consumen más contexto: 1. Observa tokens antes: `42%` 2. Ejecuta operación 3. Observa después: `68%` 4. Diferencia = `26%` (52,000 tokens aprox) ## 🔄 Integración con Sistema de Memoria El monitor se integra perfectamente con el Pre-Compact Interceptor: ``` Context: 160,000/200,000 (80%) → 🚨 Auto-trigger /checkpoint ``` El agente detecta automáticamente cuando alcanzas 80% y guarda el estado. ## 🐛 Troubleshooting ### No aparece la barra de estado ```bash # Verifica que el script sea ejecutable ls -la .claude/lib/statusline-context-monitor.sh # Si no tiene 'x', hazlo ejecutable chmod +x .claude/lib/statusline-context-monitor.sh ``` ### Muestra 0% siempre ```bash # Verifica que jq esté instalado which jq # Instala si falta sudo apt install jq # Ubuntu/Debian brew install jq # macOS ``` ### Colores no se ven Tu terminal debe soportar ANSI codes. Prueba: ```bash echo -e "\033[1;32mVerde\033[0m" ``` Si no ves color verde, tu terminal no soporta ANSI. ## 📝 Ejemplos Visuales ### Estado Normal (25%) ``` ✓ [█████░░░░░░░░░░░░░░░] 25% (50,000/200,000) ``` ### Estado Warning (85%) ``` ⚠️ [█████████████████░░░] 85% (170,000/200,000) ``` ### Estado Critical (95%) ``` 🔴 [███████████████████░] 95% (190,000/200,000) ``` ## 🎓 Tips Avanzados ### Combinar con Git Branch ```bash #!/bin/bash input=$(cat) transcript=$(echo "$input" | jq -r '.transcript_path // empty') # ... código del monitor de contexto ... # Agregar branch de git branch=$(git branch --show-current 2>/dev/null || echo "no-git") printf "${context_status} | 🌿 ${branch}" ``` ### Agregar Memoria Stats ```bash # Contar entradas en la BD de memoria memory_count=$(npx memory-cli stats 2>/dev/null | grep -oP 'Total: \K\d+' || echo "0") printf "${context_status} | 🧠 KB: ${memory_count}" ``` ## 📚 Referencias - [Claude Code Status Line Docs](https://docs.claude.com/en/docs/claude-code/statusline.md) - [Token Estimation Methods](https://platform.openai.com/tokenizer) - [ANSI Color Codes](https://en.wikipedia.org/wiki/ANSI_escape_code) ## 🆘 Soporte Si tienes problemas: 1. Verifica que el script sea ejecutable 2. Prueba manualmente con un JSON dummy 3. Revisa logs: Claude Code muestra errores en la terminal ## 🚀 Próximas Mejoras - [ ] Integración con MCP para tokens exactos (si API lo permite) - [ ] Histórico de uso de contexto - [ ] Predicción de cuándo alcanzar 80% - [ ] Notificaciones desktop al 90% --- **Creado para**: Self-Improving Memory MCP **Versión**: 1.0.0 **Licencia**: MIT

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SuperPiTT/self-improving-memory-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server