Gasto, operación y problemas

Por: Artiko
nodcostosrespaldoactualizaciontroubleshootingoperaciondocker

Gasto, operación y problemas

Objetivos

  • Leer la página Usage y fijar un límite mensual.
  • Entender los check-ins de gasto de las tareas.
  • Respaldar, restaurar y actualizar un servidor propio.
  • Rotar el token de acceso.
  • Resolver los problemas más frecuentes.

Gasto y uso

Nod no cobra nada. Tu proveedor de modelos te factura las peticiones que Nod hace con tu clave o tu plan.

La página Usage

Abre Usage en la barra lateral (⌘5 en Mac, Ctrl+5 en Windows o Linux).

  • La frase de arriba. Con un modelo de API seleccionado, muestra el gasto de API del mes y tu límite mensual. Selecciona el total para inspeccionarlo o el límite para cambiarlo. Con un plan de ChatGPT, indica que el uso viene de ese plan.
  • La lista. Peticiones a modelos, acciones en apps conectadas, inicios de sesión y usos de tarjeta, agrupados por día. Cada línea indica su origen, como Schedule, Activity check o Task Nod started.
  • Las palabras que autorizaron. Bajo una acción que tus palabras permitieron se muestran esas palabras.
  • El gráfico. Al seleccionar el total del mes aparece un gráfico con una previsión, por ejemplo “On track for $12.40”, y cuánto fue trabajo en segundo plano.

Cada acción de app queda registrada, incluidas las lecturas. Los mensajes del chat no incluyen costos.

Cómo se cuenta cada modelo

UsasPrecioLímite mensualCheck-ins de tareas
Un modelo de pago por API key o cuenta en la nubeCosto estimado de APICuentaCuenta
Un plan de ChatGPTEstimación a precio de API de lo que cubrió tu planNo cuentaCuenta, a precios de API
Un modelo sin precio: servidor compatible con OpenAI, modelo gratuito o token planNo priceNo cuentaNo cuenta

Los costos son estimaciones de Nod según el precio de API de cada modelo. La factura de tu proveedor es la que vale.

Límite mensual

  1. Selecciona un modelo de API y abre Usage.
  2. En la frase de arriba, selecciona no monthly limit o tu límite actual.
  3. Escribe un importe en dólares estadounidenses, desde 1 dólar, y selecciona Save.

Para quitarlo, selecciona el límite y luego Remove. También puedes decírselo a Nod: “Set my monthly limit to $40”. Al terminar la configuración inicial, Nod fija un límite de 200 dólares.

flowchart TD
    P["Petición nueva<br/>chat o segundo plano"] --> C{"¿Gasto del mes<br/>menor que el límite?"}
    C -- "sí" --> W["Nod trabaja"]
    C -- "no" --> S["Se detiene antes de llamar al modelo"]
    S --> M["Mensaje que nombra el límite<br/>y pregunta si subirlo o quitarlo"]
    M --> R{"Tu respuesta"}
    R -- "Raise it to $300" --> W
    R -- "Remove the limit" --> W
    R -- "nada" --> F["Pausa hasta el día 1<br/>del mes siguiente"]

Al llegar al límite:

  • Las programaciones, las tareas y el trabajo en segundo plano se detienen antes de llamar al modelo.
  • Tus mensajes siguen llegando. Nod solo responde, lee el uso y cambia límites.
  • El trabajo que ya está en marcha puede terminar, y una acción que ya aprobaste se ejecuta una vez.
  • La pausa se levanta el primer día del mes siguiente, o en cuanto subes o quitas el límite.

Check-ins de tareas

Una tarea te avisa cuando su gasto desde tu último mensaje supera el importe de check-in, que por defecto es de 5 dólares. Nod se detiene antes de su siguiente paso, indica el costo y pregunta si quieres seguir:

“Paused at the $5 check-in. Reply to keep going.”

  • Si respondes que sí, la tarea continúa hasta gastar ese importe otra vez.
  • Si respondes que no, Nod detiene la tarea.
  • Para cambiarlo: “Check in when a task passes $20” o “Stop checking in on tasks”.

