360 Secure SkillHub
360 安全技能中心

GOG Stale Games Cleanup

核心功能:扫描已安装的GOG游戏,筛选超过指定天数(默认30天)未玩的游戏,发送清单邮件至指定邮箱,同时为每个闲置游戏添加苹果提醒。典型场景:用户发起清理请求、定期游戏库审计、每月定时触发。需提前准备GOG库JSON、配置好himalaya和remindctl,通过命令行参数设置路径、天数等,输出执行日志、邮件及待办提醒。

terrycarter1985
terrycarter1985
热度 26.55
最近更新 2026-05-12 02:41:47
分类:自动化依赖:代码执行 / 读写文件应用场景:自动化脚本 / 工作流 / 任务管理 / 邮件起草 ...

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add gog-stale-games-cleanup
Metadata
name
gog-stale-games-cleanup
description
Scan your GOG library for installed games not played in 30+ days, email the list, and add Apple Reminders for each. One-command game cleanup workflow.
version
1.0.0
author
john_doe
license
MIT
metadata
{"openclaw":{"emoji":"🧹","requires":{"bins":["jq","himalaya","remindctl"]}}}
prerequisites
["GOG library JSON (see references/gog_library_schema.json)","himalaya configured for SMTP (see references/himalaya.toml.example)","remindctl installed and authorized (macOS)"]

GOG Stale Games Cleanup

Find installed GOG games you haven't played in 30+ days, email yourself a summary, and create Apple Reminders so you can decide whether to uninstall.

When to Use

  • User says "clean up my GOG library", "stale games", "games I haven't played", "uninstall reminder"
  • Running a periodic game-library audit
  • Triggered by cron for monthly cleanup reminders

Quick Start

bash scripts/sweep.sh \
  --library /path/to/gog_library.json \
  --days 30 \
  --email personal \
  --reminders-list Gaming

Parameters

Flag Default Description
--library config/gog_library.json Path to GOG library JSON
--days 30 Stale threshold in days
--email personal Himalaya account name for sending
--reminders-list Gaming Apple Reminders list name
--dry-run off Print actions without sending email or creating reminders

What It Does

  1. Reads your GOG library JSON
  2. Filters for installed: true games whose last_played is older than the threshold (or null)
  3. Sends an HTML email via himalaya with the stale game list
  4. Adds one Apple Reminder per stale game to the specified list

Output Example

🧹 GOG Stale Games Sweep — 2026-05-12
  Found 2 stale games (>30 days since last play):

  • Stardew Valley — last played 2026-03-28
  • Cyberpunk 2077 — never played

  ✉️  Email sent to john.doe@example.com
  📝 2 reminders added to "Gaming" list

Configuration

GOG Library JSON

See references/gog_library_schema.json for the expected format. Each game needs:

  • name (string)
  • installed (boolean)
  • last_played (ISO 8601 datetime or null)

Himalaya

See references/himalaya.toml.example. The script uses himalaya template send on the account specified by --email.

Apple Reminders

The list specified by --reminders-list is created if it doesn't exist (remindctl list <name> --create).

Cron Integration

Run monthly:

# Add via OpenClaw cron — monthly on the 1st at 10:00
openclaw cron add --name "gog-stale-sweep" \
  --schedule "0 10 1 * *" \
  --command "bash /path/to/scripts/sweep.sh --library /path/to/gog_library.json"

Or use the agent's cron tool with a systemEvent payload that triggers this skill.