6. L'Arsenal des Outils (Sovereign Toolbox)
L'Arsenal ECHO n'est pas une simple collection de fonctions, mais un écosystème d'outils souverains conçus pour l'autonomie cognitive. Chaque outil respecte un protocole de communication multimodal strict et interagit directement avec le Vault utilisateur.
Principes Directeurs
- Souveraineté : Les données ne quittent jamais l'infrastructure ECHO sauf pour les appels API chiffrés.
- Multimodalité native : Capacité à renvoyer du texte, des pensées, des médias et des artefacts dans un seul flux.
- Auditabilité : Chaque appel d'outil est journalisé dans la table
tool_journaldu StateManager.
Le Protocole Multipart (wrap_tool_output)
Pour dépasser les limites des réponses textuelles, ECHO utilise un format JSON structuré encapsulant plusieurs types de données. Ce format est dépaqueté par le Pipe (Cortex) avant d'être injecté dans le contexte du modèle.
def wrap_tool_output(
text: str,
status: dict = None,
echo_tool_multiparts: List[dict] = None,
nouveaux_fichiers: List[dict] = None
) -> dict:
# Encapsulation des données pour le Pipe
Composants du Multipart
| Type | Description | Traitement par le Pipe |
|---|---|---|
text |
La réponse textuelle principale de l'outil. | Injecté comme functionResponse. |
thought |
Raisonnement interne de l'outil ou du sous-modèle. | Isolé pour enrichir la Chain-of-Thought sans polluer la sortie finale. |
media |
Binaire (Base64) avec MIME type (Image, PDF, HTML). | Converti en inlineData Gemini et inséré immédiatement après la réponse. |
nouveaux_fichiers |
Métadonnées des fichiers créés ou téléchargés. | Injecté via le protocole "Suture" pour assurer la rémanence au tour suivant. |
Le Système "Vault" (Coffre-Fort)
Le Vault est l'espace de stockage persistant et isolé de chaque utilisateur. Contrairement aux dossiers de transit classiques, le Vault est géré par le EchoStateManager et assure l'intégrité des fichiers via une indexation SQLite (processed_files).
- Isolation : Chemin physique
/app/backend/echo_users/{user_id}/files/. - Indexation : Chaque fichier possède un
file_idunique au formatU_{uid}_C_{cid}_T_{ts}. - Persistance : Les outils comme le
Navigation Enginescellent automatiquement les captures d'écran dans le Vault.
Architecture de l'Arsenal
L'arsenal est segmenté en quatre domaines d'expertise, détaillés dans les sections suivantes :
🌐 Web Intelligence
Pilotage de Chromium, cartographie du DOM, Replay visuel et Recherche Web Souveraine (SearxNG/DDG).
📁 Explorer🐍 Exécution & Pilotage
Sandbox Python isolée et Monitoring avancé de la jauge de Contexte.
📁 Explorer