> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ugps.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Arquitectura IA

> Como se organiza la arquitectura de agentes, runtime y modulos IA de Raul

## Resumen

La capa de IA de Raul no vive en un solo modulo. Hoy se reparte entre un runtime compartido y cuatro frentes de producto:

* `teams-bot` para atencion interna por Teams
* `ai-support` para soporte asistido
* `quoter/ai` para enrichment y outreach comercial
* `sentry-autofix` para investigacion y parcheo de incidentes

## Arbol general

```text theme={null}
apps/api-nestjs
+-- shared/infrastructure/modules/ai-runtime.module.ts
|   +-- AiModelFactoryService
|   +-- AiPromptRegistryService
|   +-- PromptLoaderService
+-- modules/teams-bot
|   +-- AgentRouterService
|   +-- ugps_internal_support_agent
|   +-- ugps_sales_agent
|   +-- ugps_engineering_agent
+-- modules/ai-support
|   +-- ugps_support_agent
+-- modules/quoter/ai
|   +-- prospect_enrichment_agent
+-- modules/sentry-autofix
    +-- AutofixHybridAgentService
    +-- AutofixOpusLangchainService
```

## Como se reparte la responsabilidad

### Runtime compartido

El runtime compartido concentra tres piezas:

* seleccion de modelo por perfil
* resolucion de prompts desde LangSmith Hub con fallback local
* callbacks de tracing para LangSmith

Archivos fuente:

* `apps/api-nestjs/src/shared/infrastructure/modules/ai-runtime.module.ts`
* `apps/api-nestjs/src/shared/infrastructure/services/ai/ai-model-factory.service.ts`
* `apps/api-nestjs/src/shared/infrastructure/services/prompt-loader.service.ts`
* `apps/api-nestjs/src/shared/infrastructure/services/langsmith-tracing.ts`

### Teams Bot

Es la puerta de entrada para agentes internos en Teams. `TeamsBotService` recibe el mensaje, `AgentRouterService` decide la ruta y las factories del modulo construyen el agente correcto por conversacion.

Archivos fuente:

* `apps/api-nestjs/src/modules/teams-bot/teams-bot.module.ts`
* `apps/api-nestjs/src/modules/teams-bot/application/services/teams-bot.service.ts`
* `apps/api-nestjs/src/modules/teams-bot/application/services/agent-router.service.ts`

### AI Support

Expone un agente de soporte centrado en consultas de cliente y escalacion a ticket. Reutiliza el runtime compartido, pero no pasa por el router de Teams.

Archivo fuente:

* `apps/api-nestjs/src/modules/ai-support/application/agents/support-agent.ts`

### Quoter AI

Agrupa enrichment comercial y cadenas de outreach. El agente principal hoy es `prospect_enrichment_agent`, que opera sobre herramientas de investigacion comercial y registra creditos y duracion.

Archivo fuente:

* `apps/api-nestjs/src/modules/quoter/ai/application/agents/prospect-enrichment.agent.ts`

### Sentry Autofix

Corre un flujo mas estructurado que un React agent clasico. Usa un `StateGraph` con pasos de investigacion, generacion, critica y handoff.

Archivos fuente:

* `apps/api-nestjs/src/modules/sentry-autofix/application/services/autofix-hybrid-agent.service.ts`
* `apps/api-nestjs/src/modules/sentry-autofix/infrastructure/services/autofix-opus-langchain.service.ts`

## Cuando tocar cada modulo

| Si quieres cambiar... | Modulo principal | Normalmente tambien revisas |
| - | - | - |
| Routing de mensajes de Teams | `teams-bot` | prompts, tool policy, bundles |
| Herramientas disponibles por agente | `agents/tool-registry` | factories del agente |
| Modelo o temperatura por caso | runtime compartido | variables de entorno |
| Prompts remotos o fallback | runtime compartido | prompt keys del modulo |
| Soporte cliente | `ai-support` | support tools |
| Research comercial | `quoter/ai` | commercial research tools |
| Autofix de Sentry | `sentry-autofix` | GitHub, LangSmith, Foundry |

<Note>
  Si no sabes donde empezar, parte por la factory del agente o servicio que construye el flujo. En Raul casi siempre ahi se ve el modelo, prompt y bundle de tools que terminan usados en runtime.
</Note>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.