Claude-skill-registry Config Backup

Backup network device configurations with group/role/site filtering. Use when user asks to "backup config", "save configuration", "export configs", or needs to persist device configurations.

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/config-backup" ~/.claude/skills/majiayu000-claude-skill-registry-config-backup && rm -rf "$T"
manifest: skills/data/config-backup/SKILL.md
source content

Config Backup Skill

Backup network device configurations to local storage with flexible filtering options.

Workflow

  1. List Available Devices: Call
    list_devices()
    to view all devices and their group/role/site attributes
  2. Filter Target Devices: Select devices by group, role, or site (e.g., "core role" → R3, R4)
  3. Execute Backup Commands: Run
    nornir_execute(device, "show running-config")
    on each device
  4. Save Configurations: Call
    save_device_config(device, "running", content)
    to persist backups

Device Classification

View device attributes with

list_devices()
:

DeviceGroupsRoleSite
R1testborderlab
R2testborderlab
R3testcorelab
R4testcorelab
SW1testaccesslab
SW2testaccesslab

Usage Examples

Backup by Group

User: backup group:test running config
Process:
  1. list_devices() → Find devices in "test" group
  2. Execute show running-config on R1, R2, R3, R4, SW1, SW2
  3. save_device_config saves each config to data/exports/

Backup by Role

User: backup role:core all configs
Process:
  1. list_devices() → Find devices with role="core" (R3, R4)
  2. nornir_execute fetches running + startup configs
  3. save_device_config persists both configs

Backup by Site

User: backup site:lab running config
Process:
  1. list_devices() → Find all devices at site="lab"
  2. Batch backup all 6 devices

Single Device Backup

User: backup R1 running config
Process:
  1. nornir_execute("R1", "show running-config")
  2. save_device_config("R1", "running", content)

Backup Types

  • running
    - Current running configuration (show running-config)
  • startup
    - Startup configuration (show startup-config)
  • all
    - Both running and startup configs

Backup Storage

All backups are saved to

agent_dir/data/configs/
:

agent_dir/data/configs/
├── R1-running-config-20260108-120000.txt
├── R2-running-config-20260108-120000.txt
├── R1-startup-config-20260108-120000.txt
└── ...

Version Control with Git

# Initialize repository (one-time)
cd agent_dir/data
git init
git config user.name "OLAV Backup"

# After backup
git add -A
git commit -m "Backup $(date +%Y%m%d-%H%M%S)"

# View backup history
git log --oneline | head -10

Supported Filters

FilterExampleMatches
Group
group:test
All devices in "test" group
Role
role:core
All devices with role="core"
Site
site:lab
All devices at site="lab"
Comma-list
R1,R2,R3
Specific devices
All
all
All available devices