Zone de notification du bureau et WebUI
La zone de notification Windows et l'application de barre de menus macOS offrent un aperçu rapide du démon Memories local. Elles partagent un tableau de bord d'état intégré et un éditeur restreint de cartes ordinaires, sans polices, scripts ou outils d'analyse externes. Le tableau de bord prend en charge l'anglais, le chinois, le japonais, l'allemand et le français et s'adapte aux fenêtres étroites.
La projection d'état reste en lecture seule. Après déverrouillage, l'éditeur de cartes accepte un ID de coffre et propose un sélecteur de type, des champs typés, le renommage/la suppression et le réordonnancement par glisser-déposer, ainsi que la création de modèles réutilisables. Son POST /api/cards authentifié et contrôlé par origine transmet uniquement une liste délibérée d'opérations autorisées sur les cartes/types via la CLI voisine. Il ne peut pas déverrouiller, élever les privilèges, exécuter des programmes ou révéler des valeurs sensibles. Une vérification native mobile/CLI est requise pour les opérations sensibles ; aucune inscription biométrique/par PIN n'est proposée dans le navigateur. Voir types de cartes.
Démarrage
- Windows : extrayez le ZIP de publication et double-cliquez sur
memories-tray.exe. Gardez-le à côté dememories.exe. Le lanceur n'ouvre pas de fenêtre de console. - macOS : ouvrez
Memories.appdepuis le paquet macOS. L'application apparaît dans la barre de menus, sans fenêtre dans le Dock. Le paquet applicatif inclut sa CLI associée. - Depuis un terminal :
memories trayouvre la zone de notification native et le tableau de bord ;memories webuiouvre uniquement le tableau de bord dans le navigateur et reste au premier plan. Linux peut utiliserwebui; la zone de notification native est limitée à Windows et 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 utilise le même stockage que la CLI. Sans remplacement, le lanceur utilise storage_dir de la configuration sélectionnée ou le répertoire Memories habituel de l'utilisateur. --config PATH / MEMORIES_CONFIG sélectionne un fichier TOML ; voir configuration. --port 0 (valeur par défaut) choisit un port libre en boucle locale ; un port spécifié doit aussi être libre. La commande webui au premier plan affiche son URL de capacité locale, comprenant un jeton dans le fragment. --no-open supprime l'ouverture automatique du navigateur. L'élément de menu Ouvrir le tableau de bord d'état de la zone de notification peut l'ouvrir plus tard, y compris lorsque desktop.open_browser =
false dans la configuration ; --open remplace délibérément ce réglage. --lang sélectionne la langue de la zone de notification ; le navigateur suit initialement sa propre langue et propose un sélecteur de langue.
État et cycle de vie du service
Le menu de la zone de notification indique hors ligne, configuration requise, verrouillé ou déverrouillé. Démarrer le démon lance le démon de la CLI associée lorsqu'il est indisponible. Cette action n'initialise pas le stockage, ne le déverrouille pas et ne demande pas d'élévation. Utilisez memories init, memories unlock et memories sudo dans un terminal comme d'habitude.
La page s'actualise toutes les deux secondes. Après déverrouillage, elle affiche les nombres de bibliothèques, de proxys actifs et de sessions distantes ; les types de fournisseurs cloud configurés ; les nombres d'envois et de téléchargements en attente ; les transferts appliqués/rejetés ; et les bibliothèques en attente de synchronisation. La projection d'état n'affiche pas le texte des mémoires, les noms de bibliothèques, les identifiants secrets, les identités de comptes, les chemins de fichiers ou les jetons. Les détails de bibliothèque/synchronisation sont effacés lorsque le démon se verrouille ou devient indisponible. L'interrogation de l'état ne maintient pas le coffre déverrouillé.
Les changements récents sont des observations faites pendant que la page actuelle du navigateur est ouverte, pas le journal d'audit de sécurité persistant. Un état hors ligne peut signifier que le démon est arrêté, occupé au-delà de l'échéance du sondage ou incompatible. Mettez à niveau la CLI et le démon ensemble, puis redémarrez le démon après la mise à niveau.
Quitter la zone de notification retire l'icône et arrête l'écouteur de ce tableau de bord. Le démon continue de fonctionner, même s'il a été démarré depuis le menu. Pour la WebUI au premier plan, Ctrl+C ferme son écouteur. Aucune inscription au démarrage automatique à la connexion n'est installée. Les lancements séparés utilisent des ports et des jetons distincts. Pour rouvrir un tableau de bord après un redémarrage, utilisez le menu de la zone de notification plutôt qu'une ancienne URL en favori.
Limite d'accès du navigateur
Le tableau de bord est lié uniquement à 127.0.0.1 et destiné au même ordinateur. Chaque lancement utilise un nouveau jeton d'accès aléatoire. Le navigateur le retire de la barre d'adresse et le stocke uniquement pour la session de l'onglet. Les requêtes d'état nécessitent ce jeton et passent des contrôles Host/Origin. L'éditeur de cartes ordinaires utilise les mêmes contrôles et une liste fermée d'opérations autorisées ; il n'existe aucun point d'accès HTTP de déverrouillage, d'élévation, de livraison d'identifiants secrets, d'exécution de commandes ou d'IPC générique. Le JSON de lancement indique read_only: false, status_read_only: true et card_editor: true pour distinguer les écritures de cartes de la projection d'état en lecture seule. Voir sécurité.
Construction et empaquetage
cargo build --workspace --release --locked construit memories-tray avec la CLI, le relais et la FFI. Les paquets Windows sont créés depuis une copie de travail propre et validée dans Git :
pwsh -File scripts/package-windows.ps1
Sur un hôte macOS avec Rust, Xcode Command Line Tools et Python 3 :
bash scripts/package-macos.sh
Le script macOS construit l'architecture de l'hôte (Apple Silicon ou Intel) et empaquette Memories.app, les fichiers CLI/relais/FFI, tous les fichiers suivis de docs/, les licences de polices, un manifeste de construction par fichier et la somme de contrôle de l'archive. Il ne signe ni ne notarise l'application pour sa distribution. Les constructions Windows ne valident pas le comportement d'exécution macOS. Consultez validation pour connaître ce qui a effectivement été exercé pour chaque publication.
Sur un hôte Linux GNU, bash scripts/build-linux.sh construit l'espace de travail en mode release ; bash scripts/package-linux.sh crée un .tar.gz CLI/relais/FFI depuis une copie de travail propre et validée dans Git. Voir les prérequis Linux. Utilisez memories webui pour le tableau de bord ; le paquet Linux omet le lanceur natif de zone de notification non pris en charge.