saltar al contenido principal
Explorar la documentación

Generar el kit de integración

syncanix generate escribe un directorio syncanix/ en tu proyecto —el instalador del widget, tus tipos, los archivos de registro y el requisito de CSP— y nunca modifica un archivo que hayas escrito tú.

syncanix generate escribe todo lo que Syncanix necesita como código en un solo directorio de tu proyecto. Crea archivos nuevos y solo archivos nuevos: nada de lo que hace puede cambiar algo que hayas escrito, así que no hay ningún diff tuyo que revisar ni nada que deshacer.

npx syncanix generate --key pk_live_…

Qué obtienes

Un directorio, un archivo por responsabilidad, todo ello código legible que es tuyo:

syncanix/
  index.ts         the one file you import — installs the widget, applies everything below
  widget.ts        installs the widget from code (idempotent, with a teardown)
  types.d.ts       types for window.syncanix, so your editor knows the API
  actions.ts       functions the agent may run on the page
  components.ts    UI the agent may render in the chat
  data-sources.ts  live data the agent may read
  page-actions.ts  the routes and controls from your last scan
  csp.ts           the CSP sources the widget needs, as a value to spread
  identity.ts      your token provider (written only with --idp)

El archivo barrel es la clave: instala la cola de comandos, luego el widget y después aplica cada registro del directorio, en el orden que hace que funcionen. Así tu aplicación importa una sola ruta y nada más.

import './syncanix';

Estos archivos son tuyos para editarlos

El generador registra un hash de lo que escribió. Al volver a ejecutarlo, actualiza los archivos que no has tocado y deja los que sí, informando de ellos en lugar de sobrescribirlos, de modo que añadir tus propias acciones a actions.ts no te deja en el lado equivocado de la siguiente actualización.

Decirle a Syncanix quién es el visitante

Nombra tu proveedor de identidad y el generador escribe identity.ts para él. Recibe tu función de obtención del token como argumento en lugar de recurrir a una variable global, porque tu cliente de autenticación es algo a lo que solo puede llegar tu propio código; por eso el barrel deliberadamente no lo llama, y lo conectas tú desde donde viva ese cliente.

npx syncanix generate --key pk_live_… --idp auth0
import { connectSyncanixIdentity } from './syncanix/identity';

connectSyncanixIdentity(() => auth0.getAccessTokenSilently());

Las rutas y los controles salen de tu análisis

page-actions.ts le dice al agente a qué páginas puede llegar y qué controles puede operar. Ejecuta antes un análisis y el generador lo rellena por ti; sin él, escribe un ejemplo comentado para que lo rellenes a mano.

npx syncanix init
npx syncanix generate

O deja que lo haga la CLI por ti

Hay dos formas de instalar el widget, y cuál quieres es un hecho sobre tu repositorio más que una recomendación que podamos hacerte nosotros.

syncanix integrate
Encuentra tu framework y hace las modificaciones: el fragmento de inserción en tu HTML, tu Content-Security-Policy, las variables en .env. Apruebas cada archivo desde su diff, cada sobrescritura se respalda, se aplica el conjunto entero o no se aplica nada, y --uninstall lo deja como estaba.
syncanix generate
Escribe el kit y nada más. Recurre a esto cuando no quieras dar el visto bueno a que una herramienta modifique tu repositorio.
syncanix integrate --kit
Ambas cosas: la detección, la aprobación, las modificaciones de CSP y .env y la desinstalación, pero el código va al kit y tu HTML se queda intacto porque el kit instala el widget desde código. Tú añades la única importación.
npx syncanix integrate --kit

Próximos pasos