Las comprobaciones de confianza y de confirmación cuentan para el límite mensual, y las que ocurren durante una tarea también cuentan para su check-in.

Programaciones y voz

  • En Scheduled, una programación recurrente activa muestra su costo mensual previsto cuando hay uso con precio.
  • Una respuesta de voz sin precio conocido muestra No price.
  • Desde Telegram o WhatsApp, /usage devuelve el gasto del mes con un PDF de extracto.

Operar un servidor propio

Los comandos se ejecutan desde la carpeta del bundle o desde nod/deployment/self-host. Con el perfil HTTPS, añade --profile https a los comandos de arranque, parada y estado.

Estado y parada

docker compose ps
docker compose logs --tail 100 server
docker compose stop
docker compose up -d --wait

docker compose stop detiene el stack sin borrar datos.

No uses docker compose down --volumes ni borres los volúmenes de la instalación, salvo que quieras eliminar sus datos.

Respaldar

  1. Espera a que termine el trabajo activo.
  2. Mantén la configuración en .env y aplica los cambios pendientes.
  3. Ejecuta el respaldo con un directorio de destino nuevo cuyo directorio padre ya exista:
sh backup.sh /absolute/path/to/nod-backup-2026-10-23

El comando detiene el servidor, el navegador y el workspace mientras copia. Al terminar vuelve a arrancar solo los servicios que estaban corriendo, también si el respaldo falla. Rechaza una DATABASE_URL personalizada.

Elemento del respaldoQué conserva
.envToken de acceso, clave de Vault, contraseña de la base de datos y tus ajustes
postgres.dumpConversaciones, ajustes, programaciones y credenciales cifradas
server-data.tar.gzEstado del servidor, transcripciones y datos del perfil local
workspace-data.tar.gzArchivos creados en el workspace
workspace-tools.tar.gzHerramientas instaladas en el workspace
browser-data.tar.gzPerfiles del navegador y estado guardado
source-commitRevisión que hay que restaurar antes de arrancar Nod
completeMarcador que exige el comando de restauración

El respaldo contiene secretos. Guárdalo cifrado, restringe quién puede leerlo y cópialo fuera del servidor. Sin la clave de Vault original, la base de datos no puede recuperar las credenciales guardadas. Los certificados TLS no van incluidos: Caddy obtiene certificados nuevos al arrancar.

Restaurar en una instalación nueva

flowchart TD
    A["Conserva la instalación original"] --> B["Carpeta nueva con la revisión<br/>indicada en source-commit"]
    B --> C["sh restore.sh con un nombre<br/>de proyecto Compose nuevo"]
    C --> D["Revisa el .env restaurado<br/>dirección pública y PORT"]
    D --> E["Detén el servidor original"]
    E --> F["Arranca el restaurado"]
    F --> G["Comprueba historial, archivos,<br/>modelos, canales y programaciones"]
  1. Conserva la instalación original hasta haber comprobado la restauración.

  2. Prepara una carpeta nueva con la misma revisión que el respaldo. Con un checkout de código:

    git clone https://github.com/n8n-io/nod.git nod-restored
    cd nod-restored
    git checkout <commit-from-source-commit>
    cd deployment/self-host
  3. Restaura bajo un nombre de proyecto Compose nuevo. No ejecutes setup.sh antes: el respaldo aporta las claves originales.

    sh restore.sh /absolute/path/to/nod-backup-2026-10-23 nod-restored
  4. Revisa el .env restaurado. Cambia la dirección pública si cambió. Si el servidor original sigue en la misma máquina, elige otro PORT.

  5. Detén el servidor original antes de arrancar el restaurado: dos copias pueden ejecutar las mismas programaciones o recibir mensajes del mismo bot.

  6. Arranca la instalación restaurada:

    docker compose up -d --build --wait

    Con un bundle se usa sh install.sh, y sh install.sh --https para una dirección pública.

