backupclaw

Backup and restore OpenClaw configuration files. Use when the user wants to backup ~/.openclaw/ configuration (excluding workspace) to a date-stamped directory, or restore from a previous backup. Includes backup with diff-based change detection and changelog logging, and restore by date. The backup directory path ($backup_claw_dir) must be obtained from the user before first use.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "backupclaw" with this command: npx skills add flyingtimes/backupclaw

Backupclaw

Overview

Full backup and restore capability for OpenClaw configuration files. Backups are stored in date-stamped directories (YYYY-MM-DD format). Only performs backup when configuration has actually changed.

Core Operations

0. Backup Directory Management (NEW)

Configuration file:

  • Location: ~/.openclaw/backup.json
  • Format:
    {
      "backup_location": "/path/to/backup/directory"
    }
    

Get backup directory:

  1. Check if ~/.openclaw/backup.json exists
  2. If exists, read "backup_location" field
  3. If missing or file doesn't exist:
    • Ask user for backup directory path
    • Create ~/.openclaw/backup.json with the provided path
    • Confirm path to user

Change backup directory (changedir command): When user runs backupclaw changedir <new_path>:

  1. Validate new path exists and is writable
  2. Update ~/.openclaw/backup.json with new path
  3. Inform user of successful change

Example changedir usage:

  • "backupclaw changedir ~/backups/openclaw"
  • "修改备份目录到 /mnt/backup/openclaw"

1. Backup Configuration

Backup directory setup:

  • Get backup directory using the management flow above (Section 0)
  • No longer store in TOOLS.md; use backup.json instead

Backup process:

  1. Generate current date string in YYYY-MM-DD format
  2. If backup directory has no previous backups:
    • Copy all files from ~/.openclaw/ to $backup_claw_dir/YYYY-MM-DD/, excluding workspace/
    • Record initial backup in changelog
  3. If previous backups exist:
    • Find the most recent backup directory (latest date)
    • Compare files between latest backup and current ~/.openclaw/ using diff
    • If no changes detected: Tell user "配置文件没有变化,不需要备份"
    • If changes detected:
      • Create new date-stamped directory
      • Copy all files from ~/.openclaw/ to new directory, excluding workspace/
      • Update changelog with list of modified files
      • Report changes to user

Changelog format:

  • Located at $backup_claw_dir/changelog.md
  • Each entry includes date, time, and list of changed files
  • Format example:
    ## 2026-03-12 14:30:00
    - openclaw.json (modified)
    - extensions/feishu/skills/feishu-doc/SKILL.md (added)
    

Exclusion rules:

  • Always exclude workspace/ directory from backup
  • Preserve directory structure for all other files

2. Restore Configuration

Restore process:

  1. Accept date parameter in YYYY-MM-DD format
  2. Verify backup directory exists at $backup_claw_dir/YYYY-MM-DD/
  3. If backup not found, inform user and list available dates
  4. If backup found:
    • Warn user about overwriting current configuration
    • Confirm before proceeding
    • Restore files from backup to ~/.openclaw/
    • Exclude workspace/ from restoration
    • Report success and list restored files

Usage Examples

Typical user requests that trigger this skill:

  • "backup my openclaw config"
  • "restore openclaw backup from 2026-03-12"
  • "check if config changed"
  • "备份 openclaw 配置"
  • "恢复 2026-03-12 的备份"
  • "backupclaw changedir ~/backups/openclaw"
  • "修改备份目录" (prompts for new path)

Implementation Notes

Tools to use:

  • rsync or cp -r for copying files
  • diff for comparing file contents
  • find with sort and tail to find latest backup
  • Date command: date +%Y-%m-%d
  • read and write tools for managing ~/.openclaw/backup.json

Backup directory management:

  • Always check ~/.openclaw/backup.json first before asking user
  • Only prompt for backup path if backup_location is not set
  • Validate directory exists and is writable before saving
  • Use write tool to create/update backup.json

changedir command handling:

  • Parse command format: backupclaw changedir <path> or equivalent Chinese phrasing
  • Validate new directory exists and is writable (create if doesn't exist, ask first)
  • Update backup.json with new path
  • Confirm successful change to user

Backup directory structure:

$backup_claw_dir/
├── 2026-03-12/
│   ├── openclaw.json
│   ├── agents/
│   ├── extensions/
│   └── ...
├── 2026-03-13/
│   └── ...
└── changelog.md

Error handling:

  • Always verify backup directory exists and is writable before proceeding
  • Check for sufficient disk space
  • Validate date format for restore operation
  • Provide clear error messages in Chinese when appropriate

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Cclaw

Open-source comedy AI + video editing + poster generation. Create standup/sketch/manzai/scripts, edit videos via FFmpeg, and generate comedy posters via canv...

Registry SourceRecently Updated
General

Dlazy Seedance 1.5 Pro

Convert images into dynamic dance videos using Doubao Seedance 1.5 Pro.

Registry SourceRecently Updated
General

Pod Template Pack

Use when user needs ready-to-use POD (Print on Demand) design keywords, title templates, and listing copy. Use when creating POD product listings for TikTok,...

Registry SourceRecently Updated
General

Dlazy Mj.Imagine

Generate artistic images using Midjourney (MJ) model. Supports text-to-image.

Registry SourceRecently Updated