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

# Visión general de integraciones

> Amplía Humalike mediante dominios de proveedor independientes y versionados.

Humalike funciona de forma autónoma y mantiene el comportamiento específico de
cada servidor detrás de proveedores. Un proveedor es un descriptor Lua que un
recurso independiente registra a través de un export público.

## Dominios

| Dominio       | Lado     | Responsabilidad                                                               |
| ------------- | -------- | ----------------------------------------------------------------------------- |
| `player`      | Servidor | Identidad del personaje, estado de carga, trabajos, servicio, notificaciones. |
| `inventory`   | Servidor | Añadir un objeto al inventario de un personaje.                               |
| `dispatch`    | Servidor | Traducir un incidente neutral al sistema de dispatch del servidor.            |
| `actions`     | Servidor | Ejecutar acciones de NPC específicas del servidor.                            |
| `interaction` | Cliente  | Añadir/eliminar opciones de interacción con NPC y mostrar progreso.           |

Los dominios son deliberadamente independientes. Un adaptador de jugador no debe
elegir además una implementación de inventario, dispatch, acciones o
interacción.

## Selección

Los proveedores declaran un nombre, una versión de API, una prioridad y un
callback opcional de disponibilidad. `auto` selecciona el único proveedor
disponible con la prioridad más alta. Un empate es `ambiguous`; Humalike no
adivina.

Los callbacks del proveedor se ejecutan en el recurso que los registró, así que
pueden usar el objeto de framework local y los exports de ese recurso.

## Propiedad y ciclo de vida

* Los nombres de proveedor pertenecen al recurso que los registra.
* Un recurso distinto no puede reemplazar ese nombre de proveedor.
* Volver a registrar el mismo nombre desde el mismo recurso es idempotente.
* Detener el recurso propietario elimina automáticamente sus proveedores.
* Iniciar o detener una dependencia vigilada reevalúa la disponibilidad.
* Reiniciar Humalike crea una nueva época de tiempo de ejecución y emite
  `humalike:integration:ready` tanto en el servidor como en el cliente.

Escucha el evento ready y vuelve a registrar. Esto permite que cualquiera de los
dos recursos arranque primero y hace seguros los reinicios individuales.

## Qué va en un puente

* Búsquedas de jugador y reglas de trabajo específicas del framework.
* Llamadas al inventario y listas de objetos permitidos.
* Traducción de eventos de dispatch.
* Validación y ejecución de acciones personalizadas.
* Integración con el sistema de target o la UI.
* Traducción de los eventos de rol del servidor a los eventos neutrales de Humalike.

No copies los internos de Humalike ni modifiques el directorio publicado.
Empieza por la [guía del puente personalizado](/es/ai-npc/integrations/custom-bridge).

## Siguiente

* [Construir un puente personalizado](/es/ai-npc/integrations/custom-bridge).
* [Leer la API de proveedores](/es/ai-npc/integrations/provider-api).
* [Reportar eventos de rol del servidor](/es/ai-npc/integrations/world-events).
