Skip to main content
Glama

cdpilot

Zero-Dependency-Browserautomatisierung direkt aus dem Terminal. Ein Befehl, volle Kontrolle.

npm version npm downloads License: MIT Node.js MCP Compatible cdpilot MCP server

Schnelleinstieg

npx cdpilot launch    # Start browser with CDP
npx cdpilot go https://example.com
npx cdpilot shot      # Take screenshot

Keine Konfigurationsdateien. Kein Boilerplate. Einfach npx und loslegen.

Related MCP server: Scout

Warum cdpilot?

KI-Agenten und Entwickler benötigen eine Browsersteuerung, die einfach funktioniert:

  • Zero Confignpx cdpilot launch startet eine isolierte Browsersitzung

  • Zero Dependency — Kein Puppeteer, kein Playwright, kein Selenium. Reines CDP über HTTP

  • 40+ Befehle — Navigieren, klicken, tippen, Screenshot, Netzwerk, Konsole, Barrierefreiheit und mehr

  • KI-Agenten-freundlich — Entwickelt für Claude, GPT, Gemini und jeden LLM-Tool-Use-Workflow

  • Isolierte Sitzungen — Ihr persönlicher Browser bleibt unberührt. cdpilot läuft in seinem eigenen Profil

  • Visuelles Feedback — Grüner Leuchteffekt, Cursor-Visualisierung, Klick-Wellen und Tastaturanzeige halten Sie während der Automatisierung auf dem Laufenden

  • Multi-Projekt-Isolation — Jedes Projekt erhält automatisch eine eigene Browserinstanz und einen eigenen Port, keine Konflikte

  • KI-Steuerungswarnung — Rote Benachrichtigung erscheint, wenn Sie während einer aktiven Automatisierung den Mauszeiger bewegen

  • Datenschutz zuerst — Alles läuft lokal. Keine Daten verlassen Ihren Rechner

Browserauswahl (Workload-bewusste automatische Auswahl)

cdpilot wählt den richtigen Browser für Ihre Aufgabe. auto (Standard) ist eine Richtlinie mit zwei Achsen — Erweiterungs-Workload × Plattformstabilität:

Ihr Workload

Auto-Pick-Reihenfolge

Hat registrierte Erweiterungen (ext-install)

vivaldi → brave → edge → chromium → chrome

Keine Erweiterungen (reine Automatisierung)

chrome → vivaldi → edge → chromium → brave

Jederzeit überschreibbar:

cdpilot browser            # show current pick + reason
cdpilot browser vivaldi    # pin to Vivaldi
cdpilot browser auto       # restore smart default

Warum diese Aufteilung?

  • Chrome 147+ verwirft --load-extension für entpackte Erweiterungen stillschweigend (kein Fehler, keine Warnung). Überprüft — chrome://extensions zeigt 0 Elemente.

  • Vivaldi, Brave, Edge, Chromium respektieren --load-extension (getestet).

  • Unter macOS 26 (Tahoe) stürzt Brave 1.89 deterministisch nach ca. 7 Minuten Laufzeit ab (SIGTRAP in ThreadPoolForegroundWorker). cdpilot erkennt das Betriebssystem und stuft Brave automatisch herab, bis eine korrigierte Brave-Version erscheint.

Jeder Browser erhält sein eigenes isoliertes Profil (~/.cdpilot/.../profile-vivaldi und so weiter), sodass ein Wechsel niemals zu beschädigten Einstellungen führt.

Installation

# Use directly (no install needed)
npx cdpilot <command>

# Or install globally
npm i -g cdpilot

Voraussetzungen: Node.js 18+ und einer der folgenden Browser: Brave Browser, Google Chrome oder Chromium.

Ersteinrichtung

npx cdpilot setup     # Auto-detect browser, create isolated profile
npx cdpilot launch    # Start browser with CDP enabled
npx cdpilot status    # Check connection

Befehle

Navigation & Inhalt

cdpilot go <url>              # Navigate to URL
cdpilot content               # Get page text content
cdpilot html                  # Get page HTML
cdpilot shot [file]           # Take screenshot (PNG)
cdpilot pdf [file]            # Save page as PDF

Interaktion

cdpilot click <selector>      # Click element
cdpilot type <selector> <text># Type into input
cdpilot fill <selector> <val> # Set input value (React-compatible)
cdpilot submit <form>         # Submit form
cdpilot hover <selector>      # Hover element
cdpilot keys <combo>          # Keyboard shortcut (ctrl+a, enter, etc.)
cdpilot scroll-to <selector>  # Scroll element into view
cdpilot drag <from> <to>      # Drag and drop

