vfven's picture
Create specialized/__init__.py
550e14f verified
Raw
History Blame
1.03 kB
# agents/specialized/__init__.py
#
# Fachada pública del módulo. main.py sigue importando:
# from agents.specialized import run_specialized_agent
# sin necesitar ningún cambio.
from agents.specialized import (
analyst,
backend_dev,
frontend_dev,
writer,
image_agent,
)
# Mapa agente_key → módulo
_AGENT_MAP = {
"analyst": analyst,
"backend_dev": backend_dev,
"frontend_dev": frontend_dev,
"writer": writer,
"image_agent": image_agent,
}
async def run_specialized_agent(agent_key: str, task: str, context: dict = None) -> dict:
"""
Punto de entrada único. Delega al módulo correspondiente según agent_key.
Si el agente no existe devuelve un error estructurado (no lanza excepción).
"""
module = _AGENT_MAP.get(agent_key)
if module is None:
return {
"agent": agent_key,
"error": f"Agente '{agent_key}' no implementado aún",
"success": False,
}
return await module.run(task, context)