Skip to main content
El plugin Logbook convierte la actividad de la pantalla en un diario de trabajo automático. Captura instantáneas periódicas de la pantalla desde un Node emparejado, las resume como observaciones con marcas de tiempo y crea tarjetas de cronología en la interfaz de control. También puede generar notas para la reunión diaria y responder preguntas sobre un día registrado. El estado propiedad de OpenClaw permanece en el Gateway, en <state-dir>/logbook/, pero el procesamiento del modelo no es necesariamente local. Las capturas de pantalla muestreadas se envían a la ruta de visión configurada; las observaciones y el texto de la cronología se envían al modelo predeterminado del agente. Utilice rutas de modelos locales para ambas etapas si el contenido de la pantalla y el texto de actividad derivado deben permanecer en la máquina. Logbook está incluido y deshabilitado de forma predeterminada. Al habilitar el plugin, se permite que el Gateway capture la pantalla porque captureEnabled tiene como valor predeterminado true.

Antes de comenzar

Se necesita:
  • Un Node conectado que exponga screen.snapshot o logbook.snapshot. El Node de la aplicación para macOS necesita permiso de grabación de pantalla. Un host de Node de macOS sin interfaz gráfica (openclaw node host run) obtiene el comando logbook.snapshot proporcionado por el plugin, respaldado por la herramienta del sistema screencapture.
  • El plugin Codex incluido debe estar habilitado y autenticado. Actualmente, Codex proporciona el contrato de extracción estructurada de imágenes que requiere Logbook. Inicie sesión con openclaw models auth login --provider openai; consulte el entorno de ejecución de Codex para conocer otras vías de autenticación.
  • Un modelo predeterminado del agente que funcione. Logbook lo utiliza para sintetizar tarjetas, notas para la reunión diaria y preguntas y respuestas sobre el día después de la fase de visión.

Inicio rápido

Habilite los plugins Codex y Logbook:
Configure un modelo de visión explícito para que el inicio sea determinista:
Si utiliza plugins.allow, incluya tanto codex como logbook. Reinicie el Gateway después de cambiar la configuración del plugin; a continuación, inspeccione los registros y abra el panel:
La descripción del Node debe incluir screen.snapshot o logbook.snapshot. Los Nodes sin interfaz gráfica anuncian logbook.snapshot solo después de activar el plugin. Consulte Solución de problemas de Nodes si falta el comando. La pestaña Logbook solo aparece si el plugin está habilitado y hay una sesión de la interfaz de control con operator.write. La fila de estado debe mostrar Capturando sin errores. Aparece una tarjeta de cronología cuando se cierra la ventana de análisis, o se puede seleccionar Analizar ahora después de capturar actividad.

Cómo funciona

  1. Captura: cada captureIntervalSeconds (30 s de forma predeterminada), Logbook invoca el comando de captura del Node seleccionado y almacena un fotograma JPEG escalado. Los fotogramas consecutivos idénticos se marcan como inactivos y se excluyen del análisis.
  2. Observación: cuando transcurre una ventana de análisis (15 minutos de forma predeterminada), el plugin toma muestras de hasta 16 fotogramas activos y los envía al modelo de visión, que devuelve observaciones de actividad con marcas de tiempo («VS Code: editando store.ts, corrigiendo un error de tipo»). Un intervalo sin capturas superior a dos minutos o la medianoche local también cierra la ventana actual.
  3. Síntesis: las observaciones y los últimos 45 minutos de tarjetas existentes se revisan para crear tarjetas de cronología (de 10 a 60 minutos cada una) con un título, un resumen, una categoría, la aplicación principal y cualquier distracción breve.
  4. Depuración: se eliminan los fotogramas con más de retentionDays días de antigüedad (14 de forma predeterminada). Se conservan las tarjetas, las observaciones y las reuniones diarias almacenadas en caché.
Los límites de los días y los relojes de la cronología utilizan la zona horaria local del Gateway, no la zona horaria del navegador. Los fotogramas y la base de datos SQLite de la cronología se encuentran en <state-dir>/logbook/.

Flujo de modelos y datos

Logbook utiliza dos rutas de modelos independientes: La base de datos SQLite completa no se envía a ninguno de los modelos. Las capturas de pantalla sin procesar solo se envían a la etapa de observación; la síntesis de tarjetas, la reunión diaria y las preguntas y respuestas reciben texto derivado.

Configuración

Todas las claves de configuración de Logbook son opcionales. Los valores numéricos se redondean a enteros y se limitan al intervalo admitido. Sin nodeId, Logbook prefiere un Node de aplicación conectado que exponga screen.snapshot y, a continuación, recurre a un Node sin interfaz gráfica que exponga logbook.snapshot. En una configuración sin fijar, un Node que falla pasa detrás de otros Nodes aptos. El control de pausa del panel solo se aplica a la sesión y se restablece cuando se reinicia el Gateway; utilice captureEnabled: false para una detención persistente.

