Template repository for setting up a new ATProto repository backup using GitHub Actions.
The contents of the repository will allow an adversarial PDS migration in case the original PDS disappears.
Caution
Although all data backed up by this script is public, deleted posts and blobs will remain in the git history after being deleted from Bluesky.
Note
Blobs are stored in git. Accounts with large or many videos may exceed GitHub limits.
This is based on https://github.com/simonw/git-scraper-template by Simon Willison.
-
Visit https://github.com/FiloSottile/bsky-backup-template/generate.
-
Pick a name for your new repository, then type the Bluesky handle (including the @, e.g.
@filippo.abyssdomain.expert) or DID (e.g.did:plc:x2nsupeeo52oznrmplwapppl) description field. -
Click Create repository from template.
Your new repository will be created, and a script will run which will do the following:
- Add a
run.shscript to your repository which usesgoatvia the./backup.shscript to backup the ATProto repository of the account you specified in the description field. - Run that
./run.shcommand and commit the result to the repository. - Configure a schedule to run this script once every 24 hours.