Kuuli Technologies
Español
Arquitectura de agentes11 de junio de 2026 · 6 min de lectura

¿Por qué separar el template del contexto en un agente conversacional con LangChain?

Un agente conversacional bien diseñado vive en dos repositorios: el template con la arquitectura genérica y el contexto con las reglas de negocio específicas. Por qué esta separación importa y cuándo ignorarla.

El problema que resuelve la separación

Cuando se construye un agente conversacional con LangChain + FastAPI, hay una tensión habitual: mezclar en el mismo repositorio la arquitectura genérica (rutas, memoria, sesiones) con la lógica específica del negocio (qué herramientas tiene disponibles, qué puede y no puede responder, con qué tono habla). El resultado es un monolito difícil de reutilizar y más difícil aún de mantener.

La separación en dos repositorios resuelve exactamente este acoplamiento. Un repositorio contiene la plomería — la arquitectura que funciona para cualquier caso de uso. El otro contiene las instrucciones — lo que hace que este agente sea útil para este cliente concreto. Son dos capas con ciclos de vida completamente distintos.

Analogía: el template es el armazón de un coche de competición. El contexto es la configuración que lo convierte en un monoplaza de Fórmula 1 para un piloto concreto — suspensión, mappings del volante, estrategia de paradas. El armazón no cambia. La configuración sí.

Qué va en cada repositorio

template-repoReutilizable
FastAPI + LangChain + endpoints REST
Gestión de sesiones y memoria por usuario
Middleware de autenticación
Estructura de carpetas estándar
Configuración de herramientas base
context-repoEspecífico del proyecto
System prompt con rol y restricciones de dominio
Herramientas Jira / Google Calendar / Slack
Reglas de negocio y guardrails
Skills y comportamientos específicos
Variables de entorno del proyecto

El context-repo importa el template-repo como dependencia — puede ser un submódulo Git, un paquete privado en PyPI, o simplemente un directorio clonado y referenciado. El mecanismo exacto importa menos que el principio: el contexto no duplica la arquitectura, solo la extiende.

El caso que lo demuestra: cambiar de Jira a Google Calendar

Imagina que has construido un agente de gestión de proyectos conectado a Jira. El cliente siguiente necesita exactamente el mismo agente pero integrado con Google Calendar en lugar de Jira. Con la arquitectura de un solo repositorio, tienes que bifurcar todo el proyecto, extraer manualmente la lógica genérica y reescribir las partes específicas.

Con la separación en dos repositorios, el cambio se limita al context-repo: creas un nuevo contexto con las herramientas de Google Calendar, el system prompt adaptado y las reglas de negocio del nuevo cliente. El template-repo no se toca. Los endpoints REST, la gestión de sesiones, el middleware — todo permanece idéntico.

Lo que cambia vs lo que permanece

Cambia (context-repo)

• Herramientas: jira_tool.py → gcal_tool.py
• System prompt y restricciones de dominio
• Variables de entorno del cliente
• Skills y comportamientos específicos

Permanece (template-repo)

• FastAPI app, rutas y middleware
• LangChain chain y memory management
• Manejo de errores y logs
• Tests de integración base

Cuándo no separar (y por qué igual conviene hacerlo)

Para proyectos muy pequeños — un agente de un solo uso, un prototipo de fin de semana — la separación añade fricción sin beneficio proporcional. Mantener dos repositorios, dos pipelines de CI, dos conjuntos de secrets tiene un coste real. En ese contexto, un único repositorio bien estructurado con carpetas core/ y context/ puede ser suficiente.

Pero incluso en proyectos pequeños, vale la pena respetar la separación lógica aunque no la física: que quede claro qué código es genérico y reutilizable y qué código es específico del dominio. Cuando el proyecto crezca o llegue un segundo cliente, la migración a dos repositorios será trivial porque la separación mental ya existía.

Regla práctica: si alguien te pregunta "¿puedo usar vuestro agente pero para mi empresa?", y la respuesta es "sí, solo hay que cambiar el contexto", la arquitectura está bien separada. Si la respuesta es "habría que reescribir bastante", el acoplamiento ya está causando deuda técnica.

El takeaway

El template es la caja de herramientas: FastAPI, LangChain, memoria de sesiones. Funciona para cualquier dominio.
El contexto es el manual de instrucciones para un trabajo concreto: qué herramientas activar, qué está permitido responder, qué tono usar.
La separación convierte el template en un activo reutilizable entre proyectos y clientes.
Unirlos es válido para prototipos, pero crea acoplamiento que penaliza a medida que el sistema crece.
La clave arquitectural: el contexto depende del template, nunca al revés.

¿Quieres aplicar esto en tu equipo?

En Kuuli Technologies llevamos estas metodologías a equipos reales. Escríbenos si quieres una sesión de trabajo o una consultoría sobre agentes IA y SDD.