Una restauración devuelve los datos al momento del respaldo. No deshace mensajes ni acciones posteriores.

Actualizar una instalación desde código

  1. Lee las notas de la release y crea un respaldo.
  2. Detén el stack, cambia a la etiqueta o commit que quieras ejecutar, y reconstruye:
docker compose stop
git fetch origin --tags
git checkout <release-tag-or-commit>
docker compose up -d --build --wait
  1. Abre Nod, confirma el historial y los archivos, y revisa el estado de los canales.

Las migraciones de base de datos se ejecutan al arrancar Nod. No se debe apuntar una versión anterior de la aplicación a una base de datos ya actualizada. Para volver atrás, se restaura el respaldo previo a la actualización en una instalación nueva.

Actualizar un bundle

  1. Descarga el bundle nuevo para la misma arquitectura y verifica su checksum.

  2. Haz un respaldo y conserva el bundle antiguo junto a él.

  3. Detén todo el stack:

    docker compose --profile https stop
  4. Desde el directorio padre de la instalación, descomprime el bundle nuevo sobre el existente:

    tar -xzf nod-server-linux-<architecture>-<new-commit>.tar.gz
    cd nod-server-linux-<architecture>
    sh install.sh

El bundle no contiene .env ni volúmenes de datos, y el instalador conserva el .env existente. No se cambia COMPOSE_PROJECT_NAME durante una actualización, porque es lo que selecciona los volúmenes existentes.

Rotar el acceso

openssl rand -hex 32
  1. Genera un token nuevo con el comando anterior.

  2. Reemplaza NOD_AUTH_TOKEN en .env.

  3. Recrea el servidor:

    docker compose up -d --wait server
  4. Reconecta los clientes web y de escritorio con el token nuevo.

El token anterior deja de dar acceso. Las credenciales de los canales son independientes.

No reemplaces NOD_VAULT_KEY para rotar el acceso. Esa clave cifra las credenciales guardadas. Cambiarla sin volver a cifrar los registros los deja ilegibles.

Resumen por tipo de instalación

App de escritorioDesde códigoServidor propio
ActualizarAutomático, o Check for Updates…git pull y pnpm startEtiqueta nueva y docker compose up -d --build --wait, o bundle nuevo
RespaldarSin procedimiento con soporteCopiar carpeta de datos, volúmenes y clave de Vault con Nod detenidosh backup.sh
RestaurarSin procedimiento con soporteSin procedimiento probadosh restore.sh

Solución de problemas

Instalación y arranque

ProblemaQué hacer
Use Node.js 24.21.0 or newer.Instala una versión más reciente de Node.js
Docker o Compose fallanComprueba que Docker corre y que docker compose version informa v2
El puerto está en usoCambia PORT en .env
Perdiste el enlace de acceso (instalación local sin NOD_AUTH_TOKEN)Borra access-key en .local/ y reinicia
macOS bloquea el primer arranquePrivacidad y seguridad → Open Anyway. En un Mac administrado puede hacer falta autorización de TI
macOS pide acceso al llavero tras una actualizaciónAprueba el diálogo de macOS. No escribas la contraseña del Mac en el chat
No se puede desbloquear el token guardadoReconnect con la misma dirección y NOD_AUTH_TOKEN
Espacio insuficiente para el runtime en macOSHace falta el espacio del runtime extraído más 512 MiB
Espacio insuficiente en WindowsAl menos 20 GB libres
WSL no está instaladoInstall WSL, aprobar el permiso de administrador y reiniciar
PostgreSQL falla tras una actualización del kernel de la máquina virtual de MacLos kernels de Ubuntu 7.0.0-42 y 7.0.0-43 pueden bloquear señales en contenedores. Actualiza a una versión de Nod con la reparación. No borres la máquina virtual ni la base de datos

Modelos, apps y canales

