Referencia CLI
Comandos, niiro.yml, CI y los fallos que conviene conocer.
Comandos
- niiro init
- Detecta el stack, escribe niiro.yml, guarda el token del proyecto, ofrece un paso de CI. Con --project corre sin preguntas.
- niiro push
- Filtra, escanea secretos, sube el delta e informa a qué videos afecta el cambio.
- niiro status
- Último sync, cuántos videos quedaron desactualizados, enlace al portal.
- niiro login
- Guarda el token en el llavero del sistema. En CI usa NIIRO_TOKEN.
niiro.yml
include es una lista blanca: lo que no está listado no sale de tu equipo. exclude quita archivos que un patrón incluiría.
project: acme-webinclude:- src/components/**- src/app/**- tailwind.config.ts- src/styles/**exclude:- "**/*.test.*"- "**/__mocks__/**"
Siempre excluido
Aunque un patrón los incluyera: archivos de entorno, node_modules, .git, lockfiles y binarios de más de 5 MB. El token del proyecto es de solo escritura, puede crear snapshots pero nunca leer código ni nada derivado de él.
Escaneo de secretos
gitleaks corre sobre la lista filtrada antes de cada subida. Un hallazgo detiene el push e indica archivo y línea. --allow-secret <fingerprint> es un override deliberado, queda registrado en nuestro lado, y el mismo escaneo corre de nuevo en el servidor.
CI
init ofrece un workflow generado; un push manual sigue siendo equivalente. En CI el token viene de la variable NIIRO_TOKEN en vez del llavero.
name: niiroon:push:branches: [main]jobs:push:runs-on: ubuntu-lateststeps:- uses: actions/checkout@v4- run: npx @niiro/cli pushenv:NIIRO_TOKEN: ${{ secrets.NIIRO_TOKEN }}
Objetivo: ejecutar niiro push en la CI de este repositorio. Contexto: https://niiro.io/docs/cli.md 1. Añade un paso que ejecute `npx @niiro/cli push` en cada push a la rama principal. 2. Lee el token de un secreto de CI llamado NIIRO_TOKEN. 3. Abre un pull request con el cambio. Listo cuando la pipeline esté en verde y el pull request explique el paso.
Cuando algo falla
- El push nunca llega
- Ejecuta la CLI donde vive niiro.yml; en un monorepo suele ser el paquete del frontend. En CI, revisa que NIIRO_TOKEN esté definido.
- Secreto encontrado
- Excluye el archivo o rota el valor. Usa --allow-secret solo para valores que pueden ser públicos.
- Subida interrumpida
- Vuelve a hacer push: los archivos ya subidos se omiten. Un snapshot incompleto se descarta a las 24 horas.
- Framework no reconocido
- El análisis corre igual sobre el CSS crudo y nosotros revisamos tu setup. El informe lo dice abiertamente.
Actualizado 2026-08-05