Configurable cleanup of your toot history on Mastodon. https://pypi.org/project/cleantoots
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|Gabriel Augendre 25ed98280a||1 year ago|
|.github/workflows||1 year ago|
|cleantoots||1 year ago|
|tests||1 year ago|
|.flake8||1 year ago|
|.gitignore||1 year ago|
|.pre-commit-config.yaml||1 year ago|
|LICENSE||1 year ago|
|README.md||1 year ago|
|_config.yml||1 year ago|
|poetry.lock||1 year ago|
|pyproject.toml||1 year ago|
|tasks.py||1 year ago|
Cleantoots helps you delete your old toots. Because not everything we say on social medias should stay there for eternity.
- my blog post introducing cleantoots.
- The authoritative source for this repo: https://git.augendre.info/gaugendre/cleantoots
- The GitHub repository for CI/CD and visibility: https://github.com/Crocmagnon/cleantoots
python -m pip install cleantoots
An ArchLinux package is available, see the AUR.
cleantoots config setup # See the following section for config file options cleantoots config login
View and edit
You can later view the parsed config file with
cleantoots config list
You can edit the config file using
cleantoots config edit
This will open the config file using your preferred editor (
EDITOR env variable).
# Any key in this section will serve as a default for other sections [DEFAULT] # Toots that have at least this number of boosts won't be deleted. boost_limit = 5 # Toots that have at least this number of favorites won't be deleted. favorite_limit = 5 # Toots that are more recent than this number of days won't be deleted. days_count = 30 # The timezone to use for dates comparisons. timezone = Europe/Paris # Each section represents an account. [Fosstodon] # Your Mastodon server URL. api_base_url = https://fosstodon.org # These files are used to store app information obtained when running `login`. # The files must be different between accounts. Two different files are required per account. app_secret_file = fosstodon_app.secret user_secret_file = fosstodon_user.secret # IDs of toots you want to protect (never delete). # You can find the toot ID in the URL when viewing a toot. protected_toots = 103362008817616000 103361883565013391 103363106195441418 # Tags you want to protect (never delete). # Tags are matched case insensitively and are only matched for original toots (not for boosts): # if you boost a toot containing #ScreenshotSunday it won't be protected by this rule. # You MUST omit the `#` part of the tag. protected_tags = 100DaysToOffload screenshotsunday # Another account [Mastodon.social] api_base_url = https://mastodon.social app_secret_file = mastodonsocial_app.secret user_secret_file = mastodonsocial_user.secret # Overriding some defaults boost_limit = 10 favorite_limit = 30 days_count = 7
cleantoots config for the current config.
cleantoots clean # Defaults to a dry run. Does NOT delete. cleantoots clean --delete # Delete without prompt.
Add an account
cleantoots config edit # Opens editor so you can add your config cleantoots config list # Check your newly added account cleantoots config login --only-missing # Store credentials for your newly created account cleantoots clean --delete
Remove an account
# This deletes stored credentials for accounts described in the main config file. cleantoots config clear-credentials # You can then edit the config and remove some accounts: cleantoots config edit # Then login again for remaining accounts. cleantoots config login
Cleantoots test suite runs on Python 3.7, 3.8 and 3.9 on latest versions of macOS, Windows and Ubuntu as GitHub Actions understands it.
See the docs for more information on what "latest" means.
- ephemetoot: A similar python-based CLI program to delete your old toots. Has the ability to archive deleted toots.
The idea behind cleantoots is highly inspired by magnusnissel/cleantweets.
If you do reuse my work, please consider linking back to this repository 🙂