Web extension that surfaces debugging information related to adblock-rust’s blocking in Brave browser by attaching chrome.debugger to tabs.
https://chromewebstore.google.com/detail/jjdnadjeikhfdamncnleihglcbllhiia/
Consumes exactly one CDP event: Network.requestAdblockInfoReceived (a
Brave-only extension to the DevTools protocol, defined in brave-core’s
browser_protocol.pdl).
Each event carries Network.AdblockInfo.
The matched rule (filter / exception, an optional Network.AdblockFilterRuleInfo)
is only populated when Brave’s adblock debug mode is on, since the engine
otherwise doesn’t keep rule text or source locations. Everything still works
without it; the row detail just says so. sourceIndex is the “source ID” column
in brave://adblock-internals, and the list title is rendered instead when Brave
sends one.
This extension uses Chrome DevTools Protocol (CDP) (or rather, Brave’s additions to it) to show debugging information coming in from adblock-rust.
See PRIVACY.md for why the extension needs the permissions it does.
brave-core source:
type AdblockInfo /
event requestAdblockInfoReceivedbrave_ad_block_tp_network_delegate_helper.cc#L251adblock_devtools_instrumentation.cc#L65esbuild bundles src/*.ts; tsc --noEmit typechecks.
npm install
npm run build # -> dist/, load unpacked from there
npm run build -- --minify
npm run typecheck
manifest.json and package.json versions must match (enforced by
scripts/build.mjs).
src/background.ts: service worker; owns CDP sessions, buffers events per
tab, relays to UI ports.src/view.ts: shared Feed (port client + rendering).src/popup.ts, src/viewer.ts: popup and floating-window entry points.src/types.ts: AdblockEvent and the port message protocol.