ProblemaQué hacer
El puerto 1455 está ocupadoOtra app usa el callback de ChatGPT. Libera el puerto o usa una API key
Falla la conexión de una appVuelve a Apps → Connect y mantén abierta la página de inicio de sesión
Inicio de sesión de apps en un servidor remoto con dirección inaccesibleActualiza el servidor y fija NOD_PUBLIC_URL a la dirección exacta que abres
WhatsApp Cloud API no recibe mensajesNecesita HTTPS público. Telegram con polling no lo necesita
El bot de Telegram ya tiene un webhookElimínalo o configura una URL pública
Un modelo local se repite u olvida herramientasSube el contexto a 65.536 o más y recarga el modelo

Tareas y acciones

ProblemaQué hacer
Una tarea programada no se ejecutóComprueba que el equipo estaba despierto y Nod abierto. En un asistente remoto, revisa el servidor
Una acción quedó como uncertainNod no la reintenta sola. Pídele que compruebe el resultado antes de repetirla
Nod pregunta casi todo, o actúa sin preguntarRevisa NOD_TRUST_MODEL y la conexión del verificador
Todo está en pausaRevisa en Usage si se alcanzó el límite mensual

Enviar feedback

Send feedback, en el chat o en el menú de Nod, envía el informe al destinatario que indica el diálogo, que por defecto es el equipo de Nod en n8n. Incluye un informe de diagnóstico salvo que lo desmarques. Review permite revisarlo antes. La comunidad está en Discord (discord.gg/n8n) y en el foro community.n8n.io.

No borres el perfil, la máquina virtual ni la caché del runtime para arreglar un problema. La documentación pide reintentar primero y, si el fallo sigue, enviar feedback con el informe de diagnóstico.


Actividad

  1. Abre Usage y lee la frase de arriba. Anota el gasto del mes y el límite.
  2. Cambia el límite mensual desde el chat y verifica el cambio en Usage.
  3. Si operas un servidor, ejecuta sh backup.sh con un destino nuevo y lista los archivos generados.
  4. Copia el respaldo fuera del servidor y comprueba que incluye .env y complete.
  5. Rota NOD_AUTH_TOKEN y reconecta la app de escritorio.

Autoevaluación

1. ¿Quién cobra por el uso de Nod?

El proveedor de modelos, por las peticiones que Nod hace con tu clave o tu plan. Nod no cobra nada.

2. ¿Cuenta un modelo local para el límite mensual?

No. Sus peticiones aparecen como No price y no cuentan para el límite ni para los check-ins.

3. ¿Qué pasa con tus mensajes cuando se alcanza el límite mensual?

Siguen llegando. Nod solo responde, lee el uso y cambia límites, hasta que subes o quitas el límite o empieza el mes siguiente.

4. ¿Por qué hay que guardar la clave de Vault con el respaldo?

Porque sin la clave original la base de datos no puede recuperar las credenciales guardadas.

5. ¿Por qué se detiene el servidor original antes de arrancar el restaurado?

Porque dos copias pueden ejecutar las mismas programaciones o recibir mensajes del mismo bot.

6. ¿Qué variable se cambia para rotar el acceso y cuál no?

Se cambia NOD_AUTH_TOKEN. No se cambia NOD_VAULT_KEY, porque dejaría ilegibles las credenciales guardadas.


Lista de control

  • Sé leer Usage y tengo un límite mensual definido.
  • Sé cambiar el importe del check-in de tareas.
  • Tengo un respaldo fuera del servidor, con .env y la clave de Vault.
  • Sé restaurar en una instalación nueva con otro nombre de proyecto.
  • Sé actualizar mi tipo de instalación.
  • Sé rotar NOD_AUTH_TOKEN.

Cierre del tutorial

Con este capítulo queda cubierto el recorrido completo: instalar Nod en escritorio, desde código o en un servidor; configurar modelos, variables, apps y canales; y usarlo con tareas, programaciones, navegador, Vault y aprobaciones. Nod es una vista previa en desarrollo activo, así que conviene contrastar los detalles con la documentación oficial antes de depender de ellos.


Anterior: Telegram y WhatsApp · Volver al: Índice