Interceptor  by Hacker-Valley-Media

Agentic control for browsers and macOS apps

Created 2 months ago
264 stars

Top 96.5% on SourcePulse

GitHubView on GitHub
Project Summary

Interceptor provides agents with human-style control over existing browser sessions and native macOS applications via a single Command Line Interface (CLI). It addresses the limitations of traditional browser automation stacks that rely on separate browsers and the DevTools Protocol (CDP), which often lose existing authenticated contexts and require starting from scratch. Interceptor allows users to leverage their actual browser profiles and macOS applications, enabling agents to perform complex workflows seamlessly across both web and desktop environments without the need for separate automated browsers or extensive setup.

How It Works

Interceptor operates through two distinct "surfaces" managed by a single CLI binary: the Interceptor Browser (a Chrome extension) and Interceptor macOS (a Swift bridge daemon). The Browser surface integrates directly into the user's existing Chrome or Brave browser, preserving cookies, logins, and tabs. It avoids CDP, instead capturing network traffic passively and interacting with web pages using standard Web APIs, synthetic events (enhanced with userActivation override and __interceptor_trust markers for isTrusted checks), and direct manipulation of canvas elements. The macOS surface utilizes Apple's native frameworks, including Accessibility APIs and ScreenCaptureKit, to drive desktop applications with structured data and trusted input, offering a unified control plane for both web and native environments.

Quick Start & Requirements

  • Installation: Recommended installation involves downloading and running signed .pkg installers for macOS. Alternatively, users can build from source using git clone, bun install, bash scripts/build.sh, and bash scripts/install.sh.
  • Prerequisites: macOS is required for the native application surface. A compatible browser (Chrome or Brave) with Developer Mode enabled is necessary for the browser extension. Building the macOS bridge requires Xcode command line tools. The Bun runtime is used for development.
  • Setup: Installers aim for quick setup. The browser extension requires manual loading via chrome://extensions/ or brave://extensions/. The "Interceptor-Full" macOS package may trigger TCC prompts for Accessibility, Screen Recording, and Apple Events upon first use of native app features.
  • Links: Official installers and releases are available on the project's GitHub Releases page.

Highlighted Details

  • No CDP Dependency: Browser automation operates without the DevTools Protocol, using standard APIs and synthetic events.
  • Session Preservation: Leverages existing browser profiles, maintaining cookies, logins, and active sessions.
  • Advanced Synthetic Input: Employs userActivation override and __interceptor_trust markers to satisfy isTrusted checks on interactive web elements.
  • Native macOS Control: Provides deep integration with macOS applications via Accessibility trees, system input events, and on-device intelligence features.
  • Session Recording & Replay: Captures user interactions across both browser and macOS surfaces, exporting them as replayable scripts.
  • Passive Network Monitoring: Captures fetch, XMLHttpRequest, WebSocket, and other network traffic without requiring debugger activation.
  • Canvas & Rich Editor Interaction: Enables automation of complex web applications like Google Docs, Google Slides, and design tools.

Limitations & Caveats

Interceptor grants agents significant autonomy, and users are cautioned to treat it with care. The native application control surface is currently limited to macOS. A future Windows surface is planned but not yet implemented. The browser extension requires manual installation and enabling of Developer Mode. The "Full" macOS package necessitates granting system-level permissions (Accessibility, Screen Recording, Apple Events).

Health Check
Last Commit

6 days ago

Responsiveness

Inactive

Pull Requests (30d)
20
Issues (30d)
1
Star History
30 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.