rdev backs up what is hard to rebuild, and the backups always go to storage you own.
Agent settings
Your AI agent settings, rules and skills (Claude Code and Codex settings, agents, skills, commands, hooks, your git and SSH config) are backed up every night to a git repository you own. Credentials and keys are never copied. If you set up a new server, your agents come back with the same setup. This is included in every plan.
Create an empty private repository, then on the server run:
sudo rdev backup setup git [email protected]:you/rdev-settings.git
It prints an SSH key; add it to the repository as a deploy key with write access, then take the first backup with rdev backup run --settings. Each environment writes to its own folder, so on the Team plan the team shares one repository with a folder for each developer.
Nightly backups
On the Pro and Team plans, your MySQL, MariaDB, PostgreSQL and MongoDB databases and your ~/Code folder are backed up every night to an S3-compatible bucket you own: Amazon S3, Cloudflare R2, Hetzner, Backblaze or your own MinIO. node_modules, vendor and other rebuildable folders are left out. Backups are encrypted and deduplicated; rdev keeps 7 daily, 4 weekly and 6 monthly copies.
sudo rdev backup setup s3 --endpoint s3.eu-central-1.amazonaws.com --bucket my-backups \
--access-key AKIA… --secret-key …
It prints the encryption password once. Store it somewhere safe, outside the server: without it the backups cannot be restored. Take the first backup with rdev backup run --data.
You choose the bucket and keep the credentials; we never have access to your backups. If a backup fails, you get a notification on your channels.
Choosing what is backed up
You may want your agent settings backed up but not your projects, or the other way round. On your server's page in the panel, Undo and restore > Nightly backup has a switch for each: Agent settings and Projects and databases. The server applies the choice from the next night on; rdev backup status shows it, and rdev backup run still runs a backup by hand whatever the choice. Choosing needs rdev 0.2.0-beta.20 or later.
Checking and restoring
rdev backup statusshows where backups go and how the last runs went.rdev backup snapshotslists the nightly snapshots.- To restore from the panel, open your server and use Undo and restore > Data backup: pick a backup, then a project to restore its files or a database to restore it. The server does it within seconds and the result shows under Recent restores.
- Or on the server:
rdev backup restore <snapshot> --project shoporrdev backup restore <snapshot> --database mysql:shop(mariadb:<name>for MariaDB,postgres:<name>for PostgreSQL,mongodb:allfor every MongoDB database at once). MariaDB and MongoDB are backed up from rdev 0.2.0-beta.19 on.
A restored project replaces the project folder; the folder it replaced is moved to ~/rdev-restored, not deleted. A restored database is dropped and loaded from the backup, so changes made since that backup are lost. The panel learns the list of backups and databases after each nightly run; restoring needs rdev 0.2.0-beta.16 or later. You can still use restic directly with your bucket and the password you saved.
Your code
Your projects live in git as usual, and file sync keeps a working copy on your laptop. rdev does not replace your own git hosting.