55c907a3ac
Agregar 4 skills de ejemplo funcionales y README del sistema: Skills de ejemplo: - devops/deploy-service: deploy completo con rollback - analysis/log-analyzer: analisis de logs con metricas - communication/daily-report: reportes diarios automaticos - system/health-check: verificacion de salud multi-servicio Cada skill incluye: - SKILL.md con frontmatter YAML + instrucciones markdown - Descripcion de parametros y proceso paso a paso - Ejemplos de uso y consideraciones de seguridad skills/README.md documenta: - Diferencia entre tools (atomicas) y skills (flujos multi-paso) - Formato de SKILL.md y carga progresiva (3 niveles) - Categorias disponibles y uso desde agentes Las skills son contenido declarativo, no codigo Go.
3.7 KiB
3.7 KiB
name, description
| name | description |
|---|---|
| daily-report | Genera y envia un reporte diario con metricas de servicios, estado de salud, incidentes recientes y tareas pendientes. Puede enviarse via Matrix a un room especifico o guardarse como archivo. |
Daily Report Skill
Esta skill genera reportes diarios automaticos consolidando informacion de multiples fuentes.
Proposito
- Proveer visibilidad diaria del estado de servicios
- Consolidar metricas de diferentes fuentes
- Alertar sobre anomalias o degradacion
- Tracking de incidentes y resoluciones
Fuentes de datos
El reporte puede incluir datos de:
- Estado de servicios (via SSH + systemctl)
- Metricas HTTP (via health endpoints)
- Analisis de logs (via log-analyzer skill)
- Uso de recursos (CPU, memoria, disco via SSH)
- Incidentes recientes (desde base de datos o API)
Estructura del reporte
# Daily Report - <date>
## Services Status
| Service | Host | Status | Uptime |
|---------|------|--------|--------|
| myapp | prod-01 | running | 15d 3h |
| worker | prod-02 | running | 2d 8h |
## Health Metrics
- Total requests: <N>
- Error rate: <percentage>%
- Avg response time: <N>ms
- P99 latency: <N>ms
## Incidents
- [RESOLVED] Database connection timeout - 14:30 - Fixed by restarting pool
- [OPEN] High memory usage on worker - Since 18:00
## Warnings
- Service X disk usage: 85%
- Service Y error rate: 3.2% (threshold: 2%)
## System Resources
| Host | CPU | Memory | Disk |
|------|-----|--------|------|
| prod-01 | 45% | 62% | 71% |
| prod-02 | 23% | 48% | 55% |
## Recommendations
- Investigate memory leak in worker service
- Plan disk cleanup on prod-01
---
Generated by <agent-name> at <timestamp>
Proceso de generacion
1. Recopilar datos de servicios
Para cada servicio configurado:
systemctl status <service> --no-pager
Extrae: estado, uptime, ultimos logs
2. Verificar health endpoints
Si el servicio expone /health o /metrics:
http_get http://<host>:<port>/health
3. Analizar logs recientes
Usa log-analyzer skill para cada servicio:
- Ultimas 24h de logs
- Conteo de errores/warnings
- Errores criticos
4. Obtener metricas de sistema
# CPU y memoria
top -bn1 | head -20
# Disco
df -h
5. Consolidar y formatear
- Genera el markdown del reporte
- Aplica template si existe (templates/daily-report.md)
- Incluye timestamp y firma del agente
6. Enviar reporte
Opciones:
- Enviar a Matrix room (via send_message)
- Guardar como archivo (via file_write)
- Enviar via email (si hay tool de email)
Configuracion
El agente debe tener configurado:
- Lista de servicios a monitorear
- Hosts donde corren
- Health endpoints (opcional)
- Destination room o file path para el reporte
Ejemplo de config (en el agent config YAML):
daily_report:
services:
- name: myapp
host: prod-01
health_url: http://localhost:8080/health
- name: worker
host: prod-02
destination:
type: matrix
room_id: "!reportroom:matrix.org"
schedule: "0 9 * * *" # 9am diario
Parametros
Parametros opcionales al ejecutar manualmente:
date: fecha del reporte (default: today)services: lista de servicios a incluir (default: todos configurados)destination: override del destino (room_id o file_path)include_recommendations: true/false (default: true)
Ejemplo de uso
Usuario: "Genera el reporte diario"
Agente:
- skill_search("daily report")
- skill_load("daily-report")
- Recopilar datos de todos los servicios configurados
- Generar markdown del reporte
- Enviar al room configurado o mostrar al usuario
Automatizacion
Esta skill esta disenada para ejecutarse via cron. Ver crons/daily-report/ para la configuracion de la automatizacion.