Automated workflow to surface idle installed GOG games and nudge the user to consider uninstalling.
last_played is older than the cutoff (default 30 days).Gaming list.Run scripts/gog_dormant_cleanup.sh:
bash
scripts/gog_dormant_cleanup.sh <cutoff_days> <library_json> [himalaya_account] [reminders_list]
ParameterDefaultDescriptioncutoff_days30Days of inactivity to qualify as dormantlibrary_json(required)Path to GOG library JSON (see config format below)himalaya_accountpersonalHimalaya account name for sending emailreminders_listGamingApple Reminders list name
DRY_RUN=1 — print actions without sending email or creating reminders.The script expects a JSON file with this structure:
json
{
"games": [
{
"name": "Game Title",
"installed": true,
"last_played": "2026-03-28T19:45:00",
"install_path": "/path/to/game"
}
]
}
Games with installed: false are skipped. last_played may be null (never played).
jq — JSON parsinghimalaya — email delivery (optional; skips email if absent)remindctl — Apple Reminders (optional; skips reminders if absent)To run weekly via cron:
bash
# Every Monday at 9 AM
0 9 * * 1 /path/to/gog_dormant_cleanup.sh 30 /path/to/gog_library.json
Or use OpenClaw's cron tool for managed scheduling.