Debugging

cdpilot console [url]         # Capture console logs
cdpilot network [url]         # Monitor network requests
cdpilot debug [url]           # Full diagnostic (console+network+perf+shot)
cdpilot perf                  # Performance metrics
cdpilot eval <js>             # Execute JavaScript

Tab-Verwaltung

cdpilot tabs                  # List open tabs
cdpilot new-tab [url]         # Open new tab
cdpilot switch-tab <id>       # Switch to tab
cdpilot close-tab [id]        # Close tab
cdpilot close                 # Close active tab

Netzwerkkontrolle

cdpilot throttle slow3g       # Simulate slow 3G
cdpilot throttle fast3g       # Simulate fast 3G
cdpilot throttle offline      # Go offline
cdpilot throttle off          # Back to normal
cdpilot proxy <url>           # Set proxy
cdpilot proxy off             # Remove proxy

Anforderungsabfangung (Request Interception)

cdpilot intercept block <pattern>                    # Block requests
cdpilot intercept mock <pattern> <json-file>         # Mock responses
cdpilot intercept headers <pattern> <header:value>   # Add headers
cdpilot intercept list                               # List active rules
cdpilot intercept clear                              # Clear all rules

Geräteemulation

cdpilot emulate iphone        # iPhone emulation
cdpilot emulate ipad          # iPad emulation
cdpilot emulate android       # Android emulation
cdpilot emulate reset         # Back to desktop

Geolokalisierung

cdpilot geo istanbul          # Set location to Istanbul
cdpilot geo london            # Set location to London
cdpilot geo 41.01 28.97       # Custom coordinates
cdpilot geo off               # Remove override

Barrierefreiheit (Accessibility)

cdpilot a11y                  # Full accessibility tree
cdpilot a11y summary          # Quick summary
cdpilot a11y find <role>      # Find elements by ARIA role

Sitzungsverwaltung

cdpilot session               # Current session info
cdpilot sessions              # List all sessions
cdpilot session-close [id]    # Close session

Erweitert

cdpilot cookies [domain]      # List cookies
cdpilot storage               # localStorage contents
cdpilot upload <sel> <file>   # Upload file to input
cdpilot multi-eval <js>       # Execute JS in all tabs
cdpilot headless [on|off]     # Toggle headless mode
cdpilot frame list            # List iframes
cdpilot dialog auto-accept    # Auto-accept dialogs
cdpilot permission grant geo  # Grant geolocation

Stealth & CAPTCHA

Zero-Dependency-Anti-Fingerprint-Schicht — patcht navigator.webdriver, chrome.runtime, Plugins (korrekte PluginArray-Vererbung), WebGL-Vendor/Renderer, Berechtigungen, Hardware-Concurrency und den Worker- Konstruktor. Wird über Page.addScriptToEvaluateOnNewDocument injiziert, bevor ein Seitenskript ausgeführt wird. Standardmäßig deaktiviert; Opt-in.

cdpilot stealth on            # enable fingerprint patches (opt-in)
cdpilot stealth off           # disable (default)
cdpilot stealth status        # show which patches are applied

cdpilot captcha-check         # JSON detection of Turnstile/hCaptcha/reCAPTCHA/
                              # DataDome/PerimeterX/Arkose/GeeTest. Exit 0/3
cdpilot captcha-wait [sec]    # block until user solves (interactive)
                              # or poll with JSON stream (non-interactive)

Überprüft gegen öffentliche Bot-Erkennungs-Panels:

  • bot.sannysoft.com: 24/24 BESTANDEN (WebDriver, Chrome-Objekt, Plugins als PluginArray, WebGL, PHANTOM_, HEADCHR_, SELENIUM_DRIVER)

  • bot.incolumitas.com intoli: 6/6 OK — neue Tests: 6/7 OK (ein FEHLER = reine CDP-Präsenz, kann nicht per JS gepatcht werden)

  • nowsecure.nl (Cloudflare Full Challenge): bestanden

  • arh.antoinevastel.com/areyouheadless: "You are not Chrome headless"

Zuverlässigkeit

cdpilot browser [name|auto]   # workload-aware browser selection
cdpilot health                # JSON: alive, port, tabs, browser, today's crashes

cdpilot health ist für Shell-Watchdogs konzipiert:

