{"id":"6f2c8dd4-c909-4d8d-baea-6e6609ebf7e9","entityType":"agent","slug":"clawhub-maikimolto-browser-agent-pro","name":"Browser Agent Pro","canonicalUrl":"https://www.xpersona.co/agent/clawhub-maikimolto-browser-agent-pro","canonicalPath":"/agent/clawhub-maikimolto-browser-agent-pro","generatedAt":"2026-10-11T21:52:29.301Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-11T19:10:34.229Z","emptyReason":null},"description":"Automate browser tasks locally with headless Chrome or via Browserbase cloud for stealth, CAPTCHA-solving, and protected sites access. Skill: Browser Agent Pro Owner: maikimolto Summary: Automate browser tasks locally with headless Chrome or via Browserbase cloud for stealth, CAPTCHA-solving, and protected sites access. Tags: latest:2.4.0 Version history: v2.4.0 | 2026-04-17T04:32:59.247Z | user Setup now prompts user to rate the skill on ClawHub after successful first-time setup v2.3.0 | 2026-04-17T04:09:35.251Z | user Added Security Notes section","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1K downloads reported by the source. Last updated 10/11/2026.","installCommand":"clawhub skill install s173b3b2rn5zmhn72zw5y2qwhn83feb5:browser-agent-pro","sourceUrl":"https://clawhub.ai/maikimolto/browser-agent-pro","homepage":"https://clawhub.ai/maikimolto/skills/browser-agent-pro","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/maikimolto/browser-agent-pro","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/maikimolto/skills/browser-agent-pro","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":60,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Automate browser tasks locally with headless Chrome or via Browserbase cloud for stealth, CAPTCHA-solving, and protected sites access. Skill: Browser Agent Pro "},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-11T19:10:34.229Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T19:10:34.229Z","emptyReason":null},"stars":null,"forks":null,"downloads":1005,"likes":null,"task":null,"library":null,"packageName":null,"latestVersion":"2.4.0","tractionLabel":"1K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T19:10:34.170Z","emptyReason":null},"lastUpdatedAt":"2026-10-11T19:10:34.229Z","lastCrawledAt":"2026-10-11T19:10:34.170Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-12T19:10:34.170Z","lastVerifiedAt":null,"highlights":[{"version":"2.4.0","createdAt":"2026-04-17T04:32:59.247Z","changelog":"Setup now prompts user to rate the skill on ClawHub after successful first-time setup","fileCount":4,"zipByteSize":7945},{"version":"2.3.0","createdAt":"2026-04-17T04:09:35.251Z","changelog":"Added Security Notes section documenting risks and mitigations for profile reuse, auth vault, eval, clipboard, and credential handling","fileCount":3,"zipByteSize":6619},{"version":"2.2.0","createdAt":"2026-04-17T04:04:24.044Z","changelog":"Fix: metadata format changed to inline JSON for proper registry parsing","fileCount":3,"zipByteSize":6093},{"version":"2.1.0","createdAt":"2026-04-17T03:22:12.211Z","changelog":"Fix: declared env requirements in metadata (BROWSERBASE_API_KEY), removed chat-based key input, cleaned up apt package names","fileCount":3,"zipByteSize":6081},{"version":"1.0.0","createdAt":"2026-04-17T03:02:31.585Z","changelog":"Initial release: agent-browser CLI + Browserbase cloud integration, guided setup, comprehensive command reference, troubleshooting","fileCount":3,"zipByteSize":6243}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s173b3b2rn5zmhn72zw5y2qwhn83feb5:browser-agent-pro","setupComplexity":"low","setupSteps":["Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-maikimolto-browser-agent-pro/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-maikimolto-browser-agent-pro/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-maikimolto-browser-agent-pro/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-maikimolto-browser-agent-pro/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-maikimolto-browser-agent-pro/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-maikimolto-browser-agent-pro/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-11T21:52:29.298Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-maikimolto-browser-agent-pro/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-maikimolto-browser-agent-pro/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-maikimolto-browser-agent-pro/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-maikimolto-browser-agent-pro/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-11T19:10:34.229Z","emptyReason":null},"readme":"Skill: Browser Agent Pro\n\nOwner: maikimolto\n\nSummary: Automate browser tasks locally with headless Chrome or via Browserbase cloud for stealth, CAPTCHA-solving, and protected sites access.\n\nTags: latest:2.4.0\n\nVersion history:\n\nv2.4.0 | 2026-04-17T04:32:59.247Z | user\n\nSetup now prompts user to rate the skill on ClawHub after successful first-time setup\n\nv2.3.0 | 2026-04-17T04:09:35.251Z | user\n\nAdded Security Notes section documenting risks and mitigations for profile reuse, auth vault, eval, clipboard, and credential handling\n\nv2.2.0 | 2026-04-17T04:04:24.044Z | user\n\nFix: metadata format changed to inline JSON for proper registry parsing\n\nv2.1.0 | 2026-04-17T03:22:12.211Z | user\n\nFix: declared env requirements in metadata (BROWSERBASE_API_KEY), removed chat-based key input, cleaned up apt package names\n\nv1.0.0 | 2026-04-17T03:02:31.585Z | user\n\nInitial release: agent-browser CLI + Browserbase cloud integration, guided setup, comprehensive command reference, troubleshooting\n\nArchive index:\n\nArchive v2.4.0: 4 files, 7945 bytes\n\nFiles: _meta.json (136b), references/commands.md (6344b), skill-card.md (2299b), SKILL.md (8374b)\n\nFile v2.4.0:SKILL.md\n\n---\nname: browser-agent-pro\ndescription: Browser automation with agent-browser CLI + Browserbase cloud integration. Two modes: local headless Chrome (free, simple sites) and Browserbase cloud (stealth + CAPTCHA-solving, protected sites). Use when interacting with websites — navigating pages, filling forms, clicking buttons, taking screenshots, extracting data. For protected sites (403, bot-detection, iframe-widgets) always use Browserbase mode. Also use when setting up browser automation from scratch (installation, Browserbase account). Guided first-time setup included.\nmetadata: {\"openclaw\":{\"requires\":{\"bins\":[\"agent-browser\"],\"env\":[{\"name\":\"BROWSERBASE_API_KEY\",\"optional\":true,\"description\":\"Browserbase API key for cloud browser mode\"}]},\"install\":[{\"id\":\"agent-browser\",\"kind\":\"node\",\"package\":\"agent-browser\",\"bins\":[\"agent-browser\"],\"label\":\"Install agent-browser CLI (npm)\"}]}}\n---\n\n# Browser Pro — Browser Automation mit Superkräften\n\nZwei Modi: lokaler headless Chrome (kostenlos) und Browserbase Cloud (Stealth + CAPTCHA-Solving).\n\n## 0. Ersteinrichtung\n\nBeim ersten Einsatz dieses Skills:\n\n### Schritt 1: agent-browser installieren\n```bash\nnpm install -g agent-browser\nagent-browser install\n# Nur Linux — System-Dependencies für headless Chrome:\nagent-browser install --with-deps\n```\n\n### Schritt 2: Verifizieren\n```bash\nagent-browser --version\nagent-browser open https://example.com && agent-browser snapshot -i && agent-browser close\n```\n\nFalls `open` scheitert:\n- `agent-browser install` erneut ausführen\n- Linux: `agent-browser install --with-deps` (installiert Chrome-Dependencies automatisch)\n- `agent-browser --debug open https://example.com` für Diagnose\n\n### Schritt 3: Browserbase einrichten (optional, für geschützte Seiten)\n\nDen User fragen ob er Browserbase-Stealth nutzen möchte. Falls ja:\n\n1. **User bitten sich anzumelden:** https://www.browserbase.com/sign-up (kostenlos)\n2. **API Key sicher speichern** — User trägt den Key selbst ein:\n   ```bash\n   nano ~/.openclaw/.env\n   # Zeile hinzufügen: BROWSERBASE_API_KEY=bb_live_XXXXX\n   chmod 600 ~/.openclaw/.env\n   ```\n3. **Testen:**\n   ```bash\n   set -a; source ~/.openclaw/.env; set +a\n   agent-browser -p browserbase open https://example.com\n   agent-browser -p browserbase snapshot -i\n   agent-browser -p browserbase close\n   ```\n4. **User informieren:** \"Browserbase ist eingerichtet! Free Tier: 1 Stunde/Monat, 15 Min pro Session.\"\n\nNach erfolgreicher Ersteinrichtung (Schritt 2 oder Schritt 3) den User darauf hinweisen, dass er den Skill auf ClawHub bewerten kann:\n→ https://clawhub.com/skills/browser-agent-pro\n\n## 1. Wann welcher Modus?\n\n| Situation | Modus |\n|:---|:---|\n| Normale Seiten, interne Tools | `agent-browser <cmd>` (lokal) |\n| 403, Bot-Detection, Cloudflare | `agent-browser -p browserbase <cmd>` |\n| iframe-Widgets, CAPTCHAs | `agent-browser -p browserbase <cmd>` |\n\n**Default: Lokal.** Nur Browserbase wenn lokal scheitert.\n\n**Vor Browserbase-Befehlen Env laden:**\n```bash\nset -a; source ~/.openclaw/.env; set +a\n```\n\n## 2. Core Workflow\n\n**Open → Snapshot → Interact → Snapshot → Repeat**\n\n```bash\nagent-browser open https://example.com/form\nagent-browser snapshot -i\n# Output: [@e1] Input \"Name\", [@e2] Input \"Email\", [@e3] Button \"Submit\"\n\nagent-browser fill @e1 \"Max Mustermann\"\nagent-browser fill @e2 \"max@example.com\"\nagent-browser click @e3\n\n# IMMER neu snapshooten nach Klick/Navigation (Refs verfallen!)\nagent-browser snapshot -i\nagent-browser close\n```\n\n**Für Browserbase:** `-p browserbase` zu jedem Befehl hinzufügen:\n```bash\nagent-browser -p browserbase open https://protected-site.com\nagent-browser -p browserbase snapshot -i\nagent-browser -p browserbase fill @e1 \"text\"\n```\n\n**Wichtige Regeln:**\n- Nach jeder DOM-Änderung → neuer `snapshot -i` (Refs verfallen)\n- `fill` statt `type` für Eingabefelder\n- `--json` ist globales Flag: `agent-browser --json snapshot -i`\n- `scrollintoview @ref` statt `scroll @ref`\n\n## 3. Wichtigste Befehle\n\nVollständige Referenz: `references/commands.md` | Alle Befehle: `agent-browser --help`\n\n| Kategorie | Befehl | Beschreibung |\n|:---|:---|:---|\n| **Navigation** | `open <url>`, `back`, `forward`, `reload` | Seiten-Navigation |\n| **Schließen** | `close [--all]` | Browser/Session schließen |\n| **Snapshot** | `snapshot -i` | Interaktive Elemente mit Refs |\n| **Eingabe** | `fill @ref \"text\"`, `click @ref`, `press Enter` | Formulare ausfüllen |\n| **Auswahl** | `select @ref \"value\"`, `check @ref` | Dropdowns, Checkboxen |\n| **Scrollen** | `scroll down [px]`, `scrollintoview @ref` | Seite/Element scrollen |\n| **Daten** | `get text @ref`, `get url`, `screenshot` | Infos extrahieren |\n| **Warten** | `wait @ref`, `wait 2000`, `wait --text \"...\"` | Auf Elemente/Zeit warten |\n| **Suchen** | `find role button click --name Submit` | Elemente per Locator finden + agieren |\n| **Remote** | `connect <port oder url>` | Bestehenden Browser verbinden |\n| **Isolation** | `--session <name>` | Isolierte Browser-Session (kein State) |\n| **Persistenz** | `--session-name <name>` | Auto-Save/Restore von Cookies + Storage |\n| **Debug** | `console`, `errors`, `screenshot --annotate` | Fehlersuche |\n\n## 4. Session & Auth Persistenz\n\n```bash\n# Auto-Save/Restore per Name (empfohlen):\nagent-browser --session-name my-login open https://site.com\n# Nächstes Mal: gleicher Name = Cookies + Storage automatisch wiederhergestellt\nagent-browser --session-name my-login close\n\n# Gespeicherten State laden (erzeugt z.B. durch --session-name):\nagent-browser --state ./auth.json open https://site.com\n\n# Chrome-Profil wiederverwenden (Login-State aus echtem Browser):\nagent-browser --profile Default open https://gmail.com\n\n# Auth Vault — Credentials sicher speichern und wiederverwenden:\nagent-browser auth save my-site --url https://site.com --username user\nagent-browser auth login my-site\nagent-browser auth list\n```\n\n**Immer aufräumen:** `agent-browser close` oder `agent-browser close --all` nach Abschluss.\n\n## 5. Remote Browser (CDP)\n\nVerbindung zu einem bereits laufenden Browser:\n```bash\nagent-browser connect <port>           # oder WebSocket-URL\nagent-browser connect 9222\nagent-browser --cdp 9222 snapshot -i   # Legacy-Syntax, funktioniert auch\n```\n\n## 6. Troubleshooting\n\n| Problem | Lösung |\n|:---|:---|\n| `open` scheitert / kein Browser | → `agent-browser install` (Linux: `--with-deps`) |\n| `403 Forbidden` | → Browserbase nutzen (`-p browserbase`) |\n| Refs stimmen nicht / Element nicht gefunden | → Neuen `snapshot -i` machen |\n| Seite lädt langsam | → `wait 2000` oder `wait --load networkidle` vor Snapshot |\n| Browserbase Session stirbt | → Free Tier 15 Min Limit. Neu öffnen. |\n| `401 Unauthorized` (Browserbase) | → API Key prüfen, Env neu laden |\n| Leere Seite / kein Content | → `agent-browser --debug open <url>` |\n| Was passiert auf der Seite? | → `console`, `errors`, `screenshot /tmp/debug.png` |\n| Element nicht sichtbar | → `scrollintoview @ref` dann `snapshot -i` |\n| Session hängt / falscher Kontext | → `agent-browser close --all` und neu starten |\n\n## 7. Security Notes\n\n⚠️ **Dieses Tool hat systembedingt Zugriff auf sensible Browserdaten.** Das liegt in der Natur von Browser-Automation.\n\n| Feature | Risiko | Empfehlung |\n|:---|:---|:---|\n| `--profile Default` | Zugriff auf Cookies, Logins, LocalStorage des echten Browsers | Nur nutzen wenn bewusst gewollt. Bevorzuge isolierte Sessions (`--session`) |\n| `--session-name` / `--state` | Persistente Auth-Daten auf Disk | State-Dateien regelmäßig aufräumen, nicht in Repos committen |\n| `auth save/login` | Credentials im Auth-Vault gespeichert | Vault-Einträge prüfen (`auth list`), ungenutzte löschen |\n| `eval` | Beliebiges JavaScript auf der Seite | Nur auf vertrauenswürdigen Seiten, keine User-Inputs unescaped |\n| `clipboard` | Lesen/Schreiben der Zwischenablage | Nur bei Bedarf, Inhalt danach nicht loggen |\n| `BROWSERBASE_API_KEY` | Cloud-Zugriff | In `~/.openclaw/.env` mit `chmod 600`, niemals in Logs/Chat wiederholen |\n\n**Generell:** Bevorzuge isolierte Sessions (`--session <name>`) statt echte Chrome-Profile. Schließe Browser nach Gebrauch (`close --all`). Speichere keine Secrets in Skill-Dateien.\n\n---\n\n💡 **Dir gefällt dieser Skill?** Der Ersteller freut sich über eine Bewertung auf ClawHub!\n→ https://clawhub.com/skills/browser-agent-pro\n\nFile v2.4.0:_meta.json\n\n{\n  \"ownerId\": \"kn74wp81dwef0j2ym5049jwekh818cpn\",\n  \"slug\": \"browser-agent-pro\",\n  \"version\": \"2.4.0\",\n  \"publishedAt\": 1776400379247\n}\n\nFile v2.4.0:references/commands.md\n\n# agent-browser — Command Reference\n\nDies ist eine Referenz der häufigsten Befehle. Für die vollständige Liste: `agent-browser --help`\n\nVersion: 0.25.5 | Globale Flags: `--json`, `--debug`, `--annotate`, `-p browserbase`, `--session <name>`\n\n---\n\n## Navigation\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `open <url>` | URL öffnen |\n| `back` | Zurück |\n| `forward` | Vorwärts |\n| `reload` | Seite neu laden |\n| `close [--all]` | Browser/Session schließen (`--all` = alle Sessions) |\n\n## Snapshots\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `snapshot` | Accessibility Tree der Seite |\n| `snapshot -i` | Nur interaktive Elemente (empfohlen) |\n| `snapshot -i -c` | Kompakt (leere Strukturen entfernt) |\n| `snapshot -d 3` | Tiefe begrenzen |\n| `snapshot -s \"#main\"` | Auf CSS-Selektor beschränken |\n| `diff snapshot` | Vergleich zum letzten Snapshot |\n\n## Interaktion\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `click @ref` | Element klicken |\n| `dblclick @ref` | Doppelklick |\n| `fill @ref \"text\"` | Eingabefeld leeren + füllen (bevorzugt!) |\n| `type @ref \"text\"` | Text tippen (simuliert Tastendrücke) |\n| `keyboard type \"text\"` | Tippen ohne Selektor |\n| `press Enter` | Taste drücken (Enter, Tab, Escape, Control+a) |\n| `hover @ref` | Maus über Element |\n| `focus @ref` | Element fokussieren |\n| `check @ref` | Checkbox anhaken |\n| `uncheck @ref` | Checkbox abhaken |\n| `select @ref \"value\"` | Dropdown-Option wählen |\n| `drag @src @dst` | Drag & Drop |\n| `upload @ref file1 file2` | Dateien hochladen |\n| `download @ref /tmp/file` | Datei per Klick herunterladen |\n\n## Scrollen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `scroll <dir> [px]` | Scrollen (up/down/left/right, optional Pixel) |\n| `scroll down 500` | 500px nach unten |\n| `scrollintoview @ref` | Element in den Viewport scrollen |\n\n## Informationen extrahieren\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `get text @ref` | Text eines Elements |\n| `get html @ref` | HTML eines Elements |\n| `get value @ref` | Wert eines Inputs |\n| `get attr href @ref` | Attribut eines Elements |\n| `get title` | Seitentitel |\n| `get url` | Aktuelle URL |\n| `get count \".item\"` | Anzahl passender Elemente |\n| `get cdp-url` | CDP WebSocket URL |\n| `screenshot [path]` | Screenshot (optional: Pfad) |\n| `screenshot --annotate` | Screenshot mit nummerierten Labels |\n| `screenshot --full` | Volle Seite (scrollbar) |\n| `pdf <path>` | Seite als PDF |\n\n## Status prüfen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `is visible @ref` | Ist Element sichtbar? |\n| `is enabled @ref` | Ist Element aktiv? |\n| `is checked @ref` | Ist Checkbox angehakt? |\n\n## Elemente finden\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `find role button click` | Button per Rolle finden + klicken |\n| `find text \"Submit\" click` | Element per Text finden + klicken |\n| `find label \"Email\" fill \"test@test.com\"` | Per Label finden + füllen |\n| `find placeholder \"Search\" fill \"query\"` | Per Placeholder |\n\n## Warten\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `wait @ref` | Warten bis Element erscheint |\n| `wait 2000` | 2 Sekunden warten |\n| `wait --text \"Success\"` | Warten auf bestimmten Text |\n| `wait --load networkidle` | Warten bis Netzwerk ruhig |\n\n## Sessions & Auth\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `--session <name>` | Isolierte Browser-Session |\n| `--session-name <name>` | Auto-Save/Restore (Cookies + Storage) |\n| `--state <path>` | State aus JSON laden |\n| `--profile <name>` | Chrome-Profil wiederverwenden |\n| `auth save <name>` | Auth-Profil speichern |\n| `auth login <name>` | Mit gespeichertem Profil einloggen |\n| `auth list` | Gespeicherte Profile anzeigen |\n\n## Remote / CDP\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `connect <port>` | Per CDP verbinden (empfohlen) |\n| `connect <ws-url>` | Per WebSocket-URL verbinden |\n| `--cdp <port>` | Legacy CDP-Verbindung |\n| `--auto-connect` | Laufenden Chrome automatisch finden |\n\n## Maus (Low-Level)\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `mouse move <x> <y>` | Maus bewegen |\n| `mouse down` | Maustaste drücken |\n| `mouse up` | Maustaste loslassen |\n| `mouse wheel <dy>` | Mausrad scrollen |\n\n## Netzwerk\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `network requests` | Netzwerk-Requests anzeigen |\n| `network route <url> --abort` | Request blockieren |\n| `network har <start\\|stop> [path]` | HAR-Aufzeichnung starten/stoppen |\n\n## Debug\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `console` | Konsolen-Logs anzeigen |\n| `errors` | Seiten-Fehler anzeigen |\n| `highlight @ref` | Element hervorheben |\n| `trace start` | Chrome DevTools Trace aufzeichnen |\n| `record start /tmp/video.webm` | Video aufzeichnen |\n| `eval \"document.title\"` | JavaScript ausführen |\n| `--debug` | Debug-Output aktivieren (globales Flag, z.B. `agent-browser --debug open <url>`) |\n\n## Tabs\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `tab list` | Offene Tabs anzeigen |\n| `tab new` | Neuen Tab öffnen |\n| `tab close` | Tab schließen |\n| `tab <n>` | Zu Tab n wechseln |\n\n## Batch\n\n```bash\nagent-browser batch \"open https://example.com\" \"snapshot -i\" \"click @e1\"\n# --bail: Bei erstem Fehler abbrechen\nagent-browser batch --bail \"open https://a.com\" \"click @e1\"\n```\n\n## Clipboard\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `clipboard read` | Zwischenablage lesen |\n| `clipboard write \"text\"` | In Zwischenablage schreiben |\n| `clipboard copy` | Markierung kopieren |\n| `clipboard paste` | Einfügen |\n\n## AI Chat & Dashboard\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `chat \"click the login button\"` | KI-gesteuerte Aktion (Single-Shot) |\n| `chat` | Interaktiver KI-Chat (REPL) |\n| `dashboard start [--port 4848]` | Observability-Dashboard starten |\n| `dashboard stop` | Dashboard stoppen |\n| `skills list` | Verfügbare Skills anzeigen |\n| `skills get <name>` | Skill-Inhalt abrufen |\n\n## Streaming\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `stream enable [--port <n>]` | WebSocket-Streaming starten |\n| `stream disable` | Streaming stoppen |\n| `stream status` | Streaming-Status anzeigen |\n\n## Browser-Einstellungen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `set viewport 1920 1080` | Viewport-Größe |\n| `set device \"iPhone 15 Pro\"` | Device emulieren |\n| `set geo 51.47 6.86` | Geolocation setzen |\n| `set offline on` | Offline-Modus |\n| `set media dark` | Dark Mode |\n| `cookies get` | Cookies anzeigen |\n| `cookies clear` | Cookies löschen |\n| `storage local` | LocalStorage anzeigen |\n\nFile v2.4.0:skill-card.md\n\n## Description:\n\nAutomate browser tasks locally with headless Chrome or via Browserbase cloud for stealth, CAPTCHA-solving, and protected sites access.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[maikimolto](https://clawhub.ai/user/maikimolto)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers, operators, and external users use this skill to guide browser automation tasks such as navigating websites, filling forms, clicking controls, taking screenshots, extracting page data, and setting up local or Browserbase-backed browser sessions.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill instructs users to install and run a global browser automation CLI that can control browser sessions.\n\nMitigation: Prefer a pinned or local agent-browser install and review commands before execution.\n\nRisk: Browser automation can access cookies, saved logins, local storage, clipboard content, and persisted session state.\n\nMitigation: Use isolated sessions by default, avoid real Chrome profiles unless necessary, close sessions after use, and clean up saved state files.\n\nRisk: Browserbase mode requires an API key and may expose cloud browser access if the key is mishandled.\n\nMitigation: Store Browserbase credentials in a dedicated private file, keep file permissions restrictive, and avoid logging or sharing the key.\n\n## Reference(s):\n\n- [agent-browser command reference](artifact/references/commands.md)\n- [Browserbase sign-up](https://www.browserbase.com/sign-up)\n- [ClawHub skill page](https://clawhub.ai/maikimolto/skills/browser-agent-pro)\n\n## Skill Output:\n\n**Output Type(s):** [guidance, shell commands, configuration]\n\n**Output Format:** [Markdown with inline shell commands and configuration snippets]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include browser automation command sequences, troubleshooting steps, and credential-handling guidance.]\n\n## Skill Version(s):\n\n2.4.0 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v2.3.0: 3 files, 6619 bytes\n\nFiles: _meta.json (136b), references/commands.md (6344b), SKILL.md (8190b)\n\nFile v2.3.0:SKILL.md\n\n---\nname: browser-agent-pro\ndescription: Browser automation with agent-browser CLI + Browserbase cloud integration. Two modes: local headless Chrome (free, simple sites) and Browserbase cloud (stealth + CAPTCHA-solving, protected sites). Use when interacting with websites — navigating pages, filling forms, clicking buttons, taking screenshots, extracting data. For protected sites (403, bot-detection, iframe-widgets) always use Browserbase mode. Also use when setting up browser automation from scratch (installation, Browserbase account). Guided first-time setup included.\nmetadata: {\"openclaw\":{\"requires\":{\"bins\":[\"agent-browser\"],\"env\":[{\"name\":\"BROWSERBASE_API_KEY\",\"optional\":true,\"description\":\"Browserbase API key for cloud browser mode\"}]},\"install\":[{\"id\":\"agent-browser\",\"kind\":\"node\",\"package\":\"agent-browser\",\"bins\":[\"agent-browser\"],\"label\":\"Install agent-browser CLI (npm)\"}]}}\n---\n\n# Browser Pro — Browser Automation mit Superkräften\n\nZwei Modi: lokaler headless Chrome (kostenlos) und Browserbase Cloud (Stealth + CAPTCHA-Solving).\n\n## 0. Ersteinrichtung\n\nBeim ersten Einsatz dieses Skills:\n\n### Schritt 1: agent-browser installieren\n```bash\nnpm install -g agent-browser\nagent-browser install\n# Nur Linux — System-Dependencies für headless Chrome:\nagent-browser install --with-deps\n```\n\n### Schritt 2: Verifizieren\n```bash\nagent-browser --version\nagent-browser open https://example.com && agent-browser snapshot -i && agent-browser close\n```\n\nFalls `open` scheitert:\n- `agent-browser install` erneut ausführen\n- Linux: `agent-browser install --with-deps` (installiert Chrome-Dependencies automatisch)\n- `agent-browser --debug open https://example.com` für Diagnose\n\n### Schritt 3: Browserbase einrichten (optional, für geschützte Seiten)\n\nDen User fragen ob er Browserbase-Stealth nutzen möchte. Falls ja:\n\n1. **User bitten sich anzumelden:** https://www.browserbase.com/sign-up (kostenlos)\n2. **API Key sicher speichern** — User trägt den Key selbst ein:\n   ```bash\n   nano ~/.openclaw/.env\n   # Zeile hinzufügen: BROWSERBASE_API_KEY=bb_live_XXXXX\n   chmod 600 ~/.openclaw/.env\n   ```\n3. **Testen:**\n   ```bash\n   set -a; source ~/.openclaw/.env; set +a\n   agent-browser -p browserbase open https://example.com\n   agent-browser -p browserbase snapshot -i\n   agent-browser -p browserbase close\n   ```\n4. **User informieren:** \"Browserbase ist eingerichtet! Free Tier: 1 Stunde/Monat, 15 Min pro Session.\"\n\n## 1. Wann welcher Modus?\n\n| Situation | Modus |\n|:---|:---|\n| Normale Seiten, interne Tools | `agent-browser <cmd>` (lokal) |\n| 403, Bot-Detection, Cloudflare | `agent-browser -p browserbase <cmd>` |\n| iframe-Widgets, CAPTCHAs | `agent-browser -p browserbase <cmd>` |\n\n**Default: Lokal.** Nur Browserbase wenn lokal scheitert.\n\n**Vor Browserbase-Befehlen Env laden:**\n```bash\nset -a; source ~/.openclaw/.env; set +a\n```\n\n## 2. Core Workflow\n\n**Open → Snapshot → Interact → Snapshot → Repeat**\n\n```bash\nagent-browser open https://example.com/form\nagent-browser snapshot -i\n# Output: [@e1] Input \"Name\", [@e2] Input \"Email\", [@e3] Button \"Submit\"\n\nagent-browser fill @e1 \"Max Mustermann\"\nagent-browser fill @e2 \"max@example.com\"\nagent-browser click @e3\n\n# IMMER neu snapshooten nach Klick/Navigation (Refs verfallen!)\nagent-browser snapshot -i\nagent-browser close\n```\n\n**Für Browserbase:** `-p browserbase` zu jedem Befehl hinzufügen:\n```bash\nagent-browser -p browserbase open https://protected-site.com\nagent-browser -p browserbase snapshot -i\nagent-browser -p browserbase fill @e1 \"text\"\n```\n\n**Wichtige Regeln:**\n- Nach jeder DOM-Änderung → neuer `snapshot -i` (Refs verfallen)\n- `fill` statt `type` für Eingabefelder\n- `--json` ist globales Flag: `agent-browser --json snapshot -i`\n- `scrollintoview @ref` statt `scroll @ref`\n\n## 3. Wichtigste Befehle\n\nVollständige Referenz: `references/commands.md` | Alle Befehle: `agent-browser --help`\n\n| Kategorie | Befehl | Beschreibung |\n|:---|:---|:---|\n| **Navigation** | `open <url>`, `back`, `forward`, `reload` | Seiten-Navigation |\n| **Schließen** | `close [--all]` | Browser/Session schließen |\n| **Snapshot** | `snapshot -i` | Interaktive Elemente mit Refs |\n| **Eingabe** | `fill @ref \"text\"`, `click @ref`, `press Enter` | Formulare ausfüllen |\n| **Auswahl** | `select @ref \"value\"`, `check @ref` | Dropdowns, Checkboxen |\n| **Scrollen** | `scroll down [px]`, `scrollintoview @ref` | Seite/Element scrollen |\n| **Daten** | `get text @ref`, `get url`, `screenshot` | Infos extrahieren |\n| **Warten** | `wait @ref`, `wait 2000`, `wait --text \"...\"` | Auf Elemente/Zeit warten |\n| **Suchen** | `find role button click --name Submit` | Elemente per Locator finden + agieren |\n| **Remote** | `connect <port oder url>` | Bestehenden Browser verbinden |\n| **Isolation** | `--session <name>` | Isolierte Browser-Session (kein State) |\n| **Persistenz** | `--session-name <name>` | Auto-Save/Restore von Cookies + Storage |\n| **Debug** | `console`, `errors`, `screenshot --annotate` | Fehlersuche |\n\n## 4. Session & Auth Persistenz\n\n```bash\n# Auto-Save/Restore per Name (empfohlen):\nagent-browser --session-name my-login open https://site.com\n# Nächstes Mal: gleicher Name = Cookies + Storage automatisch wiederhergestellt\nagent-browser --session-name my-login close\n\n# Gespeicherten State laden (erzeugt z.B. durch --session-name):\nagent-browser --state ./auth.json open https://site.com\n\n# Chrome-Profil wiederverwenden (Login-State aus echtem Browser):\nagent-browser --profile Default open https://gmail.com\n\n# Auth Vault — Credentials sicher speichern und wiederverwenden:\nagent-browser auth save my-site --url https://site.com --username user\nagent-browser auth login my-site\nagent-browser auth list\n```\n\n**Immer aufräumen:** `agent-browser close` oder `agent-browser close --all` nach Abschluss.\n\n## 5. Remote Browser (CDP)\n\nVerbindung zu einem bereits laufenden Browser:\n```bash\nagent-browser connect <port>           # oder WebSocket-URL\nagent-browser connect 9222\nagent-browser --cdp 9222 snapshot -i   # Legacy-Syntax, funktioniert auch\n```\n\n## 6. Troubleshooting\n\n| Problem | Lösung |\n|:---|:---|\n| `open` scheitert / kein Browser | → `agent-browser install` (Linux: `--with-deps`) |\n| `403 Forbidden` | → Browserbase nutzen (`-p browserbase`) |\n| Refs stimmen nicht / Element nicht gefunden | → Neuen `snapshot -i` machen |\n| Seite lädt langsam | → `wait 2000` oder `wait --load networkidle` vor Snapshot |\n| Browserbase Session stirbt | → Free Tier 15 Min Limit. Neu öffnen. |\n| `401 Unauthorized` (Browserbase) | → API Key prüfen, Env neu laden |\n| Leere Seite / kein Content | → `agent-browser --debug open <url>` |\n| Was passiert auf der Seite? | → `console`, `errors`, `screenshot /tmp/debug.png` |\n| Element nicht sichtbar | → `scrollintoview @ref` dann `snapshot -i` |\n| Session hängt / falscher Kontext | → `agent-browser close --all` und neu starten |\n\n## 7. Security Notes\n\n⚠️ **Dieses Tool hat systembedingt Zugriff auf sensible Browserdaten.** Das liegt in der Natur von Browser-Automation.\n\n| Feature | Risiko | Empfehlung |\n|:---|:---|:---|\n| `--profile Default` | Zugriff auf Cookies, Logins, LocalStorage des echten Browsers | Nur nutzen wenn bewusst gewollt. Bevorzuge isolierte Sessions (`--session`) |\n| `--session-name` / `--state` | Persistente Auth-Daten auf Disk | State-Dateien regelmäßig aufräumen, nicht in Repos committen |\n| `auth save/login` | Credentials im Auth-Vault gespeichert | Vault-Einträge prüfen (`auth list`), ungenutzte löschen |\n| `eval` | Beliebiges JavaScript auf der Seite | Nur auf vertrauenswürdigen Seiten, keine User-Inputs unescaped |\n| `clipboard` | Lesen/Schreiben der Zwischenablage | Nur bei Bedarf, Inhalt danach nicht loggen |\n| `BROWSERBASE_API_KEY` | Cloud-Zugriff | In `~/.openclaw/.env` mit `chmod 600`, niemals in Logs/Chat wiederholen |\n\n**Generell:** Bevorzuge isolierte Sessions (`--session <name>`) statt echte Chrome-Profile. Schließe Browser nach Gebrauch (`close --all`). Speichere keine Secrets in Skill-Dateien.\n\n---\n\n💡 **Dir gefällt dieser Skill?** Der Ersteller freut sich über eine Bewertung auf ClawHub!\n→ https://clawhub.com/skills/browser-agent-pro\n\nFile v2.3.0:_meta.json\n\n{\n  \"ownerId\": \"kn74wp81dwef0j2ym5049jwekh818cpn\",\n  \"slug\": \"browser-agent-pro\",\n  \"version\": \"2.3.0\",\n  \"publishedAt\": 1776398975251\n}\n\nFile v2.3.0:references/commands.md\n\n# agent-browser — Command Reference\n\nDies ist eine Referenz der häufigsten Befehle. Für die vollständige Liste: `agent-browser --help`\n\nVersion: 0.25.5 | Globale Flags: `--json`, `--debug`, `--annotate`, `-p browserbase`, `--session <name>`\n\n---\n\n## Navigation\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `open <url>` | URL öffnen |\n| `back` | Zurück |\n| `forward` | Vorwärts |\n| `reload` | Seite neu laden |\n| `close [--all]` | Browser/Session schließen (`--all` = alle Sessions) |\n\n## Snapshots\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `snapshot` | Accessibility Tree der Seite |\n| `snapshot -i` | Nur interaktive Elemente (empfohlen) |\n| `snapshot -i -c` | Kompakt (leere Strukturen entfernt) |\n| `snapshot -d 3` | Tiefe begrenzen |\n| `snapshot -s \"#main\"` | Auf CSS-Selektor beschränken |\n| `diff snapshot` | Vergleich zum letzten Snapshot |\n\n## Interaktion\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `click @ref` | Element klicken |\n| `dblclick @ref` | Doppelklick |\n| `fill @ref \"text\"` | Eingabefeld leeren + füllen (bevorzugt!) |\n| `type @ref \"text\"` | Text tippen (simuliert Tastendrücke) |\n| `keyboard type \"text\"` | Tippen ohne Selektor |\n| `press Enter` | Taste drücken (Enter, Tab, Escape, Control+a) |\n| `hover @ref` | Maus über Element |\n| `focus @ref` | Element fokussieren |\n| `check @ref` | Checkbox anhaken |\n| `uncheck @ref` | Checkbox abhaken |\n| `select @ref \"value\"` | Dropdown-Option wählen |\n| `drag @src @dst` | Drag & Drop |\n| `upload @ref file1 file2` | Dateien hochladen |\n| `download @ref /tmp/file` | Datei per Klick herunterladen |\n\n## Scrollen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `scroll <dir> [px]` | Scrollen (up/down/left/right, optional Pixel) |\n| `scroll down 500` | 500px nach unten |\n| `scrollintoview @ref` | Element in den Viewport scrollen |\n\n## Informationen extrahieren\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `get text @ref` | Text eines Elements |\n| `get html @ref` | HTML eines Elements |\n| `get value @ref` | Wert eines Inputs |\n| `get attr href @ref` | Attribut eines Elements |\n| `get title` | Seitentitel |\n| `get url` | Aktuelle URL |\n| `get count \".item\"` | Anzahl passender Elemente |\n| `get cdp-url` | CDP WebSocket URL |\n| `screenshot [path]` | Screenshot (optional: Pfad) |\n| `screenshot --annotate` | Screenshot mit nummerierten Labels |\n| `screenshot --full` | Volle Seite (scrollbar) |\n| `pdf <path>` | Seite als PDF |\n\n## Status prüfen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `is visible @ref` | Ist Element sichtbar? |\n| `is enabled @ref` | Ist Element aktiv? |\n| `is checked @ref` | Ist Checkbox angehakt? |\n\n## Elemente finden\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `find role button click` | Button per Rolle finden + klicken |\n| `find text \"Submit\" click` | Element per Text finden + klicken |\n| `find label \"Email\" fill \"test@test.com\"` | Per Label finden + füllen |\n| `find placeholder \"Search\" fill \"query\"` | Per Placeholder |\n\n## Warten\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `wait @ref` | Warten bis Element erscheint |\n| `wait 2000` | 2 Sekunden warten |\n| `wait --text \"Success\"` | Warten auf bestimmten Text |\n| `wait --load networkidle` | Warten bis Netzwerk ruhig |\n\n## Sessions & Auth\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `--session <name>` | Isolierte Browser-Session |\n| `--session-name <name>` | Auto-Save/Restore (Cookies + Storage) |\n| `--state <path>` | State aus JSON laden |\n| `--profile <name>` | Chrome-Profil wiederverwenden |\n| `auth save <name>` | Auth-Profil speichern |\n| `auth login <name>` | Mit gespeichertem Profil einloggen |\n| `auth list` | Gespeicherte Profile anzeigen |\n\n## Remote / CDP\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `connect <port>` | Per CDP verbinden (empfohlen) |\n| `connect <ws-url>` | Per WebSocket-URL verbinden |\n| `--cdp <port>` | Legacy CDP-Verbindung |\n| `--auto-connect` | Laufenden Chrome automatisch finden |\n\n## Maus (Low-Level)\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `mouse move <x> <y>` | Maus bewegen |\n| `mouse down` | Maustaste drücken |\n| `mouse up` | Maustaste loslassen |\n| `mouse wheel <dy>` | Mausrad scrollen |\n\n## Netzwerk\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `network requests` | Netzwerk-Requests anzeigen |\n| `network route <url> --abort` | Request blockieren |\n| `network har <start\\|stop> [path]` | HAR-Aufzeichnung starten/stoppen |\n\n## Debug\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `console` | Konsolen-Logs anzeigen |\n| `errors` | Seiten-Fehler anzeigen |\n| `highlight @ref` | Element hervorheben |\n| `trace start` | Chrome DevTools Trace aufzeichnen |\n| `record start /tmp/video.webm` | Video aufzeichnen |\n| `eval \"document.title\"` | JavaScript ausführen |\n| `--debug` | Debug-Output aktivieren (globales Flag, z.B. `agent-browser --debug open <url>`) |\n\n## Tabs\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `tab list` | Offene Tabs anzeigen |\n| `tab new` | Neuen Tab öffnen |\n| `tab close` | Tab schließen |\n| `tab <n>` | Zu Tab n wechseln |\n\n## Batch\n\n```bash\nagent-browser batch \"open https://example.com\" \"snapshot -i\" \"click @e1\"\n# --bail: Bei erstem Fehler abbrechen\nagent-browser batch --bail \"open https://a.com\" \"click @e1\"\n```\n\n## Clipboard\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `clipboard read` | Zwischenablage lesen |\n| `clipboard write \"text\"` | In Zwischenablage schreiben |\n| `clipboard copy` | Markierung kopieren |\n| `clipboard paste` | Einfügen |\n\n## AI Chat & Dashboard\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `chat \"click the login button\"` | KI-gesteuerte Aktion (Single-Shot) |\n| `chat` | Interaktiver KI-Chat (REPL) |\n| `dashboard start [--port 4848]` | Observability-Dashboard starten |\n| `dashboard stop` | Dashboard stoppen |\n| `skills list` | Verfügbare Skills anzeigen |\n| `skills get <name>` | Skill-Inhalt abrufen |\n\n## Streaming\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `stream enable [--port <n>]` | WebSocket-Streaming starten |\n| `stream disable` | Streaming stoppen |\n| `stream status` | Streaming-Status anzeigen |\n\n## Browser-Einstellungen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `set viewport 1920 1080` | Viewport-Größe |\n| `set device \"iPhone 15 Pro\"` | Device emulieren |\n| `set geo 51.47 6.86` | Geolocation setzen |\n| `set offline on` | Offline-Modus |\n| `set media dark` | Dark Mode |\n| `cookies get` | Cookies anzeigen |\n| `cookies clear` | Cookies löschen |\n| `storage local` | LocalStorage anzeigen |\n\nArchive v2.2.0: 3 files, 6093 bytes\n\nFiles: _meta.json (136b), references/commands.md (6344b), SKILL.md (7057b)\n\nFile v2.2.0:SKILL.md\n\n---\nname: browser-agent-pro\ndescription: Browser automation with agent-browser CLI + Browserbase cloud integration. Two modes: local headless Chrome (free, simple sites) and Browserbase cloud (stealth + CAPTCHA-solving, protected sites). Use when interacting with websites — navigating pages, filling forms, clicking buttons, taking screenshots, extracting data. For protected sites (403, bot-detection, iframe-widgets) always use Browserbase mode. Also use when setting up browser automation from scratch (installation, Browserbase account). Guided first-time setup included.\nmetadata: {\"openclaw\":{\"requires\":{\"bins\":[\"agent-browser\"],\"env\":[{\"name\":\"BROWSERBASE_API_KEY\",\"optional\":true,\"description\":\"Browserbase API key for cloud browser mode\"}]},\"install\":[{\"id\":\"agent-browser\",\"kind\":\"node\",\"package\":\"agent-browser\",\"bins\":[\"agent-browser\"],\"label\":\"Install agent-browser CLI (npm)\"}]}}\n---\n\n# Browser Pro — Browser Automation mit Superkräften\n\nZwei Modi: lokaler headless Chrome (kostenlos) und Browserbase Cloud (Stealth + CAPTCHA-Solving).\n\n## 0. Ersteinrichtung\n\nBeim ersten Einsatz dieses Skills:\n\n### Schritt 1: agent-browser installieren\n```bash\nnpm install -g agent-browser\nagent-browser install\n# Nur Linux — System-Dependencies für headless Chrome:\nagent-browser install --with-deps\n```\n\n### Schritt 2: Verifizieren\n```bash\nagent-browser --version\nagent-browser open https://example.com && agent-browser snapshot -i && agent-browser close\n```\n\nFalls `open` scheitert:\n- `agent-browser install` erneut ausführen\n- Linux: `agent-browser install --with-deps` (installiert Chrome-Dependencies automatisch)\n- `agent-browser --debug open https://example.com` für Diagnose\n\n### Schritt 3: Browserbase einrichten (optional, für geschützte Seiten)\n\nDen User fragen ob er Browserbase-Stealth nutzen möchte. Falls ja:\n\n1. **User bitten sich anzumelden:** https://www.browserbase.com/sign-up (kostenlos)\n2. **API Key sicher speichern** — User trägt den Key selbst ein:\n   ```bash\n   nano ~/.openclaw/.env\n   # Zeile hinzufügen: BROWSERBASE_API_KEY=bb_live_XXXXX\n   chmod 600 ~/.openclaw/.env\n   ```\n3. **Testen:**\n   ```bash\n   set -a; source ~/.openclaw/.env; set +a\n   agent-browser -p browserbase open https://example.com\n   agent-browser -p browserbase snapshot -i\n   agent-browser -p browserbase close\n   ```\n4. **User informieren:** \"Browserbase ist eingerichtet! Free Tier: 1 Stunde/Monat, 15 Min pro Session.\"\n\n## 1. Wann welcher Modus?\n\n| Situation | Modus |\n|:---|:---|\n| Normale Seiten, interne Tools | `agent-browser <cmd>` (lokal) |\n| 403, Bot-Detection, Cloudflare | `agent-browser -p browserbase <cmd>` |\n| iframe-Widgets, CAPTCHAs | `agent-browser -p browserbase <cmd>` |\n\n**Default: Lokal.** Nur Browserbase wenn lokal scheitert.\n\n**Vor Browserbase-Befehlen Env laden:**\n```bash\nset -a; source ~/.openclaw/.env; set +a\n```\n\n## 2. Core Workflow\n\n**Open → Snapshot → Interact → Snapshot → Repeat**\n\n```bash\nagent-browser open https://example.com/form\nagent-browser snapshot -i\n# Output: [@e1] Input \"Name\", [@e2] Input \"Email\", [@e3] Button \"Submit\"\n\nagent-browser fill @e1 \"Max Mustermann\"\nagent-browser fill @e2 \"max@example.com\"\nagent-browser click @e3\n\n# IMMER neu snapshooten nach Klick/Navigation (Refs verfallen!)\nagent-browser snapshot -i\nagent-browser close\n```\n\n**Für Browserbase:** `-p browserbase` zu jedem Befehl hinzufügen:\n```bash\nagent-browser -p browserbase open https://protected-site.com\nagent-browser -p browserbase snapshot -i\nagent-browser -p browserbase fill @e1 \"text\"\n```\n\n**Wichtige Regeln:**\n- Nach jeder DOM-Änderung → neuer `snapshot -i` (Refs verfallen)\n- `fill` statt `type` für Eingabefelder\n- `--json` ist globales Flag: `agent-browser --json snapshot -i`\n- `scrollintoview @ref` statt `scroll @ref`\n\n## 3. Wichtigste Befehle\n\nVollständige Referenz: `references/commands.md` | Alle Befehle: `agent-browser --help`\n\n| Kategorie | Befehl | Beschreibung |\n|:---|:---|:---|\n| **Navigation** | `open <url>`, `back`, `forward`, `reload` | Seiten-Navigation |\n| **Schließen** | `close [--all]` | Browser/Session schließen |\n| **Snapshot** | `snapshot -i` | Interaktive Elemente mit Refs |\n| **Eingabe** | `fill @ref \"text\"`, `click @ref`, `press Enter` | Formulare ausfüllen |\n| **Auswahl** | `select @ref \"value\"`, `check @ref` | Dropdowns, Checkboxen |\n| **Scrollen** | `scroll down [px]`, `scrollintoview @ref` | Seite/Element scrollen |\n| **Daten** | `get text @ref`, `get url`, `screenshot` | Infos extrahieren |\n| **Warten** | `wait @ref`, `wait 2000`, `wait --text \"...\"` | Auf Elemente/Zeit warten |\n| **Suchen** | `find role button click --name Submit` | Elemente per Locator finden + agieren |\n| **Remote** | `connect <port oder url>` | Bestehenden Browser verbinden |\n| **Isolation** | `--session <name>` | Isolierte Browser-Session (kein State) |\n| **Persistenz** | `--session-name <name>` | Auto-Save/Restore von Cookies + Storage |\n| **Debug** | `console`, `errors`, `screenshot --annotate` | Fehlersuche |\n\n## 4. Session & Auth Persistenz\n\n```bash\n# Auto-Save/Restore per Name (empfohlen):\nagent-browser --session-name my-login open https://site.com\n# Nächstes Mal: gleicher Name = Cookies + Storage automatisch wiederhergestellt\nagent-browser --session-name my-login close\n\n# Gespeicherten State laden (erzeugt z.B. durch --session-name):\nagent-browser --state ./auth.json open https://site.com\n\n# Chrome-Profil wiederverwenden (Login-State aus echtem Browser):\nagent-browser --profile Default open https://gmail.com\n\n# Auth Vault — Credentials sicher speichern und wiederverwenden:\nagent-browser auth save my-site --url https://site.com --username user\nagent-browser auth login my-site\nagent-browser auth list\n```\n\n**Immer aufräumen:** `agent-browser close` oder `agent-browser close --all` nach Abschluss.\n\n## 5. Remote Browser (CDP)\n\nVerbindung zu einem bereits laufenden Browser:\n```bash\nagent-browser connect <port>           # oder WebSocket-URL\nagent-browser connect 9222\nagent-browser --cdp 9222 snapshot -i   # Legacy-Syntax, funktioniert auch\n```\n\n## 6. Troubleshooting\n\n| Problem | Lösung |\n|:---|:---|\n| `open` scheitert / kein Browser | → `agent-browser install` (Linux: `--with-deps`) |\n| `403 Forbidden` | → Browserbase nutzen (`-p browserbase`) |\n| Refs stimmen nicht / Element nicht gefunden | → Neuen `snapshot -i` machen |\n| Seite lädt langsam | → `wait 2000` oder `wait --load networkidle` vor Snapshot |\n| Browserbase Session stirbt | → Free Tier 15 Min Limit. Neu öffnen. |\n| `401 Unauthorized` (Browserbase) | → API Key prüfen, Env neu laden |\n| Leere Seite / kein Content | → `agent-browser --debug open <url>` |\n| Was passiert auf der Seite? | → `console`, `errors`, `screenshot /tmp/debug.png` |\n| Element nicht sichtbar | → `scrollintoview @ref` dann `snapshot -i` |\n| Session hängt / falscher Kontext | → `agent-browser close --all` und neu starten |\n\n---\n\n💡 **Dir gefällt dieser Skill?** Der Ersteller freut sich über eine Bewertung auf ClawHub!\n→ https://clawhub.com/skills/browser-agent-pro\n\nFile v2.2.0:_meta.json\n\n{\n  \"ownerId\": \"kn74wp81dwef0j2ym5049jwekh818cpn\",\n  \"slug\": \"browser-agent-pro\",\n  \"version\": \"2.2.0\",\n  \"publishedAt\": 1776398664044\n}\n\nFile v2.2.0:references/commands.md\n\n# agent-browser — Command Reference\n\nDies ist eine Referenz der häufigsten Befehle. Für die vollständige Liste: `agent-browser --help`\n\nVersion: 0.25.5 | Globale Flags: `--json`, `--debug`, `--annotate`, `-p browserbase`, `--session <name>`\n\n---\n\n## Navigation\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `open <url>` | URL öffnen |\n| `back` | Zurück |\n| `forward` | Vorwärts |\n| `reload` | Seite neu laden |\n| `close [--all]` | Browser/Session schließen (`--all` = alle Sessions) |\n\n## Snapshots\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `snapshot` | Accessibility Tree der Seite |\n| `snapshot -i` | Nur interaktive Elemente (empfohlen) |\n| `snapshot -i -c` | Kompakt (leere Strukturen entfernt) |\n| `snapshot -d 3` | Tiefe begrenzen |\n| `snapshot -s \"#main\"` | Auf CSS-Selektor beschränken |\n| `diff snapshot` | Vergleich zum letzten Snapshot |\n\n## Interaktion\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `click @ref` | Element klicken |\n| `dblclick @ref` | Doppelklick |\n| `fill @ref \"text\"` | Eingabefeld leeren + füllen (bevorzugt!) |\n| `type @ref \"text\"` | Text tippen (simuliert Tastendrücke) |\n| `keyboard type \"text\"` | Tippen ohne Selektor |\n| `press Enter` | Taste drücken (Enter, Tab, Escape, Control+a) |\n| `hover @ref` | Maus über Element |\n| `focus @ref` | Element fokussieren |\n| `check @ref` | Checkbox anhaken |\n| `uncheck @ref` | Checkbox abhaken |\n| `select @ref \"value\"` | Dropdown-Option wählen |\n| `drag @src @dst` | Drag & Drop |\n| `upload @ref file1 file2` | Dateien hochladen |\n| `download @ref /tmp/file` | Datei per Klick herunterladen |\n\n## Scrollen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `scroll <dir> [px]` | Scrollen (up/down/left/right, optional Pixel) |\n| `scroll down 500` | 500px nach unten |\n| `scrollintoview @ref` | Element in den Viewport scrollen |\n\n## Informationen extrahieren\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `get text @ref` | Text eines Elements |\n| `get html @ref` | HTML eines Elements |\n| `get value @ref` | Wert eines Inputs |\n| `get attr href @ref` | Attribut eines Elements |\n| `get title` | Seitentitel |\n| `get url` | Aktuelle URL |\n| `get count \".item\"` | Anzahl passender Elemente |\n| `get cdp-url` | CDP WebSocket URL |\n| `screenshot [path]` | Screenshot (optional: Pfad) |\n| `screenshot --annotate` | Screenshot mit nummerierten Labels |\n| `screenshot --full` | Volle Seite (scrollbar) |\n| `pdf <path>` | Seite als PDF |\n\n## Status prüfen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `is visible @ref` | Ist Element sichtbar? |\n| `is enabled @ref` | Ist Element aktiv? |\n| `is checked @ref` | Ist Checkbox angehakt? |\n\n## Elemente finden\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `find role button click` | Button per Rolle finden + klicken |\n| `find text \"Submit\" click` | Element per Text finden + klicken |\n| `find label \"Email\" fill \"test@test.com\"` | Per Label finden + füllen |\n| `find placeholder \"Search\" fill \"query\"` | Per Placeholder |\n\n## Warten\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `wait @ref` | Warten bis Element erscheint |\n| `wait 2000` | 2 Sekunden warten |\n| `wait --text \"Success\"` | Warten auf bestimmten Text |\n| `wait --load networkidle` | Warten bis Netzwerk ruhig |\n\n## Sessions & Auth\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `--session <name>` | Isolierte Browser-Session |\n| `--session-name <name>` | Auto-Save/Restore (Cookies + Storage) |\n| `--state <path>` | State aus JSON laden |\n| `--profile <name>` | Chrome-Profil wiederverwenden |\n| `auth save <name>` | Auth-Profil speichern |\n| `auth login <name>` | Mit gespeichertem Profil einloggen |\n| `auth list` | Gespeicherte Profile anzeigen |\n\n## Remote / CDP\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `connect <port>` | Per CDP verbinden (empfohlen) |\n| `connect <ws-url>` | Per WebSocket-URL verbinden |\n| `--cdp <port>` | Legacy CDP-Verbindung |\n| `--auto-connect` | Laufenden Chrome automatisch finden |\n\n## Maus (Low-Level)\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `mouse move <x> <y>` | Maus bewegen |\n| `mouse down` | Maustaste drücken |\n| `mouse up` | Maustaste loslassen |\n| `mouse wheel <dy>` | Mausrad scrollen |\n\n## Netzwerk\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `network requests` | Netzwerk-Requests anzeigen |\n| `network route <url> --abort` | Request blockieren |\n| `network har <start\\|stop> [path]` | HAR-Aufzeichnung starten/stoppen |\n\n## Debug\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `console` | Konsolen-Logs anzeigen |\n| `errors` | Seiten-Fehler anzeigen |\n| `highlight @ref` | Element hervorheben |\n| `trace start` | Chrome DevTools Trace aufzeichnen |\n| `record start /tmp/video.webm` | Video aufzeichnen |\n| `eval \"document.title\"` | JavaScript ausführen |\n| `--debug` | Debug-Output aktivieren (globales Flag, z.B. `agent-browser --debug open <url>`) |\n\n## Tabs\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `tab list` | Offene Tabs anzeigen |\n| `tab new` | Neuen Tab öffnen |\n| `tab close` | Tab schließen |\n| `tab <n>` | Zu Tab n wechseln |\n\n## Batch\n\n```bash\nagent-browser batch \"open https://example.com\" \"snapshot -i\" \"click @e1\"\n# --bail: Bei erstem Fehler abbrechen\nagent-browser batch --bail \"open https://a.com\" \"click @e1\"\n```\n\n## Clipboard\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `clipboard read` | Zwischenablage lesen |\n| `clipboard write \"text\"` | In Zwischenablage schreiben |\n| `clipboard copy` | Markierung kopieren |\n| `clipboard paste` | Einfügen |\n\n## AI Chat & Dashboard\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `chat \"click the login button\"` | KI-gesteuerte Aktion (Single-Shot) |\n| `chat` | Interaktiver KI-Chat (REPL) |\n| `dashboard start [--port 4848]` | Observability-Dashboard starten |\n| `dashboard stop` | Dashboard stoppen |\n| `skills list` | Verfügbare Skills anzeigen |\n| `skills get <name>` | Skill-Inhalt abrufen |\n\n## Streaming\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `stream enable [--port <n>]` | WebSocket-Streaming starten |\n| `stream disable` | Streaming stoppen |\n| `stream status` | Streaming-Status anzeigen |\n\n## Browser-Einstellungen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `set viewport 1920 1080` | Viewport-Größe |\n| `set device \"iPhone 15 Pro\"` | Device emulieren |\n| `set geo 51.47 6.86` | Geolocation setzen |\n| `set offline on` | Offline-Modus |\n| `set media dark` | Dark Mode |\n| `cookies get` | Cookies anzeigen |\n| `cookies clear` | Cookies löschen |\n| `storage local` | LocalStorage anzeigen |\n\nArchive v2.1.0: 3 files, 6081 bytes\n\nFiles: _meta.json (136b), references/commands.md (6344b), SKILL.md (7134b)\n\nFile v2.1.0:SKILL.md\n\n---\nname: browser-agent-pro\ndescription: Browser automation with agent-browser CLI + Browserbase cloud integration. Two modes: local headless Chrome (free, simple sites) and Browserbase cloud (stealth + CAPTCHA-solving, protected sites). Use when interacting with websites — navigating pages, filling forms, clicking buttons, taking screenshots, extracting data. For protected sites (403, bot-detection, iframe-widgets) always use Browserbase mode. Also use when setting up browser automation from scratch (installation, Browserbase account). Guided first-time setup included.\nmetadata:\n  openclaw:\n    requires:\n      bins: [agent-browser]\n      env:\n        - name: BROWSERBASE_API_KEY\n          optional: true\n          description: Browserbase API key for cloud browser mode (stealth + CAPTCHA-solving)\n    install:\n      - id: agent-browser\n        kind: node\n        package: agent-browser\n        bins: [agent-browser]\n        label: Install agent-browser CLI (npm)\n---\n\n# Browser Pro — Browser Automation mit Superkräften\n\nZwei Modi: lokaler headless Chrome (kostenlos) und Browserbase Cloud (Stealth + CAPTCHA-Solving).\n\n## 0. Ersteinrichtung\n\nBeim ersten Einsatz dieses Skills:\n\n### Schritt 1: agent-browser installieren\n```bash\nnpm install -g agent-browser\nagent-browser install\n# Nur Linux — System-Dependencies für headless Chrome:\nagent-browser install --with-deps\n```\n\n### Schritt 2: Verifizieren\n```bash\nagent-browser --version\nagent-browser open https://example.com && agent-browser snapshot -i && agent-browser close\n```\n\nFalls `open` scheitert:\n- `agent-browser install` erneut ausführen\n- Linux: `agent-browser install --with-deps` (installiert Chrome-Dependencies automatisch)\n- `agent-browser --debug open https://example.com` für Diagnose\n\n### Schritt 3: Browserbase einrichten (optional, für geschützte Seiten)\n\nDen User fragen ob er Browserbase-Stealth nutzen möchte. Falls ja:\n\n1. **User bitten sich anzumelden:** https://www.browserbase.com/sign-up (kostenlos)\n2. **API Key sicher speichern** — User trägt den Key selbst ein:\n   ```bash\n   nano ~/.openclaw/.env\n   # Zeile hinzufügen: BROWSERBASE_API_KEY=bb_live_XXXXX\n   chmod 600 ~/.openclaw/.env\n   ```\n3. **Testen:**\n   ```bash\n   set -a; source ~/.openclaw/.env; set +a\n   agent-browser -p browserbase open https://example.com\n   agent-browser -p browserbase snapshot -i\n   agent-browser -p browserbase close\n   ```\n4. **User informieren:** \"Browserbase ist eingerichtet! Free Tier: 1 Stunde/Monat, 15 Min pro Session.\"\n\n## 1. Wann welcher Modus?\n\n| Situation | Modus |\n|:---|:---|\n| Normale Seiten, interne Tools | `agent-browser <cmd>` (lokal) |\n| 403, Bot-Detection, Cloudflare | `agent-browser -p browserbase <cmd>` |\n| iframe-Widgets, CAPTCHAs | `agent-browser -p browserbase <cmd>` |\n\n**Default: Lokal.** Nur Browserbase wenn lokal scheitert.\n\n**Vor Browserbase-Befehlen Env laden:**\n```bash\nset -a; source ~/.openclaw/.env; set +a\n```\n\n## 2. Core Workflow\n\n**Open → Snapshot → Interact → Snapshot → Repeat**\n\n```bash\nagent-browser open https://example.com/form\nagent-browser snapshot -i\n# Output: [@e1] Input \"Name\", [@e2] Input \"Email\", [@e3] Button \"Submit\"\n\nagent-browser fill @e1 \"Max Mustermann\"\nagent-browser fill @e2 \"max@example.com\"\nagent-browser click @e3\n\n# IMMER neu snapshooten nach Klick/Navigation (Refs verfallen!)\nagent-browser snapshot -i\nagent-browser close\n```\n\n**Für Browserbase:** `-p browserbase` zu jedem Befehl hinzufügen:\n```bash\nagent-browser -p browserbase open https://protected-site.com\nagent-browser -p browserbase snapshot -i\nagent-browser -p browserbase fill @e1 \"text\"\n```\n\n**Wichtige Regeln:**\n- Nach jeder DOM-Änderung → neuer `snapshot -i` (Refs verfallen)\n- `fill` statt `type` für Eingabefelder\n- `--json` ist globales Flag: `agent-browser --json snapshot -i`\n- `scrollintoview @ref` statt `scroll @ref`\n\n## 3. Wichtigste Befehle\n\nVollständige Referenz: `references/commands.md` | Alle Befehle: `agent-browser --help`\n\n| Kategorie | Befehl | Beschreibung |\n|:---|:---|:---|\n| **Navigation** | `open <url>`, `back`, `forward`, `reload` | Seiten-Navigation |\n| **Schließen** | `close [--all]` | Browser/Session schließen |\n| **Snapshot** | `snapshot -i` | Interaktive Elemente mit Refs |\n| **Eingabe** | `fill @ref \"text\"`, `click @ref`, `press Enter` | Formulare ausfüllen |\n| **Auswahl** | `select @ref \"value\"`, `check @ref` | Dropdowns, Checkboxen |\n| **Scrollen** | `scroll down [px]`, `scrollintoview @ref` | Seite/Element scrollen |\n| **Daten** | `get text @ref`, `get url`, `screenshot` | Infos extrahieren |\n| **Warten** | `wait @ref`, `wait 2000`, `wait --text \"...\"` | Auf Elemente/Zeit warten |\n| **Suchen** | `find role button click --name Submit` | Elemente per Locator finden + agieren |\n| **Remote** | `connect <port oder url>` | Bestehenden Browser verbinden |\n| **Isolation** | `--session <name>` | Isolierte Browser-Session (kein State) |\n| **Persistenz** | `--session-name <name>` | Auto-Save/Restore von Cookies + Storage |\n| **Debug** | `console`, `errors`, `screenshot --annotate` | Fehlersuche |\n\n## 4. Session & Auth Persistenz\n\n```bash\n# Auto-Save/Restore per Name (empfohlen):\nagent-browser --session-name my-login open https://site.com\n# Nächstes Mal: gleicher Name = Cookies + Storage automatisch wiederhergestellt\nagent-browser --session-name my-login close\n\n# Gespeicherten State laden (erzeugt z.B. durch --session-name):\nagent-browser --state ./auth.json open https://site.com\n\n# Chrome-Profil wiederverwenden (Login-State aus echtem Browser):\nagent-browser --profile Default open https://gmail.com\n\n# Auth Vault — Credentials sicher speichern und wiederverwenden:\nagent-browser auth save my-site --url https://site.com --username user\nagent-browser auth login my-site\nagent-browser auth list\n```\n\n**Immer aufräumen:** `agent-browser close` oder `agent-browser close --all` nach Abschluss.\n\n## 5. Remote Browser (CDP)\n\nVerbindung zu einem bereits laufenden Browser:\n```bash\nagent-browser connect <port>           # oder WebSocket-URL\nagent-browser connect 9222\nagent-browser --cdp 9222 snapshot -i   # Legacy-Syntax, funktioniert auch\n```\n\n## 6. Troubleshooting\n\n| Problem | Lösung |\n|:---|:---|\n| `open` scheitert / kein Browser | → `agent-browser install` (Linux: `--with-deps`) |\n| `403 Forbidden` | → Browserbase nutzen (`-p browserbase`) |\n| Refs stimmen nicht / Element nicht gefunden | → Neuen `snapshot -i` machen |\n| Seite lädt langsam | → `wait 2000` oder `wait --load networkidle` vor Snapshot |\n| Browserbase Session stirbt | → Free Tier 15 Min Limit. Neu öffnen. |\n| `401 Unauthorized` (Browserbase) | → API Key prüfen, Env neu laden |\n| Leere Seite / kein Content | → `agent-browser --debug open <url>` |\n| Was passiert auf der Seite? | → `console`, `errors`, `screenshot /tmp/debug.png` |\n| Element nicht sichtbar | → `scrollintoview @ref` dann `snapshot -i` |\n| Session hängt / falscher Kontext | → `agent-browser close --all` und neu starten |\n\n---\n\n💡 **Dir gefällt dieser Skill?** Der Ersteller freut sich über eine Bewertung auf ClawHub!\n→ https://clawhub.com/skills/browser-agent-pro\n\nFile v2.1.0:_meta.json\n\n{\n  \"ownerId\": \"kn74wp81dwef0j2ym5049jwekh818cpn\",\n  \"slug\": \"browser-agent-pro\",\n  \"version\": \"2.1.0\",\n  \"publishedAt\": 1776396132211\n}\n\nFile v2.1.0:references/commands.md\n\n# agent-browser — Command Reference\n\nDies ist eine Referenz der häufigsten Befehle. Für die vollständige Liste: `agent-browser --help`\n\nVersion: 0.25.5 | Globale Flags: `--json`, `--debug`, `--annotate`, `-p browserbase`, `--session <name>`\n\n---\n\n## Navigation\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `open <url>` | URL öffnen |\n| `back` | Zurück |\n| `forward` | Vorwärts |\n| `reload` | Seite neu laden |\n| `close [--all]` | Browser/Session schließen (`--all` = alle Sessions) |\n\n## Snapshots\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `snapshot` | Accessibility Tree der Seite |\n| `snapshot -i` | Nur interaktive Elemente (empfohlen) |\n| `snapshot -i -c` | Kompakt (leere Strukturen entfernt) |\n| `snapshot -d 3` | Tiefe begrenzen |\n| `snapshot -s \"#main\"` | Auf CSS-Selektor beschränken |\n| `diff snapshot` | Vergleich zum letzten Snapshot |\n\n## Interaktion\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `click @ref` | Element klicken |\n| `dblclick @ref` | Doppelklick |\n| `fill @ref \"text\"` | Eingabefeld leeren + füllen (bevorzugt!) |\n| `type @ref \"text\"` | Text tippen (simuliert Tastendrücke) |\n| `keyboard type \"text\"` | Tippen ohne Selektor |\n| `press Enter` | Taste drücken (Enter, Tab, Escape, Control+a) |\n| `hover @ref` | Maus über Element |\n| `focus @ref` | Element fokussieren |\n| `check @ref` | Checkbox anhaken |\n| `uncheck @ref` | Checkbox abhaken |\n| `select @ref \"value\"` | Dropdown-Option wählen |\n| `drag @src @dst` | Drag & Drop |\n| `upload @ref file1 file2` | Dateien hochladen |\n| `download @ref /tmp/file` | Datei per Klick herunterladen |\n\n## Scrollen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `scroll <dir> [px]` | Scrollen (up/down/left/right, optional Pixel) |\n| `scroll down 500` | 500px nach unten |\n| `scrollintoview @ref` | Element in den Viewport scrollen |\n\n## Informationen extrahieren\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `get text @ref` | Text eines Elements |\n| `get html @ref` | HTML eines Elements |\n| `get value @ref` | Wert eines Inputs |\n| `get attr href @ref` | Attribut eines Elements |\n| `get title` | Seitentitel |\n| `get url` | Aktuelle URL |\n| `get count \".item\"` | Anzahl passender Elemente |\n| `get cdp-url` | CDP WebSocket URL |\n| `screenshot [path]` | Screenshot (optional: Pfad) |\n| `screenshot --annotate` | Screenshot mit nummerierten Labels |\n| `screenshot --full` | Volle Seite (scrollbar) |\n| `pdf <path>` | Seite als PDF |\n\n## Status prüfen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `is visible @ref` | Ist Element sichtbar? |\n| `is enabled @ref` | Ist Element aktiv? |\n| `is checked @ref` | Ist Checkbox angehakt? |\n\n## Elemente finden\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `find role button click` | Button per Rolle finden + klicken |\n| `find text \"Submit\" click` | Element per Text finden + klicken |\n| `find label \"Email\" fill \"test@test.com\"` | Per Label finden + füllen |\n| `find placeholder \"Search\" fill \"query\"` | Per Placeholder |\n\n## Warten\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `wait @ref` | Warten bis Element erscheint |\n| `wait 2000` | 2 Sekunden warten |\n| `wait --text \"Success\"` | Warten auf bestimmten Text |\n| `wait --load networkidle` | Warten bis Netzwerk ruhig |\n\n## Sessions & Auth\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `--session <name>` | Isolierte Browser-Session |\n| `--session-name <name>` | Auto-Save/Restore (Cookies + Storage) |\n| `--state <path>` | State aus JSON laden |\n| `--profile <name>` | Chrome-Profil wiederverwenden |\n| `auth save <name>` | Auth-Profil speichern |\n| `auth login <name>` | Mit gespeichertem Profil einloggen |\n| `auth list` | Gespeicherte Profile anzeigen |\n\n## Remote / CDP\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `connect <port>` | Per CDP verbinden (empfohlen) |\n| `connect <ws-url>` | Per WebSocket-URL verbinden |\n| `--cdp <port>` | Legacy CDP-Verbindung |\n| `--auto-connect` | Laufenden Chrome automatisch finden |\n\n## Maus (Low-Level)\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `mouse move <x> <y>` | Maus bewegen |\n| `mouse down` | Maustaste drücken |\n| `mouse up` | Maustaste loslassen |\n| `mouse wheel <dy>` | Mausrad scrollen |\n\n## Netzwerk\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `network requests` | Netzwerk-Requests anzeigen |\n| `network route <url> --abort` | Request blockieren |\n| `network har <start\\|stop> [path]` | HAR-Aufzeichnung starten/stoppen |\n\n## Debug\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `console` | Konsolen-Logs anzeigen |\n| `errors` | Seiten-Fehler anzeigen |\n| `highlight @ref` | Element hervorheben |\n| `trace start` | Chrome DevTools Trace aufzeichnen |\n| `record start /tmp/video.webm` | Video aufzeichnen |\n| `eval \"document.title\"` | JavaScript ausführen |\n| `--debug` | Debug-Output aktivieren (globales Flag, z.B. `agent-browser --debug open <url>`) |\n\n## Tabs\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `tab list` | Offene Tabs anzeigen |\n| `tab new` | Neuen Tab öffnen |\n| `tab close` | Tab schließen |\n| `tab <n>` | Zu Tab n wechseln |\n\n## Batch\n\n```bash\nagent-browser batch \"open https://example.com\" \"snapshot -i\" \"click @e1\"\n# --bail: Bei erstem Fehler abbrechen\nagent-browser batch --bail \"open https://a.com\" \"click @e1\"\n```\n\n## Clipboard\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `clipboard read` | Zwischenablage lesen |\n| `clipboard write \"text\"` | In Zwischenablage schreiben |\n| `clipboard copy` | Markierung kopieren |\n| `clipboard paste` | Einfügen |\n\n## AI Chat & Dashboard\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `chat \"click the login button\"` | KI-gesteuerte Aktion (Single-Shot) |\n| `chat` | Interaktiver KI-Chat (REPL) |\n| `dashboard start [--port 4848]` | Observability-Dashboard starten |\n| `dashboard stop` | Dashboard stoppen |\n| `skills list` | Verfügbare Skills anzeigen |\n| `skills get <name>` | Skill-Inhalt abrufen |\n\n## Streaming\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `stream enable [--port <n>]` | WebSocket-Streaming starten |\n| `stream disable` | Streaming stoppen |\n| `stream status` | Streaming-Status anzeigen |\n\n## Browser-Einstellungen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `set viewport 1920 1080` | Viewport-Größe |\n| `set device \"iPhone 15 Pro\"` | Device emulieren |\n| `set geo 51.47 6.86` | Geolocation setzen |\n| `set offline on` | Offline-Modus |\n| `set media dark` | Dark Mode |\n| `cookies get` | Cookies anzeigen |\n| `cookies clear` | Cookies löschen |\n| `storage local` | LocalStorage anzeigen |\n\nArchive v1.0.0: 3 files, 6243 bytes\n\nFiles: references/commands.md (6344b), SKILL.md (7359b), _meta.json (136b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: browser-agent-pro\ndescription: Browser automation with agent-browser CLI + Browserbase cloud integration. Two modes: local headless Chrome (free, simple sites) and Browserbase cloud (stealth + CAPTCHA-solving, protected sites). Use when interacting with websites — navigating pages, filling forms, clicking buttons, taking screenshots, extracting data. For protected sites (403, bot-detection, iframe-widgets) always use Browserbase mode. Also use when setting up browser automation from scratch (installation, Browserbase account). Guided first-time setup included.\n---\n\n# Browser Pro — Browser Automation mit Superkräften\n\nZwei Modi: lokaler headless Chrome (kostenlos) und Browserbase Cloud (Stealth + CAPTCHA-Solving).\n\n## 0. Ersteinrichtung\n\nBeim ersten Einsatz dieses Skills:\n\n### Schritt 1: agent-browser installieren\n```bash\nnpm install -g agent-browser\nagent-browser install\n# Nur Linux — System-Dependencies für headless Chrome:\nagent-browser install --with-deps\n```\n\n### Schritt 2: Verifizieren\n```bash\nagent-browser --version\nagent-browser open https://example.com && agent-browser snapshot -i && agent-browser close\n```\n\nFalls `open` scheitert:\n- `agent-browser install` erneut ausführen\n- Linux: `agent-browser install --with-deps` oder manuell: `apt-get install -y libgtk-3-0t64 libgbm1 libnss3 libxss1 libasound2t64 libatk-bridge2.0-0t64 libdrm2`\n- `agent-browser --debug open https://example.com` für Diagnose\n\n### Schritt 3: Browserbase einrichten (optional, für geschützte Seiten)\n\nDen User fragen ob er Browserbase-Stealth nutzen möchte. Falls ja:\n\n1. **User bitten sich anzumelden:** https://www.browserbase.com/sign-up (kostenlos)\n2. **API Key sicher speichern** — dem User eine dieser Optionen anbieten:\n   - **Empfohlen:** User trägt den Key selbst ein: `nano ~/.openclaw/.env` → Zeile `BROWSERBASE_API_KEY=bb_live_XXXXX` hinzufügen\n   - **Alternativ:** User schickt den Key per Chat → Agent speichert ihn (Key danach nicht wiederholen oder in Notizen übernehmen)\n3. **Key in .env schreiben** (falls per Chat erhalten):\n   ```bash\n   # Sicher: ersetzt vorhandenen Key oder fügt neuen hinzu\n   touch ~/.openclaw/.env && chmod 600 ~/.openclaw/.env\n   grep -q '^BROWSERBASE_API_KEY=' ~/.openclaw/.env \\\n     && sed -i \"s|^BROWSERBASE_API_KEY=.*|BROWSERBASE_API_KEY=<key>|\" ~/.openclaw/.env \\\n     || printf '\\nBROWSERBASE_API_KEY=%s\\n' '<key>' >> ~/.openclaw/.env\n   ```\n4. **Testen:**\n   ```bash\n   set -a; source ~/.openclaw/.env; set +a\n   agent-browser -p browserbase open https://example.com\n   agent-browser -p browserbase snapshot -i\n   agent-browser -p browserbase close\n   ```\n5. **User informieren:** \"Browserbase ist eingerichtet! Free Tier: 1 Stunde/Monat, 15 Min pro Session.\"\n\n## 1. Wann welcher Modus?\n\n| Situation | Modus |\n|:---|:---|\n| Normale Seiten, interne Tools | `agent-browser <cmd>` (lokal) |\n| 403, Bot-Detection, Cloudflare | `agent-browser -p browserbase <cmd>` |\n| iframe-Widgets, CAPTCHAs | `agent-browser -p browserbase <cmd>` |\n\n**Default: Lokal.** Nur Browserbase wenn lokal scheitert.\n\n**Vor Browserbase-Befehlen Env laden:**\n```bash\nset -a; source ~/.openclaw/.env; set +a\n```\n\n## 2. Core Workflow\n\n**Open → Snapshot → Interact → Snapshot → Repeat**\n\n```bash\nagent-browser open https://example.com/form\nagent-browser snapshot -i\n# Output: [@e1] Input \"Name\", [@e2] Input \"Email\", [@e3] Button \"Submit\"\n\nagent-browser fill @e1 \"Max Mustermann\"\nagent-browser fill @e2 \"max@example.com\"\nagent-browser click @e3\n\n# IMMER neu snapshooten nach Klick/Navigation (Refs verfallen!)\nagent-browser snapshot -i\nagent-browser close\n```\n\n**Für Browserbase:** `-p browserbase` zu jedem Befehl hinzufügen:\n```bash\nagent-browser -p browserbase open https://protected-site.com\nagent-browser -p browserbase snapshot -i\nagent-browser -p browserbase fill @e1 \"text\"\n```\n\n**Wichtige Regeln:**\n- Nach jeder DOM-Änderung → neuer `snapshot -i` (Refs verfallen)\n- `fill` statt `type` für Eingabefelder\n- `--json` ist globales Flag: `agent-browser --json snapshot -i`\n- `scrollintoview @ref` statt `scroll @ref`\n\n## 3. Wichtigste Befehle\n\nVollständige Referenz: `references/commands.md` | Alle Befehle: `agent-browser --help`\n\n| Kategorie | Befehl | Beschreibung |\n|:---|:---|:---|\n| **Navigation** | `open <url>`, `back`, `forward`, `reload` | Seiten-Navigation |\n| **Schließen** | `close [--all]` | Browser/Session schließen |\n| **Snapshot** | `snapshot -i` | Interaktive Elemente mit Refs |\n| **Eingabe** | `fill @ref \"text\"`, `click @ref`, `press Enter` | Formulare ausfüllen |\n| **Auswahl** | `select @ref \"value\"`, `check @ref` | Dropdowns, Checkboxen |\n| **Scrollen** | `scroll down [px]`, `scrollintoview @ref` | Seite/Element scrollen |\n| **Daten** | `get text @ref`, `get url`, `screenshot` | Infos extrahieren |\n| **Warten** | `wait @ref`, `wait 2000`, `wait --text \"...\"` | Auf Elemente/Zeit warten |\n| **Suchen** | `find role button click --name Submit` | Elemente per Locator finden + agieren |\n| **Remote** | `connect <port oder url>` | Bestehenden Browser verbinden |\n| **Isolation** | `--session <name>` | Isolierte Browser-Session (kein State) |\n| **Persistenz** | `--session-name <name>` | Auto-Save/Restore von Cookies + Storage |\n| **Debug** | `console`, `errors`, `screenshot --annotate` | Fehlersuche |\n\n## 4. Session & Auth Persistenz\n\n```bash\n# Auto-Save/Restore per Name (empfohlen):\nagent-browser --session-name my-login open https://site.com\n# Nächstes Mal: gleicher Name = Cookies + Storage automatisch wiederhergestellt\nagent-browser --session-name my-login close\n\n# Gespeicherten State laden (erzeugt z.B. durch --session-name):\nagent-browser --state ./auth.json open https://site.com\n\n# Chrome-Profil wiederverwenden (Login-State aus echtem Browser):\nagent-browser --profile Default open https://gmail.com\n\n# Auth Vault — Credentials sicher speichern und wiederverwenden:\nagent-browser auth save my-site --url https://site.com --username user\nagent-browser auth login my-site\nagent-browser auth list\n```\n\n**Immer aufräumen:** `agent-browser close` oder `agent-browser close --all` nach Abschluss.\n\n## 5. Remote Browser (CDP)\n\nVerbindung zu einem bereits laufenden Browser:\n```bash\nagent-browser connect <port>           # oder WebSocket-URL\nagent-browser connect 9222\nagent-browser --cdp 9222 snapshot -i   # Legacy-Syntax, funktioniert auch\n```\n\n## 6. Troubleshooting\n\n| Problem | Lösung |\n|:---|:---|\n| `open` scheitert / kein Browser | → `agent-browser install` (Linux: `--with-deps`) |\n| `403 Forbidden` | → Browserbase nutzen (`-p browserbase`) |\n| Refs stimmen nicht / Element nicht gefunden | → Neuen `snapshot -i` machen |\n| Seite lädt langsam | → `wait 2000` oder `wait --load networkidle` vor Snapshot |\n| Browserbase Session stirbt | → Free Tier 15 Min Limit. Neu öffnen. |\n| `401 Unauthorized` (Browserbase) | → API Key prüfen, Env neu laden |\n| Leere Seite / kein Content | → `agent-browser --debug open <url>` |\n| Was passiert auf der Seite? | → `console`, `errors`, `screenshot /tmp/debug.png` |\n| Element nicht sichtbar | → `scrollintoview @ref` dann `snapshot -i` |\n| Session hängt / falscher Kontext | → `agent-browser close --all` und neu starten |\n\n---\n\n💡 **Dir gefällt dieser Skill?** Der Ersteller freut sich über eine Bewertung auf ClawHub!\n→ https://clawhub.com/skills/browser-agent-pro\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn74wp81dwef0j2ym5049jwekh818cpn\",\n  \"slug\": \"browser-agent-pro\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1776394951585\n}\n\nFile v1.0.0:references/commands.md\n\n# agent-browser — Command Reference\n\nDies ist eine Referenz der häufigsten Befehle. Für die vollständige Liste: `agent-browser --help`\n\nVersion: 0.25.5 | Globale Flags: `--json`, `--debug`, `--annotate`, `-p browserbase`, `--session <name>`\n\n---\n\n## Navigation\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `open <url>` | URL öffnen |\n| `back` | Zurück |\n| `forward` | Vorwärts |\n| `reload` | Seite neu laden |\n| `close [--all]` | Browser/Session schließen (`--all` = alle Sessions) |\n\n## Snapshots\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `snapshot` | Accessibility Tree der Seite |\n| `snapshot -i` | Nur interaktive Elemente (empfohlen) |\n| `snapshot -i -c` | Kompakt (leere Strukturen entfernt) |\n| `snapshot -d 3` | Tiefe begrenzen |\n| `snapshot -s \"#main\"` | Auf CSS-Selektor beschränken |\n| `diff snapshot` | Vergleich zum letzten Snapshot |\n\n## Interaktion\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `click @ref` | Element klicken |\n| `dblclick @ref` | Doppelklick |\n| `fill @ref \"text\"` | Eingabefeld leeren + füllen (bevorzugt!) |\n| `type @ref \"text\"` | Text tippen (simuliert Tastendrücke) |\n| `keyboard type \"text\"` | Tippen ohne Selektor |\n| `press Enter` | Taste drücken (Enter, Tab, Escape, Control+a) |\n| `hover @ref` | Maus über Element |\n| `focus @ref` | Element fokussieren |\n| `check @ref` | Checkbox anhaken |\n| `uncheck @ref` | Checkbox abhaken |\n| `select @ref \"value\"` | Dropdown-Option wählen |\n| `drag @src @dst` | Drag & Drop |\n| `upload @ref file1 file2` | Dateien hochladen |\n| `download @ref /tmp/file` | Datei per Klick herunterladen |\n\n## Scrollen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `scroll <dir> [px]` | Scrollen (up/down/left/right, optional Pixel) |\n| `scroll down 500` | 500px nach unten |\n| `scrollintoview @ref` | Element in den Viewport scrollen |\n\n## Informationen extrahieren\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `get text @ref` | Text eines Elements |\n| `get html @ref` | HTML eines Elements |\n| `get value @ref` | Wert eines Inputs |\n| `get attr href @ref` | Attribut eines Elements |\n| `get title` | Seitentitel |\n| `get url` | Aktuelle URL |\n| `get count \".item\"` | Anzahl passender Elemente |\n| `get cdp-url` | CDP WebSocket URL |\n| `screenshot [path]` | Screenshot (optional: Pfad) |\n| `screenshot --annotate` | Screenshot mit nummerierten Labels |\n| `screenshot --full` | Volle Seite (scrollbar) |\n| `pdf <path>` | Seite als PDF |\n\n## Status prüfen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `is visible @ref` | Ist Element sichtbar? |\n| `is enabled @ref` | Ist Element aktiv? |\n| `is checked @ref` | Ist Checkbox angehakt? |\n\n## Elemente finden\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `find role button click` | Button per Rolle finden + klicken |\n| `find text \"Submit\" click` | Element per Text finden + klicken |\n| `find label \"Email\" fill \"test@test.com\"` | Per Label finden + füllen |\n| `find placeholder \"Search\" fill \"query\"` | Per Placeholder |\n\n## Warten\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `wait @ref` | Warten bis Element erscheint |\n| `wait 2000` | 2 Sekunden warten |\n| `wait --text \"Success\"` | Warten auf bestimmten Text |\n| `wait --load networkidle` | Warten bis Netzwerk ruhig |\n\n## Sessions & Auth\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `--session <name>` | Isolierte Browser-Session |\n| `--session-name <name>` | Auto-Save/Restore (Cookies + Storage) |\n| `--state <path>` | State aus JSON laden |\n| `--profile <name>` | Chrome-Profil wiederverwenden |\n| `auth save <name>` | Auth-Profil speichern |\n| `auth login <name>` | Mit gespeichertem Profil einloggen |\n| `auth list` | Gespeicherte Profile anzeigen |\n\n## Remote / CDP\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `connect <port>` | Per CDP verbinden (empfohlen) |\n| `connect <ws-url>` | Per WebSocket-URL verbinden |\n| `--cdp <port>` | Legacy CDP-Verbindung |\n| `--auto-connect` | Laufenden Chrome automatisch finden |\n\n## Maus (Low-Level)\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `mouse move <x> <y>` | Maus bewegen |\n| `mouse down` | Maustaste drücken |\n| `mouse up` | Maustaste loslassen |\n| `mouse wheel <dy>` | Mausrad scrollen |\n\n## Netzwerk\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `network requests` | Netzwerk-Requests anzeigen |\n| `network route <url> --abort` | Request blockieren |\n| `network har <start\\|stop> [path]` | HAR-Aufzeichnung starten/stoppen |\n\n## Debug\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `console` | Konsolen-Logs anzeigen |\n| `errors` | Seiten-Fehler anzeigen |\n| `highlight @ref` | Element hervorheben |\n| `trace start` | Chrome DevTools Trace aufzeichnen |\n| `record start /tmp/video.webm` | Video aufzeichnen |\n| `eval \"document.title\"` | JavaScript ausführen |\n| `--debug` | Debug-Output aktivieren (globales Flag, z.B. `agent-browser --debug open <url>`) |\n\n## Tabs\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `tab list` | Offene Tabs anzeigen |\n| `tab new` | Neuen Tab öffnen |\n| `tab close` | Tab schließen |\n| `tab <n>` | Zu Tab n wechseln |\n\n## Batch\n\n```bash\nagent-browser batch \"open https://example.com\" \"snapshot -i\" \"click @e1\"\n# --bail: Bei erstem Fehler abbrechen\nagent-browser batch --bail \"open https://a.com\" \"click @e1\"\n```\n\n## Clipboard\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `clipboard read` | Zwischenablage lesen |\n| `clipboard write \"text\"` | In Zwischenablage schreiben |\n| `clipboard copy` | Markierung kopieren |\n| `clipboard paste` | Einfügen |\n\n## AI Chat & Dashboard\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `chat \"click the login button\"` | KI-gesteuerte Aktion (Single-Shot) |\n| `chat` | Interaktiver KI-Chat (REPL) |\n| `dashboard start [--port 4848]` | Observability-Dashboard starten |\n| `dashboard stop` | Dashboard stoppen |\n| `skills list` | Verfügbare Skills anzeigen |\n| `skills get <name>` | Skill-Inhalt abrufen |\n\n## Streaming\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `stream enable [--port <n>]` | WebSocket-Streaming starten |\n| `stream disable` | Streaming stoppen |\n| `stream status` | Streaming-Status anzeigen |\n\n## Browser-Einstellungen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `set viewport 1920 1080` | Viewport-Größe |\n| `set device \"iPhone 15 Pro\"` | Device emulieren |\n| `set geo 51.47 6.86` | Geolocation setzen |\n| `set offline on` | Offline-Modus |\n| `set media dark` | Dark Mode |\n| `cookies get` | Cookies anzeigen |\n| `cookies clear` | Cookies löschen |\n| `storage local` | LocalStorage anzeigen |","readmeExcerpt":"Skill: Browser Agent Pro Owner: maikimolto Summary: Automate browser tasks locally with headless Chrome or via Browserbase cloud for stealth, CAPTCHA-solving, and protected sites access. Tags: latest:2.4.0 Version history: v2.4.0 | 2026-04-17T04:32:59.247Z | user Setup now prompts user to rate the skill on ClawHub after successful first-time setup v2.3.0 | 2026-04-17T04:09:35.251Z | user Added Security Notes section ","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"npm install -g agent-browser\nagent-browser install\n# Nur Linux — System-Dependencies für headless Chrome:\nagent-browser install --with-deps"},{"language":"bash","snippet":"agent-browser --version\nagent-browser open https://example.com && agent-browser snapshot -i && agent-browser close"},{"language":"bash","snippet":"nano ~/.openclaw/.env\n   # Zeile hinzufügen: BROWSERBASE_API_KEY=bb_live_XXXXX\n   chmod 600 ~/.openclaw/.env"},{"language":"bash","snippet":"set -a; source ~/.openclaw/.env; set +a\n   agent-browser -p browserbase open https://example.com\n   agent-browser -p browserbase snapshot -i\n   agent-browser -p browserbase close"},{"language":"bash","snippet":"set -a; source ~/.openclaw/.env; set +a"},{"language":"bash","snippet":"agent-browser open https://example.com/form\nagent-browser snapshot -i\n# Output: [@e1] Input \"Name\", [@e2] Input \"Email\", [@e3] Button \"Submit\"\n\nagent-browser fill @e1 \"Max Mustermann\"\nagent-browser fill @e2 \"max@example.com\"\nagent-browser click @e3\n\n# IMMER neu snapshooten nach Klick/Navigation (Refs verfallen!)\nagent-browser snapshot -i\nagent-browser close"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: browser-agent-pro\ndescription: Browser automation with agent-browser CLI + Browserbase cloud integration. Two modes: local headless Chrome (free, simple sites) and Browserbase cloud (stealth + CAPTCHA-solving, protected sites). Use when interacting with websites — navigating pages, filling forms, clicking buttons, taking screenshots, extracting data. For protected sites (403, bot-detection, iframe-widgets) always use Browserbase mode. Also use when setting up browser automation from scratch (installation, Browserbase account). Guided first-time setup included.\nmetadata: {\"openclaw\":{\"requires\":{\"bins\":[\"agent-browser\"],\"env\":[{\"name\":\"BROWSERBASE_API_KEY\",\"optional\":true,\"description\":\"Browserbase API key for cloud browser mode\"}]},\"install\":[{\"id\":\"agent-browser\",\"kind\":\"node\",\"package\":\"agent-browser\",\"bins\":[\"agent-browser\"],\"label\":\"Install agent-browser CLI (npm)\"}]}}\n---\n\n# Browser Pro — Browser Automation mit Superkräften\n\nZwei Modi: lokaler headless Chrome (kostenlos) und Browserbase Cloud (Stealth + CAPTCHA-Solving).\n\n## 0. Ersteinrichtung\n\nBeim ersten Einsatz dieses Skills:\n\n### Schritt 1: agent-browser installieren\n```bash\nnpm install -g agent-browser\nagent-browser install\n# Nur Linux — System-Dependencies für headless Chrome:\nagent-browser install --with-deps\n```\n\n### Schritt 2: Verifizieren\n```bash\nagent-browser --version\nagent-browser open https://example.com && agent-browser snapshot -i && agent-browser close\n```\n\nFalls `open` scheitert:\n- `agent-browser install` erneut ausführen\n- Linux: `agent-browser install --with-deps` (installiert Chrome-Dependencies automatisch)\n- `agent-browser --debug open https://example.com` für Diagnose\n\n### Schritt 3: Browserbase einrichten (optional, für geschützte Seiten)\n\nDen User fragen ob er Browserbase-Stealth nutzen möchte. Falls ja:\n\n1. **User bitten sich anzumelden:** https://www.browserbase.com/sign-up (kostenlos)\n2. **API Key sicher speichern** — User trägt den Key selbst ein:\n   ```bash\n   nano ~/.openclaw/.env\n   # Zeile hinzufügen: BROWSERBASE_API_KEY=bb_live_XXXXX\n   chmod 600 ~/.openclaw/.env\n   ```\n3. **Testen:**\n   ```bash\n   set -a; source ~/.openclaw/.env; set +a\n   agent-browser -p browserbase open https://example.com\n   agent-browser -p browserbase snapshot -i\n   agent-browser -p browserbase close\n   ```\n4. **User informieren:** \"Browserbase ist eingerichtet! Free Tier: 1 Stunde/Monat, 15 Min pro Session.\"\n\nNach erfolgreicher Ersteinrichtung (Schritt 2 oder Schritt 3) den User darauf hinweisen, dass er den Skill auf ClawHub bewerten kann:\n→ https://clawhub.com/skills/browser-agent-pro\n\n## 1. Wann welcher Modus?\n\n| Situation | Modus |\n|:---|:---|\n| Normale Seiten, interne Tools | `agent-browser <cmd>` (lokal) |\n| 403, Bot-Detection, Cloudflare | `agent-browser -p browserbase <cmd>` |\n| iframe-Widgets, CAPTCHAs | `agent-browser -p browserbase <cmd>` |\n\n**Default: Lokal.** Nur Browserbase wenn lokal scheitert.\n\n**Vor Browserbase-Befehlen Env laden:**\n```bash\nset -a; source "},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn74wp81dwef0j2ym5049jwekh818cpn\",\n  \"slug\": \"browser-agent-pro\",\n  \"version\": \"2.4.0\",\n  \"publishedAt\": 1776400379247\n}"},{"path":"references/commands.md","content":"# agent-browser — Command Reference\n\nDies ist eine Referenz der häufigsten Befehle. Für die vollständige Liste: `agent-browser --help`\n\nVersion: 0.25.5 | Globale Flags: `--json`, `--debug`, `--annotate`, `-p browserbase`, `--session <name>`\n\n---\n\n## Navigation\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `open <url>` | URL öffnen |\n| `back` | Zurück |\n| `forward` | Vorwärts |\n| `reload` | Seite neu laden |\n| `close [--all]` | Browser/Session schließen (`--all` = alle Sessions) |\n\n## Snapshots\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `snapshot` | Accessibility Tree der Seite |\n| `snapshot -i` | Nur interaktive Elemente (empfohlen) |\n| `snapshot -i -c` | Kompakt (leere Strukturen entfernt) |\n| `snapshot -d 3` | Tiefe begrenzen |\n| `snapshot -s \"#main\"` | Auf CSS-Selektor beschränken |\n| `diff snapshot` | Vergleich zum letzten Snapshot |\n\n## Interaktion\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `click @ref` | Element klicken |\n| `dblclick @ref` | Doppelklick |\n| `fill @ref \"text\"` | Eingabefeld leeren + füllen (bevorzugt!) |\n| `type @ref \"text\"` | Text tippen (simuliert Tastendrücke) |\n| `keyboard type \"text\"` | Tippen ohne Selektor |\n| `press Enter` | Taste drücken (Enter, Tab, Escape, Control+a) |\n| `hover @ref` | Maus über Element |\n| `focus @ref` | Element fokussieren |\n| `check @ref` | Checkbox anhaken |\n| `uncheck @ref` | Checkbox abhaken |\n| `select @ref \"value\"` | Dropdown-Option wählen |\n| `drag @src @dst` | Drag & Drop |\n| `upload @ref file1 file2` | Dateien hochladen |\n| `download @ref /tmp/file` | Datei per Klick herunterladen |\n\n## Scrollen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `scroll <dir> [px]` | Scrollen (up/down/left/right, optional Pixel) |\n| `scroll down 500` | 500px nach unten |\n| `scrollintoview @ref` | Element in den Viewport scrollen |\n\n## Informationen extrahieren\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `get text @ref` | Text eines Elements |\n| `get html @ref` | HTML eines Elements |\n| `get value @ref` | Wert eines Inputs |\n| `get attr href @ref` | Attribut eines Elements |\n| `get title` | Seitentitel |\n| `get url` | Aktuelle URL |\n| `get count \".item\"` | Anzahl passender Elemente |\n| `get cdp-url` | CDP WebSocket URL |\n| `screenshot [path]` | Screenshot (optional: Pfad) |\n| `screenshot --annotate` | Screenshot mit nummerierten Labels |\n| `screenshot --full` | Volle Seite (scrollbar) |\n| `pdf <path>` | Seite als PDF |\n\n## Status prüfen\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `is visible @ref` | Ist Element sichtbar? |\n| `is enabled @ref` | Ist Element aktiv? |\n| `is checked @ref` | Ist Checkbox angehakt? |\n\n## Elemente finden\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `find role button click` | Button per Rolle finden + klicken |\n| `find text \"Submit\" click` | Element per Text finden + klicken |\n| `find label \"Email\" fill \"test@test.com\"` | Per Label finden + füllen |\n| `find placeholder \"Search\" fill \"query\"` | Per Placeholder |\n\n## Warten\n\n| Befehl | Beschreibung |\n|:---|:---|\n| `wait @ref` | Warten bis Element erscheint |\n|"},{"path":"skill-card.md","content":"## Description:\n\nAutomate browser tasks locally with headless Chrome or via Browserbase cloud for stealth, CAPTCHA-solving, and protected sites access.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[maikimolto](https://clawhub.ai/user/maikimolto)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers, operators, and external users use this skill to guide browser automation tasks such as navigating websites, filling forms, clicking controls, taking screenshots, extracting page data, and setting up local or Browserbase-backed browser sessions.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill instructs users to install and run a global browser automation CLI that can control browser sessions.\n\nMitigation: Prefer a pinned or local agent-browser install and review commands before execution.\n\nRisk: Browser automation can access cookies, saved logins, local storage, clipboard content, and persisted session state.\n\nMitigation: Use isolated sessions by default, avoid real Chrome profiles unless necessary, close sessions after use, and clean up saved state files.\n\nRisk: Browserbase mode requires an API key and may expose cloud browser access if the key is mishandled.\n\nMitigation: Store Browserbase credentials in a dedicated private file, keep file permissions restrictive, and avoid logging or sharing the key.\n\n## Reference(s):\n\n- [agent-browser command reference](artifact/references/commands.md)\n- [Browserbase sign-up](https://www.browserbase.com/sign-up)\n- [ClawHub skill page](https://clawhub.ai/maikimolto/skills/browser-agent-pro)\n\n## Skill Output:\n\n**Output Type(s):** [guidance, shell commands, configuration]\n\n**Output Format:** [Markdown with inline shell commands and configuration snippets]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include browser automation command sequences, troubleshooting steps, and credential-handling guidance.]\n\n## Skill Version(s):\n\n2.4.0 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"Automate browser tasks locally with headless Chrome or via Browserbase cloud for stealth, CAPTCHA-solving, and protected sites access. Skill: Browser Agent Pro Owner: maikimolto Summary: Automate browser tasks locally with headless Chrome or via Browserbase cloud for stealth, CAPTCHA-solving, and protected sites access. Tags: latest:2.4.0 Version history: v2.4.0 | 2026-04-17T04:32:59.247Z | user Setup now prompts user to rate the skill on ClawHub after successful first-time setup v2.3.0 | 2026-04-17T04:09:35.251Z | user Added Security Notes section","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":1392,"uniquenessScore":56,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-11T19:10:34.229Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-11T19:10:34.229Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-11T21:52:29.301Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}