HomeBrowseUpload
← Back to registry
// Skill profile

OpenClaw Auto Update

name: ayao-updater

by ayao99315 · published 2026-04-01

日历管理自动化任务
Total installs
0
Stars
★ 0
Last updated
2026-04
// Install command
$ claw add gh:ayao99315/ayao99315-ayao-updater
View on GitHub
// Full documentation

---

name: ayao-updater

description: Automatically update OpenClaw and all installed skills on a schedule. Use when: (1) setting up automatic updates for OpenClaw or skills, (2) running a manual update check, (3) configuring update schedule, skip lists, or pre-release filtering, (4) user says "auto update", "schedule updates", "keep openclaw updated", "update skills automatically". Handles locally-modified skill protection, conflict avoidance, pre-release filtering, and completion or failure notifications.

---

# OpenClaw Auto Update

Keeps OpenClaw and installed ClawHub skills up to date automatically.

Prerequisites

  • `openclaw` CLI — required for `openclaw update`, `openclaw gateway restart`, and notifications
  • `clawhub` CLI — required for `clawhub list`, `clawhub inspect`, and `clawhub update`
  • `python3` — required for loading `config.json`
  • `bash` 4+ — required by the shell scripts for associative arrays and other modern Bash features
  • Quick Start

    1. Install cron job (runs daily at 2 AM by default)

    bash ~/.openclaw/workspace/skills/openclaw-auto-update/scripts/install-cron.sh

    2. Run manually now

    bash ~/.openclaw/workspace/skills/openclaw-auto-update/scripts/update.sh

    3. Preview what would be updated (no changes)

    bash ~/.openclaw/workspace/skills/openclaw-auto-update/scripts/update.sh --dry-run

    Configuration

    Create `~/.openclaw/workspace/skills/openclaw-auto-update/config.json`:

    {
      "schedule": "0 2 * * *",
      "skipSkills": [],
      "skipPreRelease": true,
      "restartGateway": true,
      "notify": true,
      "notifyTarget": null
    }

    See `references/config-schema.md` for all options and examples.

    What It Does

    1. **Loads JSON config** — reads `config.json` with `python3` and merges defaults

    2. **Updates OpenClaw** — runs `openclaw update --yes --no-restart`; in preview mode it logs the equivalent `openclaw update --dry-run --yes --no-restart` command without making changes

    3. **Finds installed skills** — enumerates skills via `clawhub list`, with workspace directory fallback

    4. **Checks release channel** — uses `clawhub inspect <slug>` to skip pre-releases when `skipPreRelease: true`

    5. **Updates skills** — runs `clawhub update <slug> --no-input` for each eligible installed skill; in preview mode it only logs `clawhub update --all` because the installed `clawhub` CLI does not support update dry runs

    6. **Protects local changes** — skips skills with uncommitted git changes

    7. **Respects skip list** — never touches skills in `skipSkills`

    8. **Restarts gateway** — only if OpenClaw version actually changed

    9. **Notifies** — sends `openclaw message send --target <target> -m <message>` when `notifyTarget` is set, otherwise `openclaw system event --text <message> --mode now`

    Change Schedule

    # Change to 3 AM weekly on Sunday
    bash ~/.openclaw/workspace/skills/openclaw-auto-update/scripts/install-cron.sh --schedule "0 3 * * 0"
    
    # Uninstall cron job
    bash ~/.openclaw/workspace/skills/openclaw-auto-update/scripts/install-cron.sh --uninstall

    Logs

    tail -f /tmp/openclaw-auto-update.log

    Skip a Specific Skill Permanently

    Add to `config.json`:

    { "skipSkills": ["my-custom-skill", "work-internal"] }
    // Comments
    Sign in with GitHub to leave a comment.
    // Related skills

    More tools from the same signal band