until cdpilot health >/dev/null; do cdpilot launch; sleep 2; done

Zeigt die heutigen Brave-Absturzberichte aus ~/Library/Logs/DiagnosticReports/ unter macOS an — erkennen Sie Verschlechterungen, bevor Ihre Automatisierung stillschweigend stoppt.

Verwendung mit KI-Agenten

cdpilot ist darauf ausgelegt, von KI-Agenten als Tool aufgerufen zu werden:

Claude Code (MCP)

{
  "mcpServers": {
    "cdpilot": {
      "command": "npx",
      "args": ["cdpilot", "mcp"]
    }
  }
}

Jedes LLM (Tool-Use)

{
  "name": "browser",
  "description": "Control a browser via CDP",
  "parameters": {
    "command": "go https://example.com"
  }
}

Python (Subprocess)

import subprocess
result = subprocess.run(["npx", "cdpilot", "go", url], capture_output=True, text=True)
print(result.stdout)

Umgebungsvariablen

Variable

Standard

Beschreibung

CDP_PORT

9222

CDP-Debugging-Port

CHROME_BIN

Auto-Erkennung

Pfad zur Browser-Binary

CDPILOT_PROFILE

~/.cdpilot/profile

Isoliertes Browserprofil

BROWSER_SESSION

Auto

Sitzungskennung

Funktionsweise

┌─────────────┐     HTTP/WebSocket      ┌──────────────┐
│  cdpilot │ ◄──────────────────────► │ Brave/Chrome │
│   (CLI)     │    Chrome DevTools       │  (CDP mode)  │
└─────────────┘     Protocol             └──────────────┘
       │                                        │
       │  Zero dependencies                     │  Isolated profile
       │  Pure HTTP + WebSocket                 │  Separate from your
       │  ~2500 lines, single file              │  personal browser
       └────────────────────────────────────────┘

Kein Puppeteer. Kein Playwright. Kein Selenium. Nur direkte CDP-Kommunikation.

Vergleich

Funktion

cdpilot

Puppeteer

Playwright

Selenium

Installationsgröße

~50KB

400MB+

200MB+

100MB+

Abhängigkeiten

0

50+

30+

Java + Treiber

Einrichtungszeit

sofort

Minuten

Minuten

mühsam

KI-Agenten-bereit

ja

manuell

manuell

manuell

Browser-Download

nein

ja (Chromium)

ja (3 Browser)

nein

CLI-fokussiert

ja

nein (Bibliothek)

nein (Bibliothek)

nein

MCP-Unterstützung

ja

nein

nein

nein

Monetarisierung / Pro (Demnächst)

Die cdpilot CLI ist und bleibt kostenlos und Open Source (MIT).

Zukünftige kostenpflichtige Angebote:

  • cdpilot cloud — Remote-Browserinstanzen, kein lokaler Browser erforderlich

  • Team-Dashboard — Geteilte Sitzungen, Audit-Logs, Nutzungsanalysen

  • Priorisierter Support — Direkte Hilfe für Unternehmensintegrationen

Sicherheit

  • Isoliertes Browserprofil — cdpilot läuft in ~/.cdpilot/profile, getrennt von Ihrem täglichen Browser. Ihre Cookies, Passwörter und Ihr Verlauf werden niemals offengelegt.

  • Kein willkürlicher Dateizugriff — MCP-Screenshot-Dateinamen werden bereinigt und auf das Screenshot-Verzeichnis beschränkt. Pfad-Traversal ist blockiert.

  • Sichere CSS-Selektoren — Alle an querySelector übergebenen Selektoren sind JSON-escaped, um Injektionen zu verhindern.

  • Keine Netzwerkfreigabe — CDP hört standardmäßig nur auf 127.0.0.1. Remote-Verbindungen sind standardmäßig nicht möglich.

  • Keine Abhängigkeiten — Null npm/Python-Laufzeitabhängigkeiten bedeuten null Angriffsfläche für Supply-Chain-Angriffe.

Eine Sicherheitslücke gefunden? Bitte senden Sie eine E-Mail direkt an den Maintainer, anstatt ein öffentliches Issue zu eröffnen.

Roadmap

Der einzige Browser-MCP mit integrierten Test-Assertions. Hier ist, was wir bereits veröffentlicht haben und was als Nächstes kommt:

