Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/random-robbie/bluesky-list-processor
Takes a list and will allow you to block all users on it or mute them
https://github.com/random-robbie/bluesky-list-processor
atproto bluesky bsky social-media
Last synced: 10 days ago
JSON representation
Takes a list and will allow you to block all users on it or mute them
- Host: GitHub
- URL: https://github.com/random-robbie/bluesky-list-processor
- Owner: random-robbie
- License: gpl-3.0
- Created: 2024-11-23T19:39:46.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2024-12-02T13:03:02.000Z (2 months ago)
- Last Synced: 2025-01-25T01:06:58.121Z (10 days ago)
- Topics: atproto, bluesky, bsky, social-media
- Language: Python
- Homepage:
- Size: 29.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Bluesky List Processor
This script processes Bluesky lists or feeds and allows you to perform bulk **block** or **mute** actions on users. It can operate in a "dry-run" mode to preview the actions without making any changes and saves the list of processed users to a JSON file for review.
## Features
- **Convert Bluesky feed/list URLs to AT URIs** automatically.
- Fetch unique users from a feed or list.
- Perform bulk **block** or **mute** actions on users.
- **Dry-run mode** to preview actions without applying them.
- Save processed users to a JSON file for auditing.## Requirements
- Python 3.8 or higher
- A Bluesky account
- Environment variables for authentication:
- `BSKY_USERNAME` (your Bluesky username)
- `BSKY_PASSWORD` (your Bluesky password)## Installation
1. Clone the repository:
```
bash
git clone https://github.com/random-robbie/Bluesky-List-Processor.git
cd bluesky-list-processor
```2. Run:
```
usage: bsky-blocker.py [-h] --action {block,mute} [--dry-run] [--output OUTPUT] [--limit LIMIT] list_urlConvert a Bluesky list or feed into a block or mute list
positional arguments:
list_url The URL or AT URI of the list (e.g., https://bsky.app/profile/user.bsky.social/feed/abc)options:
-h, --help show this help message and exit
--action {block,mute}
Whether to block or mute users
--dry-run Only print what would be done without actually blocking/muting
--output OUTPUT Output JSON file for the user list (default: users_to_process.json)
--limit LIMIT Number of posts to fetch from feed (default: 100)
```3. In action:
```
python3 bsky-blocker.py https://bsky.app/profile/did:plc:jdkvwye2lf4mingzk7qdebzc/feed/furry-new --dry-run --action block
```You can run it on a VPS.
[![DigitalOcean Referral Badge](https://web-platforms.sfo2.cdn.digitaloceanspaces.com/WWW/Badge%203.svg)](https://www.digitalocean.com/?refcode=e22bbff5f6f1&utm_campaign=Referral_Invite&utm_medium=Referral_Program&utm_source=badge)
You get free $200 credit for 60 days if you sign up and add a payment method.