{
  "schemaVersion": "1.0",
  "item": {
    "slug": "cron-backup",
    "name": "Cron Backup",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/zfanmy/cron-backup",
    "canonicalUrl": "https://clawhub.ai/zfanmy/cron-backup",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/cron-backup",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=cron-backup",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "scripts/backup-versioned.sh",
      "scripts/backup.sh",
      "scripts/cleanup.sh",
      "scripts/list-backups.sh",
      "scripts/setup-cron.sh"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/cron-backup"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/cron-backup",
    "agentPageUrl": "https://openagent3.xyz/skills/cron-backup/agent",
    "manifestUrl": "https://openagent3.xyz/skills/cron-backup/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/cron-backup/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Cron Backup",
        "body": "Automated backup scheduling with version detection and intelligent cleanup."
      },
      {
        "title": "One-Time Backup",
        "body": "# Backup a directory with timestamp\n./scripts/backup.sh /path/to/source /path/to/backup/dir\n\n# Backup with custom name\n./scripts/backup.sh /path/to/source /path/to/backup/dir my-backup"
      },
      {
        "title": "Schedule Daily Backup",
        "body": "# Set up daily backup at 2 AM\n./scripts/setup-cron.sh daily /path/to/source /path/to/backup/dir \"0 2 * * *\""
      },
      {
        "title": "Version-Aware Backup",
        "body": "# Backup only when version changes\n./scripts/backup-versioned.sh /path/to/source /path/to/version/file /path/to/backup/dir"
      },
      {
        "title": "Cleanup Old Backups",
        "body": "# Keep only last 7 days of backups\n./scripts/cleanup.sh /path/to/backup/dir 7"
      },
      {
        "title": "1. Directory Backup",
        "body": "Creates timestamped tar.gz archives\nPreserves file permissions and structure\nExcludes common temp files (node_modules, .git, etc.)"
      },
      {
        "title": "2. Version-Triggered Backup",
        "body": "Monitors version file or command output\nBacks up only when version changes\nUseful for software updates"
      },
      {
        "title": "3. Scheduled Execution",
        "body": "Integrates with system cron\nSupports custom schedules\nLogs execution results"
      },
      {
        "title": "4. Automatic Cleanup",
        "body": "Deletes backups older than N days\nKeeps minimum number of backups\nPrevents disk space exhaustion"
      },
      {
        "title": "Scripts",
        "body": "All scripts are in scripts/ directory:\n\nbackup.sh - Single backup execution\nbackup-versioned.sh - Version-triggered backup\nsetup-cron.sh - Cron job setup\ncleanup.sh - Old backup cleanup\nlist-backups.sh - List available backups"
      },
      {
        "title": "Backup Naming Convention",
        "body": "Backups follow the pattern: {name}_YYYYMMDD_HHMMSS.tar.gz\n\nExamples:\n\nopenclabak_20260204_101500.tar.gz\nmyapp_20260204_000000.tar.gz"
      },
      {
        "title": "Setting Up Automated Backups",
        "body": "Decide backup strategy\n\nWhat to backup (source directory)\nWhere to store (backup directory)\nHow often (schedule)\nRetention policy (cleanup days)\n\n\n\nRun initial backup\n./scripts/backup.sh /source /backup\n\n\n\nSet up schedule\n./scripts/setup-cron.sh daily /source /backup \"0 2 * * *\"\n\n\n\nConfigure cleanup\n./scripts/setup-cron.sh cleanup /backup \"\" \"0 3 * * *\" 7"
      },
      {
        "title": "Version-Aware Backup Workflow",
        "body": "For software that changes version (like OpenClaw):\n\nIdentify version source\n\nCommand: openclaw --version\nFile: /path/to/version.txt\n\n\n\nSet up versioned backup\n./scripts/backup-versioned.sh /app /app/version.txt /backups/app\n\n\n\nSchedule version check\n./scripts/setup-cron.sh versioned /app /backups/app \"0 */6 * * *\""
      },
      {
        "title": "Pattern 1: Daily User Data Backup",
        "body": "# Backup workspace daily, keep 30 days\n./scripts/setup-cron.sh daily /home/user/workspace /backups/workspace \"0 2 * * *\"\n./scripts/setup-cron.sh cleanup /backups/workspace \"\" \"0 3 * * *\" 30"
      },
      {
        "title": "Pattern 2: Version-Aware Application Backup",
        "body": "# Backup when application updates\n./scripts/setup-cron.sh versioned /opt/myapp /backups/myapp \"0 */6 * * *\"\n./scripts/setup-cron.sh cleanup /backups/myapp \"\" \"0 4 * * 0\" 10"
      },
      {
        "title": "Pattern 3: Multi-Directory Backup",
        "body": "# Backup multiple directories\n./scripts/backup.sh /home/user/.config /backups/config\n./scripts/backup.sh /home/user/projects /backups/projects"
      },
      {
        "title": "Cron Schedule Format",
        "body": "Standard cron format: minute hour day month weekday\n\nCommon schedules:\n\nDaily at 2 AM: 0 2 * * *\nEvery 6 hours: 0 */6 * * *\nWeekly on Sunday: 0 0 * * 0\nEvery 30 minutes: */30 * * * *"
      },
      {
        "title": "Cleanup Policies",
        "body": "Time-based: Keep backups for N days\nCount-based: Keep last N backups\nCombined: Default keeps 7 days minimum, but at least 3 backups"
      },
      {
        "title": "Troubleshooting",
        "body": "Permission denied: Ensure scripts are executable (chmod +x scripts/*.sh)\nCron not running: Check cron service status (systemctl status cron)\nDisk full: Run cleanup manually or reduce retention period\nBackup fails: Check source directory exists and is readable"
      }
    ],
    "body": "Cron Backup\n\nAutomated backup scheduling with version detection and intelligent cleanup.\n\nQuick Start\nOne-Time Backup\n# Backup a directory with timestamp\n./scripts/backup.sh /path/to/source /path/to/backup/dir\n\n# Backup with custom name\n./scripts/backup.sh /path/to/source /path/to/backup/dir my-backup\n\nSchedule Daily Backup\n# Set up daily backup at 2 AM\n./scripts/setup-cron.sh daily /path/to/source /path/to/backup/dir \"0 2 * * *\"\n\nVersion-Aware Backup\n# Backup only when version changes\n./scripts/backup-versioned.sh /path/to/source /path/to/version/file /path/to/backup/dir\n\nCleanup Old Backups\n# Keep only last 7 days of backups\n./scripts/cleanup.sh /path/to/backup/dir 7\n\nCore Capabilities\n1. Directory Backup\nCreates timestamped tar.gz archives\nPreserves file permissions and structure\nExcludes common temp files (node_modules, .git, etc.)\n2. Version-Triggered Backup\nMonitors version file or command output\nBacks up only when version changes\nUseful for software updates\n3. Scheduled Execution\nIntegrates with system cron\nSupports custom schedules\nLogs execution results\n4. Automatic Cleanup\nDeletes backups older than N days\nKeeps minimum number of backups\nPrevents disk space exhaustion\nScripts\n\nAll scripts are in scripts/ directory:\n\nbackup.sh - Single backup execution\nbackup-versioned.sh - Version-triggered backup\nsetup-cron.sh - Cron job setup\ncleanup.sh - Old backup cleanup\nlist-backups.sh - List available backups\nBackup Naming Convention\n\nBackups follow the pattern: {name}_YYYYMMDD_HHMMSS.tar.gz\n\nExamples:\n\nopenclabak_20260204_101500.tar.gz\nmyapp_20260204_000000.tar.gz\nWorkflow\nSetting Up Automated Backups\n\nDecide backup strategy\n\nWhat to backup (source directory)\nWhere to store (backup directory)\nHow often (schedule)\nRetention policy (cleanup days)\n\nRun initial backup\n\n./scripts/backup.sh /source /backup\n\n\nSet up schedule\n\n./scripts/setup-cron.sh daily /source /backup \"0 2 * * *\"\n\n\nConfigure cleanup\n\n./scripts/setup-cron.sh cleanup /backup \"\" \"0 3 * * *\" 7\n\nVersion-Aware Backup Workflow\n\nFor software that changes version (like OpenClaw):\n\nIdentify version source\n\nCommand: openclaw --version\nFile: /path/to/version.txt\n\nSet up versioned backup\n\n./scripts/backup-versioned.sh /app /app/version.txt /backups/app\n\n\nSchedule version check\n\n./scripts/setup-cron.sh versioned /app /backups/app \"0 */6 * * *\"\n\nCommon Patterns\nPattern 1: Daily User Data Backup\n# Backup workspace daily, keep 30 days\n./scripts/setup-cron.sh daily /home/user/workspace /backups/workspace \"0 2 * * *\"\n./scripts/setup-cron.sh cleanup /backups/workspace \"\" \"0 3 * * *\" 30\n\nPattern 2: Version-Aware Application Backup\n# Backup when application updates\n./scripts/setup-cron.sh versioned /opt/myapp /backups/myapp \"0 */6 * * *\"\n./scripts/setup-cron.sh cleanup /backups/myapp \"\" \"0 4 * * 0\" 10\n\nPattern 3: Multi-Directory Backup\n# Backup multiple directories\n./scripts/backup.sh /home/user/.config /backups/config\n./scripts/backup.sh /home/user/projects /backups/projects\n\nCron Schedule Format\n\nStandard cron format: minute hour day month weekday\n\nCommon schedules:\n\nDaily at 2 AM: 0 2 * * *\nEvery 6 hours: 0 */6 * * *\nWeekly on Sunday: 0 0 * * 0\nEvery 30 minutes: */30 * * * *\nCleanup Policies\nTime-based: Keep backups for N days\nCount-based: Keep last N backups\nCombined: Default keeps 7 days minimum, but at least 3 backups\nTroubleshooting\nPermission denied: Ensure scripts are executable (chmod +x scripts/*.sh)\nCron not running: Check cron service status (systemctl status cron)\nDisk full: Run cleanup manually or reduce retention period\nBackup fails: Check source directory exists and is readable"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/zfanmy/cron-backup",
    "publisherUrl": "https://clawhub.ai/zfanmy/cron-backup",
    "owner": "zfanmy",
    "version": "0.3.2",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/cron-backup",
    "downloadUrl": "https://openagent3.xyz/downloads/cron-backup",
    "agentUrl": "https://openagent3.xyz/skills/cron-backup/agent",
    "manifestUrl": "https://openagent3.xyz/skills/cron-backup/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/cron-backup/agent.md"
  }
}