REA
Reverse engineer anything from your terminal or agent with one CLI and MCP server.
Descripción del creador (original en inglés)
Kubernetes RCA agent that sandboxes its own AI with OPA Gatekeeper. MCP-ready for any client.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
Pasó 1/2 revisiones · Funciona en tu computadora
Primero: ¿qué IA usas?
Elige tu app y los pasos aparecen abajo.
Funciona con Claude, pero hay que preparar algo antes
Necesitas una clave de K8gentS — Kubernetes RCA MCP Server (regístrate en el sitio del autor; puede tener costo) · Instala Docker en tu computadora primero (una sola vez) · Solo en la app de Claude para computadora (Windows o Mac), no en la web ni en el móvil
Una sola vez; sirve para todos los servidores que necesitan Docker
Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Puede tener costo.
Cómo obtener la clave está en el README del autor, más abajo
SettingsDeveloperEdit Config
{
"mcpServers": {
"k8gents": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"AI_API_KEY",
"-e",
"AI_MODEL",
"-e",
"KUBECONFIG",
"docker.io/jdoornink/k8gents:0.1.1"
],
"env": {
"AI_API_KEY": "your-value",
"AI_MODEL": "your-value",
"KUBECONFIG": "your-value"
}
}
}
}Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie
Usa K8gentS — Kubernetes RCA MCP Server y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Claude dice que está usando K8gentS — Kubernetes RCA MCP Server o muestra una herramienta de K8gentS — Kubernetes RCA MCP Server en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de Anthropic el 11 nov 2026 · tu pantalla puede variar un poco según la versión
ChatGPT todavía no puede conectar K8gentS — Kubernetes RCA MCP Server
K8gentS — Kubernetes RCA MCP Server se instala en tu computadora, pero ChatGPT solo conecta servidores que funcionan en la web
A · Usa una app que pueda conectar K8gentS — Kubernetes RCA MCP Server
B · Otros en Herramientas para desarrolladores que funcionan con ChatGPT
Elegidos entre los más usados de la misma categoría, solo los que se conectan con una dirección y sin clave
Funciona con Claude Code, pero hay que preparar algo antes
Necesitas una clave de K8gentS — Kubernetes RCA MCP Server (regístrate en el sitio del autor; puede tener costo) · Instala Docker en tu computadora primero (una sola vez)
Una sola vez; sirve para todos los servidores que necesitan Docker
Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Puede tener costo.
Cómo obtener la clave está en el README del autor, más abajo
Mac: pulsa Command+Espacio y escribe Terminal · Windows: abre PowerShell
claude mcp add k8gents --env AI_API_KEY=your-value --env AI_MODEL=your-value --env KUBECONFIG=your-value -- docker run -i --rm -e AI_API_KEY -e AI_MODEL -e KUBECONFIG docker.io/jdoornink/k8gents:0.1.1Cambia “your-value” por tu clave antes de pulsar Enter
Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie
Deberías ver K8gentS — Kubernetes RCA MCP Server en la lista como conectado
Usa K8gentS — Kubernetes RCA MCP Server y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Claude Code dice que está usando K8gentS — Kubernetes RCA MCP Server o muestra una herramienta de K8gentS — Kubernetes RCA MCP Server en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de Anthropic el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Funciona con Cursor, pero hay que preparar algo antes
Necesitas una clave de K8gentS — Kubernetes RCA MCP Server (regístrate en el sitio del autor; puede tener costo) · Instala Docker en tu computadora primero (una sola vez)
Una sola vez; sirve para todos los servidores que necesitan Docker
Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Puede tener costo.
Cómo obtener la clave está en el README del autor, más abajo
En la configuración de K8gentS — Kubernetes RCA MCP Server, AI_API_KEY, AI_MODEL, KUBECONFIG está vacío; añade tu clave y guarda
Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie
Usa K8gentS — Kubernetes RCA MCP Server y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Cursor dice que está usando K8gentS — Kubernetes RCA MCP Server o muestra una herramienta de K8gentS — Kubernetes RCA MCP Server en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de Cursor el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Funciona con VS Code, pero hay que preparar algo antes
Necesitas una clave de K8gentS — Kubernetes RCA MCP Server (regístrate en el sitio del autor; puede tener costo) · Instala Docker en tu computadora primero (una sola vez)
Una sola vez; sirve para todos los servidores que necesitan Docker
Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Puede tener costo.
Cómo obtener la clave está en el README del autor, más abajo
En la configuración de K8gentS — Kubernetes RCA MCP Server, AI_API_KEY, AI_MODEL, KUBECONFIG está vacío; añade tu clave y guarda
Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie
Usa K8gentS — Kubernetes RCA MCP Server y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si VS Code dice que está usando K8gentS — Kubernetes RCA MCP Server o muestra una herramienta de K8gentS — Kubernetes RCA MCP Server en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de VS Code el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Otras apps que usan MCP, como Windsurf, Zed o Gemini CLI, añaden servidores de forma distinta. Míralo en la lista de apps
Ver todas las apps que usan MCP →
La configuración JSON está en “Para desarrolladores”, abajo
Claude Code
claude mcp add k8gents --env AI_API_KEY=your-value --env AI_MODEL=your-value --env KUBECONFIG=your-value -- docker run -i --rm -e AI_API_KEY -e AI_MODEL -e KUBECONFIG docker.io/jdoornink/k8gents:0.1.1Claude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"k8gents": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"AI_API_KEY",
"-e",
"AI_MODEL",
"-e",
"KUBECONFIG",
"docker.io/jdoornink/k8gents:0.1.1"
],
"env": {
"AI_API_KEY": "your-value",
"AI_MODEL": "your-value",
"KUBECONFIG": "your-value"
}
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"k8gents": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"AI_API_KEY",
"-e",
"AI_MODEL",
"-e",
"KUBECONFIG",
"docker.io/jdoornink/k8gents:0.1.1"
],
"env": {
"AI_API_KEY": "your-value",
"AI_MODEL": "your-value",
"KUBECONFIG": "your-value"
}
}
}
}VS Code (mcp.json)
{
"servers": {
"k8gents": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"AI_API_KEY",
"-e",
"AI_MODEL",
"-e",
"KUBECONFIG",
"docker.io/jdoornink/k8gents:0.1.1"
],
"env": {
"AI_API_KEY": "your-value",
"AI_MODEL": "your-value",
"KUBECONFIG": "your-value"
}
}
}
}AI_API_KEY secreto obligatorio envAI_MODEL envKUBECONFIG envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
oci: docker.io/jdoornink/k8gents:0.1.1Según cómo se conecta este servidor y la documentación de cada app, comprobado el 10 nov 2026.
Se ejecutan en tu computadora en
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 11 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub JDoornink, dueña del repo
Último cambio de código: hace 6 meses, hace más de 6 meses
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Pregunta, comparte un consejo o avisa de que no funciona. Ordenado por lo que la gente marcó como útil.
Aún no hay publicaciones. Sé la primera persona en preguntar o compartir.
Lo publicado aquí lo escriben usuarios, no el equipo de PopNx.
Aún no hay reseñas
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 2 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: AI_API_KEY
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez hace 6 meses, y la última versión (0.1.1) llegó al registro hace 7 meses.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Docker en tu computadora.
En la misma categoría: REA, Netdata, Front-End Checklist
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Reverse engineer anything from your terminal or agent with one CLI and MCP server.
Real-time infrastructure monitoring with metrics, logs, alerts, and ML-based anomaly detection.
Review frontend code and live pages against 386 quality-gated web development rules.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
A Human-in-the-Loop RCA Agent for Kubernetes — LLM Diagnosis, OPA-Bounded Remediation
K8gentS is a Kubernetes diagnostic agent built around a single premise: an LLM is well-suited to *reason* about cluster failures, but unfit to *act* on them unsupervised. It continuously watches the cluster event stream, runs Warning-class events through a Gemini-powered root cause analysis (RCA) pipeline, and surfaces the top hypotheses with resolution steps to Slack. Every remediation is human-in-the-loop (HITL) — a reviewer approves or rejects via interactive buttons before anything mutates. Approved fixes execute inside an ephemeral Job whose blast radius is bounded by an OPA Gatekeeper admission policy at the API server, independent of RBAC. The reasoning is non-deterministic by design; the controls around it are not.
The goal: reduce MTTR on diagnosable failures without handing an LLM a kubectl apply.
Building the Kubernetes side of this is straightforward. The real challenge is making a diagnostic layer trustworthy when the engine behind it is fundamentally non-deterministic.
Traditional observability is built on guarantees. Alerts fire on known thresholds. Dashboards show reproducible numbers. Logs return consistent answers to the same query. SRE success depends on that predictability — it's what makes incident response repeatable and on-call sustainable.
An LLM-driven diagnostic layer breaks that contract. The same pod failure can produce three different plausible explanations across three different runs. Each may be coherent. Each may even be correct under different assumptions. But "plausible" is not the same as "right," and for infrastructure, the gap between them is where outages live.
Some of the specific problems I've been working through while building K8gentS:
1. Confidence scoring with an unbounded output space. The agent returns top-3 root causes with confidence metrics, but confidence in what, exactly? The model is not selecting from a fixed set of known failure modes — it's generating free-form hypotheses. A calibrated confidence score needs a reference distribution, and the distribution here is whatever the model happened to produce this run.
2. When to trust reasoning vs. fall back to deterministic checks. - THE ART Some failures (CrashLoopBackOff, OOMKilled) have well-traveled diagnostic paths and a deterministic check will be right every time. Others benefit from the model's ability to interpolate across signals. Drawing that line — and doing it at runtime — is non-trivial and where the art really lies.
3. Evaluating an agent that's supposed to find failures you didn't anticipate. The standard ML evaluation approach assumes you know what "correct" looks like. For a diagnostic agent, part of the value is catching novel failure modes — by definition, failures you couldn't pre-enumerate. So how do you decide what is wrong and what is right?
4. The "Tool in the Cluster" problem. How do you monitor the monitor? Currently the service is set to run as a service in the cluster, but what if the service itself causes resource exhaustion, or is experiencing failures itself? How can you identify if the service itself is the cause of your issue?
5. Determining the right model for this problem. With so many other types of Machine Learning models out there, is a non-deterministic large language model really the right choice or is another model better suited for infrastructure type problems?
These are the questions I'm actively working on. If you've solved any of them — or have a sharper framing than I've got — I'd like to hear it.
CrashLoopBackOff states, OOMKilled events, and other failure conditions such as Connectivity/DNS, Database Deadlock, or Secret/Config Missing.The agent is designed so that each layer independently limits blast radius — not as redundancy for its own sake, but because no single control is sufficient when the reasoning engine is non-deterministic.
| Layer | Mechanism | What it prevents |
|---|---|---|
| Pod security | runAsNonRoot, read-only filesystem, all Linux capabilities dropped | Container escape, privilege escalation |
| RBAC | Agent pod is strictly read-only; write verbs live only on k8gent-executor-sa | Agent compromise → cluster mutation |
| Ephemeral executor | Short-lived Jobs via k8gent-executor-sa; ttlSecondsAfterFinished=120 | Persistent foothold after remediation |
| OPA Gatekeeper | Rego policy enforced at the API server admission layer | Executor escaping its scope, even if RBAC is misconfigured |
| Log sanitization | Regex sweeper strips IPs, JWTs, API keys, emails before LLM call | Secrets exfiltration via LLM prompt |
| Rate limiting | Hourly circuit breakers and event debouncing | Noise-driven API budget exhaustion |
| Ingress-free comms | Slack Socket Mode; no exposed endpoints or Ingress rules | Inbound attack surface |
The OPA Gatekeeper policy (defined in deploy/helm/k8gents/templates/opa-gatekeeper/) explicitly blocks the executor service account from modifying serviceAccountName, enabling hostNetwork or hostPID, operating inside kube-system, or mutating any resource kind other than pods and deployments — enforced directly at the Kubernetes API admission layer, independent of RBAC.
K8gentS ships as a Helm chart. OPA Gatekeeper is a declared chart dependency — the security sandbox installs automatically alongside the agent.
kubectl authenticated to the target clusterAI_API_KEY)SLACK_BOT_TOKEN starting xoxb- and SLACK_APP_TOKEN starting xapp-)SLACK_CHANNEL_ID) and a comma-separated list of approver Slack user IDs (ALLOWED_APPROVERS)api.slack.com.xapp-...).chat:write and chat:write.public OAuth scopes → generates a Bot Token (xoxb-...).docker build -t your-registry/k8gent:latest .
docker push your-registry/k8gent:latest
Update image.repository in deploy/helm/k8gents/values.yaml to match your registry path.
# Fetch chart dependencies (downloads OPA Gatekeeper)
helm dependency update deploy/helm/k8gents
helm install k8gents deploy/helm/k8gents \ --namespace k8gent-system \ --create-namespace \ --set secrets.aiApiKey="YOUR_GEMINI_KEY" \ --set secrets.slackBotToken="xoxb-..." \ --set secrets.slackAppToken="xapp-..." \ --set secrets.slackChannelId="C12345678" \ --set secrets.allowedApprovers="U123456,U789012"
To disable the OPA sandbox (if your cluster already runs Gatekeeper with its own policies):
--set sandbox.enabled=false --set gatekeeper.enabled=false
kubectl logs -l app=k8gents -n k8gent-system -f
You should see the watcher connect to the cluster API and the Slack Socket Mode connection initialize.
Key environment variables (set via --set agent.* in Helm, or directly if running locally):
| Variable | Default | Description |
|---|---|---|
WATCH_NAMESPACES | all | Comma-separated namespaces to watch, or all for cluster-wide |
AI_MODEL | gemini-2.5-pro | Any model name supported by the Google GenAI SDK |
LOG_LEVEL | INFO | Python logging level |
REMEDIATION_MODE | api | api (Kubernetes client, safe in-cluster) or subprocess (kubectl, local dev only) |
Changing AI_MODEL requires no code changes — the agent routes all LLM calls through the configured model name dynamically.
What's implemented and working:
io.github.JDoornink/k8gentsWhat's genuinely unsolved: