(bug) The runner is OOMKilled with three local sessions at a 1Gi limit, and the chart and docs give no sizing guidance

Abierto Apto para principiantes
#7,441 1 comentario 1 reacción 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
83/100
Tipo de issue
Documentación
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
docker-compose, helm, kubernetes

Línea de trabajo

Lee hosting/kubernetes/helm/values.yaml y la sección «Container resources» de docs/docs/self-host/agents/04-customize-the-agent-runtime.mdx; comprueba también allí la sobreescritura de Compose. Documenta las indicaciones reportadas sobre la memoria en reposo y por sesión, y añade un ejemplo comentado del chart para unas pocas sesiones locales. Se considera terminado cuando ambas vías de despliegue explican el dimensionamiento y el ejemplo del chart refleja las indicaciones.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug

The agent runner container is killed for lack of memory when several local-sandbox sessions run in the same pod with a 1 GiB memory limit. The Helm chart and the docs give no sizing guidance for this case, so a self-host that picks 1 GiB hits it.

Reproduce

  1. Deploy the chart with the local sandbox provider and set agentRunner.resources.limits.memory: 1Gi (request 512Mi).
  2. Open three agent conversations (Pi harness) at about the same time and send a message in each.
  3. Watch the runner pod with kubectl top pod and kubectl describe pod.

Expected

The runner holds three concurrent local sessions without being killed, or the chart and the docs say how much memory each local session needs.

What we saw (GKE oss, local sandbox, v0.122.4 release candidate)

  • Idle runner after a restart: 178 to 313 MiB.
  • One session at a time (approve cell, deny cell, client-tool cell): peak 465 MiB.
  • Two sessions together (a gate cell plus one browser session): peak 890 MiB of 1 GiB.
  • Three sessions: the container was OOMKilled (exit 137, restart count 1). Turns that were running ended with "peer closed connection" or "All connection attempts failed". One browser turn stayed on "Thinking" for about 100 seconds until the api watchdog settled it.

The local sandboxes (one Pi daemon per session) run inside the runner container, so memory grows with each concurrent session. The limit is the same on v0.122.3, so this is not a regression of the release.

Where to change

  • hosting/kubernetes/helm/values.yaml: the chart sets no default for agentRunner.resources. The template hosting/kubernetes/helm/templates/runner-deployment.yaml renders only what the user sets, so the 1 GiB limit in our run came from the deployment values, not from a chart default. Add a commented example with a limit that fits a few local sessions (for example request 1Gi, limit 2Gi or more).
  • docs/docs/self-host/agents/04-customize-the-agent-runtime.mdx ("Container resources"): it shows 4Gi but does not say how memory grows with concurrent local sessions. Add the numbers above as guidance: about 200 to 300 MiB idle, plus a few hundred MiB for each active session.
  • The same guidance applies to the Compose override in that page.

Notes

This is not a code defect in the runner. The ask is a documented example (and optionally a chart default) that survives three concurrent local sessions.

🤖 The AI agent says: filed from the v0.122.4 release QA.

Lenguaje dominante
TypeScript
Estrellas
4.8k
Forks
690
Merge medio
20 h 11 min
PR fusionados (30 d)
448

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de Agenta-AI/agenta

Todos los issues de Agenta-AI/agenta

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.