cdpilot
cdpilot
Browser-Automatisierung ohne Abhängigkeiten 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.
Warum cdpilot?
KI-Agenten und Entwickler benötigen eine Browser-Steuerung, die einfach funktioniert:
Keine Konfiguration —
npx cdpilot launchstartet eine isolierte BrowsersitzungKeine Abhängigkeiten — Kein Puppeteer, kein Playwright, kein Selenium. Reines CDP über HTTP
Über 40 Befehle — Navigieren, klicken, tippen, Screenshots, Netzwerk, Konsole, Barrierefreiheit und mehr
KI-Agenten-freundlich — Entwickelt für Claude, GPT, Gemini und jeden LLM-Tool-Workflow
Isolierte Sitzungen — Ihr persönlicher Browser bleibt unberührt. cdpilot läuft in seinem eigenen Profil
Visuelles Feedback — Grünes Leuchten, Cursor-Visualisierung, Klick-Wellen und Tastaturanzeige halten Sie während der Automatisierung auf dem Laufenden
Multi-Projekt-Isolierung — Jedes Projekt erhält automatisch eine eigene Browser-Instanz und einen eigenen Port, keine Konflikte
KI-Steuerungswarnung — Rote Benachrichtigung erscheint, wenn Sie während einer aktiven Automatisierung mit der Maus darüber fahren
Datenschutz zuerst — Alles läuft lokal. Keine Daten verlassen Ihren Rechner
Warum Brave?
cdpilot verwendet den Brave Browser als Engine. Hier ist der Grund:
Funktion | Brave | Chrome | Warum es wichtig ist |
Integrierter Werbeblocker | Shields (nativ) | Erweiterung erforderlich | Seiten laden schneller, weniger Rauschen im DOM |
Tracker-Blockierung | Standardmäßig an | Manuelle Konfiguration | Sauberere Netzwerkprotokolle für das Debugging |
Fingerprint-Schutz | Nativ | Keiner | Besserer Datenschutz für automatisierte Sitzungen |
Chromium-basiert | Volle CDP-Unterstützung | Volle CDP-Unterstützung | Gleiches DevTools Protocol, gleiche Leistung |
Open Source | Ja (MPL 2.0) | Chromium ja, Chrome nein | Transparent, prüfbar |
Ressourcennutzung | Geringerer Speicher | Höherer Speicher | Besser für die Arbeit nebenbei |
Kurz gesagt: Brave = Chromes Leistung + integrierter Datenschutz + weniger Ballast.
cdpilot funktioniert auch mit Chrome und Chromium als Fallback. Brave wird empfohlen, ist aber nicht erforderlich.
Installation
# Use directly (no install needed)
npx cdpilot <command>
# Or install globally
npm i -g cdpilotVoraussetzungen: Node.js 18+ und eines der folgenden Programme: Brave Browser, Google Chrome oder Chromium.
Erstmalige Einrichtung
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 proxyAnforderungsabfang (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
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 geolocationVerwendung mit KI-Agenten
cdpilot ist darauf ausgelegt, von KI-Agenten als Werkzeug aufgerufen zu werden:
Claude Code (MCP)
{
"mcpServers": {
"cdpilot": {
"command": "npx",
"args": ["cdpilot", "mcp"]
}
}
}Jedes LLM (Tool-Nutzung)
{
"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 Browser-Profil |
| 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-Browser-Instanzen, kein lokaler Browser erforderlich
Team-Dashboard — Gemeinsame Sitzungen, Audit-Logs, Nutzungsanalysen
Priorisierter Support — Direkte Hilfe für Unternehmensintegrationen
Sicherheit
Isoliertes Browser-Profil — 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 Netzwerk-Exposition — CDP hört nur auf
127.0.0.1. Remote-Verbindungen sind standardmäßig nicht möglich.Keine Abhängigkeiten — Null npm/Python-Laufzeitabhängigkeiten bedeuten eine Angriffsfläche von Null in der Lieferkette.
Eine Sicherheitslücke gefunden? Bitte senden Sie eine E-Mail direkt an den Betreuer, anstatt ein öffentliches Issue zu eröffnen.
Roadmap
Der einzige Browser-MCP mit integrierten Test-Assertions. Hier ist, was wir veröffentlicht haben und was als Nächstes kommt:
Veröffentlicht
[x] Über 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, 500-mal weniger Token als Screenshots[x] Token-effiziente Screenshots — Element-basierter Zuschnitt (13-mal kleiner), JPEG-Qualitätskontrolle, Formatwahl
[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 automatisches Warten auf Elemente
[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-Isolierung (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 an, wie Claudes orangefarbenes Leuchten)
[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, kein LLM nötig[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-Fingerprinting, CAPTCHA-Lösung
[ ] cdpilot Cloud — gehostete Browser-Sitzungs-API, REST + WebSocket MCP-Endpunkt
[ ] Chrome-Erweiterung — cdpilot von jedem Browser ohne CLI verwenden
[ ] Performance-Audit — Core Web Vitals (LCP, CLS, INP) via 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.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mehmetnadir/cdpilot'
If you have feedback or need assistance with the MCP directory API, please join our Discord server