Skip to content

Browser Extension

The Gobbler browser extension enables bidirectional communication between Gobbler and your browser, allowing extraction of authenticated content and browser automation.

Features

  • Extract current page content (works with authenticated sessions)
  • Extract with CSS selectors
  • Navigate pages programmatically
  • Execute JavaScript in browser tabs
  • Control AI chat interfaces (NotebookLM, Claude.ai, ChatGPT, Gemini)

Installation

1. Load Extension in Chrome

  1. Open Chrome and go to chrome://extensions/
  2. Enable Developer mode (toggle in top right)
  3. Click Load unpacked
  4. Select the browser-extension directory from the Gobbler repo

2. Create Gobbler Tab Group

  1. Right-click any tab you want to control
  2. Select Add to groupNew group
  3. Name the group exactly "Gobbler"

Only tabs in the "Gobbler" group can be controlled by Gobbler (security feature).

3. Verify Connection

gobbler browser status

Should show: 1 browser extension(s) connected

How It Works

Your Browser (with real sessions)
Gobbler Extension (extracts HTML)
WebSocket to Relay Server (localhost:4625)
Gobbler CLI / MCP Server
Response with markdown

Advantages

  • Uses your real browser session (no cookie copying)
  • No bot detection (it's your actual browser)
  • Works with 2FA, private content, etc.
  • Full JavaScript execution capability

Security Model

Tab Group Isolation: Only tabs in the "Gobbler" tab group are accessible. This prevents accidental access to sensitive tabs (banking, email, etc.).

To add a tab to the group: 1. Right-click the tab 2. Select "Add to group" → "Gobbler"

To remove a tab: 1. Right-click the tab 2. Select "Remove from group"

CLI Commands

Check Status

gobbler browser status

List Controlled Tabs

gobbler browser list

# Filter by page type
gobbler browser list --filter notebooklm
gobbler browser list --filter claude

# JSON output for scripting
gobbler browser list --json

Open URLs in Gobbler Tab Group

# Open URLs in Gobbler tab group
gobbler browser open "https://example.com"
gobbler browser open "url1" "url2" "url3"

Extract Page

# Full page
gobbler browser extract -o page.md

# With selector (experimental)
gobbler browser extract --selector "article.content" -o article.md
gobbler browser navigate "https://example.com"

Execute JavaScript

gobbler browser exec "document.title"
gobbler browser exec "document.querySelectorAll('h1').length"

Troubleshooting

Extension won't load

  • Make sure icon files exist in icons/ directory
  • Check Chrome extension errors at chrome://extensions/

"No browser extension connected"

  1. Verify extension is installed and enabled
  2. Check extension popup shows "Connected"
  3. Restart the relay: gobbler relay restart

"No tabs found"

  1. Open the page you want to control
  2. Right-click tab → "Add to group" → "Gobbler"
  3. Run gobbler browser list

Commands timeout

  • Increase timeout: --timeout 60
  • Check browser tab is active
  • Verify page has loaded completely

Development

The extension consists of:

File Purpose
manifest.json Extension configuration
popup.html/js Extension popup UI
content.js Content script for page interaction
background.js Service worker for WebSocket
page-apis/*.js Site-specific APIs (NotebookLM, Claude, etc.)

Future Features

  • [ ] Batch extraction (multiple tabs)
  • [ ] Auto-extract on page load
  • [ ] Save extractions to files
  • [ ] Custom extraction templates