Envenenamiento del contexto
Aprende qué es el envenenamiento del contexto, cómo reconocerlo en una sesión de Bob Shell y cómo recuperarte iniciando una sesión nueva o mejorando la higiene del contexto.
Acerca del envenenamiento del contexto
El envenenamiento del contexto ocurre cuando información incorrecta o irrelevante entra en la ventana de contexto y permanece en la transcripción. Bob trata esa información como un hecho en los prompts de seguimiento. Las respuestas se desvían. Las llamadas a herramientas se vuelven inexactas. El objetivo de trabajo se pierde.
Esto es diferente de una respuesta incorrecta puntual. Los datos incorrectos permanecen en Mensajes (o entraron a través de una lectura de archivo, un pegado de salida de comando o un comentario desactualizado). Bob los reenvía en cada prompt hasta que reinicias o inicias una nueva sesión.
Para ver cómo se llena la ventana y cuándo iniciar una sesión nueva, consulta Gestión de la ventana de contexto.
Síntomas
Es probable que estés lidiando con envenenamiento del contexto cuando observas alguno de los siguientes:
- Peor rendimiento: Las sugerencias se repiten, divagan o dejan de coincidir con el repositorio.
- Uso incorrecto de herramientas: Los pasos de herramientas en la transcripción ya no coinciden con lo que pediste.
- Trabajo de múltiples pasos bloqueado: Los flujos de múltiples prompts largos se repiten o se detienen.
- Correcciones de corta duración: Un prompt correctivo ayuda una vez, pero luego el problema regresa.
- Confusión de herramientas: Bob usa mal las herramientas aunque las definiciones de herramientas no cambiaron.
Si Mensajes ya es grande, comprueba primero el uso de tokens. El envenenamiento y una ventana demasiado llena suelen ocurrir juntos.
Causas comunes
| Causa | Qué ocurre |
|---|---|
| Datos incorrectos en la sesión | Bob afirma algo incorrecto. Los intercambios posteriores lo tratan como verdad absoluta en Mensajes. |
| Texto del repositorio obsoleto o incorrecto | Comentarios desactualizados, fragmentos de README o documentos generados inducen a error en las lecturas de archivos. |
| Pegados demasiado grandes | Registros o fragmentos con ruido, truncamiento o caracteres ocultos aterrizan en Mensajes. |
| Condensación | Bob resume los Mensajes más antiguos. Los detalles útiles desaparecen. Lo que queda puede dominar la sesión. |
| Contexto irrelevante | Archivos no relacionados, planes antiguos o un objetivo de trabajo anterior todavía existen en la transcripción. |
Una vez que el contexto incorrecto está en Mensajes, persiste en cada prompt posterior. Bob no omite de manera fiable el texto plausible solo porque sea incorrecto.
Limitaciones de los prompts correctivos
Pegar definiciones de herramientas, reglas o un prompt correctivo estricto en la conversación podría enmascarar el problema durante uno o dos intercambios. El historial de Mensajes envenenado sigue estando ahí. La siguiente pregunta fuera de tema puede traer de vuelta el mismo fallo.
La corrección confiable es una nueva sesión: sal y ejecuta bob de nuevo para empezar de cero. Esto limpia los Mensajes envenenados mientras mantiene las Reglas y los archivos del proyecto en disco.
Recuperación
- Inicia una nueva sesión saliendo y ejecutando
bobde nuevo. Esto limpia los Mensajes envenenados mientras mantiene las Reglas y los archivos del proyecto en disco. - Pega menos. Envía solo las líneas de registro o errores que Bob necesita. Los volcados grandes aumentan los Mensajes e introducen más riesgo.
- Divide el objetivo de trabajo. Usa sesiones separadas para pasos no relacionados, de modo que una transcripción obsoleta no se traslade.
- Comprueba la salida de herramientas. Si una herramienta devuelve basura, detente e inicia una nueva sesión en lugar de dejar que Bob construya sobre ella en Mensajes.
- Confía en las pruebas, no en el texto. Cuando los comentarios y el código no concuerden, apunta a Bob hacia verificaciones ejecutables. Esta es la misma guía que las mejores prácticas de la ventana de contexto.
Prevención
La mayor parte de la prevención es resultado de una buena higiene del contexto:
- Define el objetivo de trabajo antes de explorar el repositorio (gestión de la ventana de contexto).
- Mantén
AGENTS.mdy las Reglas cortos y operativos. - Añade archivos y registros cuando sean necesarios, no por adelantado.
- Reinicia cuando Mensajes crece sin avances.
Para lecturas de todo el repositorio, usa subagentes para que la sesión vea los resultados del subagente, no cada paso de herramienta en Mensajes.