Chrome Extension · v2.0.0 · Free & Open Source

Smarter Friend
Requests

Without the Risk

Automate bulk Facebook friend requests with Gaussian-distributed timing, Bézier mouse simulation, and a visual selector picker — so you click the button once, and it handles the rest.

View on GitHub
100% Free
No account required
Data stays local
Open source
v2.0.0
Friend Manager PRO
Running
Daily Quota7 / 20
Ops
Sels
Settings
Logs
24
Sent
18
Accept
3
Wdrawn
1
Skipped
Bulk Send Requests
✓ [aria-label="Add friend"]
Bulk Accept Requests
✓ [aria-label="Confirm"]
Auto-Withdraw Sent
✓ [aria-label="Cancel request"]
Everything you need

Built for Safety.
Designed for Results.

Every feature is engineered to keep your account safe while maximizing effectiveness.

Gaussian Timing Engine
Delays follow a normal distribution — not uniform random. 8% chance of a "distraction spike" adds authentic human irregularity between actions.
Auto-Pause Safety
Monitors 15+ Facebook warning patterns — CAPTCHA, rate-limit notices, checkpoint redirects. Stops instantly and notifies you before damage occurs.
Bulk Send Requests
Automatically sends friend requests on the Suggestions page. Respects your daily cap and whitelist/blacklist rules on every single action.
Bulk Accept Requests
Accept all incoming friend requests in one click. Optionally auto-decline requests from users on your blacklist.
Auto-Withdraw Sent
Cancel old pending sent requests in bulk. Keeps your pending count below Facebook's soft limit (~900), preventing automatic restrictions.
Whitelist & Blacklist
Whitelist-only mode to process specific users. Blacklist to permanently skip or decline certain accounts across all operations.
Activity Log
Color-coded log of last 200 actions — timestamps, names, outcomes, safety events. Full audit trail stored 100% locally in your browser.
Daily Auto-Reset
Action counter resets automatically at local midnight via Chrome Alarms API — no manual intervention needed to refresh your daily quota.
Get started in minutes

Four Steps to Automation

Download & Install
Extract the ZIP, go to chrome://extensions, enable Developer Mode, click Load Unpacked.
Pick Your Selectors
Go to Facebook, open the extension, click 🎯 Pick and hover over any button to capture it.
Configure Safety
Set daily limit, delays, and toggle auto-pause. The defaults are already tuned for safety.
Click Run & Relax
Hit ▶ Run, switch to the Facebook tab, and watch a live progress badge as it works.
Multi-layer protection

Engineered to Stay
Under the Radar

Facebook's bot detection watches for timing patterns, mouse behavior, and session anomalies. Every layer of this tool is designed to look human.

Gaussian Delay Distribution

Delays follow a statistical normal distribution — not fake random — with occasional 5–20s distraction spikes. Indistinguishable from a real user.

Bézier Curve Mouse Paths

Mouse movement follows quadratic Bézier curves with randomized control points — never straight lines, never teleporting.

Hard Daily Cap + Auto-Reset

Configurable daily limit (default 20) that resets at midnight. Never exceeds safe volume regardless of how long it runs.

Real-time Warning Scanner

Monitors 15+ warning text patterns plus CAPTCHA iframes and URL redirects. Stops within milliseconds of detection.

fb-friend-manager · runner.js
// Safety gate check
const warn = scanWarnings();
if (warn.detected) {
  await emergencyPause(warn.msg);
  return false;
}

// Human-like delay
const delay = humanMs(3000, 12000);
// → 7,842ms (gaussian + jitter)

Sent request to John Doe
Sent request to Maria Silva
Waiting 9,214ms…
Sent request to Ahmed Khan
Daily quota: 7/20

Release history

What's New

Every release ships meaningful improvements. No fluff, no version bumps for the sake of it.

v2.0.0 Mar 2026
★ Major Release
  • Complete architecture rewrite — eliminated all "Receiving end does not exist" errors via chrome.scripting.executeScript injection
  • Visual Selector Picker: click any FB button to auto-capture its most stable selector (aria-label first, then testid, then role)
  • On-demand runner.js injection — scripts are injected fresh on each operation, no stale content scripts
  • Live progress badge rendered directly on the Facebook page during operations
  • Thin service worker — all logic moved to injected scripts for reliability
  • Fixed: buttons were permanently disabled due to aggressive ping failure handling
  • Fixed: ES module imports in content scripts (not supported in MV3)
v1.1.0 Feb 2026
Minor Release
  • Removed "type: module" from service worker and manifest — caused silent failures in Chrome MV3
  • Rewrote fb-actions.js as a fully self-contained IIFE with all utils inlined
  • Added page-specific navigation hints in popup (which FB page to visit for each op)
  • Buttons now show warning instead of being disabled when FB tab ping fails
  • Fixed: content script never loaded due to ES import usage
  • Fixed: service worker failed to register due to module type + missing imports
v1.0.0 Jan 2026
Initial Release
  • Bulk send, accept, and auto-withdraw friend requests
  • Gaussian-distributed human-like timing engine with distraction spikes
  • Bézier curve mouse movement simulation
  • 15+ Facebook warning / CAPTCHA / checkpoint scanner
  • Daily action counter with Chrome Alarms auto-reset at midnight
  • Whitelist and blacklist user filtering
  • Color-coded activity log (last 200 entries, local only)
  • Dark industrial popup UI with quota bar and live stats
Fetching latest version…

Ready to Start?
It's Completely Free.

Download the latest release from GitHub. Installs in under 2 minutes. No sign-up, no subscription, no tracking.

Chrome Extension ZIP
No Web Store needed
Open Source · MIT License
Common questions

Frequently Asked

There's always a risk with any automation. This tool minimizes it with Gaussian timing, human mouse simulation, daily caps (default 20/day), and instant auto-pause on warning detection. Stick to conservative limits and never exceed 20 requests per day.
The extension uses chrome.scripting.executeScript to inject automation code into the Facebook tab only when you press Run — not on every page load. This is more reliable than persistent content scripts and avoids the "receiving end does not exist" error.
No. Everything is stored in chrome.storage.local — your device only. No analytics, no telemetry, no external API calls. The GitHub download button hits the public GitHub Releases API to find the latest version URL, nothing else.
Facebook updates its DOM regularly. Go to the Selectors tab, click 🎯 Pick again, and click the new button on the updated Facebook page. The picker will capture the new selector automatically. This is why the visual picker exists.
Yes. The manifest includes both www.facebook.com/* and web.facebook.com/* in host_permissions and the service worker scans both domains when looking for an active Facebook tab.
Download the new ZIP from the button above (it always points to the latest GitHub release). Extract it, go to chrome://extensions, click Remove on the old version, then Load Unpacked the new folder. Your settings are stored separately and won't be lost.