GOG Stale Games Cleaner
Find installed GOG games you haven't played in 30+ days, email yourself a report, and create Apple Reminders so you can decide whether to uninstall.
When to Use
- User wants to clean up their GOG library
- User asks about stale / unused / forgotten installed games
- User wants a periodic cleanup reminder workflow
- Phrases like "stale games", "game cleanup", "haven't played in a while"
When NOT to Use
- Browsing or searching the GOG catalog → use the
gogskill - Managing game installs/uninstalls directly → GOG Galaxy client only
- Scheduling the scan itself → use cron after the skill runs once
Prerequisites
- GOG library data — a JSON file at
config/gog_library.jsonin the workspace (exported from GOG Galaxy or manually maintained). Must containgames[]withinstalled(bool) andlast_played(ISO-8601 or null). - Himalaya — CLI email client configured with a
personalaccount (himalaya --version). - remindctl — Apple Reminders CLI (
remindctl status). macOS only. - Gaming list — an Apple Reminders list named
Gaming(created automatically if missing).
Configuration
All paths are relative to the OpenClaw workspace root unless absolute.
| Variable | Default | Description |
|---|---|---|
GOG_LIBRARY_PATH | config/gog_library.json | Path to GOG library JSON |
STALE_DAYS | 30 | Days since last play to count as stale |
REMINDERS_LIST | Gaming | Apple Reminders list name |
EMAIL_ACCOUNT | personal | Himalaya account to send from |
EMAIL_TO | (from account) | Recipient email; defaults to account address |
Script
The main script is scripts/gog-stale-scan.sh. Run it directly or let the agent invoke it.
# Dry run (print only, no email/reminders)
bash scripts/gog-stale-scan.sh --dry-run
# Full run
bash scripts/gog-stale-scan.sh
# Custom stale threshold
STALE_DAYS=60 bash scripts/gog-stale-scan.sh
What It Does
- Reads
config/gog_library.json - Filters for
installed: truegames whoselast_playedis >30 days ago (or null) - Prints a formatted table to stdout
- Sends an HTML email via
himalayato your personal account - Adds one Apple Reminders entry per stale game to the
Gaminglist with a note: "Consider uninstalling — last played YYYY-MM-DD"
Cron Scheduling (Optional)
After a successful run, schedule it monthly:
0 10 1 * * # 10 AM on the 1st of each month
Use the cron tool with an agentTurn payload that invokes this skill.
Output Example
🧹 Stale GOG Games (not played in 30+ days)
─────────────────────────────────────────────
Stardew Valley last played 2026-03-28
Baldur's Gate 3 last played 2026-04-01
─────────────────────────────────────────────
2 stale games found. Email sent. 2 reminders added to Gaming.