cdpilot
cdpilot
Zero-Dependency-Browserautomatisierung direkt aus dem Terminal. Ein Befehl, volle Kontrolle.
Schnelleinstieg
npx cdpilot launch # Start browser with CDP
npx cdpilot go https://example.com
npx cdpilot shot # Take screenshotKeine Konfigurationsdateien. Kein Boilerplate. Einfach npx und loslegen.
Related MCP server: MCP CDP Scraper
Warum cdpilot?
KI-Agenten und Entwickler benötigen eine Browsersteuerung, die einfach funktioniert:
Zero Config —
npx cdpilot launchstartet eine isolierte BrowsersitzungZero 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 ( | 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 defaultWarum diese Aufteilung?
Chrome 147+ verwirft
--load-extensionfür entpackte Erweiterungen stillschweigend (kein Fehler, keine Warnung). Überprüft —chrome://extensionszeigt 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 cdpilotVoraussetzungen: 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 connectionBefehle
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 PDFInteraktion
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 dropDebugging
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 JavaScriptTab-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 tabNetzwerkkontrolle
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 proxyAnforderungsabfangung (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 rulesGeräteemulation
cdpilot emulate iphone # iPhone emulation
cdpilot emulate ipad # iPad emulation
cdpilot emulate android # Android emulation
cdpilot emulate reset # Back to desktopGeolokalisierung
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 overrideBarrierefreiheit (Accessibility)
cdpilot a11y # Full accessibility tree
cdpilot a11y summary # Quick summary
cdpilot a11y find <role> # Find elements by ARIA roleSitzungsverwaltung
cdpilot session # Current session info
cdpilot sessions # List all sessions
cdpilot session-close [id] # Close sessionErweitert
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 geolocationStealth & 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 crashescdpilot health ist für Shell-Watchdogs konzipiert:
until cdpilot health >/dev/null; do cdpilot launch; sleep 2; doneZeigt 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-Debugging-Port |
| Auto-Erkennung | Pfad zur Browser-Binary |
|
| Isoliertes Browserprofil |
| 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-Befehle —
smart-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 testPRs sind willkommen! Bitte lesen Sie zuerst CONTRIBUTING.md.
Lizenz
MIT — tun Sie, was Sie wollen.
This server cannot be deployed
Maintenance
Related MCP Connectors
Cloud browser, web extraction, screenshots, and remote CDP tools for AI agents.
Hosted browser for AI agents: screenshots, post-JS DOM, console, WCAG. No install, no API key.
AI-powered browser automation — navigate, click, fill forms, and extract data from any website.
Headless browser primitives for AI agents when sites need real JS rendering.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenancesingle-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.14MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to scrape web pages, fill forms, take screenshots, and extract structured data via Chrome DevTools Protocol with zero external dependencies.MIT
- AlicenseBqualityAmaintenanceEnables AI agents and developers to automate real Chrome/Chromium browsers through the Chrome DevTools Protocol, with token-efficient snapshots, multi-action batching, shadow DOM traversal, system-page control, extension management, and network/WebSocket inspection.811MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to drive a real Chrome instance over the Chrome DevTools Protocol — opening and navigating tabs, reading compact YAML page outlines with refs, clicking, typing, scrolling, screenshotting, and evaluating scripts — with no browser extension or installed dependencies. It also audits pages for horizontal overflow and WCAG AA contrast, available both as an MCP tool and as a CI-friendly CLI.6 npmMIT