Get the FREE Ultimate OpenClaw Setup Guide →

updater

npx machina-cli add skill lu-zhengda/macos-toolkit/updater --openclaw
Files (1)
SKILL.md
4.1 KB

updater — macOS App Update Manager

Run a health + update discovery pass:

!updater doctor --json 2>&1 || echo "updater not installed — brew install --cask lu-zhengda/tap/updater"

If updater is installed, use this default flow:

  1. updater scan --json
  2. updater check --json
  3. updater update --all --dry-run --json
  4. Ask for confirmation before any non-dry-run update command.

Summarize what is outdated (current vs latest), call out major updates, pinned apps, and errors, then propose specific next actions.

Commands

CommandPurposeExample
updater scan --jsonDiscover installed apps and update sourcesupdater scan --json
updater check --jsonCheck available updatesupdater check --json
updater check --json -vCheck with release notesupdater check --json -v
updater outdated --jsonList only outdated appsupdater outdated --json
updater update <app>Update specific appupdater update Firefox
updater update --allUpdate all appsupdater update --all
updater update --autoUnattended update (skip major, pinned, manual)updater update --auto
updater update --all --dry-run --jsonPlan updates without changesupdater update --all --dry-run --json
updater install <name>Install app via Homebrew Caskupdater install visual-studio-code
updater upgrade --jsonSelf-update updaterupdater upgrade --json
updater pin <app>Pin app to prevent updatesupdater pin Photoshop
updater unpin <app>Unpin appupdater unpin Photoshop
updater rollback <app>Restore previous version from backupupdater rollback Firefox
updater rollback --all --jsonRoll back all restorable appsupdater rollback --all --json
updater cleanup --jsonFind unused appsupdater cleanup --days 90 --json
updater cleanup --delete --jsonMove unused apps to Trashupdater cleanup --days 90 --delete --json
updater history --jsonShow update historyupdater history --json
updater schedule --jsonSchedule periodic checksupdater schedule --interval 24 --json
updater schedule --remove --jsonRemove scheduled checksupdater schedule --remove --json
updater menubar --jsonInstall/remove menu bar agentupdater menubar --remove --json
updater config export --jsonExport config as JSONupdater config export --json
updater config import <file> --jsonImport config and return statusupdater config import config.yaml --json
updater ui --jsonMachine-readable UI command responseupdater ui --json

JSON + Agent Mode

  • All updater commands accept --json.
  • In Codex or Claude Code environments, updater auto-enables JSON output.
  • Override auto-detection with:
    • UPDATER_AGENT_MODE=1 to force JSON mode
    • UPDATER_AGENT_MODE=0 to force human-readable mode
  • updater update --json is for dry-run planning and requires --dry-run.

Output Handling Notes

  • check --json status values: ok, update_available, major_update, pinned, error.
  • install --json can return installed, no_match, or multiple_matches.
  • ui --json returns a structured unsupported response instead of launching TUI.

Safety Guidelines

  • Plan before apply: Use update --dry-run --json before applying updates.
  • Confirm destructive actions: Require confirmation before cleanup --delete and broad update/rollback operations.
  • Pin critical apps: Use pin/policy manual for version-sensitive software.
  • Rollback available: rollback restores from pre-update backups when present.

TUI Mode

Launch updater (or updater ui) without JSON mode for interactive TUI management.

Source

git clone https://github.com/lu-zhengda/macos-toolkit/blob/main/skills/updater/SKILL.mdView on GitHub

Overview

The updater skill manages macOS applications by performing health checks, discovery, and updates. It supports scanning, checking for updates, planning updates with dry-run, pinning apps, scheduling checks, installing via Homebrew Cask, rolling back updates, cleaning unused apps, and self-updating.

How This Skill Works

Updater executes a standard flow: scan --json to inventory apps and sources, check --json to detect available updates, and update --all --dry-run --json to preview changes. It supports JSON/agent modes (override with UPDATER_AGENT_MODE) and a suite of commands for pinning, rollback, cleanup, schedule, and menu-bar management.

When to Use It

  • You want to audit installed macOS apps and identify which are outdated.
  • You want to preview updates with a dry-run before applying any changes.
  • You need to pin apps or enforce an update policy to control versions.
  • You are installing apps via Homebrew Cask or configuring a menu-bar updater agent.
  • You need to rollback an update or clean unused apps and reclaim space.

Quick Start

  1. Step 1: Run updater scan --json to inventory apps and sources.
  2. Step 2: Run updater check --json to identify available updates.
  3. Step 3: Run updater update --all --dry-run --json, review results, then run without --dry-run after confirmation.

Best Practices

  • Always run a scan then a check to identify updates before planning changes.
  • Use updater update --all --dry-run --json first and review results before applying.
  • Pin critical apps and use policy manual to prevent unwanted updates.
  • Review major updates status and any errors in the --json output.
  • Schedule regular checks with updater schedule to keep software current.

Example Use Cases

  • updater scan --json to inventory installed apps and sources.
  • updater check --json to see which apps have available updates.
  • updater update --all --dry-run --json to plan changes without applying.
  • updater install visual-studio-code to add a new app via Homebrew Cask.
  • updater pin Photoshop to prevent future updates.

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers