# favorites-harvester > Multi-platform favorites/bookmarks router that calls atomic skills (bilibili/zhihu/xiaohongshu) to list your favorites (folders/collections/boards) and fetch item text/transcripts for summarization. Use when the user asks "看看我收藏了哪些/最近收藏了什么", or provides a B站/知乎/小红书 link and asks what it's about. - Author: hc-tec - Repository: hc-tec/my-collection-skills - Version: 20260209014307 - Stars: 0 - Forks: 0 - Last Updated: 2026-02-08 - Source: https://github.com/hc-tec/my-collection-skills - Web: https://mule.run/skillshub/@@hc-tec/my-collection-skills~favorites-harvester:20260209014307 --- --- name: favorites-harvester description: Multi-platform favorites/bookmarks router that calls atomic skills (bilibili/zhihu/xiaohongshu) to list your favorites (folders/collections/boards) and fetch item text/transcripts for summarization. Use when the user asks "看看我收藏了哪些/最近收藏了什么", or provides a B站/知乎/小红书 link and asks what it's about. --- # Favorites Harvester Use this skill when you need one entrypoint across platforms. It calls the per-platform skills (no RSSHub). Docker-first: - See `docs/usage.md` for `docker compose run --rm runner ...` examples (no host Python required). Cookie auth (shared) - Recommended: CookieCloud env vars (`COOKIECLOUD_UUID`, `COOKIECLOUD_PASSWORD`, optional `COOKIECLOUD_SERVER_URL`). Compatibility: also accepts `COOKIECLOUDUUID` / `COOKIECLOUDPASSWORD`. - Or set platform-specific cookie env vars (`BILIBILI_COOKIE`, `ZHIHU_COOKIES`, `XIAOHONGSHU_COOKIE`) Optional: export CookieCloud -> env file (no RSSHub) ```bash docker compose run --rm runner python skills/favorites-harvester/scripts/cookiecloud_export_env.py \ http://cookiecloud:8088 --env-file favorites.env ``` ## Quick Start List favorites across platforms: ```bash docker compose run --rm runner python skills/favorites-harvester/scripts/favorites_harvester.py list --platform all ``` List only XiaoHongShu saved boards (收藏专辑/收藏夹): ```bash docker compose run --rm runner python skills/favorites-harvester/scripts/favorites_harvester.py list --platform xiaohongshu --xhs-mode boards ``` Fetch content by URL (auto-detect platform): ```bash docker compose run --rm runner python skills/favorites-harvester/scripts/favorites_harvester.py content --url 'https://www.bilibili.com/video/BV...' docker compose run --rm runner python skills/favorites-harvester/scripts/favorites_harvester.py content --url 'https://www.zhihu.com/question/.../answer/...' docker compose run --rm runner python skills/favorites-harvester/scripts/favorites_harvester.py content --url 'https://www.xiaohongshu.com/explore/' ``` List items in a container: ```bash docker compose run --rm runner python skills/favorites-harvester/scripts/favorites_harvester.py items --platform bilibili --folder-id --limit 50 docker compose run --rm runner python skills/favorites-harvester/scripts/favorites_harvester.py items --platform zhihu --collection-id --limit 50 docker compose run --rm runner python skills/favorites-harvester/scripts/favorites_harvester.py items --platform xiaohongshu --board-id --limit 50 ``` JSON mode: - Add `--json` to `list/items/content` to emit machine-readable JSON. ## How It Works - Calls these atomic skills by invoking their scripts (prefers `uv run` if available; falls back to `python`): - `skills/bilibili-favorites` - `skills/zhihu-favorites` - `skills/xiaohongshu-favorites` - Use the atomic skill directly when you need advanced flags (e.g. Bilibili subtitle language selection, XHS Playwright options). ## Troubleshooting - XHS failures: run with `list ... --xhs-no-headless` (visible browser). - Bilibili transcript failures: the video may have no subtitle track; use `skills/media-audio-download` + `skills/whisper-transcribe-docker` (or other Whisper skills) after downloading audio.