$ show cyrus-and/chrome-remote-interface
chrome-remote-interface is a well-crafted Node.js library that provides a clean, dynamic API for interacting with the Chrome DevTools Protocol (CDP). It connects to a remote debugging endpoint (e.g., Chrome with --remote-debugging-port), fetches the full protocol descriptor dynamically, and generates typed JavaScript methods and events for every domain, command, and notification. The library supports callback and Promise patterns, includes a comprehensive CLI with an interactive REPL, and works across multiple implementations (Chrome, Node.js, Edge, Firefox, etc.). It does not bundle a browser; instead, it focuses on low-level protocol access, making it a foundational tool for browser automation, debugging, and custom DevTools clients.
The LLM identified 1 files worth highlighting for reuse:
A self-contained utility for making HTTP requests to Chrome's remote debugging endpoint. It performs a manual DNS lookup to resolve the host (avoiding host header issues in Chrome 66+), enforces a configurable timeout (10s), and properly handles errors. The function is isolated (only depends on Node's dns and util) and could be extracted and reused in any project needing robust HTTP requests to a remote debugging service.