A local backup utility for OpenClaw workspaces, built for fast first-run setup, scheduled backups, and clean CLI-based recovery workflows.
Languages: English | 简体中文 | 日本語 | 한국어 | Deutsch
Why ClawBackup | What It Backs Up | Core Capabilities | Quick Start | Container Package | First Run | Development & Release
An OpenClaw workspace usually contains more than just one config file. It often includes credentials, agent profiles, memory files, workspace data, and scheduled tasks. Copying these files manually is easy once, but hard to keep consistent over time.
ClawBackup is designed to make local backup simple and repeatable:
- complete the first backup with a clean CLI flow
- enable scheduled backups without heavy setup
- review, restore, or remove old archives when needed
- install and distribute it using standard Python packaging workflows
ClawBackup fits especially well for:
- individual OpenClaw users who want dependable local backups
- users who frequently edit agent configuration and want rollback safety
- teams that want a standardized backup utility instead of manual file copy steps
By default, ClawBackup backs up these OpenClaw files and directories:
openclaw.json: main config filecredentials/: API keys and tokensagents/: agent configs and auth profilesworkspace/: memory files,SOUL.md, and user filescron/: scheduled task configuration
Default paths:
- OpenClaw data directory:
~/.openclaw - Backup output directory:
~/openclaw-backups - Compression format:
zip - Default retention policy: keep latest
10, keep at least3, remove anything older than30days
The default home screen keeps the main workflow focused on four high-frequency actions:
- Back Up Now
- Schedule
- Reset Config
- Exit
Advanced commands such as history, config inspection, and logs are still available from the CLI, but they do not overload the first screen.
The app currently supports:
- English
- Simplified Chinese
- Japanese
- Korean
- German
Built-in scheduling presets include:
- every 6 hours
- daily at 02:00
- every Sunday at 02:00
- monthly on day 1 at 02:00
- custom cron expressions
ClawBackup supports both “keep all backups” and “keep only the latest N backups” retention strategies.
For generated archives, ClawBackup supports:
- browsing backup history
- restoring a selected backup
- deleting a single backup archive
If pipx is not installed yet:
python3 -m pip install --user pipx
python3 -m pipx ensurepathClose the current terminal, open a new one, then install the stable release directly from the wheel:
pipx install "https://github.com/Yuan-lab-LLM/ClawBackup/releases/download/v0.1.1/clawbackup-0.1.1-py3-none-any.whl"After the project is published to PyPI, the same install becomes:
pipx install clawbackupRun:
clawbackuppipx install --force "git+https://github.com/Yuan-lab-LLM/ClawBackup.git@main"If you already cloned the repository:
python3 -m pip install .or:
pipx install .If you prefer pip instead of pipx, install the published wheel directly:
python3 -m pip install "https://github.com/Yuan-lab-LLM/ClawBackup/releases/download/v0.1.1/clawbackup-0.1.1-py3-none-any.whl"After PyPI publishing is enabled, users can also install with:
python3 -m pip install clawbackupThis repository also publishes a container package to GitHub Container Registry so the GitHub repository Packages panel shows a package entry.
Container image:
ghcr.io/yuan-lab-llm/clawbackup:latestRun:
docker run --rm -it ghcr.io/yuan-lab-llm/clawbackup:latestRecommended first-run flow:
- launch
clawbackup - confirm or adjust the source and backup directories
- run the first backup
- configure scheduling only if you want automatic execution
Shortest path:
clawbackupIf you prefer direct commands:
clawbackup init
clawbackup backupclawbackup
clawbackup init
clawbackup backup
clawbackup schedule
clawbackup resetclawbackup history
clawbackup config
clawbackup logpipx install --force "git+https://github.com/Yuan-lab-LLM/ClawBackup.git@main"pipx install --force "https://github.com/Yuan-lab-LLM/ClawBackup/releases/download/v0.1.1/clawbackup-0.1.1-py3-none-any.whl"If installed with pipx:
pipx uninstall clawbackupIf installed with pip:
python3 -m pip uninstall clawbackupRuntime files:
- config file:
~/.config/clawbackup/config.json - log file:
~/.config/clawbackup/clawbackup.log
If you want to fully reset local state, use the in-app reset flow or remove the config file manually.
python3 clawbackup.pyor:
python3 -m clawbackuppython3 -m py_compile clawbackup.py src/clawbackup/cli.py src/clawbackup/__init__.pyBefore release, keep these locations aligned:
pyproject.tomlsrc/clawbackup/__init__.py- UI version text inside
src/clawbackup/cli.py
The repository already contains Homebrew-related files:
Formula/clawbackup.rbscripts/render_homebrew_formula.pyscripts/homebrew_sha256.shscripts/test_homebrew_local.sh
Recommended release flow:
- update version numbers
- commit changes
- create a tag such as
v0.1.1 - push
mainand the tag - verify the GitHub Release
- sync the Homebrew formula if needed
Common commands:
git add .
git commit -m "Release v0.1.1"
git tag v0.1.1
git push origin main --tagsThis repository is prepared for PyPI publishing through GitHub Actions trusted publishing.
Before the first publish:
- create the
clawbackupproject on PyPI - in PyPI project settings, add a trusted publisher for:
- owner:
Yuan-lab-LLM - repository:
ClawBackup - workflow:
publish-pypi.yml - environment:
pypi
- owner:
- in GitHub, approve the
pypienvironment if your org requires environment review
After that, the publish flow is:
- build and verify the package locally if needed
- create and push a release tag such as
v0.1.2 - open GitHub Actions and run the
Publish PyPIworkflow, or trigger it from a published release - verify the package on PyPI
Once PyPI publishing is live, end users can install with:
pipx install clawbackupor:
python3 -m pip install clawbackupThis project is released under the MIT License.
Issues and pull requests are welcome, especially around OpenClaw backup flows, restore workflows, and scheduling improvements.