Veröffentlicht

  • [x] 60+ CLI-Befehle (navigieren, klicken, ausfüllen, Screenshot, PDF, Konsole, Netzwerk...)

  • [x] MCP-Server für KI-Agenten-Integration (Claude Code, Cursor, etc.)

  • [x] 10 integrierte Test-Assertions — assert, assert-url, assert-title, assert-count, assert-value, assert-attr, assert-visible/hidden, wait-for, check (batch), screenshot-diff

  • [x] Accessibility-Tree-Snapshot (a11y-snapshot) — strukturierte Daten mit @ref-Referenzen, 500x weniger Token als Screenshots

  • [x] Token-effiziente Screenshots — Element-basierter Zuschnitt (13x kleiner), JPEG-Qualitätskontrolle, Formatauswahl

  • [x] Vision-Fallback (describe) — a11y + Screenshot + Text in einem Aufruf

  • [x] Annotierte Screenshots — @N-Badge-Overlays auf interaktiven Elementen

  • [x] Auto-Wait — MutationObserver-basiert, 5s automatische Element-Wartezeit

  • [x] Batch-Befehle — JSON-Arrays via stdin für mehrstufige Automatisierung

  • [x] Visuelles Feedback-System (dauerhaftes grünes Leuchten, Cursor, Wellen, Tastaturanzeige)

  • [x] KI-Steuerungswarnung (rote Warnung, wenn der Benutzer während der Automatisierung interagiert)

  • [x] Multi-Projekt-Browser-Isolation (jedes Projekt erhält eigenen Port + Profil)

  • [x] Pre-flight-Assistent (installiert Abhängigkeiten automatisch beim ersten Start)

  • [x] Persistentes MCP-Leuchten (bleibt während der gesamten KI-Sitzung aktiv, wie das orangefarbene Leuchten von Claude)

  • [x] DevExtension-System (native JS-Injektion ohne Browser-Store)

  • [x] Smart-Befehlesmart-click, smart-fill, smart-select — Interaktion über sichtbaren Text, keine CSS-Selektoren erforderlich, keine KI erforderlich

  • [x] Datenextraktion (extract) — strukturierte DOM-Daten im Text-, JSON- oder Listenformat

  • [x] Seitenbeobachtung (observe) — alle interaktiven Elemente mit verfügbaren Aktionen auflisten

  • [x] Skript-Runner (run) — .cdp-Skriptdateien mit Erfolgs-/Fehlerbericht ausführen

Demnächst

  • [ ] iframe & Shadow DOM-Unterstützung — Interaktion mit Elementen innerhalb von iframes und Shadow Roots

  • [ ] Sitzungsaufzeichnung & Wiedergabe — Browsersitzungen aufzeichnen und deterministisch wiedergeben

  • [ ] Stealth-Modus (Pro) — menschliche Mausbewegungen/Tippen, Anti-Fingerprint, CAPTCHA-Lösung

  • [ ] cdpilot Cloud — gehostete Browsersitzungs-API, REST + WebSocket MCP-Endpunkt

  • [ ] Chrome-Erweiterung — cdpilot von jedem Browser ohne CLI nutzen

  • [ ] Performance-Audit — Core Web Vitals (LCP, CLS, INP) über die CDP-Performance-Domain

  • [ ] WCAG-Barrierefreiheits-Audit — automatisierte Berichterstattung zur a11y-Konformität

  • [ ] Claude Code Skill-Modus — zusätzlich zu MCP als .claude/skills/-Skill ausführen

Sie haben eine Idee? Eröffnen Sie ein Issue oder senden Sie einen PR!

Mitwirken

git clone https://github.com/mehmetnadir/cdpilot.git
cd cdpilot
npm install
npm test

PRs sind willkommen! Bitte lesen Sie zuerst CONTRIBUTING.md.

Lizenz

MIT — tun Sie, was Sie wollen.


Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Reliable, scalable browser infrastructure for AI agents. Route, pool, and failover across any browser provider. 8 built-in browser tools using raw Chrome CDP - navigate, screenshot, snapshot, interact, evaluate. Zero-config with auto Chrome detection & concurrent sessions support
    518 npm
    10
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    single-binary MCP server that gives AI agents a browser. 66 tools for navigation, form filling, data extraction, screenshots, and DOM diffing — built on pure Chrome DevTools Protocol.
    13
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Lightweight browser automation server for AI agents, enabling fast (10-25ms per action), structured observations and semantic selectors with zero token overhead.
    6
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to scrape web pages, fill forms, take screenshots, and extract structured data via Chrome DevTools Protocol with zero external dependencies.
    MIT