Skeeter Deleter WP is a WordPress plugin that automatically cleans up your Bluesky account on a schedule.

It’s designed to be safe, incremental, and predictable, so you can reduce clutter without triggering rate limits or accidentally deleting important posts.


What it does

Skeeter Deleter WP helps you manage your Bluesky content over time by applying rules you control.

It can:

  • Delete your own posts that are:
    • older than a configured number of days, or
    • below a repost threshold
  • Remove your reposts using the same criteria
  • Unlike likes that are older than a configured age (optional)

It will not delete:

  • Posts you have liked yourself
  • Posts linking to protected domains you specify
  • Posts that exceed your “viral” repost threshold

You can always preview actions first using Dry run mode.


Safety first

This plugin is intentionally conservative.

Built-in safeguards include:

  • Dry run mode
    See exactly what would happen before anything is deleted.
  • Per-run limits
    Caps the number of actions per run to prevent mass deletions.
  • Request throttling and retries
    Helps avoid Bluesky rate limits and transient errors.
  • Resume cursors
    Large accounts are processed in small batches over multiple runs.
  • Encrypted credentials
    Bluesky app passwords are stored encrypted in WordPress.

These features are designed to protect your account and keep runs reliable.


How it works

At each scheduled run, Skeeter Deleter WP:

  1. Authenticates with Bluesky using an app password
  2. Scans your content incrementally
  3. Applies your rules (age, repost count, protected domains)
  4. Performs a limited number of actions
  5. Stops and resumes on the next run if needed

For large backlogs, cleanup happens gradually over time.


Installation

Option 1: WordPress.org

(Available once published)

  1. Go to Plugins → Add New
  2. Search for Skeeter Deleter WP
  3. Install and activate

Option 2: Manual installation

  1. Download the plugin ZIP from GitHub
  2. Upload it to wp-content/plugins/
  3. Activate the plugin in WordPress

Recommended configuration

For most users:

  • Schedule: Daily or Weekly
  • Run time: Overnight (for example, 2:00 AM)
  • Dry run: ON initially
  • Stale limit: 30–90 days
  • Per-run limits: Leave defaults

For reliability, it’s strongly recommended to let the plugin run on a schedule rather than clicking Run now in the browser.

If your web host supports server-based cron jobs, using those instead of traffic-based WordPress cron can further improve reliability.


Common issues & fixes

Nothing runs unless I click “Run now”
Check that WordPress cron is working. If your host offers server-based cron, consider enabling it.

HTTP 429 (RateLimitExceeded)
Reduce per-run limits and/or increase the request delay. Scheduled runs are safer than manual runs.

HTTP 502 / 503 / 504 errors
Lower the maximum seconds per run and let cleanup happen over multiple scheduled runs.

Next scheduled run shows “not scheduled”
Ensure the schedule is not set to “Once” and re-save settings.


Credits

Skeeter Deleter WP is inspired by the original skeeter-deleter project by Gorcenski.

This plugin is an independent WordPress adaptation and is not affiliated with Bluesky or the original project.


Links

  • GitHub repository: (link here)
  • Documentation & updates: tools.martinv.io
  • Issues & support: (GitHub issues link)