6b. Vault & Data Explorer

Ce module constitue la porte d'entrée vers les "données froides" du Vault utilisateur. Il permet l'exploration, l'audit et l'analyse sémantique de fichiers massifs sans saturer la fenêtre de contexte du modèle PRO.

Exploration Brute (read_raw_file_content)

Contrairement aux lecteurs standards, ECHO implémente une lecture paginée "Tell-Safe" pour éviter les bugs d'itération sur les fichiers volumineux.

Limitation de Sécurité Gemini

Toute sortie brute est bridée à 16 Ko pour garantir la conformité avec les APIs Gemini et prévenir les plantages de flux. Pour les fichiers plus gros, utilisez les byte_offset.

Mode Spécification Technique
text Lecture ligne par ligne avec préfixe d'index (120 | contenu). Idéal pour le code source.
base64 Lecture binaire brute. Utilisé pour transférer des morceaux de fichiers vers d'autres outils (ex: conversion).
hex Affichage hexadécimal indexé. Indispensable pour l'audit de fichiers binaires ou corrompus.

Sondage Sémantique (semantic_probe)

L'une des fonctions les plus puissantes d'ECHO. Elle permet de déléguer l'analyse d'un document entier à une instance Gemini Flash dédiée (moins coûteuse en tokens pour le modèle principal).

Visualisation HUD (show_image_to_user)

Permet d'ouvrir le moniteur ECHO physique pour l'utilisateur. Utilise la librairie EchoUI pour injecter un HUD interactif (Zoom, Crop, Download) par-dessus l'interface Open WebUI.

Intégrité & Métadonnées

Fonction Rôle Technique
get_file_metadata Extraction des attributs système (Taille, MimeType, Date de modification).
calculate_file_hashes Calcul du hash SHA-256. Indispensable pour vérifier l'intégrité après un téléchargement ou une manipulation sandbox.
download_from_url Téléchargement asynchrone sécurisé (Timeout 60s, User-Agent ECHO). Scelle automatiquement le fichier dans le Vault avec indexation immédiate.

Gestion des Identifiants (IDs)

Tout fichier dans ECHO est référencé par un file_id souverain généré par echo_utils.generate_echo_file_id. Ce format inclut l'ID utilisateur, l'ID du chat et un timestamp milliseconde, garantissant l'unicité absolue dans le Vault.