AI-Created Software

The following AI-generated aka vibe-coded software. The software is specific to my needs and my system and may not work for you or your system. Support is limited, but if you report a bug I'll certainly look into it. All code is provided in a zip file for you to review should you choose.

External Site Logger

A Chrome extension that shows every top-level domain, subdomain, and IP address contacted while loading and using the current page — displayed in a toggleable sidebar (Chrome’s native side panel), with one-click copy buttons.

Install (unpacked, for local use)

  1. Unzip this folder somewhere permanent (don’t delete it after installing — Chrome loads the extension directly from these files).
  2. Open chrome://extensions in Chrome.
  3. Turn on Developer mode (top-right toggle).
  4. Click Load unpacked and select the domain-ip-inspector folder.
  5. Pin the extension (puzzle-piece icon in the toolbar → pin “Domain & IP Inspector”).

Use

  • Click the toolbar icon to open the sidebar. Click it again (or use Chrome’s side panel close control) to close it.
  • Browse normally — the three lists (Top-Level Domains, Subdomains, IP Addresses) update live as the page and its scripts/images/XHRs load.
  • Switching tabs updates the sidebar to that tab’s data automatically.
  • Navigating to a new page (full page load) resets the lists for that tab.
  • Buttons:
    • Copy next to each section header copies just that section.
    • Copy All Contents copies everything, grouped and labeled.
    • Clear wipes the current tab’s collected data without navigating.

How it works

  • background.js (a Manifest V3 service worker) listens to chrome.webRequest events for every request the browser makes on behalf of a tab (main page, subframes, scripts, images, XHR/fetch, etc.), extracts the hostname, and classifies it as either an IP literal or a domain.
  • Domains are split into a top-level/registrable domain (e.g. example.com) and, when present, the full subdomain hostname (e.g. api.example.com). A small list of common multi-part suffixes (co.uk, com.au, etc.) is included so those aren’t split incorrectly — this isn’t a full public suffix list, so a handful of obscure ccTLDs may be classified slightly off, but coverage is good for everyday browsing.
  • When Chrome reports the resolved server IP for a completed response (details.ip on webRequest.onResponseStarted), that’s added to the IP list too — so you see both IP literals used directly in URLs and the actual resolved IPs behind normal domain names.
  • Data is kept per-tab in memory only (nothing is written to disk or sent anywhere) and is cleared automatically on each new page load.

Notes / limitations

  • Because Manifest V3 no longer allows blocking webRequest listeners for most extensions, this extension is observational only — it reports traffic, it doesn’t block or modify it.
  • Resolved IPs aren’t available for every request (e.g. some cached responses don’t include one) — in those cases you’ll still see the domain, just not a paired IP.
  • Requests made from contexts Chrome doesn’t associate with a tab (rare) are not counted.
(1 votes, average: 5.00 out of 5)

Leave a Reply

Your email address will not be published. Required fields are marked *

Notify me of followup comments via e-mail.