# Widget embebido

> Pon un chat con tu agente en tu propio sitio con un iframe. Disponible para agentes de motor EasyBits.

URL: https://www.ghosty.studio/docs/canales/embed

Un `<iframe>` y tu agente contesta en tu página.

> **Alcance.** Hoy el widget funciona con agentes de **motor EasyBits** (los que se crean en *Agentes → EasyBits*). Los agentes nativos de Studio llegan al embed más adelante; mientras tanto se integran por la [API](/docs/api/autenticacion).

## Incrustar

En el panel del agente copia el **token de embed** y pega:

```html
<iframe
  src="https://www.ghosty.studio/embed/TU_EMBED_TOKEN"
  style="width:100%;max-width:420px;height:600px;border:0;border-radius:16px"
  allow="clipboard-write"
></iframe>
```

El token **es** la credencial del widget: identifica al agente y limita lo que puede hacer (sólo conversar). Si se filtra, regenéralo desde el panel.

## Qué hace

- Historial guardado en el navegador del visitante (`localStorage`), sin cuentas.
- Respuestas en streaming.
- Tema claro/oscuro según el sistema.

## Qué no hace (todavía)

- No sube archivos.
- No identifica al visitante: si necesitas saber quién escribe, usa la [API](/docs/api/referencia) desde tu backend.

## Endpoints detrás del widget

Por si prefieres tu propia UI:

| Ruta | Qué hace |
|---|---|
| `GET /api/embed/lookup?embedToken=…` | Resuelve el `agentId` del token. |
| `POST /api/embed/message/:agentId` | Manda un mensaje; responde en SSE. Header `Authorization: <embedToken>`. |
