Favorites Curator
Maintain a file-backed catalog of useful local resources.
Do First
- Run
scripts/scan_favorites.pyto refresh entries and the latest snapshot. - Run
scripts/daily_digest.pyto compare the latest snapshot with the previous one and produce a digest. - Run
scripts/notify_candidates.pywhen the user wants short notification copy for notable items.
Paths
- Entries:
favorites/entries/ - Snapshots:
favorites/snapshots/ - Reports:
favorites/reports/ - Cache:
favorites/enrichment-cache.json - Skill code:
skills/favorites-curator/ - Naming and schema notes:
references/naming-and-model.md
Covered Sources
~/aigit repositoriesbrewinstalled formulae and casks/Applicationsand~/Applications~/.codex/skills~/.claude/skills~/.agents/skills~/.openclaw/workspace/skills~/.openclaw/extensions~/.openclaw/hooks
Expected Workflow
Refresh catalog
python3 skills/favorites-curator/scripts/scan_favorites.py
Use --limit-source to iterate on one source:
python3 skills/favorites-curator/scripts/scan_favorites.py --limit-source brew
Generate daily digest
python3 skills/favorites-curator/scripts/daily_digest.py
This produces a Markdown report with:
- new entries
- updated entries
- likely similar items worth deduping or cross-referencing
- notable items worth surfacing
Emit notification copy
python3 skills/favorites-curator/scripts/notify_candidates.py
Use --top N to cap the number of lines.
Data Rules
- Prefer local metadata over online enrichment.
- Leave missing fields empty or mark them as inferred in
field_sources. - Keep filenames ASCII, sortable, and machine-friendly.
- Store one entry per file.
- Update the same entry file on re-scan instead of creating duplicates.
Output Contract
Each entry file must keep these fields in frontmatter:
nameauthordata_typeinstall_pathinstall_timeupdate_timesummarysimple_usagesource_url
Other helper fields are allowed when useful for automation.
Notes
- The scripts are local-first and safe to run repeatedly.
brew info --json=v2 --installedis used once per scan; avoid tight cron loops.- Read
references/naming-and-model.mdbefore changing filename rules or schema.