Cargar y probar en local
Carga una presencia compilada en la extensión Nowly con un paquete de desarrollo listo o soltando un zip.
Después de nowly build <slug>, todavía tienes que meter ese bundle en el navegador. Hay dos métodos locales. Ninguno usa la API de Nowly.
1. Extensión precompilada (nowly extension)
Es el camino habitual para la primera configuración. La CLI descarga una build de desarrollo de Chrome o Firefox e incluye tu presencia compilada.
nowly build youtube
nowly extension youtube # Chrome (por defecto)
nowly extension youtube --firefox
nowly extension youtube --f # Alias de FirefoxPuedes pasar varios slugs:
nowly extension youtube github figma --firefoxLas opciones de navegador son mutuamente excluyentes. Usa --chrome / --c para seleccionar Chrome explícitamente.
Luego:
- Chrome: abre
chrome://extensions, activa el modo desarrollador y elige Cargar extensión sin empaquetar →dist/extension-dev - Firefox: abre
about:debugging#/runtime/this-firefox, elige This Firefox, pulsa Load Temporary Add-on... y seleccionadist/extension-dev-firefox/manifest.json
La presencia se instala desde dev-presences.json al arrancar la extensión. Tras cambiar el código, recompila, vuelve a ejecutar nowly extension <slug> y recarga la extensión.
Para usar una build local en lugar del zip del CDN:
nowly extension youtube --chrome --from ../nowly/apps/extension/dist/chrome
nowly extension youtube --firefox --from ../nowly/apps/extension/dist/firefoxnowly extension escribe una carpeta unpacked. Úsala cuando Nowly todavía no esté cargada en el navegador.
Monorepo Nowly completo
Si clonaste nowly y ejecutaste pnpm repos (que clona presences en packages/presences), puedes incluir todas las presencias compiladas en la extensión:
nowly build youtube
pnpm build:extension:dev --bundledCarga apps/extension/dist/chrome como unpacked. Recarga después de cada rebuild.
2. Soltar un zip (nowly pack)
Usa este método cuando Nowly ya está cargada como build de desarrollo unpacked. Las instalaciones de Chrome Web Store rechazan zips sin firma. Solo recompilas la presencia, no toda la extensión.
nowly pack youtubeEse comando compila la presencia y comprime dist/presences/youtube/ en dist/packs/youtube.zip. El zip debe incluir al menos metadata.json y bundle.js. Las carpetas anidadas valen.
Luego en el panel lateral:
- Abre Ajustes → Avanzado
- Activa el modo desarrollador (siempre activo en unpacked)
- Despliega Debug
- Suelta el
.zip(o elige el archivo)
La presencia se instala con origen local. La limpieza unpacked al arrancar no la borra. Los zips sin firma solo se aceptan en un build unpacked (Cargar descomprimida). El interruptor de modo desarrollador en Ajustes solo muestra la interfaz Debug; no permite instalar zips en una build de tienda. Una build de tienda sigue exigiendo una release firmada por la API.
Después de cada cambio de código:
nowly pack youtubeVuelve a soltar el zip. No hace falta recargar la extensión unpacked salvo que hayas cambiado la extensión.
Qué método elegir
| Situación | Método |
|---|---|
| Primer setup, o Nowly no está en el navegador | nowly extension <slug> |
| Nowly ya cargada, iterar sobre una presencia | nowly pack <slug> y soltar el zip |
| Trabajas en el monorepo nowly | pnpm build:extension:dev --bundled |
Consulta también CLI.