config-backup

Use when users want to save, backup, copy, export, or version control their Claude Code configuration files (commands, skills, agents) from ~/.claude/ to another directory. Triggered by phrases like "save my claude settings", "backup my claude config", "sync claude configuration", "copy ~/.claude to somewhere", "export my commands and skills", or "archive claude settings before making changes".

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "config-backup" with this command: npx skills add ppx123-web/claude-config/ppx123-web-claude-config-config-backup

Config Backup Skill

This skill helps users backup their Claude Code configuration files from ~/.claude/ to a specified target directory. It copies the commands/, skills/, and agents/ directories with options for selective backup.

What Gets Backed Up

By default, this skill backs up three directories from ~/.claude/:

  • commands/ - All slash command definitions
  • skills/ - All agent skills and their resources
  • agents/ - All subagent definitions

These are the user-created configurations that define custom Claude Code behavior.

When to Use This Skill

Use this skill when users want to:

  • Backup Claude configurations before making changes
  • Copy configurations to another machine or project
  • Share custom setup with others
  • Migrate to a new system
  • Version control configurations

Backup Workflow

Follow this workflow when performing a backup:

1. Confirm Target Directory

Always confirm the target directory, even though the default is the current working directory. Ask like this:

"Target directory: [current-working-directory]
Is this correct, or would you like to specify a different location?"

Wait for user confirmation before proceeding.

2. Select Directories to Backup

Ask the user which directories to include. Present this interactive prompt:

"Which directories would you like to backup?
- commands/
- skills/
- agents/

Backup all three, or specify which ones to include?"

If the user doesn't specify, backup all three. If they specify a subset, only backup those.

3. Execute the Backup Script

Use the backup script located at scripts/backup.sh within this skill directory. Execute it with appropriate parameters:

~/.claude/skills/config-backup/scripts/backup.sh [target-dir] [directories...]

Parameters:

  • target-dir: Target directory (default: current directory if not specified)
  • directories...: Space-separated list of directories to backup (commands, skills, agents)

The script will:

  • Create target directory if it doesn't exist
  • Use rsync if available (efficient copying), otherwise fallback to cp -r
  • Overwrite existing files without prompting
  • Preserve directory structure
  • Exit with error if source ~/.claude/ doesn't exist

4. Report Results

After the backup completes, show the user a detailed list of what was copied:

✅ Backup complete!

Copied directories:
- commands/ (15 files)
- skills/ (8 directories, 42 files)
- agents/ (23 files)

Target: /path/to/target/directory

If any errors occurred during the backup (permission errors, missing source, etc.), report them clearly to the user.

Error Handling

The backup script handles these scenarios:

Target Directory Doesn't Exist

Creates the directory automatically. No user action needed.

Source Directory Missing

If ~/.claude/ doesn't exist, the script exits with error message:

❌ Error: Source directory ~/.claude/ not found

No Write Permissions

If target directory isn't writable, shows:

❌ Error: Permission denied writing to [target-dir]

rsync Not Available

Automatically falls back to cp -r command. User sees:

⚠️ rsync not available, using cp instead

Examples

Example 1: Backup All Directories to Current Location

User: "save my claude settings"

Assistant: "I'll backup your Claude configurations.

Target directory: /Users/choi/work/claude-config Is this correct, or would you like to specify a different location?

Which directories would you like to backup?

  • commands/
  • skills/
  • agents/

Backup all three, or specify which ones to include?"

[User confirms]

[Executes backup, reports results]

Example 2: Backup Only Commands and Skills

User: "backup my commands and skills"

[Asks about target directory, then only backs up commands/ and skills/]

Example 3: Specify Custom Target

User: "copy ~/.claude to ~/backups/claude-config"

[Asks for confirmation, then backs up to ~/backups/claude-config]

Best Practices

  • Always confirm target directory before copying to avoid accidental overwrites
  • Show clear feedback about what was copied so user knows backup succeeded
  • Handle errors gracefully with helpful error messages
  • Use rsync when available for efficient incremental backups
  • Preserve structure so restore is straightforward
  • Overwrite without asking per user requirements (user should confirm target upfront)

Technical Details

Script Location

The backup script is at: ~/.claude/skills/config-backup/scripts/backup.sh

Copy Method

  • Prefers rsync -av --delete for efficient copying with deletion of orphaned files
  • Falls back to cp -rf if rsync unavailable
  • Always preserves permissions and timestamps
  • Creates target directories as needed with mkdir -p

Directory Structure

The backup preserves this structure:

target-dir/
├── commands/
│   ├── command1.md
│   └── command2.md
├── skills/
│   ├── skill1/
│   └── skill2/
└── agents/
    ├── agent1.md
    └── agent2.md

See Also

  • Troubleshooting common issues: references/troubleshooting.md
  • Detailed backup workflow examples: examples/backup-workflows.md
  • The backup script implementation: scripts/backup.sh
  • Claude Code skill documentation for skill structure
  • Advanced usage: Pipe backup to tar for archiving, sync to remote with rsync over ssh

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.

Coding

photo-clipper

No summary provided by upstream source.

Repository SourceNeeds Review
General

wechat-article-fetcher

No summary provided by upstream source.

Repository SourceNeeds Review
General

photo-color

No summary provided by upstream source.

Repository SourceNeeds Review