Memories / Documentación

En esta página

Bandeja de escritorio y WebUI

La aplicación de la bandeja de Windows y de la barra de menús de macOS ofrece una vista rápida del daemon local de Memories. Ambas comparten un panel de estado integrado y un editor restringido de tarjetas ordinarias, sin fuentes, scripts ni análisis externos. El panel admite inglés, chino, japonés, alemán y francés, y se adapta a ventanas estrechas.

La proyección de estado sigue siendo de solo lectura. Cuando está desbloqueado, el editor de tarjetas acepta un ID de bóveda y ofrece un selector de tipo, campos tipados, cambio de nombre/eliminación y reordenación mediante arrastre, además de creación de plantillas reutilizables. Su POST /api/cards, autenticado y con comprobación de origen, reenvía únicamente una lista deliberada de operaciones permitidas de tarjeta/tipo mediante la CLI acompañante. No puede desbloquear, elevar privilegios, ejecutar programas ni revelar valores sensibles. Las operaciones sensibles requieren verificación nativa móvil/CLI; no existe registro biométrico/PIN en el navegador. Consulte los tipos de tarjeta.

Inicio

  • Windows: extraiga el ZIP de la versión y haga doble clic en memories-tray.exe. Manténgalo junto a memories.exe. El lanzador no abre una ventana de consola.
  • macOS: abra Memories.app desde el paquete de macOS. Aparece en la barra de menús, sin una ventana en el Dock. El paquete de la aplicación incluye su CLI acompañante.
  • Desde un terminal: memories tray abre la bandeja nativa y el panel; memories webui abre únicamente el panel del navegador y permanece en primer plano. Linux puede utilizar webui; la bandeja nativa solo se admite en Windows y macOS.
memories --home /path/to/development-home tray
memories --home /path/to/development-home webui --no-open --port 0
memories-tray --home /path/to/development-home --no-open

--home / MEMORIES_HOME utiliza el mismo almacén que la CLI. Sin una sustitución, el lanzador utiliza storage_dir de la configuración seleccionada o el directorio de inicio normal de Memories por usuario. --config PATH / MEMORIES_CONFIG selecciona un archivo TOML; consulte la configuración. --port 0 (el valor predeterminado) elige un puerto libre de bucle local; un puerto especificado también debe estar libre. El comando webui en primer plano imprime su URL de capacidad local, incluido un token en el fragmento. --no-open impide que el navegador se abra automáticamente. La opción de menú Abrir panel de estado de la bandeja puede abrirlo después, incluso cuando desktop.open_browser = false en la configuración; --open anula deliberadamente ese ajuste. --lang selecciona el idioma de la bandeja; el navegador sigue inicialmente su propia configuración regional y tiene un selector de idioma.

Estado y ciclo de vida del servicio

El menú de la bandeja informa de los estados sin conexión, configuración necesaria, bloqueado o desbloqueado. Iniciar daemon inicia el daemon de la CLI acompañante cuando no está disponible. No inicializa el almacenamiento, lo desbloquea ni solicita elevación. Utilice memories init, memories unlock y memories sudo en un terminal como de costumbre.

La página se actualiza cada dos segundos. Cuando está desbloqueado, muestra el número de bibliotecas, proxies activos y sesiones remotas; los tipos de proveedores de nube configurados; el número de cargas y descargas pendientes; las transferencias aplicadas/rechazadas; y las bibliotecas pendientes de sincronización. La proyección de estado no muestra texto de recuerdos, nombres de bibliotecas, credenciales, identidades de cuentas, rutas de archivos ni tokens. Los detalles de bibliotecas/sincronización se borran cuando el daemon se bloquea o deja de estar disponible. El sondeo de estado no mantiene la bóveda desbloqueada.

Los cambios recientes son observaciones realizadas mientras la página actual del navegador está abierta, y no el registro de auditoría de seguridad persistente. Un estado sin conexión puede significar que el daemon está detenido, ocupado durante más tiempo que el plazo de la comprobación o es incompatible. Actualice la CLI y el daemon conjuntamente y reinicie el daemon después de actualizarlo.

Salir de la bandeja elimina el icono y detiene el listener de ese panel. Deja el daemon en ejecución, incluido un daemon iniciado desde el menú. Para la WebUI en primer plano, Ctrl+C cierra su listener. No se instala ningún registro de inicio automático al iniciar sesión. Los lanzamientos independientes utilizan puertos y tokens distintos. Para volver a abrir un panel después de reiniciar, utilice el menú de la bandeja en lugar de una URL antigua guardada como marcador.

Límite de acceso del navegador

El panel se vincula únicamente a 127.0.0.1 y está pensado para el mismo equipo. Cada lanzamiento utiliza un nuevo token de acceso aleatorio. El navegador lo elimina de la barra de direcciones y lo almacena solo durante la sesión de la pestaña. Las solicitudes de estado necesitan ese token y superan comprobaciones de Host/Origin. El editor de tarjetas ordinarias utiliza las mismas comprobaciones y una lista cerrada de operaciones permitidas; no hay endpoints HTTP de desbloqueo, elevación, entrega de credenciales, ejecución de comandos ni IPC genérico. El JSON de lanzamiento informa de read_only: false, status_read_only: true y card_editor: true para distinguir las escrituras de tarjetas de la proyección de estado de solo lectura. Consulte la seguridad.

Compilación y empaquetado

cargo build --workspace --release --locked compila memories-tray junto con la CLI, el relay y la FFI. Los paquetes de Windows se crean a partir de un checkout limpio y confirmado:

pwsh -File scripts/package-windows.ps1

En un equipo macOS con Rust, Xcode Command Line Tools y Python 3:

bash scripts/package-macos.sh

El script de macOS compila la arquitectura del equipo (Apple Silicon o Intel), empaqueta Memories.app, los archivos CLI/relay/FFI, todos los docs/ bajo seguimiento, las licencias de fuentes, un manifiesto de compilación por archivo y la suma de comprobación del archivo comprimido. No firma ni notariza la aplicación para su distribución. Las compilaciones de Windows no validan el comportamiento en ejecución de macOS. Consulte la validación para conocer lo que realmente se probó en cada versión.

En un equipo Linux GNU, bash scripts/build-linux.sh compila el workspace de versión; bash scripts/package-linux.sh crea un .tar.gz de CLI/relay/FFI a partir de un checkout limpio y confirmado. Consulte los requisitos previos de Linux. Utilice memories webui para el panel; el paquete de Linux omite el lanzador de bandeja nativa no admitido.