OpenCode Go API · LLM para ITOps
OpenCode Go es una API compatible con OpenAI que ofrece modelos de lenguaje para automatizacion. En este proyecto, es el cerebro que analiza alertas de Prometheus, logs de Loki y genera recomendaciones accionables en tiempo real.
Configuracion del Endpoint
La API de OpenCode Go se configura como un nodo HTTP Request en n8n. Es compatible con el formato OpenAI chat completions — se puede usar el nodo nativo OpenAI con base URL personalizada.
Endpointhttps://opencode.ai/zen/go/v1/chat/completionsAuthBearer {token}Modelodeepseek-v4-flashFormatoOpenAI compatibleTemperature0.3Max Tokens1024N8N_OPENCODE_API_KEY, que se inyecta via Vault Agent Injector. Nunca se hardcodea en el workflow.Workflow de Verificacion
Antes de construir workflows complejos, se prueba la conexion con un workflow de 3 nodos. Si esto funciona, todo lo demas funciona.
k3s/manifests/n8n/workflows/test-opencode-connection.json.Prompt Engineering
El prompt que se envia al LLM define la calidad del analisis. Cada workflow tiene su propio prompt diseniado para un proposito especifico. Este es el template del Workflow 1.
Eres un SRE experto analizando una alerta de infraestructura.
DATOS DE LA ALERTA:
- Nombre: {{ alertname }}
- Severidad: {{ severity }}
- Descripcion: {{ description }}
- Valor: {{ value }}
- Labels: {{ labels }}
Analiza esta alerta y proporciona:
1. Causa probable (2-3 posibilidades ordenadas por probabilidad)
2. Impacto potencial si no se resuelve
3. Acciones correctivas inmediatas (comandos especificos si aplican)
4. Acciones preventivas a largo plazo
Responde en español, en formato Markdown para enviar a Discord. El prompt usa variables de n8n ({{ alertname }}) que se reemplazan con los datos extraidos del webhook de Alertmanager. El formato Markdown permite que el mensaje de Discord tenga texto formateado (negrita, listas, codigo inline).
Siguiente: Workflow 1 — Incident Response
Con la API configurada, el primer workflow productivo: recibir alertas de Alertmanager, analizarlas con LLM y notificar a Discord en tiempo real.