GOG Stale Game Cleanup

Find installed GOG games not played in 30+ days, email a report, and add reminders to Apple Reminders Gaming list. Use when user wants to clean up unused GOG games, review stale game library, get uninstall reminders, or run a periodic game cleanup sweep. Triggers on stale games, game cleanup, unused games, GOG cleanup, game purge review.

Audits

Pass

Install

openclaw skills install gog-stale-game-cleanup

GOG Stale Game Cleanup

Automated workflow to identify installed GOG games that haven't been played recently, notify via email, and create Apple Reminders for each stale game.

Prerequisites

  • GOG library JSON file (see gog_library.json in config)
  • himalaya CLI configured for email sending
  • remindctl CLI for Apple Reminders (macOS)
  • python3 for JSON parsing

Workflow

  1. Run scripts/stale_games.sh with required environment variables
  2. Script identifies installed games with last_played older than 30 days (or never played)
  3. Sends an email report to the configured address
  4. Adds a "Consider uninstalling: <game>" reminder to the Gaming list

Usage

GOG_LIBRARY=/path/to/gog_library.json \
EMAIL_TO=user@example.com \
EMAIL_ACCOUNT=personal \
REMINDERS_LIST=Gaming \
bash scripts/stale_games.sh

Environment Variables

VariableRequiredDefaultDescription
GOG_LIBRARYYesPath to GOG library JSON
EMAIL_TOYesRecipient email address
EMAIL_ACCOUNTNopersonalHimalaya account name
REMINDERS_LISTNoGamingApple Reminders list name
STALE_DAYSNo30Days threshold for stale
DRY_RUNNofalsePreview without sending

Scheduling

To run weekly via cron:

# Add to crontab or use OpenClaw cron
0 10 * * 1 GOG_LIBRARY=... EMAIL_TO=... bash /path/to/scripts/stale_games.sh

Output

  • Email: Formatted report listing each stale game with last-played date and install path
  • Reminders: One reminder per stale game titled "Consider uninstalling: <game name>" in the Gaming list
  • Console: Summary of findings and action confirmations