Skip to content

Noise Filtering

Every browser tab generates noise — extension errors, analytics script failures, framework warnings, Content Security Policy violations from third-party scripts. Without filtering, your AI spends time investigating false leads instead of real bugs.

Gasoline’s noise filtering lets you suppress irrelevant errors so the AI only sees what matters.

The fastest way to clean up:

configure({action: "noise_rule", noise_action: "auto_detect"})

Gasoline scans current errors and identifies patterns that are likely noise:

  • Browser extension errors (chrome-extension://, moz-extension://)
  • Analytics failures (Google Analytics, Segment, Mixpanel)
  • Framework development warnings (React, Angular, Vue dev-mode messages)
  • Third-party script errors from ad networks and trackers
  • CSP violations from injected scripts

Auto-detect creates rules automatically. Review them to make sure nothing important was filtered:

configure({action: "noise_rule", noise_action: "list"})

configure({action: "noise_rule",
noise_action: "add",
pattern: "analytics\\.google",
category: "console",
reason: "Google Analytics noise"})
ParameterDescription
patternRegex pattern to match against error messages
categoryWhich buffer to filter: console, network, or websocket
reasonHuman-readable explanation (helps when reviewing rules later)
What to FilterPatternCategory
Google Analyticsanalytics\\.googlenetwork
Facebook Pixelfacebook\\.com\\/trnetwork
React dev warningsWarning: Each child in a listconsole
Angular dev modeAngular is running in development modeconsole
Browser extensionschrome-extension://console
Hot reload noise\\[HMR\\]console
Source map warningsDevTools failed to load source mapconsole
Favicon 404favicon\\.iconetwork
Service worker updatesservice-worker\\.jsnetwork

Add multiple rules at once:

configure({action: "noise_rule",
noise_action: "add",
rules: [
{pattern: "analytics\\.google", category: "network", reason: "Analytics"},
{pattern: "facebook\\.com\\/tr", category: "network", reason: "Facebook Pixel"},
{pattern: "\\[HMR\\]", category: "console", reason: "Hot module reload"},
{pattern: "chrome-extension://", category: "console", reason: "Browser extensions"}
]})

configure({action: "noise_rule", noise_action: "list"})

Returns every active rule with its ID, pattern, category, and reason.

If you filtered something that turned out to be important:

configure({action: "noise_rule", noise_action: "remove", rule_id: "rule-123"})

Get the rule ID from the list output.

Start fresh:

configure({action: "noise_rule", noise_action: "reset"})

Removes all noise rules. Useful when switching projects or when you’ve over-filtered.


When starting a new debugging session:

"What browser errors do you see?"
observe({what: "errors"})
"Auto-detect noise and filter it out."
configure({action: "noise_rule", noise_action: "auto_detect"})
"Show me the noise rules — make sure nothing important got filtered."
configure({action: "noise_rule", noise_action: "list"})
"Now show me the errors again."
observe({what: "errors"})

The error list now contains only your application’s real issues.

If your project has known noisy patterns:

"Also filter out hot reload messages and favicon 404s."
configure({action: "noise_rule", noise_action: "add",
rules: [
{pattern: "\\[HMR\\]", category: "console", reason: "Dev server noise"},
{pattern: "favicon\\.ico", category: "network", reason: "Missing favicon"}
]})

Noise rules filter different buffers:

CategoryWhat It FiltersExamples
consoleConsole logs, errors, and warningsExtension errors, framework warnings, dev-mode messages
networkNetwork requests and responsesAnalytics calls, tracking pixels, CDN errors
websocketWebSocket eventsHeartbeat messages, ping/pong noise

A rule in one category doesn’t affect the others. An analytics.google rule in the network category won’t filter a console.error that mentions Google Analytics — you’d need a separate console rule for that.


Run auto-detect on a fresh page load. The first load generates the most noise — extensions initialize, analytics fire, framework warnings appear. Auto-detect catches the most patterns if you run it immediately after loading.

Keep reasons descriptive. When you review rules weeks later, “Google Analytics noise” is more useful than “network filter 3.” Good reasons also help the AI understand why something is filtered.

Don’t over-filter. If you’re not sure whether something is noise, leave it unfiltered. It’s better to investigate a false lead than to miss a real error.

Filter by category, not globally. A pattern like error in the console category would filter too broadly. Be specific with patterns — match the exact string or URL that generates the noise.

Reset when switching projects. Noise rules are session-scoped. If you switch from a React app to a Vue app, the framework warnings change. Reset and re-detect.