Outil Navigateur
Automatisation Chrome avec sessions de connexion persistantes. Connectez-vous une fois, et l'agent peut naviguer sur les sites authentifiés en votre nom.
config.toml ci-dessous. Le feature flag n'est nécessaire que lors de la compilation depuis les sources.Démarrage Rapide
Deux étapes pour que l'agent navigue avec vos sessions de connexion :
1. Connectez-vous à vos services
aidaemon browser loginChrome s'ouvre avec un profil dédié. Connectez-vous aux services auxquels vous souhaitez que l'agent accède (Gmail, GitHub, AWS Console, Jira, etc.), puis fermez Chrome. Vos sessions sont sauvegardées dans ~/.aidaemon/chrome-profile/ et persistent entre les redémarrages.
2. Activez l'outil navigateur
[browser]
enabled = trueC'est tout. L'agent peut maintenant naviguer sur les sites authentifiés en utilisant vos sessions sauvegardées.
Configuration
| Key | Type | Default | Description |
|---|---|---|---|
enabled | bool | false | Activer l'outil navigateur |
headless | bool | true | Exécuter Chrome sans fenêtre visible |
screenshot_width | int | 1280 | Largeur du viewport du navigateur en pixels |
screenshot_height | int | 720 | Hauteur du viewport du navigateur en pixels |
user_data_dir | string | ~/.aidaemon/chrome-profile | Répertoire du profil Chrome pour les sessions persistantes |
profile | string | Default | Nom du profil Chrome dans user_data_dir |
remote_debugging_port | int | null | Se connecter à une instance Chrome existante sur ce port (avancé) |
Configuration minimale
[browser]
enabled = trueTout le reste a des valeurs par défaut raisonnables. Les sessions sont automatiquement sauvegardées dans ~/.aidaemon/chrome-profile/.
Actions
| Action | Paramètres | Description |
|---|---|---|
navigate | url | Naviguer vers l'URL, attendre 2s pour le chargement |
screenshot | selector? | Capture PNG de la page complète ou d'un élément spécifique |
click | selector | Cliquer sur un élément par sélecteur CSS |
fill | selector, value | Saisir du texte dans un champ de formulaire |
get_text | selector? | Extraire le contenu textuel d'un élément ou de la page entière |
execute_js | script | Exécuter du JavaScript arbitraire et retourner le résultat |
wait | selector, timeout_secs? | Attendre qu'un élément apparaisse (délai par défaut 10s) |
close | — | Fermer la session du navigateur |
Persistance des Sessions
L'outil navigateur utilise un profil Chrome dédié dans ~/.aidaemon/chrome-profile/ qui stocke les cookies, le stockage local et les sessions de connexion. Cela signifie :
- Connectez-vous une fois via
aidaemon browser login, les sessions persistent indéfiniment - L'agent lance Chrome en mode headless avec ce profil — déjà authentifié
- Les sessions survivent aux redémarrages d'aidaemon et aux redémarrages système
- Relancez
aidaemon browser loginà tout moment pour ajouter de nouveaux services ou rafraîchir les sessions expirées
Modes de Déploiement
Instance isolée (recommandé)
Lorsque vous exécutez aidaemon sur un serveur ou une VM dédiée, aucun autre Chrome n'est en cours d'exécution. L'agent lance et contrôle Chrome directement.
# SSH into your instance
ssh user@my-server
# One-time: log into services
aidaemon browser login
# Config
# [browser]
# enabled = true
# Done — agent handles Chrome automatically from herePour les serveurs headless, utilisez SSH avec transfert X (ssh -X) ou VNC pour la connexion initiale.
Ordinateur personnel
Lorsque vous exécutez aidaemon aux côtés de votre Chrome personnel, l'agent lance une instance Chrome séparée avec son propre profil. Les deux fonctionnent côte à côte sans conflit.
# Same setup — separate Chrome instance, no conflict
aidaemon browser login
# Your personal Chrome (47 tabs, extensions, bookmarks) → untouched
# Aidaemon's Chrome (~/.aidaemon/chrome-profile/) → isolatedAvancé : Se connecter à un Chrome existant
Pour les utilisateurs avancés qui souhaitent se connecter à une instance Chrome déjà en cours d'exécution avec un port de débogage distant :
[browser]
enabled = true
remote_debugging_port = 9222Lancez Chrome avec --remote-debugging-port=9222 et l'agent s'y connecte directement. Cela partage les sessions de l'instance Chrome mais nécessite que Chrome soit lancé avec le flag de débogage.
Captures d'Écran
Les captures d'écran sont réalisées en PNG et envoyées à l'utilisateur via le canal actif (photo Telegram, envoi de fichier Slack, etc.) avec des légendes décrivant l'URL de la page.
Cas d'Utilisation
- Surveillance — Vérifier les tableaux de bord (Grafana, Vercel, AWS Console), capturer le statut des déploiements
- Extraction de données — Scraper des pages rendues en JS, extraire des rapports depuis des panneaux d'administration
- Automatisation de workflows — Remplir des formulaires, naviguer dans des flux multi-étapes sur des outils internes
- Tests — Naviguer sur votre application déployée, vérifier l'interface, contrôler les mises en page responsives
- Navigation authentifiée — Interagir avec tout service auquel vous vous êtes connecté, sans clés API nécessaires
Compilation depuis les Sources
L'outil navigateur nécessite le feature flag browser :
cargo build --release --features browserNécessite un navigateur basé sur Chromium installé (Chrome, Chromium, Brave ou Edge).