Wendov1.0 · iOS y Android

Avisos y aprobaciones

Wendo te avisa cuando Claude Code pide permiso, hace una pregunta o termina, y te deja aprobar o denegar desde el móvil. No hay servidor intermedio ni cuenta: un script en tu ordenador escribe cada evento en ~/.wendo/events.jsonl y la app lo lee por SSH con tu clave.

Dónde está

  • Bandeja: los avisos de todos tus hosts. Cada fila se puede aprobar o denegar.
  • Ajustes › Agentes › Hooks: el comando de instalación y la configuración manual.
  • Ajustes › Agentes › Notificaciones: cómo avisa la app y el topic de ntfy.

Instalar

En el ordenador (macOS o Linux; en Windows, dentro de WSL):

curl -fsSL https://wendo.lirafy.dev/install.sh | sh

Descarga wendo-hook.sh y wendo-pair.sh en ~/.wendo, instala jq y qrencode con el gestor de paquetes del sistema, añade el hook a ~/.claude/settings.json (antes guarda una copia en settings.json.bak-wendo) y muestra el QR para emparejar. Puedes repetirlo sin que se duplique nada.

Opciones, detrás de sh -s --: --no-deps (no instala paquetes), --no-claude (no toca la configuración de Claude) y --no-pair (no muestra el QR). Por ejemplo:

curl -fsSL https://wendo.lirafy.dev/install.sh | sh -s -- --no-deps

Eventos que registra: PermissionRequest, Notification, Stop, UserPromptSubmit, SessionStart y SessionEnd.

Cómo funciona una aprobación

Cuando llega un PermissionRequest, el hook espera hasta 90 segundos a que respondas desde la app. Si no respondes, no hace nada y Claude Code te pregunta en el terminal como siempre. Se puede ajustar con variables de entorno en el comando del hook:

  • WENDO_APPROVAL_TIMEOUT: segundos de espera. El timeout del hook en settings.json (120) tiene que ser mayor.
  • WENDO_BLOCKING=0: solo avisa, sin esperar respuesta.
  • WENDO_HOST: el nombre del ordenador, si en la app lo tienes con otro nombre que hostname -s.

Las preguntas (AskUserQuestion) y la aprobación de planes (ExitPlanMode) no bloquean: se contestan desde la vista de chat.

Avisos con la app cerrada

Con la app abierta, Wendo lee la bandeja cada pocos segundos. Con la app cerrada, usa ntfy:

  1. Pon NTFY_TOPIC=<un topic largo y aleatorio> delante del comando del hook.
  2. Suscríbete a ese topic en la app de ntfy.
  3. Escribe el mismo topic en Ajustes › Agentes › Notificaciones.

El topic hace de contraseña: que no sea fácil de adivinar. Con NTFY_URL puedes usar tu propio servidor de ntfy. En Android, además, hay una comprobación en segundo plano como mínimo cada 15 minutos.

Requisitos y límites

  • Necesita jq. curl solo hace falta para ntfy.
  • Por ahora solo Claude Code: el hook no se registra en otros agentes.
  • Ejecuta Claude dentro de tmux, zellij o herdr para que, al tocar un aviso, la app te lleve a su panel.
  • El plan gratis incluye 5 aprobaciones de prueba desde la bandeja. Con Pro no hay límite.