Navegador, Vault y pagos
Navegador, Vault y pagos
Objetivos
- Saber qué puede hacer Nod en su navegador y cuándo te pide tomar el control.
- Guardar logins, claves de autenticador y tarjetas en Vault.
- Entender por qué el modelo nunca recibe los secretos.
- Distinguir un login guardado de una sesión guardada.
- Aprobar un pago y leer su resultado.
El navegador de Nod
Nod tiene su propio navegador para usar sitios web como lo harías tú. Corre en el ordenador de Nod, separado de tu navegador: no comparte pestañas, cookies ni contraseñas guardadas.
Qué puede hacer:
- Abrir páginas, hacer clic, escribir, rellenar formularios y elegir opciones.
- Leer la página y mirar capturas de pantalla, incluidos controles visuales y de canvas.
- Ejecutar JavaScript en la página.
- Descargar archivos y subir archivos desde su workspace, de hasta 90 MB cada uno.
- Iniciar sesión con credenciales guardadas en Vault, sin ver la contraseña.
Qué pasos corren solos
Los pasos que forman parte del camino se ejecutan sin preguntar: un banner de cookies, añadir algo a la cesta o elegir la entrega. Antes de un paso que pueda enviar, pagar o cambiar algo que no pediste, Nod pregunta. Pagar con una tarjeta guardada siempre requiere tu aprobación.
En los banners de cookies, las elecciones se quedan en el navegador de Nod, y Nod elige la opción que comparte menos.
Tomar el control
sequenceDiagram
actor Tu as Tú
participant Nod
participant B as Navegador de Nod
Nod->>B: Llega a un paso que no puede terminar
Nod-->>Tu: Panel Browser en el chat con You have control
Tu->>B: Haces clic, escribes y te desplazas
Tu->>Nod: Return to Nod
Nod->>B: Mira la página para ver qué hiciste
Nod-->>Tu: Continúa la tarea
- Abre Nod en el escritorio o en la web. La página en vivo aparece en un panel Browser bajo el mensaje de Nod. El panel dice You have control cuando está listo.
- Haz clic, escribe y desplázate. Usa Back y Reload si hace falta, o Enlarge browser para verla más grande.
- Al terminar, selecciona Return to Nod. Nod mira la página para ver lo que hiciste y continúa.
Nod no mira ni actúa mientras tienes el navegador. Si empezaste por Telegram o WhatsApp, abre Nod para tomar el control: las apps de chat no pueden mostrar la página. Una tarea que espera en su navegador muestra Open browser en su tarjeta.
Si la vista se desconecta, Reconnect view reintenta. El navegador queda reservado hasta 30 minutos; después Nod puede cerrarlo y la página puede perderse.
CAPTCHAs, passkeys y aprobaciones en el teléfono
| Situación | Qué hace Nod |
|---|---|
| CAPTCHA o verificación humana | Intenta primero el reto, con hasta tres intentos informados. Ante un bloqueo, un límite de peticiones o un bloqueo de cuenta, te cede el navegador y te dice qué intentó |
| Passkey | Falla de inmediato, porque las passkeys viven en tus dispositivos. Hay que usar otro método, como una contraseña guardada |
| Aprobación en otro dispositivo | Te cuenta lo que dice la página y la comprueba cada 15 segundos, hasta 8 veces |
Resolver un CAPTCHA depende del modelo, y algunos sitios bloquean los navegadores automatizados.
Un navegador por cada trabajo
El chat, cada ejecución programada o en segundo plano y cada subagente tienen su propio navegador. Cuando pides varias cosas independientes, como precios de tres tiendas, Nod puede repartir el trabajo entre subagentes que navegan a la vez.
| Límite | Valor |
|---|---|
| Navegadores simultáneos | 4 |
| Protección de un navegador usado recientemente | 5 minutos |
| Espera de un navegador que te necesita | 30 minutos |
| Descarga o subida | 90 MB por archivo |
Vault
Vault, en la barra lateral, guarda tus logins de sitios web y tus tarjetas. Nod puede iniciar sesión con un login guardado, pero el modelo nunca recibe la contraseña: el servidor de Nod la escribe en el sitio.
Añadir un login
- Abre Vault, selecciona Add y luego Login.
- Escribe un Name reconocible, como “Work reports”, y el Website domain.
- Escribe el usuario o correo y la Password.
- Si el sitio pide un código de una app de autenticación, pega su clave de configuración o su enlace
otpauth://en Authenticator key. - Selecciona Save.
Website domain acepta un dominio o una URL HTTPS completa. Nod guarda solo el protocolo, el host y el puerto.
Otras formas de añadir logins:
| Forma | Cómo |
|---|---|
| Importar | Add → Import passwords con un CSV exportado de Chrome, 1Password u otro gestor. Borra después el archivo exportado, porque no está cifrado |
| Durante una tarea | Nod abre un formulario privado Sign in. Escribe la cuenta y la contraseña y selecciona Save and continue |
| Desde 1Password | En el formulario privado, selecciona Use 1Password, aprueba la solicitud en 1Password y elige el login. Nod guarda una copia en Vault |
La integración con 1Password necesita la app 1Password 8 junto al runtime de Nod, con Settings → Developer → Integrate with other apps activado. Funciona con un asistente local de escritorio o una instalación desde código, no con un cliente conectado a un servidor remoto.
Cómo funciona el inicio de sesión
sequenceDiagram
actor Tu as Tú
participant Nod
participant S as Servidor
participant W as Sitio web
Tu->>Nod: Get this week's numbers from the reports site
Nod->>W: Lee la página de inicio de sesión
Nod->>S: Usa Work reports en estos campos
S->>S: Comprueba tarea, cuenta y origen exacto
S->>S: Reserva un solo uso
S->>W: Escribe y envía en privado
W-->>Nod: Página tras el inicio, con secretos enmascarados
Nod-->>Tu: Aquí están los números
Nod elige la cuenta, los campos y el botón de envío. El servidor escribe y envía en un paso privado que Nod no puede observar.
| Elemento | Qué recibe el modelo |
|---|---|
| Login guardado | Su nombre, su sitio y los dos primeros caracteres del usuario |
| Tarjeta guardada | Su nombre, marca, últimos cuatro dígitos y vencimiento |
| Contraseña o código | Solo si el paso privado terminó |
| Clave de autenticador | Nada. Nod introduce el código actual por sí mismo |
| Página tras el inicio | La página en vivo, con contraseña y códigos eliminados del texto y enmascarados en las capturas |
Orígenes exactos
Un login funciona solo en su origen exacto: protocolo, host y puerto. El navegador comprueba el origen real de cada campo, incluidos los que están dentro de marcos, de modo que una página parecida no puede recibir tu contraseña.
Para un login guardado para https://reports.example.com:
| Página | ¿Puede usar el login? |
|---|---|
https://reports.example.com/weekly | Sí, la ruta no importa |
https://login.example.com | No, es otro host |
http://reports.example.com | No, es otro protocolo |
https://reports.example.com:8443 | No, es otro puerto |
Cuándo pregunta antes
- Qué cuenta. Nod reutiliza el único login guardado que encaja. Si varios podrían aplicar y no dijiste cuál, pregunta.
- Si iniciar sesión. El mismo verificador que decide las acciones de apps comprueba si tus mensajes recientes o tus reglas necesitan ese sitio. Si no, Nod pregunta, por ejemplo “Sign in to reports.example.com?”. Mencionar un dominio no es consentimiento.
- Ejecuciones programadas. Se comprueban contra la instrucción que creó la programación y tus reglas.
- Trabajo en segundo plano. Se comprueba contra tu instrucción permanente y tus reglas.
Un sí cubre ese sitio y esa cuenta durante el resto de la tarea. Una tarea nueva se comprueba otra vez.
Códigos de verificación
| Origen del código | Cómo lo gestiona Nod |
|---|---|
| App de autenticación | Si el login guardado tiene una clave de autenticador, Nod introduce el código actual. La clave nunca sale del servidor |
| Correo | Nod puede obtener el código en privado desde tu buzón conectado. El servidor comprueba remitente, destinatario, hora y cuenta antes de introducirlo, y el modelo no lo ve |
| Tú | Lo escribes en el formulario privado, o lo envías solo en el chat donde Nod lo pidió, por ejemplo 482913 |
Mientras hay un código pendiente, Nod rechaza un mensaje que mezcle el código con otras palabras, como “mi código es 482913”. No lo envía ni lo muestra al modelo, y te pide enviar el código solo.
Cuando Nod lee correo a través de tus apps, una comprobación aparte revisa cada mensaje antes de que el modelo lo vea y oculta el contenido de los que dan acceso a una cuenta: códigos de un solo uso, enlaces de inicio de sesión o de restablecimiento de contraseña, contraseñas temporales, códigos de recuperación, API keys o tokens. La documentación aclara que, como cualquier modelo, puede pasar alguno por alto.
Sesiones de navegador guardadas
Una sesión guardada mantiene un sitio con la sesión iniciada dentro del navegador privado de Nod. Sirve para inicios de sesión que un login guardado no puede resolver, como un enlace mágico o un código en tu teléfono.
- Pide a Nod en el chat que se conecte a un sitio y guarde la sesión. Incluye la dirección y qué cuenta usar.
- Nod abre el sitio en un perfil privado nuevo. Inicia sesión con el formulario seguro o tomando el navegador.
- Nod guarda la sesión cuando ve que la sesión está iniciada. Se gestiona en Vault.
| Login guardado | Sesión guardada | |
|---|---|---|
| Qué se guarda | Usuario y contraseña, cifrados por Vault | El perfil del navegador: cookies y almacenamiento del sitio |
| Cómo se añade | Add → Login, una importación o el formulario privado | Iniciando sesión una vez en el navegador de Nod |
| Cómo lo usa Nod | El servidor escribe los valores en los campos | Nod abre el perfil con la sesión iniciada |
| Dónde funciona | En campos del origen exacto del login | En cualquier sitio público, nunca en tu red local |
| Para qué sirve | Inicio con usuario y contraseña | Inicios que haces a mano, como enlaces mágicos |
Para cerrar una sesión, ábrela en Vault y selecciona Sign out, que borra el perfil guardado. Si Vault muestra Sign-in needed, usa Sign in again.
Una sesión guardada no está cifrada por Vault. Es un perfil de navegador guardado junto con los demás datos de Nod. Una vez iniciada la sesión, Nod puede actuar en cualquier parte de ese sitio, y Vault no revisa cada clic. Conviene proteger el equipo donde corre Nod.
Revisar y cambiar el acceso
- Usage lista cada inicio de sesión, código, uso de sesión guardada, pregunta, intento retenido, revelación y cambio de permiso, con la tarea y el motivo.
- Vault lista tus logins, tarjetas y sesiones guardadas. Abre uno para editarlo, revelarlo, copiarlo o borrarlo. Cada revelación queda registrada.
Cómo se guardan los secretos
Los logins guardados, sus claves de autenticador y las tarjetas se cifran con AES-256-GCM. Cada valor está ligado a ti, a su registro y a su propósito, y la clave se guarda fuera de la base de datos.
| Dónde corre Nod | Clave |
|---|---|
| Asistente local de escritorio | Generada por la app y protegida por el almacenamiento seguro del sistema |
| Desde código en macOS | El llavero de macOS, o NOD_VAULT_KEY si la defines |
| Desde código en Linux | Un archivo privado en NOD_DATA_ROOT/vault/master-key, o NOD_VAULT_KEY si la defines |
| Servidor propio | NOD_VAULT_KEY en el archivo de entorno privado del servidor |
Vault falla cerrado: Nod comprueba la clave contra los datos existentes antes de usar o escribir nada, y una clave incorrecta o ausente detiene Vault sin sobrescribir datos. Un login que la clave no puede abrir muestra Can’t be opened y se puede borrar.
Pagos
Nod puede completar un checkout con una tarjeta guardada en Vault, pero solo después de que apruebes ese pago concreto. El modelo nunca ve el número de la tarjeta ni el código de seguridad.
Guardar una tarjeta
- Abre Vault, selecciona Add y luego Payment card.
- Escribe un Name, el Cardholder name, el Card number y la Expiry date.
- Selecciona Save.
Guardar una tarjeta no aprueba ningún pago. Nod nunca guarda el código de seguridad: lo escribes en cada pago.
Aprobar un pago
Cuando Nod terminó de rellenar el resto del checkout, prepara una solicitud de pago ligada a estos datos:
| Ligada a | Qué significa |
|---|---|
| La tarjeta y su versión | Editar la tarjeta cancela la solicitud |
| La tienda | El origen de la página de checkout |
| La página de checkout | La página exacta que Nod preparó |
| Destinos de los campos de tarjeta | El origen real de cada campo, incluidos los marcos de pago |
| El botón de envío | El único control que Nod eligió |
| Importe y moneda | Tal como aparecen en la página |
En la web o el escritorio, selecciona la acción de pago para abrir Approve payment junto al chat. Comprueba el importe, la tienda, la tarjeta y los destinos, escribe el código de seguridad y envía.
Una solicitud más nueva, un mensaje tuyo más reciente en la misma conversación, una tarjeta modificada o Stop la dejan inutilizable.
sequenceDiagram
actor Tu as Tú
participant S as Servidor
participant T as Tienda
participant Nod
Tu->>S: Código de seguridad
S->>S: Comprueba la versión de la tarjeta y reserva un uso
S->>T: Escribe la tarjeta y envía en privado
T-->>Nod: Página tras el envío, con valores enmascarados
Nod->>Nod: Lee el resultado de la tienda
Nod-->>Tu: Pedido confirmado, o qué salió mal
Tarjeta enviada no es pago hecho. Vault registra que la tarjeta se envió, con el importe. Después Nod lee la página de la tienda y te cuenta el resultado, porque solo la tienda y tu banco deciden si el pago pasó. Si la operación se interrumpió, Vault muestra Result unknown: revisa el pedido antes de intentarlo de nuevo.
Desde Telegram o WhatsApp no se pueden aprobar pagos ni recibir códigos de seguridad. Nod te pide abrir la misma conversación en la app web o de escritorio.
Límites que señala la documentación: una tarjeta guardada no hace que el emisor imponga el importe o la tienda, un sitio web todavía puede cambiar el carrito, y guardar una tarjeta en Vault no es una declaración de cumplimiento de PCI DSS.
Actividad
- Añade un login de prueba en Vault con su dominio exacto.
- Pide a Nod que entre en ese sitio y descargue un documento. Observa si pregunta antes de iniciar sesión.
- Abre Usage y localiza el registro de ese inicio de sesión.
- Toma el control del navegador en una página cualquiera y devuélvelo con Return to Nod.
- Revisa en Vault qué sesiones guardadas existen y cierra la que no uses con Sign out.
Autoevaluación
1. ¿Recibe el modelo la contraseña de un login guardado?
No. El servidor la escribe en el sitio en un paso privado. El modelo recibe el nombre del login, su sitio y los dos primeros caracteres del usuario.
2. ¿Funciona un login guardado para https://reports.example.com en https://login.example.com?
No. El login funciona solo en su origen exacto: protocolo, host y puerto.
3. ¿Qué pasa cuando un sitio pide una passkey?
La solicitud falla de inmediato, porque las passkeys viven en tus dispositivos. Hay que usar otro método de inicio de sesión.
4. ¿Qué diferencia hay entre un login guardado y una sesión guardada?
El login guarda usuario y contraseña cifrados y el servidor los escribe en campos del origen exacto. La sesión guarda el perfil del navegador con cookies, sin cifrado de Vault, y sirve para inicios que se hacen a mano.
5. ¿Guarda Nod el código de seguridad de una tarjeta?
No. Se escribe en cada pago, en el formulario Approve payment.
6. ¿Qué significa Result unknown en Vault tras un pago?
Que la operación se interrumpió y no se sabe si el pago pasó. Hay que revisar el pedido antes de reintentar.
Lista de control
- Sé tomar el control del navegador y devolverlo.
- Guardé al menos un login con su dominio exacto.
- Sé enviar un código de verificación solo, sin otras palabras.
- Sé cuándo usar una sesión guardada en lugar de un login.
- Sé que cada pago requiere mi aprobación y el código de seguridad.
- Reviso los inicios de sesión y los usos de tarjeta en Usage.
Anterior: Tareas, programaciones y nudges · Siguiente: Aprobaciones, reglas y memoria