Selección del modelo de visión

Logbook resuelve el modelo de observación en este orden:
  1. plugins.entries.logbook.config.visionModel
  2. la primera entrada de Codex compatible con imágenes en tools.media.models
Se omiten otros proveedores multimedia porque actualmente no exponen el contrato de extracción estructurada que requiere Logbook. Establecer tools.media.image.enabled: false deshabilita los valores multimedia predeterminados prestados, pero un visionModel explícito de Logbook sigue siendo aplicable.

Pestaña del panel

  • Cronología: tarjetas expandibles por actividad con colores de categoría, la aplicación principal, etiquetas de distracciones y un fotograma clave de instantánea.
  • Resumen del día: proporción de concentración, desglose por categorías y aplicaciones principales.
  • Reunión diaria: convierte el día de ayer y el de hoy en una actualización lista para pegar.
  • Preguntas sobre el día: preguntas en lenguaje natural respondidas a partir de la cronología registrada («¿cuándo revisé el pull request del Gateway?»).
  • Analizar ahora: cierra inmediatamente la ventana de captura actual en lugar de esperar al intervalo de análisis.

Métodos del Gateway

Logbook registra estos métodos RPC del Gateway: Los métodos de lectura devuelven el estado operativo o texto derivado. Los píxeles de las capturas de pantalla sin procesar, las acciones que incurren en gastos del modelo y las mutaciones en tiempo de ejecución requieren operator.write. La pestaña de la interfaz de control también requiere operator.write porque expone esas acciones y vistas previas de los fotogramas sin procesar; un cliente de solo lectura aún puede invocar directamente los métodos de texto derivado.

Notas sobre privacidad

  • Las capturas pueden contener cualquier elemento visible en pantalla, incluidos secretos. Los fotogramas nunca salen del equipo, excepto como entrada muestreada para el modelo de observación configurado.
  • Las observaciones, las tarjetas recientes y las preguntas pueden salir del equipo a través del modelo de agente predeterminado durante la síntesis de tarjetas, la generación de reuniones diarias o las preguntas y respuestas. Aplique la política de tratamiento de datos del proveedor a ambas rutas de modelos.
  • Utilice rutas locales tanto para el modelo de observación estructurada como para el modelo de agente predeterminado cuando necesite un pipeline completamente local.
  • Los fotogramas, la base de datos de la línea temporal y las capturas temporales se escriben con permisos de archivo exclusivos para el propietario.
  • Añadir screen.snapshot a gateway.nodes.commands.deny es el interruptor de desactivación de la captura de pantalla: bloquea tanto la captura del nodo de la aplicación como el propio comando logbook.snapshot de Logbook.
  • Configurar tools.media.image.enabled: false también impide que Logbook tome prestados los modelos de imágenes multimedia para el análisis; en ese caso, solo se utiliza un visionModel explícito en la configuración del plugin.

Solución de problemas

Falta la pestaña Logbook

Compruebe las tres condiciones:
  1. openclaw plugins list --enabled incluye logbook.
  2. El Gateway se reinició después del cambio en el plugin o en la lista de permitidos.
  3. La conexión de la interfaz de control tiene operator.write; las sesiones de solo lectura no reciben el descriptor de la pestaña interactiva.
Si se establece plugins.allow, debe incluir tanto logbook como codex para la configuración recomendada.

La captura informa de un error

  • Confirme que el nodo exponga screen.snapshot o logbook.snapshot.
  • Conceda el permiso Screen Recording en el Mac de captura.
  • Si se configura nodeId, confirme que coincida con el identificador o el nombre para mostrar del nodo.
  • Compruebe que gateway.nodes.commands.deny no contenga screen.snapshot.
Tras tres errores consecutivos, Logbook espera durante diez ciclos de captura y vuelve a intentarlo. Una configuración sin fijar puede cambiar a otro nodo apto.

Las capturas se realizan correctamente, pero no aparecen tarjetas

  • El estado Falta el modelo significa que no se encontró ninguna ruta de visión estructurada compatible. Habilite y autentique el plugin Codex, o establezca un visionModel explícito válido. Los fotogramas capturados permanecen pendientes mientras falta el modelo y pueden analizarse después de corregir la configuración.
  • Espere a analysisIntervalMinutes o seleccione Analizar ahora después de que se haya capturado actividad.
  • Los fotogramas idénticos consecutivos constituyen evidencia de inactividad y no entran en los lotes de análisis. Cambie la pantalla visible antes de realizar la prueba.
  • Si el lote más reciente muestra un error, corrija el problema del modelo o de autenticación y seleccione Analizar ahora. Los lotes fallidos solo se vuelven a intentar mediante esa acción explícita para evitar gastos reiterados del modelo.

Contenido relacionado