EN·ES·DE·PT·FR
⌘K

Browser-Tool

Chrome-Automatisierung mit persistenten Login-Sitzungen. Einmal einloggen, und der Agent kann authentifizierte Seiten in deinem Auftrag durchsuchen.

Vorgefertigte Binärdateien
Wenn du über das Einzeiler-Skript oder Homebrew installiert hast, ist das Browser-Tool bereits enthalten. Aktiviere es einfach in config.toml wie unten beschrieben. Das Feature-Flag wird nur beim Kompilieren aus dem Quellcode benötigt.

Schnellstart

Zwei Schritte, damit der Agent mit deinen Login-Sitzungen browsen kann:

1. In deine Dienste einloggen

bash
aidaemon browser login

Chrome öffnet sich mit einem dedizierten Profil. Logge dich in die Dienste ein, auf die der Agent zugreifen soll (Gmail, GitHub, AWS Console, Jira usw.), und schließe dann Chrome. Deine Sitzungen werden unter ~/.aidaemon/chrome-profile/ gespeichert und bleiben über Neustarts erhalten.

2. Das Browser-Tool aktivieren

config.toml
[browser]
enabled = true

Das war's. Der Agent kann jetzt authentifizierte Seiten mit deinen gespeicherten Sitzungen durchsuchen.

Ausprobieren
Sende dem Agenten eine Nachricht wie "Gehe zu https://mail.google.com und mache einen Screenshot" — es sollte dein Postfach anzeigen, bereits eingeloggt.

Konfiguration

KeyTypeDefaultDescription
enabledboolfalseDas Browser-Tool aktivieren
headlessbooltrueChrome ohne sichtbares Fenster ausführen
screenshot_widthint1280Browser-Viewport-Breite in Pixeln
screenshot_heightint720Browser-Viewport-Höhe in Pixeln
user_data_dirstring~/.aidaemon/chrome-profileChrome-Profilverzeichnis für persistente Sitzungen
profilestringDefaultChrome-Profilname innerhalb von user_data_dir
remote_debugging_portintnullVerbindung zu einer bestehenden Chrome-Instanz auf diesem Port (fortgeschritten)

Minimale Konfiguration

config.toml
[browser]
enabled = true

Alles andere hat sinnvolle Standardwerte. Sitzungen werden automatisch unter ~/.aidaemon/chrome-profile/ gespeichert.

Aktionen

AktionParameterBeschreibung
navigateurlZur URL navigieren, 2s auf Seitenladevorgang warten
screenshotselector?PNG-Screenshot der gesamten Seite oder eines bestimmten Elements
clickselectorEin Element per CSS-Selektor anklicken
fillselector, valueText in ein Formulareingabefeld eingeben
get_textselector?Textinhalt eines Elements oder der gesamten Seite extrahieren
execute_jsscriptBeliebiges JavaScript ausführen und das Ergebnis zurückgeben
waitselector, timeout_secs?Auf das Erscheinen eines Elements warten (Standard 10s Timeout)
closeDie Browser-Sitzung schließen

Sitzungspersistenz

Das Browser-Tool verwendet ein dediziertes Chrome-Profil unter ~/.aidaemon/chrome-profile/, das Cookies, Local Storage und Login-Sitzungen speichert. Das bedeutet:

  • Einmal über aidaemon browser login einloggen, Sitzungen bleiben unbegrenzt erhalten
  • Der Agent startet Chrome im Headless-Modus mit diesem Profil — bereits authentifiziert
  • Sitzungen überstehen aidaemon-Neustarts und Systemneustarts
  • Führe aidaemon browser login jederzeit erneut aus, um neue Dienste hinzuzufügen oder abgelaufene Sitzungen zu erneuern
Isoliert vom persönlichen Chrome
Der Agent verwendet sein eigenes Chrome-Profil, vollständig getrennt von deinem persönlichen Browser. Deine persönlichen Lesezeichen, Erweiterungen und Sitzungen werden niemals berührt.

Bereitstellungsmodi

Isolierte Instanz (empfohlen)

Wenn aidaemon auf einem dedizierten Server oder einer VM läuft, ist kein anderes Chrome aktiv. Der Agent startet Chrome und besitzt es direkt.

bash
# 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 here

Für Headless-Server verwende SSH mit X-Forwarding (ssh -X) oder VNC für den initialen Login.

Persönlicher Computer

Wenn aidaemon neben deinem persönlichen Chrome läuft, startet der Agent eine separate Chrome-Instanz mit eigenem Profil. Beide laufen ohne Konflikte nebeneinander.

bash
# Same setup — separate Chrome instance, no conflict
aidaemon browser login

# Your personal Chrome (47 tabs, extensions, bookmarks) → untouched
# Aidaemon's Chrome (~/.aidaemon/chrome-profile/) → isolated

Fortgeschritten: Verbindung zu bestehendem Chrome

Für erfahrene Benutzer, die sich mit einer Chrome-Instanz verbinden möchten, die bereits mit einem Remote-Debugging-Port läuft:

config.toml
[browser]
enabled = true
remote_debugging_port = 9222

Starte Chrome mit --remote-debugging-port=9222 und der Agent verbindet sich direkt damit. Dies teilt die Sitzungen der Chrome-Instanz, erfordert aber, dass Chrome mit dem Debugging-Flag gestartet wird.

Screenshots

Screenshots werden als PNG aufgenommen und über den aktiven Kanal an den Benutzer gesendet (Telegram-Foto, Slack-Dateiupload usw.) mit Beschriftungen, die die Seiten-URL beschreiben.

Anwendungsfälle

  • Überwachung — Dashboards prüfen (Grafana, Vercel, AWS Console), Bereitstellungsstatus als Screenshot festhalten
  • Datenextraktion — JS-gerenderte Seiten auslesen, Berichte aus Admin-Panels abrufen
  • Workflow-Automatisierung — Formulare ausfüllen, mehrstufige Abläufe in internen Tools navigieren
  • Testen — Deine bereitgestellte App navigieren, UI überprüfen, responsive Layouts kontrollieren
  • Authentifiziertes Browsen — Mit jedem Dienst interagieren, bei dem du eingeloggt bist, keine API-Schlüssel nötig

Aus Quellcode kompilieren

Das Browser-Tool erfordert das browser-Feature-Flag:

bash
cargo build --release --features browser

Erfordert einen installierten Chromium-basierten Browser (Chrome, Chromium, Brave oder Edge).